Skip to content

fix: support steering in lean TUI#3474

Merged
rumpl merged 1 commit into
docker:mainfrom
rumpl:fix/lean-tui-steering
Jul 4, 2026
Merged

fix: support steering in lean TUI#3474
rumpl merged 1 commit into
docker:mainfrom
rumpl:fix/lean-tui-steering

Conversation

@rumpl

@rumpl rumpl commented Jul 4, 2026

Copy link
Copy Markdown
Member

Summary

  • route busy lean TUI editor submissions through the runtime steering queue
  • render pending steering/follow-up messages at the end of the live stream with muted styling
  • reconcile runtime user-message confirmations so pending steering messages do not duplicate

Tests

  • go test ./pkg/app ./pkg/leantui ./pkg/tui/page/chat
  • task lint
  • task --force build
  • task test (fails in pkg/model/provider: TestOpenAIAliasProvider_LiveAPI/moonshot returns HTTP 404 / permission denied for kimi-k2-0905-preview)

Signed-off-by: Djordje Lukic <djordje.lukic@docker.com>
@rumpl rumpl requested a review from a team as a code owner July 4, 2026 21:34
@rumpl rumpl enabled auto-merge July 4, 2026 21:37

@docker-agent docker-agent left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Assessment: 🟢 APPROVE

The steering queue routing, pending-message reconciliation, and deduplication logic introduced in this PR are all correct.

Key paths reviewed:

  • dispatchUserMessage correctly routes busySubmitSteer via app.Steer and records a pending entry with display/content fields.
  • handleUserMessageEvent correctly consumes the pending entry by matching on content (not display), so the user-facing display text (e.g. /change) is preserved when echoing while the resolved content is used for matching.
  • samePendingUserContent correctly handles the trailing \n that the runtime appends to emitted messages via strings.TrimSuffix, so reconciliation succeeds reliably.
  • finishBusy correctly dequeues follow-up messages and promotes their pending display text before echoing.
  • Error from app.Steer is surfaced to the user via a notice; no silent failure.

No bugs found in the changed code.

@aheritier aheritier added area/tui For features/issues/fixes related to the TUI kind/fix PR fixes a bug (maps to fix:). Use on PRs only. labels Jul 4, 2026
@rumpl rumpl merged commit d6e5b69 into docker:main Jul 4, 2026
10 of 11 checks passed
Piyush0049 pushed a commit to Piyush0049/docker-agent that referenced this pull request Jul 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/tui For features/issues/fixes related to the TUI kind/fix PR fixes a bug (maps to fix:). Use on PRs only.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants