Skip to content

test(webviews): base passes the fixed-wait ratchet again - #23452

Merged
teamleaderleo merged 6 commits into
feat-cmux-nextfrom
fixed-waits/base-red-2
Oct 21, 2026
Merged

teamleaderleo merged 6 commits into
feat-cmux-nextfrom
fixed-waits/base-red-2

Conversation

@teamleaderleo

@teamleaderleo teamleaderleo commented Oct 21, 2026 •

Copy link
Copy Markdown
Collaborator

Base fails bun run check:fixed-waits (and so every PR into feat-cmux-next): #23094 merged after the guard (#23365) with 9 new fixed waits.

  • test/snapshot-save-throttle.test.ts: the 250 ms snapshot save timer now runs on bun's fake timers. Nothing is written at 249 ms and one write lands at 250 ms. The old sleep(300) passed with any delay under 300 ms; I checked that setting SNAPSHOT_SAVE_MS to 100 now fails it.
  • test/browser/streaming-text.harness.tsx, test/streaming-text-frames.test.ts: the reveal drain and the settle window are sampled for jumps, so the window is the test. The 500 ms before sampling lets start-up work finish so the work budget measures only the stream, and nothing marks start-up as done. All three get // fixed-wait: markers.
  • RevealedMarkdown.test.tsx: the 20 ms in afterEach is teardown with nothing asserted after it. Marked.

Checks: check:fixed-waits passes (992), bun run check, scripts/web-lint.sh, and the two unit files 3 × 3 pass. The browser files only gained comments.

Agent session: huge-blue

🤖 Generated with Claude Code


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


Summary by cubic

Fixes bun run check:fixed-waits on base so PRs into feat-cmux-next no longer fail from waits merged after the guard in #23094 and #22967, plus follow-up test fixes.

Test changes

  • Switch snapshot-save-throttle.test.ts to bun's fake timers with exact assertions at 249 ms and 250 ms.
  • Run the row-wait tests in agent-pane-reveal-message.test.ts on the fake clock, advancing it instead of sleeping.
  • Replace the poll loops in agent-pane-queued-images.test.ts with waits that resolve on the client's snapshots and time out at 3 s so the failure message isn't swallowed by bun's 5 s test timeout.
  • Mark the reveal drain and settle window waits in streaming-text.harness.tsx and the 500 ms start-up wait in streaming-text-frames.test.ts as fixed waits; these windows are the test.
  • Mark the 20 ms teardown wait in RevealedMarkdown.test.tsx as a fixed wait since nothing asserts after it.

Script changes

  • A baseline row for a deleted file now passes instead of failing every PR, and is dropped on --update-baseline; the comparison logic is extracted as compareToBaseline and covered by a unit test.
  • Drop the stale session-sidebar-preview.test.tsx baseline row so a new file at that path wouldn't inherit its six-wait allowance.

Written for commit 2721030. Summary will update on new commits.

View guided diff Turn on auto-fix

#23094 merged after the guard (#23365) with 9 new fixed waits, so
check:fixed-waits fails on base and on every PR into feat-cmux-next.

- snapshot-save-throttle: the 250 ms save timer runs on bun's fake
  timers; nothing is written at 249 ms, one write at 250 ms. (The old
  300 ms sleep passed with any delay under 300 ms.)
- streaming-text harness and frames test: the reveal drain and the
  settle window are sampled, so the windows are the test; the 500 ms
  before sampling has no start-up-done signal. Marked fixed-wait.
- RevealedMarkdown: the 20 ms in afterEach is teardown with no assert
  after it. Marked fixed-wait.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15c78-27ca-7140-a6c7-95f0db83b18c&host=huge-blue
@github-actions

github-actions Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

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

Review 2721030: 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=pr23452 -f ref=fixed-waits/base-red-2 -f platform=macos -f backend_mode=local

Gallery before/after for 2721030: 16 states rendered, 12 images differ, 251 more touched states not rendered. Images are in the run's artifact, not on this public PR.

