feat(workspace): mid-turn abort + steering for foreman chat #564
Labels
No labels
area:agents
area:dashboard
area:database
area:design
area:design-review
area:flows
area:infra
area:meta
area:security
area:sessions
area:webhook
area:workdir
security
type:bug
type:chore
type:meta
type:user-story
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Blocks
Depends on
#572 refactor(workspace): chat UX polish sweep — paper cuts
charles/claude-hooks
#565 feat(workspace): tool-call output + Edit/Write diff preview in transcript
charles/claude-hooks
#569 feat(workspace): per-session model picker for foreman chat
charles/claude-hooks
#570 feat(workspace): ⌘K command palette +
? keyboard help overlay
charles/claude-hooks
#571 feat(workspace): image paste + drag-drop attachments in foreman composer
charles/claude-hooks
Reference
charles/claude-hooks#564
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
User story
As an operator, I want to interrupt a runaway foreman turn or inject a follow-up while it's still streaming, so I can correct course without waiting for the turn to finish or eating Pro-Max quota on a wrong direction.
Acceptance criteria
Abort
Escwhile a foreman turn is streaming aborts it. Composer focus not required — handled at the workspace route level.streamingis true.currentAbortcontroller; the SDK iterator tears down and the task landscancelledintask_history.resultevent withsubtype: "aborted"so the client clears?task=and refetches the session.appendMessagewith whateverassistantTextaccumulated).Steering
POST /foreman/steer/:task_id. Server already broadcastssteer_queued/steer_deliveredevents.Out of scope
References
apps/server/src/background/worker.ts:412(currentAbort).apps/server/src/domain/dispatch/registry.ts:294(onSteerQueued).specs/workspace-chat-overhaul.md§ P1.?keyboard help overlay🤖 Auto-assigned to dev (heuristic: area:dashboard + body 1681 bytes (≤ 2 KB) — dev). Reply
/unassignto reroute.