Skip to content

chore(rust): delete fleet-tui-poc throwaway crate#165

Merged
NagyVikt merged 1 commit into
mainfrom
chore/delete-fleet-tui-poc
May 16, 2026
Merged

chore(rust): delete fleet-tui-poc throwaway crate#165
NagyVikt merged 1 commit into
mainfrom
chore/delete-fleet-tui-poc

Conversation

@NagyVikt
Copy link
Copy Markdown
Contributor

Summary

Deletes the fleet-tui-poc crate per its own README directive: "Once fleet-ui lands in rust/fleet-ui/, delete this directory." fleet-ui has shipped the canonical overlay widgets and the POC has been carrying ~3,470 lines of duplicate code that drifts from those implementations.

  • Lines removed: 4,262 deletions vs 18 insertions (net -4,244)
  • Crate body: 3,470 LOC main.rs + 595 LOC standalone Cargo.lock + 115 LOC README + 15 LOC Cargo.toml
  • Cargo.lock: orphan fleet-tui-poc entry dropped from the workspace lock

Canonical replacements (already in fleet-ui)

POC overlay (key) Lives in fleet-ui as
1 Context menu fleet-ui::overlay (base overlay framework)
2 Spotlight palette fleet-ui::spotlight_overlay
4 Session switcher fleet-ui::session_switcher_overlay

Workspace glob behavior

rust/Cargo.toml uses members = ["fleet-input", "fleet-layout", "fleet-*"] — the glob picks crates up by directory presence, so removing rust/fleet-tui-poc/ drops it automatically; no manifest edit needed.

Ratatui version concern (operator review item #9 quick wins)

Inspected workspace Cargo.lock before/after delete: only ratatui = "0.30.0" was/is present. The POC was already aligned at 0.30, so deleting it does not change the ratatui-version count in the workspace lock. The risk the quick-win flagged (POC pinning a different ratatui from production crates) is now eliminated by construction — the POC is simply gone.

Live script call sites updated

Three shell scripts invoked the POC binary at runtime:

  • scripts/codex-fleet/bin/pane-context-menu-chooser.sh — dropped the Rust branch (it already had a bash fallback; the bash menu is now the sole renderer).
  • scripts/codex-fleet/bin/section-jump-chooser.sh — converted to a tmux display-message stub. The section-jump overlay had no bash fallback; a fleet-ui-backed port is a follow-up. The prefix Tab keybinding (from tmux-bindings.conf) now shows a "pending" toast instead of a "not built" toast.
  • scripts/codex-fleet/full-bringup.sh — removed the dead if [ -x .../fleet-tui-poc ] block that opened an optional design-preview tmux window.

Historical README / changelog / openspec prose was left alone per task spec.

Test plan

  • cargo check --workspace — clean compile
  • cargo test --workspace --exclude fleet-ui — all 217 tests pass
  • cargo test -p fleet-ui --lib — 39/39 pass
  • grep -rn fleet_tui_poc rust/ returns 0 hits
  • grep -rn fleet-tui-poc rust/*/Cargo.toml returns 0 hits (no inbound dep)
  • Operator confirms prefix Tab toast change is acceptable until a fleet-ui section-jump port lands

Pre-existing test note

rust/fleet-ui/tests/tab_strip_snapshot.rs imports fleet_ui::tab_strip::{...} which doesn't exist in fleet-ui/src/lib.rs. This test was already failing to compile on HEAD before this PR (last touched in #117 "Add fleet-ui spotlight overlay widget"). Unrelated to this change — leaving it for whoever owns the tab_strip module migration.

Follow-ups (out of scope here)

  • Port section-jump overlay onto fleet-ui and re-wire section-jump-chooser.sh.
  • Optional: a tiny fleet-design-preview binary if operators want the multi-overlay preview window back.
  • Fix the orphaned tab_strip_snapshot.rs test (separate cleanup).

The fleet-tui-poc crate's README declared it throwaway: "Once
fleet-ui lands in rust/fleet-ui/, delete this directory."
fleet-ui has since shipped the canonical overlay widgets:

- `fleet-ui::overlay`            — base overlay framework
- `fleet-ui::spotlight_overlay`  — search-first palette (was POC key `2`)
- `fleet-ui::session_switcher_overlay` — card-stack switcher (was POC key `4`)

The POC carried ~3470 lines of duplicate SpotlightItem / context-menu
/ action-sheet / session-switcher code drifting from those canonical
implementations. Deleting it removes the duplication, slims the
workspace Cargo.lock (fleet-tui-poc entry gone), and avoids a
ratatui-version split risk should the POC and fleet-ui ever diverge.

Workspace `members = ["fleet-input", "fleet-layout", "fleet-*"]` glob
picks crates up by directory presence, so removing the directory is
enough — no manifest edit needed.

Three live shell scripts referenced the binary; updated:

- bin/pane-context-menu-chooser.sh — dropped Rust branch; bash menu
  is now the sole renderer (always was the fallback).
- bin/section-jump-chooser.sh — converted to a tmux-display stub.
  The overlay had no bash fallback; a fleet-ui-backed replacement
  is a follow-up.
- full-bringup.sh — dropped the dead design-preview window block
  that was gated on the binary's presence.

Verification:
- cargo check --workspace: clean
- cargo test --workspace --exclude fleet-ui: all green (217 tests)
- cargo test -p fleet-ui --lib: 39/39 pass
- Pre-existing broken `tab_strip_snapshot.rs` integration test
  (imports nonexistent `fleet_ui::tab_strip`) was failing on HEAD
  before this PR; unrelated to this change.
@NagyVikt NagyVikt merged commit 47f86bd into main May 16, 2026
2 checks passed
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