Sync Copilot model allowlist with model API mapping#5756
Conversation
There was a problem hiding this comment.
Pull request overview
This PR updates host-side Copilot model validation so AWF accepts additional model identifiers and clarifies the “unsupported model” error message, with corresponding Jest test updates.
Changes:
- Expanded
SUPPORTED_COPILOT_MODELSinsrc/copilot-model.tsto accept additional model IDs. - Updated the generic unsupported-model error wording to avoid implying “retirement” when a model is simply unknown to this AWF version.
- Extended
src/copilot-model.test.tsto cover the new accepted models and the updated error wording.
Show a summary per file
| File | Description |
|---|---|
| src/copilot-model.ts | Adds models to the allowlist and adjusts the unsupported-model error message. |
| src/copilot-model.test.ts | Adds coverage for the new allowlisted models and updates assertions for the new error wording. |
Review details
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 2/2 changed files
- Comments generated: 3
- Review effort level: Low
| 'gpt-4.1', | ||
| 'gpt-4.5', | ||
| 'gpt-4o', | ||
| 'gpt-4o-mini', | ||
| 'gpt-5.1', |
| 'claude-fable-5', | ||
| 'claude-haiku-4.5', | ||
| 'claude-mythos-5', | ||
| 'claude-opus-4.8', | ||
| 'claude-sonnet-5', |
| 'claude-fable-5', | ||
| 'claude-mythos-5', | ||
| 'claude-sonnet-5', | ||
| ])('accepts additional mapped canonical models (%s)', model => { |
|
@copilot address review feedback |
Addressed all three review points in be4e978:
|
|
@copilot resolve the merge conflicts in this pull request |
Merge conflicts resolved in aa5a652. The conflicts were in both |
|
✅ Copilot review passed with no inline comments. @copilot Add the |
|
✅ Smoke Claude passed |
|
✅ Smoke Gemini completed. All facets verified. 💎 |
|
✅ Smoke Copilot BYOK AOAI (Entra) completed. Copilot AOAI BYOK (Entra) mode operational. 🔓 |
|
🔑 Smoke Copilot PAT PAT auth validated. All systems operational. ✅ |
|
✅ Smoke Copilot BYOK AOAI (api-key) completed. Copilot AOAI BYOK (api-key) mode operational. 🔓 |
✅ Coverage Check PassedOverall Coverage
📁 Per-file Coverage Changes (2 files)
Coverage comparison generated by |
Smoke Test: Claude Engine Validation
Overall Result: PASS
|
Smoke Test: Copilot BYOK (Direct Mode) ✅ PASSTests:
All tests passed. Running in direct BYOK mode with COPILOT_PROVIDER_API_KEY. /cc
|
🤖 Smoke Test Results
PR: Sync Copilot model allowlist with model API mapping Overall: PASS
|
🔥 Smoke Test: Copilot PAT — PASS
PR: Sync Copilot model allowlist with model API mapping
|
🔍 Smoke Test: API Proxy OpenTelemetry Tracing
All scenarios pass. OTEL tracing integration is functional.
|
|
fix: ensure chmod runs even when chown fails in rootless permission repair ✅\nDeduplicate Warning Firewall blocked 1 domainThe following domain was blocked by the firewall during workflow execution:
network:
allowed:
- defaults
- "registry.npmjs.org"See Network Configuration for more information.
|
|
Overall: PASS
|
|
Running in direct BYOK mode (AWF_AUTH_TYPE=github-oidc + AWF_AUTH_AZURE_* + COPILOT_PROVIDER_BASE_URL) via api-proxy → Azure OpenAI (Foundry, o4-mini-aw) Overall: PASS
|
Chroot Version Comparison Results
Overall: ❌ Not all tests passed Go versions match, but Python and Node.js versions differ between host and chroot environments.
|
🏗️ Build Test Suite Results
Overall: 8/8 ecosystems passed — ✅ PASS
|
Smoke Test Results: ❌ FAIL
|
Smoke Test Results
Overall status: FAIL Warning Firewall blocked 1 domainThe following domain was blocked by the firewall during workflow execution:
network:
allowed:
- defaults
- "localhost"See Network Configuration for more information.
|
Host-side Copilot model validation had drifted from
docs/model-api-mapping.json, causing valid models likeclaude-sonnet-5to be rejected before AWF started. The failure message also mislabeled missing allowlist entries as “retired”, even when they were not in the retired-alias map.Allowlist sync
SUPPORTED_COPILOT_MODELSinsrc/copilot-model.ts:gpt-4.5gpt-5.1claude-fable-5claude-mythos-5claude-sonnet-5Error semantics
Coverage
src/copilot-model.test.tsto assert the new models are accepted.