Skip to content

feat(ui): add "All branches" tab to board assistant panel - #2058

Open
tzercin wants to merge 1 commit into
preset-io:mainfrom
tzercin:all-branches-tab
Open

feat(ui): add "All branches" tab to board assistant panel#2058
tzercin wants to merge 1 commit into
preset-io:mainfrom
tzercin:all-branches-tab

Conversation

@tzercin

@tzercin tzercin commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds an All branches tab to the board teammate/assistant panel, sitting alongside the existing All sessions tab. It lists every branch on the current board — both active/shown and inactive/hidden (archived) — each with a pan-to-branch locator button (mirroring the All Sessions tab) and the zone(s) the branch is pinned to.

What's included

  • New BoardBranchList component — fetches board-scoped branches without an archived filter, so both shown and hidden branches appear (the global store intentionally omits archived ones). Sorts active-before-archived, most-recently-used first within each group, and surfaces the daemon-enriched zone_label.
  • Live updates — refetches on branches and board-objects realtime events. Zone pinning lives on board_objects.data.zone_id rather than the branch row, so a zone move patches board-objects and never fires a branch event; the board-object listener keeps the zone pill accurate without a page refresh.
  • Per-row actions — repo pill, zone label (or "No zone"), archived tag, relative-time timestamp, and a BranchBoardLocatorIcon / row click that pans the canvas camera onto the branch card via the shared recenter channel.
  • Panel wiring — new all-branches tab in BoardTeammatePanel and a BranchesOutlined entry in the panel rail.

Testing

  • BoardBranchList.test.tsx covers: listing both shown and archived branches with zone labels, the archived-filter-free query, realtime refetch on board-object (zone move) events, ignoring events for other boards, and pan-to-branch on row click.
  • All 5 tests pass locally (pnpm vitest run).

🤖 Generated with Claude Code

Adds an "All branches" tab to the board teammate/assistant panel, sitting
alongside "All sessions". It lists every branch on the current board —
including archived (hidden) ones that the global store intentionally omits —
each with a pan-to-branch locator button that mirrors the All Sessions tab,
plus the zone(s) the branch is pinned to.

- New BoardBranchList component fetches board-scoped branches without an
  archived filter, sorts active-before-archived (MRU within each group), and
  surfaces the daemon-enriched zone_label.
- Refetches on branch and board-object realtime events so zone moves (which
  patch board_objects, not the branch row) update the pill live.
- Wires the tab into BoardTeammatePanel and the panel rail (BranchesOutlined).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@tzercin
tzercin force-pushed the all-branches-tab branch from 31f03cc to 33b4a08 Compare July 28, 2026 07:40
@mistercrunch

Copy link
Copy Markdown
Member

Screenshot plz!

@tzercin

tzercin commented Jul 28, 2026

Copy link
Copy Markdown
Contributor Author

Attached.

ScreenRecording20260728212444-reduced.mp4

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.

2 participants