Skip to content

fix(browser): keep extra-high distinct from Pro thinking time - #354

Merged
steipete merged 5 commits into
steipete:mainfrom
ozeron:fix/extra-high-thinking-time-vs-pro
Aug 5, 2026
Merged

fix(browser): keep extra-high distinct from Pro thinking time#354
steipete merged 5 commits into
steipete:mainfrom
ozeron:fix/extra-high-thinking-time-vs-pro

Conversation

@ozeron

@ozeron ozeron commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Stop normalizing extra-high / xhigh / extrahigh to heavy
  • Treat extra-high as Extra High (non-Pro) and heavy as explicit Pro on GPT-5.6 Sol
  • Update skill + CLI/config docs so agents no longer request heavy for Extra High

Fixes #353

Proof

  • pnpm vitest run tests/cli/options.test.ts tests/browser/thinkingTime.test.ts tests/mcp/consult.test.ts tests/mcp/chatgptImage.test.ts tests/cli/browserDefaults.test.ts — 127 passed
  • pnpm run build
  • Live browser smoke (built CLI, GPT-5.6 Sol, --browser-thinking-time extra-high, copy-profile):
    • session pr354-extra-high-proof
    • meta.jsonbrowser.config.thinkingTime: "extra-high"
    • log → [browser] Thinking time: Extra High (not Pro)
    • model evidence → resolvedLabel=GPT-5.6 Sol; answer ok
  • Docs/skill updated: Sol max effort is extra-high; heavy reserved for Pro

@clawsweeper re-review

Normalize extra-high/xhigh to their own level so GPT-5.6 Sol selects
Extra High instead of collapsing to heavy/Pro. Reserve heavy for
explicit Pro selection. Fixes steipete#353.

Co-authored-by: Cursor <cursoragent@cursor.com>
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@clawsweeper clawsweeper Bot added rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. P2 Normal priority bug or improvement with limited blast radius. labels Aug 3, 2026
@clawsweeper

clawsweeper Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Codex review: needs maintainer review before merge. Reviewed August 5, 2026, 8:54 AM ET / 12:54 UTC.

ClawSweeper review

What this changes

The PR adds extra-high as a distinct browser thinking-time level, maps its aliases to Extra High rather than Pro, and updates selector behavior, tests, and guidance.

Merge readiness

⚠️ Ready for maintainer review - 2 items remain

This PR remains necessary: current main and v0.17.0 normalize extra-high to heavy, then the GPT-5.6 selector treats heavy as Pro. The submitted head separates those paths and has focused coverage; no code-level blocking finding was identified.

Priority: P2
Reviewed head: a6a154106e75d26a0a8c1bc5e7f3e2ec5b3ec597

Review scores

Measure Result What it means
Overall readiness 🐚 platinum hermit (4/6) A focused, covered correction with real browser-run output; the unavailable screenshot links limit independent visual inspection but do not contradict the recorded session result.
Proof confidence 🐚 platinum hermit (4/6) Sufficient (live_output): The PR body reports an after-fix built-CLI browser run with thinkingTime: "extra-high", an Extra High log result, GPT-5.6 Sol resolution, and a successful response; the linked screenshots now return 404, but the quoted live session output remains sufficient.
Patch quality 🐚 platinum hermit (4/6) No actionable review findings were identified.

Verification

Check Result Evidence
Real behavior Verified Sufficient (live_output): The PR body reports an after-fix built-CLI browser run with thinkingTime: "extra-high", an Extra High log result, GPT-5.6 Sol resolution, and a successful response; the linked screenshots now return 404, but the quoted live session output remains sufficient.
Evidence reviewed 6 items Current main reproduces the source defect: Current normalization maps extra-high, extrahigh, and xhigh to heavy; the current GPT-5.6 picker has a heavy-only Pro preference.
Head implements a distinct canonical level: The PR head retains extra-high in the canonical level set and normalizes its aliases to that level rather than heavy.
Selector distinction is narrow and explicit: The submitted selector matches Extra High tokens separately and reserves the GPT-5.6 Pro shortcut for heavy.
Findings None None.
Security None None.

How this fits together

Oracle maps a CLI or config thinking-time value to a ChatGPT browser composer selection, then records the resulting setting in session metadata and logs. This path controls whether GPT-5.6 Sol uses Extra High or its separate Pro effort.

flowchart LR
  A[CLI or config value] --> B[Effort normalization]
  B --> C[Browser run configuration]
  C --> D[ChatGPT effort menu]
  D --> E[Selected effort]
  E --> F[Session metadata and logs]
Loading

Before merge

  • Resolve merge risk (P1) - Existing persisted browser.thinkingTime: "extra-high" settings will intentionally select Extra High instead of the formerly conflated Pro effort after upgrade.
  • Complete next step (P2) - No actionable repair finding remains; this PR already owns the fix, with check completion and ordinary merge acceptance as the remaining steps.
Agent review details

Security

None.

Review metrics

Metric Value Why it matters
Patch surface 18 files affected; 223 added, 47 removed The selector correction is accompanied by type propagation, documentation alignment, and focused regression coverage.

Merge-risk options

Maintainer options:

  1. Land the documented correction (recommended)
    Accept the intentional upgrade behavior so existing extra-high settings select Extra High while heavy remains the explicit GPT-5.6 Pro request.

Technical review

Best possible solution:

Land the documented Extra High/Pro distinction after the current checks pass, with the intended persisted-setting behavior made visible to upgraders.

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

Yes, source-reproducible: current main collapses the aliases to heavy and then uses the GPT-5.6 Pro branch; the PR adds matching selector fixtures and reports an after-fix browser smoke.

Is this the best way to solve the issue?

Yes. A distinct canonical extra-high level preserves the existing CLI/config spelling, separates the two UI meanings at the normalization boundary, and avoids a parallel setting.

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning high; reviewed against 0f0bdb6a752e.

Labels

Label changes:

  • add rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🐚 platinum hermit and patch quality is 🐚 platinum hermit.
  • remove rating: 🦞 diamond lobster: Current PR rating is rating: 🐚 platinum hermit, so this older rating label is no longer current.
  • remove proof: 📸 screenshot: Current real behavior proof evidence kind is live_output.

Label justifications:

  • P2: This fixes a real browser configuration mismatch with limited, effort-selection-specific blast radius.
  • merge-risk: 🚨 compatibility: Upgrading changes the observable outcome of saved extra-high settings from Pro to Extra High.
  • rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🐚 platinum hermit 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): The PR body reports an after-fix built-CLI browser run with thinkingTime: "extra-high", an Extra High log result, GPT-5.6 Sol resolution, and a successful response; the linked screenshots now return 404, but the quoted live session output remains sufficient.
  • proof: sufficient: Contributor real behavior proof is sufficient. The PR body reports an after-fix built-CLI browser run with thinkingTime: "extra-high", an Extra High log result, GPT-5.6 Sol resolution, and a successful response; the linked screenshots now return 404, but the quoted live session output remains sufficient.

Evidence

What I checked:

  • Current main reproduces the source defect: Current normalization maps extra-high, extrahigh, and xhigh to heavy; the current GPT-5.6 picker has a heavy-only Pro preference. (src/oracle/thinkingTime.ts:40, 0f0bdb6a752e)
  • Head implements a distinct canonical level: The PR head retains extra-high in the canonical level set and normalizes its aliases to that level rather than heavy. (src/oracle/thinkingTime.ts:45, a6a154106e75)
  • Selector distinction is narrow and explicit: The submitted selector matches Extra High tokens separately and reserves the GPT-5.6 Pro shortcut for heavy. (src/browser/actions/thinkingTime.ts:209, a6a154106e75)
  • Regression coverage exercises both visible choices: The browser fixture verifies heavy selects Pro and extra-high selects or recognizes Extra High in a GPT-5.6 Sol Intelligence menu. (tests/browser/thinkingTime.test.ts:750, a6a154106e75)
  • Feature-history routing: The current picker behavior appears to originate in the merged updated-model-picker work, co-authored by Peter Steinberger; current release blame attributes the surrounding selector block to the v0.17.0 release commit. (src/browser/actions/thinkingTime.ts:205, 6173c4abffd7)
  • Release and main check: v0.17.0 predates this open PR and contains the source behavior above; current main is not contained by a release tag, so the correction is not yet shipped. (CHANGELOG.md:3, 0f46c76a0d1d)

Likely related people:

  • Renfei Zhou: Authored merged picker-support commit 6173c4a, the history entry that introduced the surrounding Intelligence-picker behavior. (role: introduced picker behavior; confidence: high; commits: 6173c4abffd7; files: src/browser/actions/thinkingTime.ts)
  • steipete: Co-authored the original picker work, owns the current-release blame around this selector, and authored the latest PR-head proof housekeeping commit. (role: recent area contributor; confidence: high; commits: 0f46c76a0d1d, a6a154106e75; files: src/browser/actions/thinkingTime.ts, src/oracle/thinkingTime.ts)

Rank-up moves