gh run download 39615970372 -R manaflow-ai/cmux -n gallery-advisory-23452-2721030b871dfd00d1aa10d9ccca9abe0d62490a (then read gallery-review.json)

States
State Theme Status Diff Picked by
agent-pane.agent-pair-note/paused Apple System Colors Light unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.agent-pair-note/paused Apple System Colors unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.agent-pair-note/held-list Apple System Colors Light unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.agent-pair-note/held-list Apple System Colors unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.agent-pair-note/repeating Apple System Colors Light unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.agent-pair-note/repeating Apple System Colors unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.agent-pair-note/cap Apple System Colors Light unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.agent-pair-note/cap Apple System Colors unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.agent-pair-note/release-failed Apple System Colors Light unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.agent-pair-note/release-failed Apple System Colors unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.agent-pair-note/resumed Apple System Colors Light unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.agent-pair-note/resumed Apple System Colors unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.artifact-panel/closed Apple System Colors Light unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.artifact-panel/closed Apple System Colors unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.artifact-panel/markdown Apple System Colors Light unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.artifact-panel/markdown Apple System Colors unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.artifact-panel/html Apple System Colors Light unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.artifact-panel/html Apple System Colors unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.artifact-panel/versions Apple System Colors Light unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.artifact-panel/versions Apple System Colors unchanged 0% same-folder RevealedMarkdown.test.tsx
agent-pane.background-hint/claude Apple System Colors Light changed 0.229% same-folder RevealedMarkdown.test.tsx
agent-pane.background-hint/claude Apple System Colors changed 0.0127% same-folder RevealedMarkdown.test.tsx
agent-pane.background-hint/router Apple System Colors changed 0.217% same-folder RevealedMarkdown.test.tsx
agent-pane.background-hint/router Apple System Colors Light changed 0.121% same-folder RevealedMarkdown.test.tsx
agent-pane.background-hint/codex Apple System Colors Light changed 0.337% same-folder RevealedMarkdown.test.tsx
agent-pane.background-hint/codex Apple System Colors changed 0.079% same-folder RevealedMarkdown.test.tsx
agent-pane.background-hint/claude-acp Apple System Colors changed 0.195% same-folder RevealedMarkdown.test.tsx
agent-pane.background-hint/claude-acp Apple System Colors Light changed 0.0405% same-folder RevealedMarkdown.test.tsx
agent-pane.background-task-note/on-call Apple System Colors Light changed 0.0198% same-folder RevealedMarkdown.test.tsx
agent-pane.background-task-note/on-call Apple System Colors changed 0.0185% same-folder RevealedMarkdown.test.tsx
agent-pane.background-task-note/lone Apple System Colors changed 0.0317% same-folder RevealedMarkdown.test.tsx
agent-pane.background-task-note/lone Apple System Colors Light changed 0.0291% same-folder RevealedMarkdown.test.tsx

Pick other states with a Gallery: entry.id, entry.id/variant line in the PR body.

Unclear: web / react-apps-check (4) failed: no known signature; failed step: Test webviews.

CI failed on 2721030b87 (run 39615970311 attempt 1): 1 code, 3 unknown.

Job Verdict Why
web / react-apps-check (4) unknown no known signature; failed step: Test webviews
web / react-apps-check (3) code a web test failed
web / react-apps-check (1) unknown no known signature; failed step: Fail on the gate checks
web / react-apps-check unknown no known signature; failed step: Check webview test shards

Failures:

  • seen on other PRs secret-card.test.ts the card takes the value privately and Provide sends it to acpmux only: failed (job)
Matched log lines
web / react-apps-check (3): (fail) the card takes the value privately and Provide sends it to acpmux only [2918.59ms]

Not re-run automatically: web / react-apps-check (4), web / react-apps-check (3), web / react-apps-check (1), web / react-apps-check are not machine failures.

Written by scripts/ci/classify_failures.py (ci-failure-attribution.yml); signatures are its SIGNATURES table. A machine verdict is the runner's fault, not this PR's; yours means the failing file is one this PR changes, also red on main that main's latest full suite fails the same way, seen on other PRs that it failed on another pull request's run lately.

