Files
SeedPass/docs/tui_v2_parity_checklist.md
T

85 lines
3.8 KiB
Markdown

# TUI v2 Parity Checklist
Status: Parity-complete on `beta` (updated 2026-03-02).
This checklist tracks readiness to switch default interactive mode from legacy TUI to `seedpass tui2`.
## Scope
- Legacy baseline: current default `seedpass` interactive path.
- Candidate: `seedpass tui2` (Textual).
- Non-goal for cutover: replacing CLI/API behavior.
## Current Parity
| Area | Legacy TUI | TUI v2 | Notes |
|---|---|---|---|
| Entry list/search | Yes | Yes | Includes kind filter and search. |
| Entry detail view | Yes | Yes | Large document content preview is truncated for performance. |
| Archive/restore | Yes | Yes | Keyboard and command palette paths. |
| Document editing | Partial | Yes | Save/cancel flow in editor panel. |
| Graph links list | Limited | Yes | Dedicated links panel. |
| Link add/remove | Limited | Yes | Via command palette commands. |
| Neighbor traversal | No | Yes | Link cursor + open target entry. |
| Command discoverability | Menu-driven | Yes | Keybind hints, compact `?` overlay, palette `help`, and full `help-commands` reference. |
| Full legacy workflow coverage | Yes | Yes | Closed with parity matrix completion + bug-bash evidence (2026-03-02). |
## Phase 4 Deliverables
- [x] Feature parity checklist document.
- [x] First UX/perf pass for large vaults.
- paginated entry list rendering (`p`/`n`, `page-*` palette commands)
- document content preview truncation in detail panel
- [x] Error messaging and recovery flow review.
- unified failure status messaging
- retry shortcut (`x`) and palette `retry` command
- [x] Cutover decision memo (`seedpass` default switch timing).
## Risks Remaining
- Incomplete parity for legacy-only interactive operations not yet mapped into TUI v2.
- Textual runtime/version behavior can vary by environment.
- Large-vault validation is bounded to deterministic pagination/preview checks and should be expanded with full end-to-end sync workloads.
## Validation Checklist Before Cutover
- [x] Define and run deterministic parity scenarios across entry kinds.
- `src/tests/test_tui_v2_parity_scenarios.py`
- [x] Add Textual interaction tests for list/search/edit/link/pagination flows.
- `src/tests/test_tui_v2_textual_interactions.py` (skips when `textual` is unavailable).
- [x] Add non-UI unit tests for TUI v2 helper logic.
- `src/tests/test_tui_v2_helpers.py` covers command parsing, pagination, and detail truncation.
- [x] Verify large vault behavior with realistic data volume in CI-like environment.
- `src/tests/test_tui_v2_large_vault_validation.py`
- standard: `10,000` rows, stress: `50,000` rows (`--stress`)
- [x] Confirm help text and docs match shipped keybindings and palette commands.
- Updated `seedpass tui2 --help`, capabilities hints, and docs discoverability commands.
## Ongoing Tracking
- Active parity continuation and checkoff queue:
- `docs/tui_v2_parity_backlog.md`
## Parity Closure Evidence (2026-03-02)
- Legacy interactive bug-bash harness:
- `python scripts/ai_tui_agent_test.py --scenario extended --verbose`
- Result: `PASS`
- Report: `artifacts/agent_tui_test/20260302T135526Z/report.json`
- Textual TUI v2 bug-bash harness:
- `python scripts/ai_tui2_agent_test.py --scenario extended --verbose`
- Result: `PASS`
- Report: `artifacts/agent_tui2_test/20260302T135526Z/report.json`
- Parity matrix status:
- `docs/tui_v2_legacy_parity_matrix.md` now marks mapped legacy actions as implemented.
## Phase E Closure Notes
- CI smoke now explicitly validates `seedpass tui2 --check` output shape:
- `scripts/tui2_check_smoke.sh` (called from `scripts/run_ci_tests.sh`)
- `.github/workflows/tests.yml` (`poetry run seedpass tui2 --check`)
- Legacy fallback paths remain intentionally available during hardening:
- `seedpass --legacy-tui`
- `seedpass legacy`
- `seedpass tui2 --fallback-legacy`