Skip to content

[Codex effort format] - Step 2: Describe a collapsed row with its base blurb - #2767

Open
zeroliu wants to merge 1 commit into
codex-effort-1-wire-formatfrom
codex-effort-2-base-blurb
Open

[Codex effort format] - Step 2: Describe a collapsed row with its base blurb#2767
zeroliu wants to merge 1 commit into
codex-effort-1-wire-formatfrom
codex-effort-2-base-blurb

Conversation

@zeroliu

@zeroliu zeroliu commented Aug 7, 2026

Copy link
Copy Markdown
Collaborator

Relates to logancyang/obsidian-copilot-preview#271

Why

Once Codex's effort variants collapse into one picker row, that row still shows a blurb written for a single effort. GPT-5.6-Sol reads:

Latest frontier agentic coding model. Fast responses with lighter reasoning

"Fast responses with lighter reasoning" is codex-acp's description of gpt-5.6-sol[low]. It is the first variant in the catalog, so it wins the grouping — on a row that now spans low through ultra. A reader picking ultra is told the model gives lighter reasoning.

codex-acp already publishes the sentence that belongs there. Alongside its per-effort catalog it advertises a category:"model" config option listing base models, where the same model reads simply "Latest frontier agentic coding model." Copilot ignores that channel because a backend reporting a models catalog never consults its config options for model metadata.

What

A collapsed model row is described by its base model rather than by whichever effort variant happened to sort first.

Before: GPT-5.6-Sol — "Latest frontier agentic coding model. Fast responses with lighter reasoning"

After: GPT-5.6-Sol — "Latest frontier agentic coding model."

Applies wherever a backend publishes both channels, which today is Codex alone. Nothing else changes: model names, effort dropdowns, grouping and selection are untouched, and the settings list and chat picker show the same rows as before.

Non goal

  • Model names keep coming from the variant names with the (low) suffix stripped; that already resolves correctly and gains nothing from a second source.
  • Codex still switches models through session/set_model. Reading a description from the config option does not move the apply path onto it.
  • opencode and Claude are unaffected — neither publishes a base-model description channel alongside a models catalog.
  • The reasoning_effort, fast-mode and collaboration_mode options codex-acp also advertises stay unread.

Screenshot

Not captured — the blurb renders in Obsidian's chat model picker and Settings → Agent → Codex, and this environment cannot drive the Obsidian UI to load the branch build.

Replaying the live codex-acp@1.1.10 reply through the branch's real translateBackendState produces the descriptions those panes render:

gpt-5.6-sol   | Latest frontier agentic coding model.
gpt-5.6-terra | Balanced agentic coding model for everyday work.
gpt-5.6-luna  | Fast and affordable agentic coding model.
gpt-5.5       | Frontier model for complex coding, research, and real-world work.

Verification step 2 reaches the real panes.

Risk

Low

Criterion Status Reason
No behavior change, or a cosmetic/copy/docs/config change visible where it renders, or deterministic tests cover the changed behavior A copy-only change; translateBackendState.test.ts covers preferring the config-option blurb and falling back when the option omits a model, and descriptor.test.ts asserts it against a transcribed live Codex reply
A defect would fail CI or be obvious on first use Those tests run in CI, and a wrong blurb is visible on the row itself
A revert fully restores prior state, including persisted data Display-time derivation only; nothing is written or persisted
No auth, permissions, secrets, or input-handling surface changes Reads an already-parsed config option
No public API, plugin API, message, or on-disk contract changes No settings, wire, or on-disk shape changes
No core-path concurrency, async-lifecycle, or state-machine changes A pure lookup inside an existing pure translator
No hot-path behavior lacks deterministic coverage Both the overlay hit and the fallback are covered
No new dependency Dependency manifests are unchanged
Human-only behavior stays in one feature area and surfaces quickly Confined to agent model rows; a wrong blurb shows on the next picker open

Review: skim Why and What, run Verification step 2, and confirm CI is green.

Verification

Requires codex-acp installed and logged in.

  1. Build and load this branch.
  2. Open a Codex chat and the model picker. GPT-5.6-Sol reads "Latest frontier agentic coding model." with no trailing clause about response speed or reasoning depth, and the same row still offers low through ultra in its effort dropdown.
  3. Open Settings → Agent → Codex and confirm the same blurbs there, with the row count unchanged from before this PR.

@zeroliu
zeroliu marked this pull request as ready for review August 8, 2026 04:24
codex advertises a `category:"model"` config option alongside its `models`
catalog. The catalog carries one entry per (model × effort) pair and each
blurb describes that one effort, so a collapsed row inherited whichever
variant came first — GPT-5.6-Sol read "…Fast responses with lighter
reasoning" on a row spanning low through ultra.

Overlay the description from the model config option when the agent publishes
one, since that channel lists base models and its blurb describes the whole
row. Names need no overlay: `stripEffortSuffix` already resolves them from the
variants. No-op for opencode (the option IS its catalog, so the group already
carries it) and for the Claude SDK adapter, which synthesizes only a
`thought_level` option.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@zeroliu
zeroliu force-pushed the codex-effort-2-base-blurb branch from bf9d198 to 36bd619 Compare August 8, 2026 04:38

zeroliu commented Aug 8, 2026

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🎉

Reviewed commit: 36bd6197dc

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant