Skip to content

base red: continuation spacing test reads the run gap for another agent's line (#31879) - #32138

Merged
cmux-bot[bot] merged 1 commit into
feat-cmux-nextfrom
lane/web-base-red-continuation-spacing
Nov 2, 2026
Merged

cmux-bot[bot] merged 1 commit into
feat-cmux-nextfrom
lane/web-base-red-continuation-spacing

Conversation

@teamleaderleo

@teamleaderleo teamleaderleo commented Nov 2, 2026 •

Copy link
Copy Markdown
Collaborator

Base-red-job: web / react-apps-check
Base-red-job: web / react-apps-check (5)

Red

test/transcript-continuation-spacing.test.ts, "the same assistant's next reply and another agent's line take the block gap; a prompt keeps the turn gap", fails on base at expect(actual.peer).toBeCloseTo(gridLength("gap-block"), 1): Expected 24, Received 16 (base run 41425459815, job 125211076111, shard 5).

Culprit

#31879 ("Agent chat: a run of rows and status lines sit 16 from the prose around them"). Its second commit gave every status row (model.ts isStatusRow) MARK_STATUS, and transcriptGap(MARK_MESSAGE, MARK_STATUS) is the run gap (16). isStatusRow lists another agent's received message (kind === "user" with incoming.kind === "message"), which is exactly the gallery's continuation-peer row. #31946 had retargeted this test to the block gap 15 minutes before #31879 landed.

Is 16 intended?

Yes, and it is no overlap: the peer line's top sits 16px under the reply's bottom, a positive gap. The grid helper says so (transcriptGap(MARK_MESSAGE, MARK_STATUS) === TRANSCRIPT_RUN_GAP, asserted in continuationSpacing.test.ts), and the specs:

  • design/transcript-spacing.md, Rules 3 and 4: received message lines are one-line activity rows, and "a run of rows is 16 from the prose around them"; The table, prose-to-step / step-to-prose.
  • design/chat-transcript.md, Always rules: "another agent's received line" is a one-line activity row; "Rows between replies": another agent's message is an isStatusRow row.
  • design/grid.md 5.5 still lists a status line under the 24 block gap; transcript-spacing.md (Agent chat: a run of rows and status lines sit 16 from the prose around them #31879) is the newer rule for runs and status lines.

Change

Test only. The peer assertion reads transcriptGap(MARK_MESSAGE, MARK_STATUS) instead of a literal token, as #31791 and #31946 did for the other gaps. No product CSS or transcriptGrid.ts change. The same-assistant gap (block gap), footer gap, turn gap and padding assertions are unchanged.

Evidence

Fast-checks runs at head 05bff4b6037cda74be0830e1b98cf97d040e3c1b, cd webviews && bun run test test/transcript-continuation-spacing.test.ts:

  • Base's test restored: red, Expected: 24, Received: 16 on the peer gap (run 41429591328).
  • This PR's test: green, 1 file, 0 failed (run 41429614955).
  • Base: red in web / react-apps-check (5), job 125211076111 (run 41425459815).

Agent session: agent session

🤖 Generated with Claude Code

…nt's line

#31879 made every status row (model.ts isStatusRow, which includes another
agent's received message) sit the run gap (16) from the reply around it.
transcript-continuation-spacing still expected the block gap (24) under the
reply for the gallery's peer line. Read transcriptGap(MARK_MESSAGE,
MARK_STATUS) instead of a literal token.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Agent-Session: https://cmux.com/deeplink/agent?id=aid-2f629b93d5a20c58e6f8
@cursor

cursor Bot commented Nov 2, 2026

Copy link
Copy Markdown

Bugbot needs on-demand usage enabled

Bugbot uses usage-based billing for this team and requires on-demand usage to be enabled.

A team admin can enable on-demand usage in the Cursor dashboard.

@github-actions

github-actions Bot commented Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

cmux status (one comment, edited in place; each line is updated by the job that owns it)

Review 05bff4b: HQ feed card · gallery before/after runs · checks

App of this head (app.zip, kept 1 day)

gh workflow run reload-build.yml -R manaflow-ai/cmux --ref feat-cmux-next -f tag=pr32138 -f ref=lane/web-base-red-continuation-spacing -f platform=macos -f backend_mode=local

Shipped in:

@github-actions github-actions Bot added the risk:low Risk tier (docs/ci/risk-tiers.md) label Nov 2, 2026
@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

Review (subagent claude-opus-5-5 medium): SHIP at 05bff4b

The 16 gap is meant, not swept in by accident. An incoming message has been an isStatusRow since #29124, where the doc comment names "another agent's message or notice". The second commit of #31879 deliberately gives every isStatusRow line MARK_STATUS and the run gap. The specs agree: design/transcript-spacing.md rules 3 and 4 put received lines with the run 16 from prose, and design/chat-transcript.md names "another agent's received line" as a one-line activity row. The fixture row continuation-peer is a user row with incoming.kind: "message".

The test still checks these against the live page: same reply to reply = gap-block, the hover glyphs clear the foot gap, footer = gap-footer, prompt = gap-turn, and zero paddings. The peer check is not vacuous: the expected value (16) differs from the old 24.

Follow-ups: design/grid.md 5.5 still says another agent's line takes the block gap. Update it to the run gap so it matches transcript-spacing.md rule 4.

@cmux-bot
cmux-bot Bot merged commit 8dfb675 into feat-cmux-next Nov 2, 2026
174 of 186 checks passed
@cmux-bot
cmux-bot Bot deleted the lane/web-base-red-continuation-spacing branch November 2, 2026 11:00

This branch was previously deployed

1 inactive deployment
ci-routing-agent — 05bff4b6 Deployed Nov 2, 2026 by teamleaderleo via cmux-tui tree preflight #100704
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

risk:low Risk tier (docs/ci/risk-tiers.md)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant