Skip to content

fix(client-runtime): Pi subagents show their thinking level - #33346

Open
StiensWout wants to merge 4 commits into
pingdotgg:mainfrom
StiensWout:t3/restore-pi-thinking-level
Open

StiensWout wants to merge 4 commits into
pingdotgg:mainfrom
StiensWout:t3/restore-pi-thinking-level

Conversation

@StiensWout

Copy link
Copy Markdown
Contributor

Pi delegates can save a different thinking level from their parent, but subagent metadata omitted it. The existing web hover and mobile Agents model lines now show the child's stated level.

Both clients share child-selection precedence and effort formatting. A saved app-owned child selection takes precedence over its own reported selection; unknown effort stays absent, boolean thinking stays excluded, and known values survive a missing or stale catalog. Existing layouts and provider-fetch behavior are unchanged.

Validation: deterministic red/green tests cover Pi thinking, child selection and provider-instance fallback, boolean thinking, absent OpenCode variant, and stale catalog values. pnpm exec vp run check:changed passes. Local cubic found no issues.

Standard change: shared selection behavior and web/mobile consumers.

UI evidence: before, raw fallback after, catalog label and saved-child precedence, 390px web.

The before capture removes thinking from the shared list. Catalog/precedence captures use sanitized browser projection fixtures feeding the real mounted consumer: saved child High, reported Max, parent Max. They prove client rendering given projected data, not transport or provider discovery. Twelve additional public-helper runtime assertions cover instance/model rejection, catalog transition, ordering and mobile workflow catalog labels. Final proof audit found no remaining code gaps. Native mobile and packaged Electron rendering were not run.

Council review

Rounds: 2

Delegate Round 1 Round 2
Claude Opus 5.5 9/10 9/10
GPT 6.1 Sol 8/10 9/10
Grok 4.7 9/10 9/10

Created with GPT 6.1 Sol in the Codex harness, Claude Opus 5.5 in the Claude harness, and Grok 4.7 in the Grok harness through T3 Code. Sol completed evidence recovery after Grok's client fixture failed.

Closes #30442

StiensWout and others added 4 commits November 9, 2026 13:24
Pi states its reasoning as a `thinking` select, which the shared effort
list left out, so subagent labels dropped it. Add it to the list (effort
readers take only select descriptors and string values, so Claude's
boolean `thinking` is still never effort) and drop the two copies that
appended it by hand. Add `subagentModelSelection` so clients label a
delegated child by its own saved selection, never the parent's.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…hinking level

Web hover and mobile Agents metadata now read one shared selection
resolver: an app-owned child's saved selection first, then the
selection reported for the subagent, on the subagent's own provider
instance, never the parent's. Both format the level with the shared
catalog formatter, which keeps a stated level as raw text before the
catalog loads or when the catalog model has no option descriptors.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…changes

Co-authored-by: GPT 6.1 Sol <codex@openai.com>

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>

Co-authored-by: Grok 4.7 <noreply@x.ai>
@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:M 30-99 changed lines (additions + deletions). labels Nov 9, 2026
@macroscopeapp

macroscopeapp Bot commented Nov 9, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved at 6a813e3

Macroscope's review found this PR approvable — Subagent metadata on web and mobile now shows Pi thinking levels using the appropriate child selection. The changes are confined to metadata presentation and preserve provider-instance matching without changing execution defaults.

You can add or adjust custom eligibility rules. Learn more.

Copy link
Copy Markdown
Member

Thanks, @StiensWout, for the thorough fix and evidence! #30489 by @juliusmarminge already addresses the same Pi subagent thinking-level issue, so we’re keeping that PR. Please share any remaining mobile or selection-precedence gaps there.

Copy link
Copy Markdown
Member

Reopening this as the keeper: it merges cleanly with main and includes the Pi thinking-level fix plus child-selection and mobile coverage. Thank you, @StiensWout!

This branch has not been deployed

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

Labels

size:M 30-99 changed lines (additions + deletions). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Pi subagent rows omit the reasoning level, so delegated effort cannot be verified

2 participants