Skip to content

refactor: deprecate camelCase aliases in targets.yaml schema #907

@christso

Description

@christso

Problem

The targets.yaml schema accepts both snake_case and camelCase for several fields:

  • grader_target / graderTarget (not used — only judge_target has camelCase alias)
  • provider_batching / providerBatching
  • subagent_mode_allowed / subagentModeAllowed
  • timeout_seconds / timeoutSeconds
  • log_dir / logDir / log_directory / logDirectory
  • log_format / logFormat
  • system_prompt / systemPrompt
  • api_key / apiKey
  • base_url / baseUrl
  • etc.

YAML configs should use snake_case exclusively (matching the wire format convention in AGENTS.md). camelCase is for TypeScript internals only.

Proposal

  1. Emit deprecation warnings when camelCase variants are used in targets.yaml
  2. In a future major version, remove camelCase acceptance from the schema
  3. New fields (like use_target) should only support snake_case

This is a minor, non-breaking refactor — existing configs continue working but users see warnings guiding them to snake_case.

Metadata

Metadata

Assignees

No one assigned

    Labels

    in-progressClaimed by an agent — do not duplicate work

    Type

    No type

    Projects

    Status

    In progress

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions