Skip to content

feat(models): support Astra API and Latest browser selection - #465

Merged
steipete merged 8 commits into
steipete:mainfrom
FNDEVVE:feat/gpt-6-latest-browser-model
Sep 8, 2026
Merged

feat(models): support Astra API and Latest browser selection#465
steipete merged 8 commits into
steipete:mainfrom
FNDEVVE:feat/gpt-6-latest-browser-model

Conversation

@FNDEVVE

@FNDEVVE FNDEVVE commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

Support GPT-6 Astra through the first-party API and ChatGPT's Latest picker. The browser-only gpt-6-pro alias now reaches Latest plus verified Pro effort instead of failing during CLI route preflight; API requests use gpt-6-astra with explicit reasoning mode.

API validation uses the model's supported effort set, rejects none (including saved defaults), and permits an explicit supported effort to override an invalid saved default. GPT-5.6 behavior and the default model are preserved. Browser selection recognizes exact Latest/最新 radios and the observed version-prefixed effort controls while keeping Pro selection fail-closed.

This consolidates the compatible API work from #449 and the Latest/localization work from #448. Credit belongs to @FNDEVVE, @oraclexing, @malvarezcastillo, and @kiyo-e. Their overlapping PRs can close after this one lands.

Validation at ecc104ec0435a1221053c3716947468a832630fd:

  • Full suite: 2,286 passed / 45 skipped; build, formatting, lint/typecheck, and docs checks passed. A full CLI regression catches the startup/preflight alias failure that helper-only tests missed.
  • Real first-party API calls completed in standard/low and Pro/max modes. A saved invalid none effort failed before inference; an explicit low effort completed through that saved configuration.
  • Signed-in built CLI completed Latest/High and Latest/Pro consultations with verified UI evidence. A controlled precondition hook selected Sol through the production selector before the requested Latest/Pro transition; that run reported status=switched and completed. The normal High and Pro runs used the unmodified built CLI.
  • Local and committed-branch P0–P2 autoreview are clean.
  • Exact-head CI: https://github.com/steipete/oracle/actions/runs/34177347151 — all four jobs succeeded.

Browser evidence describes observed UI selection, not independent backend model attestation. The current API contract was checked against https://developers.openai.com/api/docs/models/gpt-6-astra.

The complete changelog entry and contributor thanks are deferred to the final notes PR; this implementation has no CHANGELOG.md delta against main.

@clawsweeper

clawsweeper Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

🦞👀
ClawSweeper picked this up.

Pull request received. I will update this pull request when review starts.

ClawSweeper review complete

ClawSweeper finished reviewing this revision. The review result is being finalized.

View the workflow run.

@clawsweeper clawsweeper Bot added P2 Normal priority bug or improvement with limited blast radius. merge-risk: 🚨 compatibility 🚨 Merging this PR could break existing users, config, migrations, defaults, or upgrades. rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. labels Sep 7, 2026
@clawsweeper

clawsweeper Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

Codex review: needs maintainer review before merge. Reviewed September 7, 2026, 10:03 PM ET / September 8, 2026, 02:03 UTC.

ClawSweeper review

What this changes

Adds Astra API support and verified ChatGPT Latest/Pro browser selection, with model-specific reasoning validation, documentation, and CLI/MCP regression coverage.

Merge readiness

Ready for maintainer review

This PR remains useful: current main lacks the combined Astra support. The new maintainer evidence resolves the previous API proof blocker, and no blocking patch defects remain.

Likely related people: steipete (high-confidence routing); enki (low-confidence routing).

Priority: P2
Reviewed head: ecc104ec0435a1221053c3716947468a832630fd

Review scores

Measure Result What it means
Overall readiness 🐚 platinum hermit (4/6) A coherent implementation with focused regressions and real API/browser evidence now satisfies the previous proof request.
Proof confidence 🦞 diamond lobster (5/6) Sufficient (live_output): At the reviewed head, maintainer-reported built CLI output demonstrates Astra standard/low and background Pro/max completion, saved-config rejection and override success, and signed-in Latest/High and Latest/Pro consultations. A disclosed setup hook separately demonstrates Sol-to-Latest switching through the production selectors; browser evidence establishes observed UI selection, not backend model attestation.
Patch quality 🐚 platinum hermit (4/6) No actionable review findings were identified.

Verification

