docs(01-02): complete terminal safety primitives plan

This commit is contained in:
2026-02-28 21:14:44 +01:00
parent 966b47edbc
commit d6209ba4c5
5 changed files with 303 additions and 28 deletions
+17 -13
View File
@@ -10,28 +10,28 @@ See: .planning/PROJECT.md (updated 2026-02-28)
## Current Position
Phase: 1 of 4 (Safety Foundation)
Plan: 0 of 3 in current phase
Status: Planned — ready to execute
Last activity: 2026-02-28 — Phase 1 planned (3 plans, 2 waves)
Plan: 2 of 3 in current phase
Status: Executing — Plan 02 complete, Plan 03 next
Last activity: 2026-02-28 — Plan 02 complete (terminal safety primitives)
Progress: [░░░░░░░░░░] 0%
Progress: [██░░░░░░░░] 17%
## Performance Metrics
**Velocity:**
- Total plans completed: 0
- Average duration: -
- Total execution time: 0 hours
- Total plans completed: 2
- Average duration: 3 min
- Total execution time: 0.08 hours
**By Phase:**
| Phase | Plans | Total | Avg/Plan |
|-------|-------|-------|----------|
| - | - | - | - |
| 01-safety-foundation | 2 | 5 min | 2.5 min |
**Recent Trend:**
- Last 5 plans: -
- Trend: -
- Last 5 plans: 2 min, 3 min
- Trend: Stable
*Updated after each plan completion*
@@ -46,6 +46,11 @@ Recent decisions affecting current work:
- Pre-Phase 1: Use pulldown-cmark event-based approach for markdown parsing (not comrak)
- Pre-Phase 1: No tokio/async runtime — synchronous event loop only
- Pre-Phase 2: Choose wiki-link parsing strategy before implementation (regex pre-pass vs post-parse interception)
- 01-01: Resolve relative vault_path against config file parent dir (not cwd) — bbs.toml lives next to binary
- 01-01: detect_login_shell() called before parse_cli() — both read argv[0], parse_cli strips the dash
- 01-02: Use ratatui::crossterm re-export path — crossterm is transitive dep, not direct dep in Cargo.toml
- 01-02: SIGINT not registered via signal-hook — crossterm key events handle double-press Ctrl+C in Plan 03
- 01-02: restore_terminal() skips ratatui::restore() — that would call LeaveAlternateScreen (never entered)
### Pending Todos
@@ -53,7 +58,6 @@ None yet.
### Blockers/Concerns
- **LIFE**: Panic hook and SIGHUP handling are highest priority — must land before any feature code
- **REND**: Verify ratatui 0.30 custom Widget trait signature before building BBS widgets (changed between 0.28 and 0.29)
- **NAV**: Path traversal via wiki-links must be addressed in Phase 3 link resolver — canonicalize and prefix-check every resolved path
- **LIVE**: notify 8.x API must be verified at integration time; watch only current file (not full vault) to avoid inotify exhaustion
@@ -61,5 +65,5 @@ None yet.
## Session Continuity
Last session: 2026-02-28
Stopped at: Phase 1 planned, ready to execute
Resume file: .planning/phases/01-safety-foundation/01-01-PLAN.md
Stopped at: Completed 01-02-PLAN.md — terminal safety primitives committed
Resume file: .planning/phases/01-safety-foundation/01-03-PLAN.md