Skip to content

fix(web): keep the composer strip for a non-Git project's capacity reading - #432

Merged
rynfar merged 2 commits into
pylonfrom
fix/composer-strip-hides-capacity
Sep 9, 2026
Merged

fix(web): keep the composer strip for a non-Git project's capacity reading#432
rynfar merged 2 commits into
pylonfrom
fix/composer-strip-hides-capacity

Conversation

@rynfar

@rynfar rynfar commented Sep 9, 2026

Copy link
Copy Markdown
Collaborator

On a project with no Git repository, the composer's context strip disappears
while the composer is at full size, taking the provider capacity readout with
it. Collapsing the composer brings both back, so the gauge looks like it is
flickering on scroll.

The strip is hidden by shouldShowComposerContextStrip, which asks whether
there is any reason to keep it open: a repository, an environment worth
picking, or the composer's resting controls relocated into it. On a non-Git
project with one environment the first two are false, and the third follows the
composer's resting state — so a full-size composer leaves nothing holding the
strip open. The capacity readout is the one thing in the strip that belongs to
the account rather than the workspace, and it was never counted, so a strip with
a live reading in it was still treated as empty.

Capacity now counts as content, the same way the environment indicator was added
in 9bda807 for the same collapse. The strip still collapses when it genuinely
has nothing to say, including when the capacity setting is off.

Measured on a real Codex sign-in in a non-Git project, on the strip element:

visibility position / top rendered text
before hidden absolute / 764 (below an 800px viewport) (none)
after visible relative / 732 Codex 65% 5d 11h

The text was present in textContent before the fix too — it was rendered the
whole time inside a hidden container.

No before/after images: the in-app browser returned "Preview snapshot failed"
on every capture attempt with the panel visible, so the DOM measurements above
stand in. Happy to add images if the capture path starts working.

Written by Claude Opus 5 in Claude Code.


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:M labels Sep 9, 2026
@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

Provider Metric Main baseline This PR Impact PR ceiling
Codex Total thread wire 13.8 KiB 13.7 KiB −177 B (−1.2%) 15.1 KiB
Codex Thread snapshot wire 7.1 KiB 7.1 KiB −4 B (−0.1%) 7.3 KiB
Codex Live turn WebSocket wire 6.7 KiB 6.6 KiB −173 B (−2.5%) 7.8 KiB
Codex Live turn WebSocket decoded 57.4 KiB 56.5 KiB −910 B (−1.5%) 66.4 KiB
Codex Live turn messages 10 8 −2 (−20.0%) 21
Claude Total thread wire 13.8 KiB 13.7 KiB −132 B (−0.9%) 15.1 KiB
Claude Thread snapshot wire 7.1 KiB 7.1 KiB −10 B (−0.1%) 7.3 KiB
Claude Live turn WebSocket wire 6.7 KiB 6.6 KiB −122 B (−1.8%) 7.8 KiB
Claude Live turn WebSocket decoded 58.2 KiB 57.3 KiB −884 B (−1.5%) 66.4 KiB
Claude Live turn messages 9 8 −1 (−11.1%) 21

Baseline: f669dcd · PR result: 4b7a11f · Source CI: success

Scenario and decoded snapshot size

10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.

  • Codex decoded thread snapshot: 111.2 KiB
  • Claude decoded thread snapshot: 111.9 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

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

Labels

size:M 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.

1 participant