feat(models): support GPT-6 Astra reasoning variants - #1282
Merged
Conversation
Recognize Astra during OpenAI discovery and in the Codex fallback catalog, expose its reasoning and fast variants, and preserve live account metadata. Route direct OpenAI tool requests through Responses and resolve Astra's reasoning family and 1.05M context consistently across Rust and TypeScript. Cover catalog projection, provider request payloads, endpoint policy, model grouping, and context metadata. Keep existing default-enabled models and custom endpoint policy intact; Ultra retains the existing Max-plus-delegation behavior rather than introducing a new API effort. Pre-commit hook ran. Total eslint: 0, total circular: 0
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
GPT-6 Astra is omitted by OpenAI API discovery and the Codex fallback catalog. Even when added manually, it falls through the generic GPT context metadata and the GPT-5-only endpoint/reasoning checks, so direct tool requests can start on the wrong API and aggregator requests can lose the selected effort. The model picker also lacks an Astra family label.
Solution
gpt-6-astrato the Codex setup/refresh fallback catalog. Keep existing default-enabled models and live account metadata precedence.maxplus the existing request-local delegation instructions; it is not a new API effort.max_completion_tokensfor compatible Chat Completions. Custom endpoints retain their existing endpoint policy.Official references: Astra model specification and Astra migration guidance. Existing accounts use Refresh Models and enable Astra; this change does not refresh accounts in the background.
Potential risks
Verification
cd src-tauri && cargo test -p key_vault --lib --no-fail-fast— 382 passed.cd src-tauri && cargo test -p agent_core --lib providers:: --no-fail-fast— 451 passed; 2,749 unrelated tests filtered out. No compiler warnings in either Rust test run.pnpm test src/util/__tests__/modelGrouping.test.ts src/util/__tests__/modelGrouping.thresholds.test.ts src/util/__tests__/modelVariants.test.ts src/types/model/info.openai.test.ts— 54 passed across four files.pnpm exec tsgo --noEmit --pretty false— passed.cd src-tauri && cargo clippy --lib --message-format=short -p agent_core -p key_vaultall passed.pnpm exec eslint src/util/modelGrouping.ts src/util/__tests__/modelGrouping.test.ts src/util/__tests__/modelVariants.test.ts src/types/model/info.openai.ts src/types/model/info.openai.test.ts --max-warnings 0— passed.pnpm exec eslint src/ --ext .ts,.tsx,.js,.jsx --format json— 6,431 files, zero errors or warnings. Used with the verified zero cycle count to retain the required audit trailer despite the worktree-incompatible trailer helper.pnpm run check:circular— no cycles across 6,527 modules.pnpm run check:test-placement— consistent across 495 directories.git diff --cached --check— passed. Reviewed the full diff for scope, secrets, private paths, generated artifacts, and unrelated formatting.Audit
Architecture checklist: covered compilation, production call-chain wiring, naming, effort-vs-Ultra semantics, fallback branches, provider boundaries, readability, serialized payloads, setup/saved-account parity, and live metadata/default precedence (layers 1–10 within this change). Unrelated domains and session initialization were outside scope.
Performance verdict: pass for the scoped catalog/request changes, supported by source review and passing catalog/transport tests. No CPU/RAM improvement is claimed; no resource ownership or lifecycle changed.