Check Result Evidence
Real behavior Verified Sufficient (live_output): At the reviewed head, maintainer-reported built CLI output demonstrates Astra standard/low and background Pro/max completion, saved-config rejection and override success, and signed-in Latest/High and Latest/Pro consultations. A disclosed setup hook separately demonstrates Sol-to-Latest switching through the production selectors; browser evidence establishes observed UI selection, not backend model attestation.
Evidence reviewed 10 items Repository policy: Read the complete root AGENTS.md; no nested tracked AGENTS.md or .agents maintainer-notes directory was found. Applied browser proof guidance and the explicit maintainer decision to defer release notes to the final notes change.
Introduced patch identity: Inspected the complete local introduced diff. Raw head parents match the supplied original-head records; the test merge has the pinned main and head parents in that order and the same tree as the reviewed head.
Previous findings addressed: Browser-only Pro aliases survive engine discovery and are rejected on final API resolution; Astra validates explicit and configured effort before inference. Regression coverage includes CLI startup, multi-model/API coercion, saved invalid defaults, explicit override precedence, and retained GPT-5.6 none support.
Findings None None.
Security None None.

How this fits together

Oracle sends prompts and files through either a provider API or a signed-in browser. Model resolution translates CLI/MCP choices into API request settings or ChatGPT model and effort selections before consultation.

flowchart TD
  A[CLI or MCP request] --> B[Model and engine resolution]
  C[Saved configuration] --> B
  B --> D[API reasoning validation]
  B --> E[Browser model and effort selection]
  D --> F[OpenAI Responses API]
  E --> G[Signed-in ChatGPT]
  F --> H[Consultation result]
  G --> H
Loading

Before merge

None.

Agent review details

Security

None.

Review metrics

Metric Value Why it matters
Production and test growth Production +278/-25 lines; tests +634/-8 lines Production growth supports the stated API/browser capability and is accompanied by focused validation and regression coverage.

Root-cause cluster

Relationship: canonical
Canonical: #465
Summary: The maintainer-supported consolidated branch combines overlapping API and browser work; related PRs remain open pending landing.

Members:

Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything.

Technical review

Best possible solution:

Keep Astra support within Oracle's existing API and browser pipelines, preserving saved preferences, explicit Pro intent, and verified selection evidence.

Do we have a high-confidence way to reproduce the issue?

Not applicable as a feature request; source confirms the missing main-branch support, and the maintainer provides concrete after-change API and browser observations.

Is this the best way to solve the issue?

Yes. The patch extends existing model resolution, request validation, and browser selectors without creating a competing implementation or replacing existing defaults.

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning medium; reviewed against fe2c8d990562.

Labels

Label changes:

  • add proof: sufficient: Contributor real behavior proof is sufficient. At the reviewed head, maintainer-reported built CLI output demonstrates Astra standard/low and background Pro/max completion, saved-config rejection and override success, and signed-in Latest/High and Latest/Pro consultations. A disclosed setup hook separately demonstrates Sol-to-Latest switching through the production selectors; browser evidence establishes observed UI selection, not backend model attestation.
  • add rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🦞 diamond lobster and patch quality is 🐚 platinum hermit.
  • add status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Sufficient (live_output): At the reviewed head, maintainer-reported built CLI output demonstrates Astra standard/low and background Pro/max completion, saved-config rejection and override success, and signed-in Latest/High and Latest/Pro consultations. A disclosed setup hook separately demonstrates Sol-to-Latest switching through the production selectors; browser evidence establishes observed UI selection, not backend model attestation.
  • remove status: 📣 needs proof: Current PR status label is status: 👀 ready for maintainer look.
  • remove rating: 🦐 gold shrimp: Current PR rating is rating: 🐚 platinum hermit, so this older rating label is no longer current.

Label justifications:

  • P2: Adds useful model support with a bounded impact and preserves existing default model selection.
  • rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🦞 diamond lobster and patch quality is 🐚 platinum hermit.
  • status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Sufficient (live_output): At the reviewed head, maintainer-reported built CLI output demonstrates Astra standard/low and background Pro/max completion, saved-config rejection and override success, and signed-in Latest/High and Latest/Pro consultations. A disclosed setup hook separately demonstrates Sol-to-Latest switching through the production selectors; browser evidence establishes observed UI selection, not backend model attestation.
  • proof: sufficient: Contributor real behavior proof is sufficient. At the reviewed head, maintainer-reported built CLI output demonstrates Astra standard/low and background Pro/max completion, saved-config rejection and override success, and signed-in Latest/High and Latest/Pro consultations. A disclosed setup hook separately demonstrates Sol-to-Latest switching through the production selectors; browser evidence establishes observed UI selection, not backend model attestation.

