fix(tui): attention bar respects session filter (+ tests) — resolves #194 #195

Merged
clawdie merged 2 commits from fix/glasspane-attention-session-filter into main 2026-06-25 22:08:57 +02:00
Owner

Resolves the unmergeable #194 cleanly.

Why #194 couldn't merge

The attention feature already merged to main via #191 (commit c858cde). #194 was opened from the same feat/glasspane-attention-tiers branch and still carried the full feature commit (4d95f11), a near-duplicate of what was already on main — so git couldn't 3-way-merge colibri-glasspane-tui/src/main.rs. A branch-reuse-after-merge trap, not a real code conflict.

What's genuinely new (and all this PR contains)

Built fresh off current main, two commits:

  1. fix(tui): attention bar respects session filter — the only net delta of #194's feature commit over what #191 merged: compute has_attention from filtered_panes() instead of the unfiltered attention_count(), so an error pane in another session no longer lights the attention bar for the session you're viewing. Removes the now-unused attention_count().
  2. test(tui): add coverage for attention navigation + cross-session isolation — the four new tests, cherry-picked to preserve original authorship (123kupola): forward/backward attention jumps with wraparound, cross-session isolation, and the empty-attention status-message case.

Gates

  • cargo fmt --all --check
  • cargo clippy -p colibri-glasspane-tui -- -D warnings
  • cargo test -p colibri-glasspane-tui — 18 passed

🤖 Generated with Claude Code

Resolves the unmergeable **#194** cleanly. ## Why #194 couldn't merge The attention feature already merged to `main` via **#191** (commit `c858cde`). #194 was opened from the *same* `feat/glasspane-attention-tiers` branch and still carried the full feature commit (`4d95f11`), a near-duplicate of what was already on main — so git couldn't 3-way-merge `colibri-glasspane-tui/src/main.rs`. A branch-reuse-after-merge trap, not a real code conflict. ## What's genuinely new (and all this PR contains) Built fresh off current `main`, two commits: 1. **`fix(tui): attention bar respects session filter`** — the only net delta of #194's feature commit over what #191 merged: compute `has_attention` from `filtered_panes()` instead of the unfiltered `attention_count()`, so an error pane in another session no longer lights the attention bar for the session you're viewing. Removes the now-unused `attention_count()`. 2. **`test(tui): add coverage for attention navigation + cross-session isolation`** — the four new tests, cherry-picked to preserve original authorship (123kupola): forward/backward attention jumps with wraparound, cross-session isolation, and the empty-attention status-message case. ## Gates - ✅ `cargo fmt --all --check` - ✅ `cargo clippy -p colibri-glasspane-tui -- -D warnings` - ✅ `cargo test -p colibri-glasspane-tui` — 18 passed 🤖 Generated with [Claude Code](https://claude.com/claude-code)
clawdie added 2 commits 2026-06-25 22:07:10 +02:00
Compute has_attention from filtered_panes() instead of the unfiltered
attention_count() so an error pane in another session no longer lights
the bar for the session you're viewing. Removes the now-unused
attention_count(). (The refinement from PR #194's feature commit that
was not in the version merged via #191.)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
test(tui): add coverage for attention navigation + cross-session isolation
Some checks are pending
CI / rust (pull_request) Waiting to run
CI / markdown (pull_request) Waiting to run
CI / port (pull_request) Waiting to run
CI / agent-jail-pkgs (pull_request) Waiting to run
1b4d95db9d
Four new tests closing the last attention-tier coverage gaps:

- jump_next_attention_skips_healthy_panes:
  Panes [ok, err, ok, stalled, ok] — proves n jumps 0→1→3→wrap→1,
  skipping healthy panes. Forward wrapping.

- jump_prev_attention_wraps_backwards:
  Same layout — proves N jumps 4→3→1→wrap→3.
  Backward wrapping.

- attention_bar_ignores_other_session_panes:
  Error pane in session s2, viewing session s1 — bar must NOT
  appear. Proves the filtered_panes()-based has_attention fix
  from commit 4d95f11.

- jump_next_attention_reports_when_no_attention_panes:
  All healthy panes — status message set to 'no attention',
  selection unchanged.

18 tests, workspace green (0 failures).
clawdie merged commit 10372bfd7a into main 2026-06-25 22:08:57 +02:00
clawdie deleted branch fix/glasspane-attention-session-filter 2026-06-25 22:08:58 +02:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: clawdie/colibri#195
No description provided.