Skip to content

[agent-issue]: Mirror gh-aw's runtime model controls in ado-aw #2245

Description

@JamesBurnside

Submission requirements

  • I generated this issue with an agent that used .github/agents/ado-aw.agent.md.
  • I reviewed the generated issue and confirm it is being filed directly in githubnext/ado-aw.

Problem summary

Allow operators to switch the main agent and threat-detection models through Azure DevOps pipeline variables or variable groups, mirroring gh-aw's runtime model controls.

During a model outage, changing hardcoded models currently requires editing workflow markdown, regenerating the lockfile, and merging a PR. Runtime controls would let subsequent runs use an available model without that turnaround.

Reproduction details

Inspected ado-aw v0.52.1 and main at c1ae381:

  • engine.model: "$(REVIEW_MODEL)" is rejected by model-identifier validation.
  • engine.env.COPILOT_MODEL: "$(REVIEW_MODEL)" is rejected because only specific provider environment keys allow ADO expressions.

These are source-confirmed restrictions, not an executed standalone repro. This is a feature request, not a hosted-run failure.

Proposed next step

Mirror gh-aw's precedence using proposed ADO variables:

  1. Explicit model configured for the engine instance.
  2. ADO_AW_MODEL_AGENT_COPILOT or ADO_AW_MODEL_DETECTION_COPILOT.
  3. Shared ADO_AW_DEFAULT_MODEL_COPILOT.
  4. Existing default behavior.

Resolve variables at pipeline runtime, preserve existing explicit-model behavior, and record the effective models in run metadata. Pass values through environment mappings with validation and quoted arguments rather than direct shell substitution. Cover precedence, missing/invalid values, and independent detection selection with tests.

Posted by Copilot CLI assistant.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

enhancementNew feature or requestrustPull requests that update rust code

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions