Repository navigation
Migrate lifecycle readers to generated data (ADR 0004 phase 4, partial) - #10360
Conversation
Co-authored-by: lpcox <15877973+lpcox@users.noreply.github.com>
There was a problem hiding this comment.
Warning
Copilot couldn't run its full agentic review because it didn't start before the timeout. Make sure your repository has a runner available, or add a copilot-code-review.yml file specifying one with the runs-on attribute. See the docs for more details.
Copilot review overview
4 open issues
compatibility.provenanceis incorporated intolatestTimestamp(...)before… · New This test now imports a JSON file via ES import, which also requiresresolveJsonModulein the TS… · New Importing JSON in TypeScript requiresresolveJsonModule(and sometimesesModuleInterop… · New The membership check!['auto', ...supported].includes(id)rebuilds an array (and does an O(n)… · New
What changed in this PR
Migrates host CLI model validation and proxy retirement guard to consume generated lifecycle projections, while preserving legacy suggestion ordering and matching compat behavior as part of ADR 0004 phase 4 (partial).
Changes:
- Replace hardcoded supported/retired model tables with generated projections and add generated
suggestionOrderto preserve legacy suggestion ties. - Extend the model-information compiler to validate and emit compatibility suggestion-order metadata without letting it “author” availability.
- Add regression tests for compatibility ordering, staged-model exclusion, proxy matching boundaries, and compiled/bundled loading.
| File | Description |
|---|---|
| src/model-information.compat.generated.json | Adds generated suggestionOrder alongside supported/retired projections. |
| src/copilot-model.ts | Switches host model validation to generated lifecycle projections and ordered suggestions. |
| src/copilot-model.test.ts | Adds tests for suggestion tie ordering, staged exclusions, and prototype-key safety. |
| shared/model-information/sources/lifecycle-compatibility.json | Introduces maintained source for legacy suggestion ordering (ordering only). |
| scripts/model-information/compile.cjs | Emits/validates compatibility projection and bumps compiler version. |
| scripts/model-information/compile.test.ts | Adds compile-time tests for suggestion ordering, scope exclusions, bundling, and proxy guard isolation. |
| containers/api-proxy/guards/retired-model-guard.js | Switches proxy retirement mapping to generated JSON via Map. |
| containers/api-proxy/guards/retired-model-guard.test.js | Adds tests asserting lowercase-only exact-match retirement behavior. |
| shared/model-information/manifest.generated.json | Updates compiler version and includes new source file in manifest. |
| shared/model-information/{catalog,target,baseline-to-target}.generated.json | Bumps catalog revision to reflect new deterministic inputs. |
| docs/adr/0004-model-information-management.md | Documents partial phase 4 handoff and updated compiler version. |
Review effort: Lite
|
@copilot address review feedback |
Validate lifecycle compatibility metadata before calculating catalogue timestamps and reuse a Set for suggestion membership. Cover missing, invalid, and non-string timestamp metadata. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 16e60324-9d5b-4e04-927c-d0487339e7b2
|
✅ Copilot review passed with no inline comments. @copilot Add the |
Documentation PreviewDocumentation has been built for this PR. To view locally:
Built from commit 03dc493 |
✅ Coverage Check PassedOverall Coverage
📁 Per-file Coverage Changes (1 files)
Coverage comparison generated by |
|
✅ Smoke Gemini completed. All facets verified. 💎
|
|
✅ Smoke Copilot BYOK AOAI (Entra) completed. Copilot AOAI BYOK (Entra) mode operational. 🔓
|
|
🛡️ Smoke Copilot Network Isolation confirmed the egress allowlist is enforced. ✅
|
|
Smoke Cloud Hypervisor completed. Cloud Hypervisor + Copilot passed.
|
|
✅ Build Test Suite completed successfully!
|
|
✅ Smoke Copilot BYOK AOAI (api-key) completed. Copilot AOAI BYOK (api-key) mode operational. 🔓
|
|
Chroot tests passed! Smoke Chroot - All security and functionality tests succeeded.
|
|
✅ Smoke Claude passed
|
|
🔌 Smoke Services — All services reachable! ✅
|
|
📰 VERDICT: Smoke Copilot has concluded. All systems operational. This is a developing story. 🎤
|
|
✅ Security Guard completed successfully! Security GuardOutcome: The agent completed and reported no action. A no-op output alone does not verify that all required work was completed or that publication was possible. Agent messages are omitted from this comment. The category uses structured run status, not interpretation of agent prose.
|
Chroot Version Comparison
Result: FAILED. Node.js differs between host and chroot (chroot reports v2.98.0, which looks like a non-Node binary or a wrong version). The
|
|
✨ The prophecy is fulfilled... Smoke Codex has completed its mystical journey. The stars align. 🌟 Smoke CodexOutcome: The agent completed and reported no action. A no-op output alone does not verify that all required work was completed or that publication was possible. Agent messages are omitted from this comment. The category uses structured run status, not interpretation of agent prose.
|
|
MCP connectivity: ✅ Running in direct BYOK mode (COPILOT_PROVIDER_API_KEY + COPILOT_PROVIDER_BASE_URL) via api-proxy → Azure OpenAI (Foundry, o4-mini-aw)
|
🏗️ Build Test Suite Results
Overall: 5/8 ecosystems passed — FAIL All repos cloned successfully. Failures
|
|
Chroot tests passed! Smoke Chroot - All security and functionality tests succeeded.
|
|
|
|
✅ Smoke Copilot BYOK AOAI (api-key) completed. Copilot AOAI BYOK (api-key) mode operational. 🔓
|
|
✅ Build Test Suite completed successfully!
|
|
✅ Smoke Copilot BYOK AOAI (Entra) completed. Copilot AOAI BYOK (Entra) mode operational. 🔓
|
Smoke Test: Gemini Engine Validation
Overall status: PASS
|
|
✅ Smoke Gemini completed. All facets verified. 💎
|
|
Cloud Hypervisor + Copilot smoke test
|
Smoke Test: Claude Engine Validation
Overall result: PASS
|
|
EGRESS_RESULT allow=pass deny=pass
|
|
Smoke Test (Copilot)
Overall: PASS —
|
|
Services smoke test: ✅ Redis PONG, ✅ pg_isready accepting connections, ✅ SELECT 1 → 1. Overall: PASS
|
Smoke Test: Copilot BYOK (Direct) Mode✅ PASS Test Results:
Mode: Direct BYOK (COPILOT_PROVIDER_API_KEY) with api-proxy credential injection
|
|
OTEL smoke test
|
Smoke Test
|



ADR 0004 phase 4 calls for shared lifecycle data, run-local overlays, and actual-harness eligibility. This PR addresses the compatibility-reader migration only; phase completion remains blocked on the companion compiler contract and eligibility integration.
Generated lifecycle readers
Compatibility boundaries
Regression coverage and handoff
No staged availability, pricing, reasoning, context, or translation changes are activated. No workflow/config keys are introduced.