Skip to content

Navigation Menu

Sign in
Sign up

One loop C4: SSE v2 + frontend migration onto one event reducer (major release) #2238

Open

Description

Stage C4 of #2233 — concept §5.6, §7 C4, §10.1(3)(6). The clean break: server emits only the v2 schema; the frontend moves with it in the same release. The chat SSE/API is internal-only (decided) — no backward compatibility owed, no dual-emit layer.

Scope

  • SSE v2 server side: one typed event schema projected from RunLog events (run/started|ended, step/delta|completed, tool/started|progress|completed, interaction/raised|answered, progress/node, meta, stream/*), with per-run sequence numbers in every envelope and a ledger re-sync endpoint (GET /api/runs/:id/events?after=seq) so the client reducer detects relay gaps and reconnects cleanly.
  • Channel keying: standardize streams and the clusterBus presence maps on runId (today: chatId for chat, executionId for workflows/agents) — real migration of the SSE registry and cluster relays, not renaming.
  • One shared client event reducer consumed by useAppChat.js (replacing its 17-event dialect), useWorkflowExecution.js, and the agent run-detail hook; the clarification widget, HumanCheckpoint.jsx, and the approvals queue render the same interaction/raised payload. Compare mode = two concurrent run streams on one view — the reducer supports multiple runs per surface.
  • Embedded surfaces migrate in the same release: Teams app, Outlook add-in, Nextcloud, browser extension.
  • T7: unit tests for the reducer (every v2 event + malformed-input tolerance); component tests for interaction widgets; Playwright e2e for the golden flows — chat with tools, clarification pause/answer, chat-embedded workflow checkpoint, agent run with approval, stop/steer mid-run, compare mode.
  • Ship as the major release with the breaking change in the changelog (use /document-feature).

Deletes

Legacy event emission (clarification, workflow.checkpoint, workflow.step/result, agent.hitl.* as separate dialects, ...) · the three legacy client event dialects.

Definition of done

Server emits v2 only; all product surfaces on the shared reducer; full e2e suite green; deletions merged.

Depends on: #2237 (C3).

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      AltStyle によって変換されたページ (->オリジナル) /