summaryrefslogtreecommitdiffhomepage
path: root/frontend-conversation-open-handoff.md
diff options
context:
space:
mode:
authorAdam Malczewski <[email protected]>2026-06-30 01:30:06 +0900
committerAdam Malczewski <[email protected]>2026-06-30 01:30:06 +0900
commitbf74aeab143a49005c380706ae9847cf064fd2f2 (patch)
treec9e93dc0ebe818e7c0d0aafeba8387afd161da3f /frontend-conversation-open-handoff.md
parent6dd9ea9b935e5011c16faed6c869c976cf5ff172 (diff)
downloaddispatch-main.tar.gz
dispatch-main.zip
chore: remove old handoff docs, plans, review reports, and task lists from rootHEADmain
Removed 40+ markdown files that were cluttering the repo root: - frontend-*-handoff.md (28 files) — historical API contract handoffs, features all implemented - backend-to-fe-handoff.md, backend-to-fe-handoff-2.md — old handoff docs - broken-chat-repair-handoff.md — old repair handoff - PLAN-mcp.md, PLAN-per-edit-diagnostics.md — old planning docs - ai-review-report.md, crash-review-report.md — one-time review reports - tasks.md, HANDOFF.md — outdated status docs (git log is the source of truth) Kept: AGENTS.md, GLOSSARY.md, ORCHESTRATOR.md, README.md Also: gitignored ai-review-report.md so future Gemini reviews don't commit it
Diffstat (limited to 'frontend-conversation-open-handoff.md')
-rw-r--r--frontend-conversation-open-handoff.md53
1 files changed, 0 insertions, 53 deletions
diff --git a/frontend-conversation-open-handoff.md b/frontend-conversation-open-handoff.md
deleted file mode 100644
index c4064ea..0000000
--- a/frontend-conversation-open-handoff.md
+++ /dev/null
@@ -1,53 +0,0 @@
-# FE handoff — conversation.open (CLI --open flag)
-
-Courier this to `../frontend`. All changes are ADDITIVE.
-
-## What shipped (backend)
-
-The CLI's `--open` flag (`dispatch send <id> --text "..." --open`) calls
-`POST /conversations/:id/open`, which emits a `conversationOpened` bus event. The
-transport-ws extension subscribes and broadcasts a new WS message to ALL connected
-frontend clients.
-
-## New WS message (additive to `WsServerMessage`)
-
-```ts
-interface ConversationOpenMessage {
- readonly type: "conversation.open";
- readonly conversationId: string;
-}
-```
-
-The `type` is `"conversation.open"` — add it to the FE's `WsServerMessage` union
-handler. It arrives as a top-level WS message (not inside `chat.delta`).
-
-## What the FE needs to do
-
-1. **Handle the WS message** — when a `"conversation.open"` message arrives, open
- (or focus) a tab for `conversationId`. The backend just signals; the FE decides
- whether to actually open/focus or just notify.
-
-2. **Suggested behavior:**
- - If the conversation is already open in a tab, focus that tab.
- - If not, open a new tab for it (load its history via `GET /conversations/:id`).
- - Do NOT auto-focus if the user is actively typing in another tab (optional —
- your discretion).
-
-3. **No version bumps needed** — `@dispatch/transport-contract` already exports
- `ConversationOpenMessage` (additive to `WsServerMessage` since `0.13.0`). The FE
- just needs to add the `type: "conversation.open"` case to its WS message handler.
-
-## No other integration points
-
-- No new HTTP endpoints for the FE (the CLI calls `POST /conversations/:id/open`).
-- No new surface types.
-- No new `AgentEvent` types.
-- The message is a global broadcast (sent to ALL connected clients), not per-
- conversation.
-
-## Notes
-
-- The `--open` flag can be combined with `--queue` (enqueue + signal) or used
- without `--queue` (blocking send + signal).
-- Multiple clients (e.g. phone + laptop) all receive the broadcast — each decides
- independently whether to open/focus.