Evidence

What I checked:

  • Repository policy: Read the complete root AGENTS.md; no nested tracked AGENTS.md or .agents maintainer-notes directory was found. Applied browser proof guidance and the explicit maintainer decision to defer release notes to the final notes change. (AGENTS.md:1, ecc104ec0435)
  • Introduced patch identity: Inspected the complete local introduced diff. Raw head parents match the supplied original-head records; the test merge has the pinned main and head parents in that order and the same tree as the reviewed head. (ce9550c3757d)
  • Previous findings addressed: Browser-only Pro aliases survive engine discovery and are rejected on final API resolution; Astra validates explicit and configured effort before inference. Regression coverage includes CLI startup, multi-model/API coercion, saved invalid defaults, explicit override precedence, and retained GPT-5.6 none support. (src/cli/runOptions.ts:112, ecc104ec0435)
  • Browser selection and existing preferences: Latest selection checks exact Latest/最新 radio labels or the version-six composer signal; effort selection recognizes version-prefixed controls. Browser callers retain current/ignore behavior, and MCP preserves explicit and saved strategy/effort precedence. (src/browser/actions/modelSelection.ts:775, ecc104ec0435)
  • New real API and browser proof: The captured maintainer comment at feat(models): support Astra API and Latest browser selection #465 (comment) reports built first-party CLI standard/low and background Pro/max completions returning ORACLE_API_STANDARD_OK and ORACLE_API_PRO_OK. Invalid saved none was rejected; explicit low succeeded through that configuration. Unmodified signed-in browser runs completed Latest/High and Latest/Pro; a separately disclosed setup hook preselected Sol before a successful Latest transition with status=switched and verified Pro. This directly addresses the preceding review's outstanding API completion request. (ecc104ec0435)
  • Official API contract: The fetched Astra model documentation confirms low through max effort, $10/$50 standard input/output pricing, and the 272K higher-rate threshold. The model guide confirms no none effort and continued Pro mode. These contracts directly govern the changed model configuration and Responses validation.

Likely related people:

  • steipete: Suggested for follow-up; no historical authorship or introduction is verified. (role: unverified routing candidate; confidence: low)
  • enki: Suggested for follow-up; no historical authorship or introduction is verified. (role: unverified routing candidate; confidence: low)

Rating scale

Score Internal tier Crab rank Meaning
6/6 S 🦀 challenger crab Exceptional readiness
5/6 A 🦞 diamond lobster Very strong readiness
4/6 B 🐚 platinum hermit Good normal PR; ordinary maintainer review
3/6 C 🦐 gold shrimp Useful, but confidence is limited
2/6 D 🦪 silver shellfish Proof or implementation needs work
1/6 F 🧂 unranked krab Not merge-ready
N/A NA 🌊 off-meta tidepool Rating does not apply

Overall follows the weaker of proof and patch quality.
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

Workflow

  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.

History

Review history (6 earlier review cycles)
  • reviewed 2026-09-07T17:24:08.127Z sha 7b388c9 :: needs real behavior proof before merge. :: [P2] Reject unsupported Astra reasoning effort before dispatch | [P2] Reject or preserve Pro intent in the Astra API alias
  • reviewed 2026-09-07T17:49:04.349Z sha f5a2c0a :: needs real behavior proof before merge. :: [P2] Apply the API alias rejection only after engine resolution | [P2] Remove the unsupported generic pro alias from Astra documentation
  • reviewed 2026-09-07T17:55:38.968Z sha 5404813 :: needs real behavior proof before merge. :: [P2] Revalidate the Pro alias after final engine coercion
  • reviewed 2026-09-07T18:02:17.997Z sha fbd807b :: needs real behavior proof before merge. :: none
  • reviewed 2026-09-07T18:07:06.757Z sha fbd807b :: needs real behavior proof before merge. :: none
  • reviewed 2026-09-08T01:43:04.036Z sha ecc104e :: needs real behavior proof before merge. :: none