red: web / Web status; base red: the same failure on the base 0376908; does not block
red: web / react-apps-check; base red: the same failure on the base 0376908; does not block
red: web / react-apps-check (1); base red: the same failure on the base 0376908; does not block
red: web / react-apps-check (3); NEW: green on the base 0376908; do not merge until green; see lane-rules
red: web / react-apps-check (4); NEW: green on the base 0376908; do not merge until green; see lane-rules

CI fast guards failed on 2721030b87 (https://github.com/manaflow-ai/cmux/actions/runs/39615970311). It does not block the merge; a red guard merged into main breaks it for every open PR.
The log named no failed step; see the run.

Agents: python3 scripts/ci/guard_attribution.py fix applies the mechanical fixes locally.

Tour of 2721030b87 (run): no media. The tour did not run: only webview code changed (9 path(s)), which the gallery advisory run checks in Linux Chromium on the pull request (its artifact holds any captures); add the media-tour-mac label to tour it on a Mac.

teamleaderleo and others added 2 commits October 21, 2026 14:03
#22967 added three fixed waits after the guard: the wait for a
revealed row to be drawn polls on setTimeout, so the three tests that
watch it now run on bun's fake timers and advance the clock instead of
sleeping. Breaking the poll, the stale-chat check or the cancel of an
earlier mark each fails its test.

Also: the frames test's start-up comment no longer guesses the cause.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15c78-27ca-7140-a6c7-95f0db83b18c&host=huge-blue
@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

Bead cx-ibovj created for this PR by the cmux coordinator.

@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

cmux-next guards / defaults-snapshot is red on 23 of 23 fresh feat-cmux-next PR heads in the last 2:00:00, so it is most likely a base red, not this PR's. The base-reds lane has it; a base merge picks up the fix once it lands.

teamleaderleo and others added 2 commits October 21, 2026 14:15
…aseline row passes

#22975 merged two unmarked polls in agent-pane-queued-images (CI ran before the
fixed-wait guard); they now wait on the client's snapshots. #23339 deleted
session-sidebar-preview.test.tsx while it still had a baseline row, so the check
failed every PR; a row whose file is gone now passes and drops on --update-baseline.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15c78-27ca-7140-a6c7-95f0db83b18c&host=huge-blue
@cursor

cursor Bot commented Oct 21, 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.

…wait fails before bun's timeout

Review nits on #23452: the stale session-sidebar-preview row would have let a new file at that
path keep 6 waits, and a 5 s condition timeout lost its message to bun's 5 s test timeout.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Agent-Session: https://cmux.com/deeplink/agent?harness=claude&session=01a15c78-27ca-7140-a6c7-95f0db83b18c&host=huge-blue
@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

Review (subagent): SHIP at 2721030 (every commit reviewed; the last applies the review's two nits). check:fixed-waits now passes. Remaining reds aren't this PR's: check:text-focus (FileExplorerCell.swift, fixed in #23466), defaults-snapshot (base), and browser-test flakes secret-card, agent-pane-stream-jitter, composer-draft-wrap, composer-turn-cycle, reasoning-own-control (none touched here).

@teamleaderleo
teamleaderleo merged commit 840777c into feat-cmux-next Oct 21, 2026
@teamleaderleo
teamleaderleo deleted the fixed-waits/base-red-2 branch October 21, 2026 14:43
@teamleaderleo

Copy link
Copy Markdown
Collaborator Author

base-red-watch: cmux-next web / web / react-apps-check (3) went red on feat-cmux-next in https://github.com/manaflow-ai/cmux/actions/runs/39619935443 (first red at 9268c0e, last green at 196c572). Suspect: #23452 (commit 840777c, which touches webviews/test/agent-pane-queued-images.test.ts). If it is yours, fix forward on feat-cmux-next.

@github-actions

github-actions Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

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

Labels

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant