test(e2e): dispatch + multiplayer harness with phase-gated blank-pane specs - #2339
Conversation
… after phase-6 AgentView Phase 0 of the Agent-Session Single Source of Truth epic: a dispatch fixture (server-side message injection through the real chat pipeline) plus spec 16 — two passing smokes that pin the harness (page-chat dispatch persists both sides of the turn; global-assistant dispatch persists through the messages API), and two test.fixme specs that are the epic's canonical blank-pane bug written as the executable spec Phase 2 (plan PR 3) must flip green. Also repairs the existing chat fixtures: the phase-6 unified AgentView (e479b00) deleted AiChatView.tsx and with it the ai-chat-view testid, which silently broke every UI assertion in spec 15 — the page-chat surface root is now session-chat (SessionChat). Verified against a production build (Next dev cannot run under the app's CSP: script-src has no unsafe-eval, so dev-mode eval bundles never hydrate): spec 15's three smokes and spec 16's two smokes all pass; the two fixme repros skip. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XnzUuAixdTJ8xDpP5S92Ts
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
…ntegration branch The Agent-Session Single Source of Truth epic integrates through pu/broken-sessions before reaching master, following the same pattern as pu/flash-sandbox and pu/panes-agent. Without the base-branch filter entry, PRs targeting the integration branch get zero CI (observed on #2339). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XnzUuAixdTJ8xDpP5S92Ts
Phase 0 of the Agent-Session Single Source of Truth epic: the executable spec for the epic's canonical bug, landed ahead of the fix.
What this adds
apps/e2e/fixtures/dispatch.fixture.ts— server-side dispatch through the real chat pipeline (page-chat viaPOST /api/ai/chat, global assistant via the messages API), plusopenChatPane,openTwoWindows, andrenderedMessageshelpers.apps/e2e/tests/16-dispatch-multiplayer.spec.ts— 2 passing smoke specs that pin the harness (dispatch persists; message visible after reload), and 2test.fixmespecs that ARE the blank-pane bug: (a) a dispatch into an open pane renders live without refresh; (b) two windows both see a dispatched turn live. Phase 2 (plan PR 3) deletes the.fixmes — that flip is its merge gate.e479b0053) deletedAiChatView.tsxand itsai-chat-viewtestid, silently breaking every UI assertion in spec 15. Fixture now targets the currentsession-chatroot.Verification
5 passed, 2 fixme-skipped, 0 failed (13s) against a production build + scratch Postgres 17. e2e typecheck clean.
Notable for local runs:
next devcannot serve this app under its own CSP (buildCSPPolicyemitsscript-srcwithoutunsafe-eval, no dev exemption) — e2e must run againstnext build && next start; production start needs a dummySENTRY_DSN.🤖 Generated with Claude Code
https://claude.ai/code/session_01XnzUuAixdTJ8xDpP5S92Ts