Identify Fenris and explain authentication #62

Closed
opened 2026-09-10 07:27:58 +00:00 by xavierk · 1 comment
Owner

Parent

Implement dashboard clarity and release notes

What to build

Make the Panes TUI immediately identifiable and prepare users for privileged actions without persistent screen clutter. Preserve the existing information architecture: quiet integration, visible Fenris identity, subdued maker credit, and a one-time authentication notice. Deliver the matching README authentication guidance alongside working behavior and tests.

Acceptance criteria

  • DC-1: The header reads Fenris — NVMe endurance monitor; dimmed by Bongbetic appears inline with service facts in the bottom service strip, never in the action row. Neither identity string appears in fenris status.
  • DC-5: privileged actions will prompt for authentication (polkit) appears full-width under the header at launch, clears on the first refresh tick, and never reappears during that session. It is absent from fenris status.
  • The authentication notice remains a quiet informational line rather than competing with drive state. Dashboard elevation wording uses polkit, not sudo; existing installation/upgrade instructions are unaffected.
  • Headless Textual Pilot tests exercise the real app: initial visibility, first-refresh dismissal, subsequent refreshes, and fresh-session visibility. Test observable presentation and lifecycle, not private widget-tree structure or isolated constants. Status-render assertions prove TUI-only strings remain absent.
  • Existing Panes behavior and failure handling remain green; no collection, privilege, or monitoring-period semantics change.
  • Add the authentication guidance from the locked README “Reading the dashboard” text. Coordinate that section with the monitoring and release-notes slices: each owns its relevant text, with the completed section matching the companion specification. Do not document unfinished sibling behavior as already available.
  • Respect entries-at-fix-time release discipline. If the shared changelog convention has already landed, include the user-facing entry with this change; otherwise supply its entry with the change for the release-notes slice to incorporate. This is coordination, not a blocker.

Blocked by

None (can start immediately).

## Parent [Implement dashboard clarity and release notes](https://git.bongbetic.com/xavierk/Fenris/issues/61) ## What to build Make the Panes TUI immediately identifiable and prepare users for privileged actions without persistent screen clutter. Preserve the existing information architecture: quiet integration, visible Fenris identity, subdued maker credit, and a one-time authentication notice. Deliver the matching README authentication guidance alongside working behavior and tests. ## Acceptance criteria - [ ] DC-1: The header reads `Fenris — NVMe endurance monitor`; dimmed `by Bongbetic` appears inline with service facts in the bottom service strip, never in the action row. Neither identity string appears in `fenris status`. - [ ] DC-5: `privileged actions will prompt for authentication (polkit)` appears full-width under the header at launch, clears on the first refresh tick, and never reappears during that session. It is absent from `fenris status`. - [ ] The authentication notice remains a quiet informational line rather than competing with drive state. Dashboard elevation wording uses polkit, not sudo; existing installation/upgrade instructions are unaffected. - [ ] Headless Textual Pilot tests exercise the real app: initial visibility, first-refresh dismissal, subsequent refreshes, and fresh-session visibility. Test observable presentation and lifecycle, not private widget-tree structure or isolated constants. Status-render assertions prove TUI-only strings remain absent. - [ ] Existing Panes behavior and failure handling remain green; no collection, privilege, or monitoring-period semantics change. - [ ] Add the authentication guidance from the locked README “Reading the dashboard” text. Coordinate that section with the monitoring and release-notes slices: each owns its relevant text, with the completed section matching the companion specification. Do not document unfinished sibling behavior as already available. - [ ] Respect entries-at-fix-time release discipline. If the shared changelog convention has already landed, include the user-facing entry with this change; otherwise supply its entry with the change for the release-notes slice to incorporate. This is coordination, not a blocker. ## Blocked by None (can start immediately).
xavierk added the ready-for-agent label 2026-09-10 07:27:58 +00:00
xavierk self-assigned this 2026-09-10 07:44:31 +00:00
Author
Owner

Implemented issue #62 in commit 7bbe5ce.

  • DC-1: Panes now identifies Fenris — NVMe endurance monitor; dimmed by Bongbetic stays inline with service facts.
  • DC-5: launch-only privileged actions will prompt for authentication (polkit) notice appears under identity, clears on first periodic refresh, and stays dismissed for session.
  • fenris status remains free of TUI-only identity/auth strings.
  • README now carries authentication-owned portion of Reading the dashboard; continuity, paused-vs-quit, and release-pointer text remain with sibling slices.

Release entry supplied for release-notes slice (shared changelog convention not yet present):

  • Identify Fenris on the dashboard and explain polkit authentication before privileged actions.

Verification: PYTHONPATH=.:src .venv/bin/pytest -q → 380 passed, 34 skipped; focused TUI/status tests → 80 passed; compileall and git diff --check passed. Ruff unavailable in project environment.

Implemented issue #62 in commit `7bbe5ce`. - DC-1: Panes now identifies `Fenris — NVMe endurance monitor`; dimmed `by Bongbetic` stays inline with service facts. - DC-5: launch-only `privileged actions will prompt for authentication (polkit)` notice appears under identity, clears on first periodic refresh, and stays dismissed for session. - `fenris status` remains free of TUI-only identity/auth strings. - README now carries authentication-owned portion of `Reading the dashboard`; continuity, paused-vs-quit, and release-pointer text remain with sibling slices. Release entry supplied for release-notes slice (shared changelog convention not yet present): - Identify Fenris on the dashboard and explain polkit authentication before privileged actions. Verification: `PYTHONPATH=.:src .venv/bin/pytest -q` → 380 passed, 34 skipped; focused TUI/status tests → 80 passed; compileall and `git diff --check` passed. Ruff unavailable in project environment.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: xavierk/Fenris#62