21 lines
2.3 KiB
Markdown
21 lines
2.3 KiB
Markdown
# 08 — Coordinate the Active Profile and complete the Target panel
|
|
|
|
**What to build:** The complete everyday TUI experience across all first-release Targets, including dynamic discovery, contextual help, coordinated Active Profile changes, immediate per-Target progress, and safe handling of Profile deletion.
|
|
|
|
**Blocked by:** 03 — Control the APT Target; 04 — Control the Docker containers/builds Target; 05 — Control the GNOME desktop proxy Target; 06 — Control the Docker daemon Target; 07 — Diagnose and reset managed Target state.
|
|
|
|
**Status:** done
|
|
|
|
- [ ] The main panel lists only Available Targets and refreshes availability and state on demand.
|
|
- [ ] The help page lists every built-in Target, including hidden Targets and the reason each was not detected.
|
|
- [ ] The selected Target's summary explains effects, non-effects, configuration ownership, expected permissions, and relevant side effects.
|
|
- [ ] Arrow keys and `j`/`k` navigate, Space toggles, `p` opens Profile management, `r` refreshes, `?` opens help, and `q`/Escape returns or exits consistently.
|
|
- [ ] The Active Profile is always visible on the main panel, including a clear absent state.
|
|
- [ ] Attempting to enable any Target without an Active Profile fails immediately and points to Profile management; disabling remains possible.
|
|
- [ ] Changing the Active Profile updates every Enabled Target one at a time and reflects progress and completion immediately on each row.
|
|
- [ ] A cross-Target partial failure keeps successful updates, re-inspects failed Targets, marks Drifted where appropriate, and presents a redacted summary without attempting global rollback.
|
|
- [ ] Deleting the final Proxy Profile requires confirmation, leaves existing managed configuration in place as Drifted, and prevents re-enabling until a new Active Profile exists.
|
|
- [ ] External configuration can be temporarily overlaid by the Active Profile and is restored to External when the managed Target is disabled.
|
|
- [ ] TUI tests cover key-to-intent mapping, page transitions, Active Profile rendering, all Target states, confirmation dialogs, progress, errors, and explanations without duplicating Application behavior tests.
|
|
- [ ] Full Application integration tests exercise multiple fake and real hermetic Adapters through Active Profile switching and partial failure.
|