Skip to content

test(app): update timeline e2e tests for always-background subagents - #63430

Open
opencodejr[bot] wants to merge 1 commit into
devfrom
opencodejr/ci-fix-43134599789
Open

opencodejr[bot] wants to merge 1 commit into
devfrom
opencodejr/ci-fix-43134599789

Conversation

@opencodejr

@opencodejr opencodejr Bot commented Nov 12, 2026

Copy link
Copy Markdown

What failed

check-test / e2e (linux|windows, app-2) failed on dev in these tests:

  • timeline-geometry.spec.ts › with a pointer / with touch › scrolls the timeline behind the composer region… (session-background-hint-row never appears)
  • timeline-stream.spec.ts › background shortcut › counts a backgrounded subagent… (expects Stale task (background))
  • timeline-stream.spec.ts › background shortcut › separates blocking and already-backgrounded work into two rows (the background hint button never appears)
  • timeline-stream.spec.ts › background shortcut › holds a revealed call … just under its stuck group header (×3, timing out on the 1 subagent pill)

On Windows, the extra 60-second timeouts and retries also pushed the job past its 15-minute limit.

Root cause

#63382 made subagents always run in the background:

  • A running subagent call is no longer blocking work, so it no longer shows the "move running work to the background" hint.
  • Subagent cards dropped the (background) subtitle suffix.
  • A subagent call without a child session no longer counts in the activity pill.

#63391 then removed the pill's "reveal a starting subagent call in the timeline" path (onReveal / setRevealPart). These e2e tests still asserted the old behaviour.

Fix (tests only)

  • geometry test: the fixture now has a backgrounded subagent, which keeps the 1 subagent pill, plus a running shell, which shows the hint row. The geometry expectations are unchanged.
  • stale-call test: expects the card text Stale task without the removed suffix. The pill-count checks are unchanged.
  • two-rows test: the blocking work is now a running shell. The former foreground subagent is now a subagent call that still reads running, which counts as background work. Suffix checks are removed and the menu rows follow session order. The interrupt, shell-panel and kill checks are unchanged.
  • Deleted the three holds a revealed call … under its stuck group header tests. They clicked a pill row that refactor(app): remove leftover foreground subagent UI #63391 removed along with its code path. The scroll-to-call logic they covered is still in the timeline code, but nothing in the app triggers it any more. If e2e coverage is wanted, it needs a new way in.

Verification

  • Before: bunx playwright test e2e/regression/timeline-stream.spec.ts e2e/regression/timeline-geometry.spec.ts --project chromium -g "background shortcut|scrolls the timeline behind" → 7 failed, 6 passed, the same failures as CI.
  • After: the full timeline-stream, timeline-geometry and subagent-child-navigation specs → 89 passed, 1 failed. The failure is renders current protocol notices in CLI order; it fails the same way without this change and isn't among the CI failures.
  • prettier --check passes. The e2e typecheck reports no new errors in the changed lines.

CI failure: check-test / e2e (windows, app-2) / [chromium] e2e\regression\timeline-geometry.spec.ts › with a pointer › scrolls the timeline behind the composer region, fading at the card, and keeps its end above the region, check-test / e2e (windows, app-2) / [chromium] e2e\regression\timeline-stream.spec.ts › background shortcut › counts a backgrounded subagent while its session runs, not while its call still reads running, check-test / e2e (windows, app-2) / [chromium] e2e\regression\timeline-geometry.spec.ts › with touch › scrolls the timeline behind the composer region, fading at the card, and keeps its end above the region, check-test / e2e (windows, app-2) / [chromium] e2e\regression\timeline-stream.spec.ts › background shortcut › separates blocking and already-backgrounded work into two rows, check-test / e2e (windows, app-2) / [chromium] e2e\regression\timeline-stream.spec.ts › background shortcut › holds a revealed call from far below just under its stuck group header, check-test / e2e (linux, app-2) / [chromium] e2e/regression/timeline-geometry.spec.ts › with a pointer › scrolls the timeline behind the composer region, fading at the card, and keeps its end above the region, check-test / e2e (linux, app-2) / [chromium] e2e/regression/timeline-geometry.spec.ts › with touch › scrolls the timeline behind the composer region, fading at the card, and keeps its end above the region, check-test / e2e (linux, app-2) / [chromium] e2e/regression/timeline-stream.spec.ts › background shortcut › counts a backgrounded subagent while its session runs, not while its call still reads running, check-test / e2e (linux, app-2) / [chromium] e2e/regression/timeline-stream.spec.ts › background shortcut › separates blocking and already-backgrounded work into two rows, check-test / e2e (linux, app-2) / [chromium] e2e/regression/timeline-stream.spec.ts › background shortcut › holds a revealed call from far below just under its stuck group header, check-test / e2e (linux, app-2) / [chromium] e2e/regression/timeline-stream.spec.ts › background shortcut › holds a revealed call that opens the last row just under its stuck group header failed 3 runs in a row on dev.

Opened by the CI fix job: it does not merge or push to dev.

Subagents no longer block the run, carry a "(background)" subtitle, or
reveal their starting call from the activity pill. Show the background
hint with a running shell instead, drop the removed subtitle, follow the
session order in the activity menu, and remove the tests for the deleted
pill reveal path.
@github-actions github-actions Bot added the needs:compliance This means the issue will auto-close after 2 hours. label Nov 12, 2026
@github-actions

Copy link
Copy Markdown
Contributor

This PR doesn't fully meet our contributing guidelines and PR template.

What needs to be fixed:

  • PR description is missing required template sections. Please use the PR template.

Please edit this PR description to address the above within 72 hours, or it will be automatically closed.

If you believe this was flagged incorrectly, please let a maintainer know.

@opencodejr opencodejr Bot left a comment

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The updated tests match the behaviour after #63382 and #63391, and I found no problems in them. On the base branch, the selected background shortcut and scrolls the timeline behind e2e tests reproduce the CI failures: the geometry tests with a pointer and with touch, the stale-call test, the two-rows test, and the three revealed-call tests. With this PR, all 10 remaining tests pass in Chromium, run twice with no retries. typecheck:e2e reports the same 185 errors as the base, and none are on the changed lines.

The new background-subagent fixture uses the same shape as the existing call_backgrounded fixture. Deleting the revealed-call tests is reasonable now that their pill entry point is gone.

The public API is unchanged; this PR only edits e2e tests.

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

needs:compliance This means the issue will auto-close after 2 hours.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants