Files
Nick d471767325 feat(tui-tasks): PINNED WORK — a reserved top area in the tasks pane, persisting across boots (D50 residual 4, #2560, D51 spec upgrade, red-first)
The pinned-work layer (tui/tasks/pinned.go, own layer, own tests): a
reserved area at the TOP of the tasks pane's region view — the pane's
first content — accumulating pinned work native to Rune. The header
carries the pin icon + 'pinned (N) — outstanding work' label; each pin
renders one line with its PLAIN-ENGLISH SUMMARY (D51); clicking the
area opens the OUTSTANDING PINNED WORK view, clicking a pin (or x,
which releases the newest) releases it, esc backs out; NO pins renders
NO area — the pane stays blank otherwise, with no selectable rows
anywhere (D51). Keyboard parity for the pin verb: ctrl+b pins the top
live work block — the control-key idiom family (ctrl+q steers,
ctrl+g gauges, ctrl+p palette); plain letters always type (D36).

Pins persist across boots through the hot-state store pattern (the
task_state/history-depth law): $RUNE_HOME/tasks_pins.json, written
atomically on every change, loaded at boot; the layer stays pure
view-model, the shell owns the record. The layer law, keyboard parity
and store are documented in
docs/openspec/changes/add-native-rune-tui/spec-tasks-pinned-work.md.
PTY proof for the boot leg + enter dispatch:
tui/cmd/rune-tui/d50_pty_test.go (the boot_smoke method; its typing
leg shares the environment's documented PTY-input breakage — the
model-level tests in pins_test.go carry the proof green).
2026-10-23 02:07:06 +01:00
..