From 133668f5b243240ff58b3c8930286f138f442108 Mon Sep 17 00:00:00 2001 From: Jason Woltje Date: Wed, 18 Mar 2026 21:27:14 -0500 Subject: [PATCH] chore: format BUG-CLI-scratchpad.md (prettier) --- docs/scratchpads/BUG-CLI-scratchpad.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/docs/scratchpads/BUG-CLI-scratchpad.md b/docs/scratchpads/BUG-CLI-scratchpad.md index a69911e..4c37825 100644 --- a/docs/scratchpads/BUG-CLI-scratchpad.md +++ b/docs/scratchpads/BUG-CLI-scratchpad.md @@ -1,9 +1,11 @@ # BUG-CLI Scratchpad ## Objective + Fix 4 CLI/TUI polish bugs in a single PR (issues #192, #193, #194, #199). ## Issues + - #192: Ctrl+T leaks 't' into input - #193: Duplicate React keys in CommandAutocomplete - #194: /provider login false clipboard claim @@ -12,28 +14,33 @@ Fix 4 CLI/TUI polish bugs in a single PR (issues #192, #193, #194, #199). ## Plan and Fixes ### Bug #192 — Ctrl+T character leak + - Location: `packages/cli/src/tui/app.tsx` - Fix: Added `ctrlJustFired` ref. Set synchronously in Ctrl+T/L/N/K handlers, cleared via microtask. In the `onChange` wrapper passed to `InputBar`, if `ctrlJustFired.current` is true, suppress the leaked character and return early. ### Bug #193 — Duplicate React keys + - Location: `packages/cli/src/tui/components/command-autocomplete.tsx` - Fix: Changed `key={cmd.name}` to `key={`${cmd.execution}-${cmd.name}`}` for uniqueness. - Also: `packages/cli/src/tui/commands/registry.ts` — `getAll()` now deduplicates gateway commands that share a name with local commands. Local commands take precedence. ### Bug #194 — False clipboard claim + - Location: `apps/gateway/src/commands/command-executor.service.ts` - Fix: Removed the `\n\n(URL copied to clipboard)` suffix from the provider login message. ### Bug #199 — Hardcoded version "0.0.0" + - Location: `packages/cli/src/cli.ts` + `packages/cli/src/tui/app.tsx` - Fix: `cli.ts` reads version from `../package.json` via `createRequire`. Passes `version: CLI_VERSION` to TuiApp in both render calls. TuiApp has new optional `version` prop (defaults to '0.0.0'), passes it to TopBar instead of hardcoded `"0.0.0"`. ## Quality Gates + - CLI typecheck: PASSED - CLI lint: PASSED - Prettier format:check: PASSED