2.6 KiB
status, phase, source, started, updated
| status | phase | source | started | updated | |||
|---|---|---|---|---|---|---|---|
| complete | 01-safety-foundation |
|
2026-02-28T21:25:00Z | 2026-02-28T21:35:00Z |
Current Test
[testing complete]
Tests
1. App launches with placeholder TUI
expected: Running cargo run displays a TUI with a "BBS-MD" title in the top border and a welcome message. The terminal enters full-screen raw mode on the main screen buffer.
result: pass
2. Press 'q' to exit with goodbye message
expected: While the TUI is running, pressing 'q' exits the app and displays a BBS-style goodbye box with "CARRIER LOST" text that shows briefly (~500ms) before returning to the shell prompt. result: pass
3. Single Ctrl+C shows quit prompt
expected: Pressing Ctrl+C once shows a yellow "Press Ctrl+C again to disconnect..." prompt in the TUI. The app does NOT exit yet. result: pass
4. Double Ctrl+C exits
expected: Pressing Ctrl+C twice within 2 seconds exits the app with the same BBS "CARRIER LOST" goodbye message. result: pass
5. Quit prompt clears on other key
expected: After pressing Ctrl+C once (seeing the quit prompt), pressing any other key (e.g., a letter or arrow key) dismisses the yellow quit prompt. The app continues running normally. result: pass
6. Invalid config produces BBS-themed error
expected: Creating a bbs.toml (next to the binary in target/debug/) with an unknown key like bogus = true causes the app to print a "SYSTEM ERROR" message mentioning "SysOp" to stderr and exit with code 1 — without entering the TUI.
result: pass
7. SIGTERM clean exit
expected: While the TUI is running, sending SIGTERM from another terminal (kill $(pgrep bbs-md)) causes the app to exit cleanly — no goodbye message, but the terminal is restored to a usable state (cursor visible, typing works normally).
result: pass
8. Terminal restored after exit
expected: After exiting by any method (q, Ctrl+C, SIGTERM), the terminal is fully usable — cursor is visible, text input works, no garbled characters or stuck raw mode. result: issue reported: "Upon exiting the app the frame is left in the terminal. Could we use a second buffer or something to render the tui and exit without leaving artifacts?" severity: minor
Summary
total: 8 passed: 7 issues: 1 pending: 0 skipped: 0
Gaps
- truth: "After exiting by any method, the terminal is fully clean — no TUI frame artifacts remain on screen" status: failed reason: "User reported: Upon exiting the app the frame is left in the terminal. Could we use a second buffer or something to render the tui and exit without leaving artifacts?" severity: minor test: 8 artifacts: [] missing: []