feat/glasspane-attention-tiers #194

Closed
clawdie wants to merge 2 commits from feat/glasspane-attention-tiers into main
Owner
No description provided.
clawdie added 2 commits 2026-06-25 21:28:47 +02:00
needs_attention() = Error + Blocked + Stalled (free function, single
source of truth). Includes Blocked because glasspane doc comments say
Blocked = 'operator attention needed' (queue_update / pending steering).

Tier 1 — Attention bar:
  Red-bordered panel with '⚠ ATTENTION (N)' title replaces the header
  when any pane needs attention. Shows pane id, reason, and agent.

Tier 2 — Jump keys (n/N):
  n = next attention pane, N = previous (wrapping). Respects session
  scope via filtered_panes(). Detail pane follows the jump.

Tier 3 — Attention filter (a key):
  Toggles attention_only on App. Composes with session filter.

Tier 4 — Row highlight:
  Attention rows get red background when unselected, inverted
  dark-gray+light-red+bold when selected. Global row_highlight
  neutralized.

Also:
- fix(tui): remove hardcoded dark-terminal assumptions — theme-agnostic
- fix(tui): force crossterm color output — override NO_COLOR=1 inherited
  from Hermes sessions (crossterm honours no-color.org standard)
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
de933fdf69
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).
Author
Owner

Superseded by a fresh branch off current main. This branch (feat/glasspane-attention-tiers) was reused after its first PR (#191) merged, so it still carries a duplicate of the already-merged feature commit and conflicts on colibri-glasspane-tui/src/main.rs. The genuinely new content — the session-filter fix + the four tests (authorship preserved) — is reborn cleanly and gate-green in the new PR. Closing this one.

Superseded by a fresh branch off current `main`. This branch (`feat/glasspane-attention-tiers`) was reused after its first PR (#191) merged, so it still carries a duplicate of the already-merged feature commit and conflicts on `colibri-glasspane-tui/src/main.rs`. The genuinely new content — the session-filter fix + the four tests (authorship preserved) — is reborn cleanly and gate-green in the new PR. Closing this one.
clawdie closed this pull request 2026-06-25 22:07:13 +02:00
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

Pull request closed

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#194
No description provided.