fix(ui): unify FleetView selection markers with codebase ●/○ language#155
Open
xz-dev wants to merge 1 commit into
Open
fix(ui): unify FleetView selection markers with codebase ●/○ language#155xz-dev wants to merge 1 commit into
xz-dev wants to merge 1 commit into
Conversation
3 tasks
FleetView used ⏺ (U+23FA, BLACK CIRCLE FOR RECORD) and ◯ (U+25EF, LARGE CIRCLE) — niche, oversized glyphs that render inconsistently and clash with the filled/hollow circle language used everywhere else in the extension: conversation-viewer.ts running ● / idle ○ agent-widget.ts active ● / inactive ○ index.ts (agent list) project • / global ◦ Switch the selection bullet to the same pair: ● selected (accent), ○ unselected (dim). U+25CF/U+25CB are base geometric shapes with the broadest terminal-font coverage, and selection is already carried by the accent-vs-dim color, so a compound glyph like ◉ adds noise over ●. Supersedes tintinweb#122, which reached for a third glyph set (◉/○) plus ~300 lines of companion extension and a node_modules patch script.
xz-dev
force-pushed
the
simplify-pr-122-fleet-bullets
branch
from
July 18, 2026 07:16
7d071ac to
509ef30
Compare
xz-dev
added a commit
to xz-dev/pi-subagents-tintinweb
that referenced
this pull request
Jul 18, 2026
Contributor
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Closes: #122
Summary
FleetView's selection markers are outliers in the extension's own visual language. Everywhere else, state is shown with a plain filled/hollow circle pair; only FleetView reaches for exotic glyphs:
conversation-viewer.ts●running○idleagent-widget.ts●active○inactiveindex.tsagent list•project◦globalfleet-list.ts(this)⏺(U+23FA)◯(U+25EF)⏺(BLACK CIRCLE FOR RECORD) and◯(LARGE CIRCLE) are niche, render inconsistently across terminal fonts, and◯is visibly oversized next to text. This PR aligns FleetView with the rest of the codebase:●selected (accent) /○unselected (dim).These are base geometric shapes (U+25CF/U+25CB) with the broadest terminal-font coverage. Selection is already carried by the accent-vs-dim color, so a compound glyph like
◉(U+25C9 FISHEYE — outer ring + inner dot that muddies at small terminal sizes) adds noise over plain●.The change is one line (plus a doc comment and test expectations):
Relationship to #122
#122 identified the same glyph problem but proposed
◉/○— introducing a third circle set instead of converging on the existing one — and bundled ~300 lines beyond the fix: a 220-line companion extension with its own/subagents-uicommand and a 79-line shell script thatsed -is the installed package undernode_modules(breaks on every update, and its spinner patterns don't match the current source). The companion machinery is personal customization that belongs in user dotfiles, not the extension. This PR keeps only the core idea and points it at the codebase's established glyph pair.Testing
npm run lint,npm run typecheck,npm run testall pass (731 tests).Checklist
npm run lint/typecheck/testpass