Optional improvements that raise the rating; they are not merge blockers.

  • Let the current multi-platform checks complete on this exact head.

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 (5 earlier review cycles)
  • reviewed 2026-08-03T18:45:53.389Z sha 7836550 :: needs real behavior proof before merge. :: [P2] Update all bundled guidance for the new heavy meaning
  • reviewed 2026-08-03T18:55:08.089Z sha 75e8c13 :: needs real behavior proof before merge. :: none
  • reviewed 2026-08-03T19:05:15.620Z sha ca5dd5c :: needs maintainer review before merge. :: none
  • reviewed 2026-08-03T21:15:23.945Z sha ca5dd5c :: needs maintainer review before merge. :: none
  • reviewed 2026-08-03T22:37:41.280Z sha ca5dd5c :: needs maintainer review before merge. :: none

ozeron and others added 2 commits August 3, 2026 19:48
Co-authored-by: Cursor <cursoragent@cursor.com>
Align skill and CLI docs with the Extra High vs Pro split so agents
stop requesting heavy when they mean Extra High.

Co-authored-by: Cursor <cursoragent@cursor.com>
@ozeron

ozeron commented Aug 3, 2026

Copy link
Copy Markdown
Contributor Author

Addressed ClawSweeper blockers:

  1. Docs/skill: Sol max effort is now extra-high; heavy is Pro-only (skills/oracle/SKILL.md, docs/browser-mode.md, docs/cli-reference.md, docs/configuration.md, docs/mythical-pro-agents.md).
  2. Live proof: built CLI smoke pr354-extra-high-proofthinkingTime: "extra-high", log [browser] Thinking time: Extra High (not Pro), model GPT-5.6 Sol.

@clawsweeper re-review

@clawsweeper

clawsweeper Bot commented Aug 3, 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 repository_dispatch).
Result: when the review finishes, ClawSweeper will create the durable review comment if needed or update the existing comment in place.

Re-review progress:

@clawsweeper clawsweeper Bot added the merge-risk: 🚨 compatibility 🚨 Merging this PR could break existing users, config, migrations, defaults, or upgrades. label Aug 3, 2026
Co-authored-by: Cursor <cursoragent@cursor.com>
@ozeron

ozeron commented Aug 3, 2026

Copy link
Copy Markdown
Contributor Author

Live screenshots (redacted — please review)

1) Session meta / log proof

thinkingTime: "extra-high" and [browser] Thinking time: Extra High (not Pro).

session meta redacted

2) Chrome composer pill

Live ChatGPT UI crop showing Extra High selected (sidebar/URL/workspace disclaimer removed).

chrome Extra High pill

Session: pr354-extra-high-proof / pr354-chrome-shot3.

@clawsweeper clawsweeper Bot added proof: sufficient Contributor real behavior proof is sufficient. proof: 📸 screenshot Contributor real behavior proof includes screenshot evidence. 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. rating: 🦞 diamond lobster Very strong PR readiness with only minor maintainer review expected. and removed rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. labels Aug 3, 2026
@clawsweeper clawsweeper Bot added rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. and removed proof: 📸 screenshot Contributor real behavior proof includes screenshot evidence. rating: 🦞 diamond lobster Very strong PR readiness with only minor maintainer review expected. labels Aug 5, 2026
@steipete
steipete merged commit a1825d0 into steipete:main Aug 5, 2026
5 checks passed
@steipete

steipete commented Aug 5, 2026

Copy link
Copy Markdown
Owner

Landed with independent maintainer verification.

Local gate on Node 24.18.0 / pnpm 10.33.2:

pnpm run lint
pnpm run docs:check
pnpm run docs:site
pnpm run test
pnpm run build
pnpm run test:packed-cli

All passed. A packed-tarball black-box run accepted extra-high, extra high, extrahigh, xhigh, and heavy; invalid maximum failed before browser launch with the documented choices.

Live signed-in ChatGPT proof from the packed CLI:

[browser] Thinking time: Extra High (already selected)
[browser] Model selection evidence: requestedKey=gpt-5.6-sol; target=GPT-5.6 Sol; resolvedLabel=GPT-5.6 Sol; status=already-selected; strategy=select; verified=yes
Answer:
ok
25.5s · GPT-5.6 Sol[browser]

Persisted session metadata reported status: completed and browser.config.thinkingTime: extra-high. Exact-head CI run https://github.com/steipete/oracle/actions/runs/31007487746 passed Linux, macOS, Windows, the Chromium CDP proof, and GitGuardian for a6a154106e75d26a0a8c1bc5e7f3e2ec5b3ec597. Final autoreview was clean with no accepted/actionable findings. Squash-merged as a1825d09aede73cdcf87387976b4c76db61ef151 with contributor credit preserved.

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

Labels

merge-risk: 🚨 compatibility 🚨 Merging this PR could break existing users, config, migrations, defaults, or upgrades. 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.

browser: --browser-thinking-time extra-high selects Pro instead of Extra High (GPT-5.6 Sol)

2 participants