Frontend and one chat route. No schema change and no dependency change, verified against the previous tag rather than assumed: nothing in this range touches src/schema.ts, package.json dependencies or bun.lock. The plan says so explicitly, because a host that runs db:push here has run something the release did not ask for. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
34 lines
1.5 KiB
Markdown
34 lines
1.5 KiB
Markdown
# 2026.08.21.02
|
|
|
|
Command HQ made usable: a commander's transcript renders, and Live separates commanders from the
|
|
conversations somebody is having.
|
|
|
|
Frontend and one chat API route. **No schema change, no dependency change** — verified against
|
|
`deploy/2026.08.21.01..HEAD`: nothing touched `src/schema.ts`, `package.json` dependencies or `bun.lock`.
|
|
So there is no `db:push` and no `bun install` in this plan, and a host that runs one has run something
|
|
this release did not ask for.
|
|
|
|
## What is in it
|
|
|
|
- Three separate defects that each made a commander's conversation invisible: the pane navigated to
|
|
officer's session key instead of Claude's transcript id, then remounted and discarded the live chat at
|
|
the end of the first turn, then seeded `useChat` with messages that had not arrived yet.
|
|
- Live splits into `Agents (n)` / `Commanders (n)`, and `/chat/live` now carries `isCommander` so a client
|
|
with no room for tabs — the iPhone app's swipe order — can filter on it.
|
|
- The handoff watcher's controls, which were built and never rendered.
|
|
|
|
## Every host
|
|
|
|
In the order the procedure gives. Nothing here is host-specific.
|
|
|
|
1. `git pull --ff-only`
|
|
2. `bun run plugins:update`
|
|
3. `pm2 restart officer`
|
|
|
|
**`officer` only.** No sidecar changed. Restarting `officer` rebuilds the SPA on boot, which is what
|
|
ships the frontend — there is no separate build step to run.
|
|
|
|
## Then check
|
|
|
|
`pm2 jlist`: `officer` is `online` and its `restart_time` moved. Nothing else should have restarted.
|