Skip to content

feat(tui): port queued prompt workflows to dev - #6

Merged
henry701 merged 6 commits into
devfrom
feat/dev-queue-surfaces
Jun 5, 2026
Merged

feat(tui): port queued prompt workflows to dev#6
henry701 merged 6 commits into
devfrom
feat/dev-queue-surfaces

Conversation

@henry701

@henry701 henry701 commented Jun 5, 2026

Copy link
Copy Markdown
Owner

[ai-agent-generated] This PR description was LLM-generated and reflects the current diff against henry701:dev.

Summary

  • Ports queued prompt workflows to the synced dev branch across web, full TUI, and opencode run -i --attach.
  • Adds session queue HTTP routes, generated SDK types, shared queue preview/dock helpers, and prompt queue persistence/drain controls.
  • Adds queue edit/send-now flows, bounded three-item edit rendering, empty-edit dequeue behavior, stale-edit cleanup, and safeguards against lossy preview-only edits.
  • Adds --no-restart-service / OPENCODE_LOCAL_NO_RESTART=1 to local build/update scripts so local binary rebuilds can avoid touching the running service.

Architectural Flow

  • The server owns queued prompt persistence and drain state; TUI/run/web surfaces interact through the session queue API.
  • Full TUI and run mode share queue preview/edit planning helpers while keeping their renderer-specific footer/dock implementations.
  • Web prompt input subscribes through global sync so queued state stays hydrated with normal session data.
  • Send-now removes the selected queued item and steers/runs it without losing the remaining queue; edit mode requires full queued parts before saving.

Validation

  • cd packages/opencode && bun typecheck
  • cd packages/opencode && bun test test/queue/prompt-queue.test.ts test/session/prompt-queue-drain.test.ts test/server/session-queue.test.ts test/cli/run/runtime.queue.test.ts test/cli/run/runtime.queue-remote.test.ts test/cli/run/footer.view.test.tsx test/cli/tui/prompt-queue-actions.test.ts test/cli/tui/prompt-queue-dock.test.ts test/cli/tui/prompt-queue.test.ts test/cli/tui/prompt-queue-smoke.test.tsx test/cli/cmd/tui/sync-live-hydration.test.tsx
  • cd packages/app && bun typecheck
  • cd packages/app && bun test --preload ./happydom.ts src/components/prompt-input/submit.test.ts src/pages/session.queue-save.test.ts src/context/global-sync/bootstrap.test.ts src/context/global-sync/session-cache.test.ts
  • cd packages/plugin && bun typecheck
  • shellcheck build-local.sh opencode-local-update.sh
  • ./build-local.sh --no-restart-service
  • tmux smoke on opencode-local run -i --attach: mock nemotron 180-second busy turn, 4 queued prompts, edit first, send now, verified removal and remaining queue
  • tmux smoke on full TUI opencode-local attach: same queue/edit/send-now flow
  • pre-push bun turbo typecheck passed 22/22

@henry701
henry701 merged commit 60d4521 into dev Jun 5, 2026
0 of 5 checks passed
@henry701
henry701 deleted the feat/dev-queue-surfaces branch June 5, 2026 05:56
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.

1 participant