@FNDEVVE

FNDEVVE commented Sep 7, 2026

Copy link
Copy Markdown
Contributor Author

@clawsweeper re-review

@clawsweeper

clawsweeper Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event exact_review_queue).
Result: when the review finishes, ClawSweeper will create the durable review comment if needed or update the existing comment in place.

@clawsweeper clawsweeper Bot removed the merge-risk: 🚨 compatibility 🚨 Merging this PR could break existing users, config, migrations, defaults, or upgrades. label Sep 7, 2026
@FNDEVVE

FNDEVVE commented Sep 7, 2026

Copy link
Copy Markdown
Contributor Author

@clawsweeper re-review

@clawsweeper

clawsweeper Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event exact_review_queue).
Result: when the review finishes, ClawSweeper will create the durable review comment if needed or update the existing comment in place.

@clawsweeper clawsweeper Bot added the merge-risk: 🚨 auth-provider 🚨 Merging this PR could break OAuth, tokens, provider routing, model choice, or credentials. label Sep 7, 2026
@FNDEVVE

FNDEVVE commented Sep 7, 2026

Copy link
Copy Markdown
Contributor Author

@clawsweeper re-review

@clawsweeper

clawsweeper Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event exact_review_queue).
Result: when the review finishes, ClawSweeper will create the durable review comment if needed or update the existing comment in place.

@FNDEVVE

FNDEVVE commented Sep 7, 2026

Copy link
Copy Markdown
Contributor Author

@clawsweeper re-review

@clawsweeper

clawsweeper Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event exact_review_queue).
Result: when the review finishes, ClawSweeper will create the durable review comment if needed or update the existing comment in place.

oraclexing and others added 2 commits September 8, 2026 07:52
Preserve browser-only Pro aliases through CLI engine discovery, retain model-specific API capabilities, and verify localized Latest and effort controls. Combine the compatible work from steipete#448, steipete#449, and steipete#465; release notes are deferred to the final notes PR.
@clawsweeper clawsweeper Bot removed the merge-risk: 🚨 auth-provider 🚨 Merging this PR could break OAuth, tokens, provider routing, model choice, or credentials. label Sep 8, 2026
@steipete steipete changed the title feat(browser): support GPT-6 Astra as ChatGPT's "Latest" model with Pro effort feat(models): support Astra API and Latest browser selection Sep 8, 2026
@steipete

steipete commented Sep 8, 2026

Copy link
Copy Markdown
Owner

Maintainer proof for ecc104ec0435a1221053c3716947468a832630fd:

  • CI is green on the exact head: https://github.com/steipete/oracle/actions/runs/34177347151
  • 2,286 tests passed / 45 skipped; build, formatting, lint/typecheck, and docs checks passed. Local and branch P0–P2 autoreview are clean.
  • Built first-party API CLI: gpt-6-astra standard/low returned ORACLE_API_STANDARD_OK; Pro/max completed its background Responses request and returned ORACLE_API_PRO_OK. An invalid saved none default was rejected, and explicit low effort returned ORACLE_SAVED_CONFIG_OK through the same saved configuration.
  • Unmodified built browser CLI: Latest/High completed; --model gpt-6-pro then completed with verified resolvedLabel=Pro, failClosed=yes, returning ORACLE_LATEST_PRO_OK.
  • Controlled transition proof used a module hook only to preselect Sol through the production selector before the requested Latest selection. The requested run then recorded Latest status=switched, Pro verified=yes, and returned ORACLE_SOL_TO_LATEST_OK. This is explicit setup evidence, separate from the unmodified CLI runs.
  • Live testing reproduced an early CLI route-preflight rejection of the browser-only alias; the fix delays that API-only validation until engine selection, with a process-level CLI regression test.

No default model changed. Contributor credit and the deferred release note are preserved in the PR body/final notes change.

@clawsweeper clawsweeper Bot added proof: sufficient Contributor real behavior proof is sufficient. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. labels Sep 8, 2026
@clawsweeper clawsweeper Bot removed status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. rating: 🦐 gold shrimp Decent PR readiness signal, but merge confidence is limited. labels Sep 8, 2026
@steipete
steipete merged commit 12d106f into steipete:main Sep 8, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

P2 Normal priority bug or improvement with limited blast radius. proof: sufficient Contributor real behavior proof is sufficient. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants