Skip to content

feat: add a follow-up queue alongside Steer - #744

Open
SpookySandwich wants to merge 1 commit into
Porabuild:masterfrom
SpookySandwich:feat/follow-up-queue
Open

feat: add a follow-up queue alongside Steer#744
SpookySandwich wants to merge 1 commit into
Porabuild:masterfrom
SpookySandwich:feat/follow-up-queue

Conversation

@SpookySandwich

@SpookySandwich SpookySandwich commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

Queued messages now wait for the current chat turn and any open requests to finish, then run in FIFO order. Existing Steer behavior stays available, and Settings > Threads chooses whether Enter steers or queues; existing users keep Steer, while Ctrl/Cmd+Enter selects the opposite action.

The queue appears above the composer with a left drag grip and Steer, Edit, and Remove controls on hover or keyboard focus. Touch devices keep those actions visible. Dragging and keyboard reordering use stable item IDs so concurrent queue changes cannot resurrect removed messages.

Editing and Stop pause delivery; Resume continues it. Edits preserve attachment and mention metadata, retain local text if another client changes/removes the message, and reject stale saves. The supervisor owns queue state and mirrors it to desktop and mobile clients; queues survive renderer/remote reconnects but are in memory for the supervisor session.

Closes #737.

Validation

Independent Luna reviews completed, followed by typecheck, regular/type-aware touched-file oxlint, formatting, whitespace checks, and localization extraction (0 missing in all 12 non-English locales).

Targeted coverage: 988 tests across 34 suites. The combined run passed 987; an existing app hydration timing assertion failed under concurrent load, then the complete app suite passed 33/33 in isolation. Queue, admission, restart, remote settings/reset, and UI regressions passed.

Real Codex chat checks completed locally: FIFO, Steer, Edit/Resume, Remove, Stop/Resume, mouse drag, and keyboard reordering. Deterministic Electron smoke covered the baseline, Settings, thread search, and mock integration gates with zero renderer/runtime errors.

Final live checks also passed command-only /goal → FIFO delivery, dirty-edit retention after remote edit/removal, renderer reload recovery, keyboard reorder, and mouse reorder while another message is appended. Dark/light themes and Chinese labels were spot-checked. Automated Electron scenarios passed with 0 console/runtime errors.

Physical mobile/remote pairing and live approval/question dialogs were not exercised; those lifecycle and transport branches have deterministic coverage. The real-mode report intentionally leaves those two manual gates unacknowledged.

Compatibility

Remote v9 remains additive: new procedures and optional queue snapshot state, with explicit unsupported errors on older hosts. Existing settings normalize to Steer. Edit concurrency tokens are optional for older clients. No database migration is needed for the in-memory queue.

Screenshot

Queued follow-ups with left reorder grips and Steer, Edit, and Remove controls

Queue actions appear on hover or keyboard focus; the left grip supports reordering.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: support Queue vs. Steer for follow-up messages

1 participant