Cleanup pane, Pi session tools, review from the UI, project registry, needs panel acts

This commit is contained in:
Sam
2026-11-11 14:16:12 +11:00
parent 0476afcb95
commit 3ec960e349
16 changed files with 726 additions and 18 deletions

View File

@@ -0,0 +1,52 @@
---
type: context
id: context.paperclip-harness.paperclip-harness-tui-key-hint-footer-convention-and-planned
title: paperclip-harness TUI key-hint footer convention and planned work
status: active
source_of_truth: false
freshness: current
last_reviewed: 2026-11-11
tags:
- pack/paperclip-harness
- agent-memory/context
- paperclip-harness
- tui
- key-hints
- docs/NEXT.md
- conventions
---
# paperclip-harness TUI key-hint footer convention and planned work
Repo/project: paperclip-harness (Go TUI + bin/ scripts, docs/).
Convention (established this turn, commit 0476afc "Short comma-separated key hints everywhere; write down what is left to build"): every TUI pane footer is a single short, comma-separated hint line built from keyHint()/hintLine() helpers (helpers live around the pane view code, e.g. lines ~521-529 for the Work pane). Hints must be brief and fit m.width; they are truncated with an ellipsis when too long.
Current footers by pane:
- Work: "n p task, [ ] tab, ↑↓ scroll, enter log, o pick, m merge, t tools, r refresh, R rebuild"
- Board: "↑↓ move, enter open, a assign, u unblock, t tools, / filter, ? keys, tab panel, r refresh"
- Agents: "[ ] tab, enter open, p P w pause/resume/wake, r refresh, ? keys"
- Project: "[ ] tab, ↑↓ or j k scroll, r refresh, R rebuild, q quit"
- Repair: "[ ] tab, R rebuild, ↑↓ or j k scroll, r recheck, q quit"
- Reply: "enter reply, s status, ↑↓ scroll, r refresh, R rebuild, q quit"
- New task: "tab field, enter next/create, ctrl+n tab, esc cancel"
Planned work is tracked in docs/NEXT.md, ordered by usefulness: (1) Repair>cleanup (session/pane killer with tick-to-kill, refuses attached sessions and paperclip-harness, never touches ~/.pi/paperclips); (2) Pi session browser (t opens ~/.pi/paperclips in Yazi; pi --resume); (3) Project>projects registry of adopted projects (id, folder, host, session) with switch key, projects on .27 shown as 'on .27'; (4) Work>review starting bin/review <task> --post in background with log-following tab like merge; (5) old office scaffold (settings.toml, per-role files, verify.sh, page notes, fill only missing); (6) Board>needs acting on a card (unblock/assign/open in Reply); (7) spend chart in Project>overview in Go next to runs sparkline; (8) per-agent memory read-only row (engram vs headroom); (9) MOUSE-1 triage only.
Unproven areas noted: office opening a project on another host (--host) never exercised; mouse-click on a task row (zones wired, untested); R from a pane not at expected size; agent behavior with an open blocker.
## Evidence
- Confidence: 78%
- Reason: Concrete, evidence-backed footer convention plus the durable roadmap content of docs/NEXT.md; useful for future work in this repo.
## Related
- [[packs/paperclip-harness/00-system/pi-agent/memory-manifest|Memory Manifest]]
## Related learned memories <!-- same-turn-2026-11-11 02:40:13 -->
- context: [[packs/paperclip-harness/20-context/paperclip-harness-tui-key-hint-footer-convention-and-planned|paperclip-harness TUI key-hint footer convention and planned work]]
- observation: [[packs/paperclip-harness/60-observations/tmp-repository-structure-and-configuration-patterns|paperclip-harness task state and session inventory]]
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-pause-2026-11-11-02-40-13|Rich discovery: pause 2026-11-11 02:40:13]]
- context: [[packs/paperclip-harness/20-context/paperclip-harness|pause]]

View File

@@ -380,3 +380,64 @@ Committed as `049e25a`. The eight workspaces are rebuilt; `Work>work` will open
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-tmp-2026-11-11-01-58-59|Rich discovery: tmp 2026-11-11 01:58:59]]
- context: [[packs/paperclip-harness/20-context/tmp|tmp]]
- observation: [[packs/paperclip-harness/60-observations/tmp-repository-structure-and-configuration-patterns|tmp repository structure and configuration patterns]]
---
## Update (2026-11-11 02:40:13)
## Rich discovery update (2026-11-11 02:40:13)
Footers are now short and comma-separated, with `n p` in:
```
Work n p task, [ ] tab, ↑↓ scroll, enter log, o pick, m merge, t tools, r refresh, R rebuild
Board ↑↓ move, enter open, a assign, u unblock, t tools, / filter, ? keys, tab panel, r refresh
Agents [ ] tab, enter open, p P w pause/resume/wake, r refresh, ? keys
Repair [ ] tab, R rebuild, ↑↓ scroll, r recheck, q quit
Reply enter reply, s status, ↑↓ scroll, r refresh, R rebuild, q quit
New task tab field, enter next/create, ctrl+n tab, esc cancel
```
## What is left — `docs/NEXT.md`
In order of usefulness:
1. **`Repair>cleanup`** — the pane you asked for: sessions with pane count and age, kill only what you tick, refuse attached ones and refuse `paperclip-harness`, and never touch `~/.pi/paperclips` (that is your history). Still 37 sessions, 21 of them from the closed project's tests; nothing killed.
2. **A Pi session browser** — cheapest first: a `t` entry opening `~/.pi/paperclips` in Yazi, and one running `pi --resume`. A transcript tab later only if browsing files feels like a detour.
3. **`Project>projects`** — a registry of adopted projects (id, folder, host, session) with a switch key. A project on `.27` shows as `on .27`, not offered.
4. **Start a review from `Work>review`** — `v` runs `bin/review <task> --post` in the background, tab follows the log, exactly as merge does now.
5. **The old `office` scaffold** — `settings.toml`, a file per role, `verify.sh`, page notes, writing only what is missing. The cheapest remaining gap in the project layer.
6. **`Board>needs` acting on a card** — unblock, assign, open in Reply, from the card itself.
7. **Spend chart** in `Project>overview`, in Go, next to the runs sparkline.
8. **Memory per agent** — read-only row showing whether an agent uses engram or headroom, before any switch.
9. **MOUSE-1** — key present, software absent; triage only, never a gate.
## Unproven, worth a test
- opening a project **on another machine** (`bin/office --host`) — written, never exercised;
- **clicking** a task row with the mouse — zones wired, nobody has clicked;
- `R` from a pane that is not at its expected size;
- a task whose blocker is still **open** — does the agent stay away until it closes?
## Paperclip tasks in this project
Thirteen tasks, **one open**: `AUD-162`, a leftover test task in `todo` from the first day. Everything else is `done` — including the four you created today (`AUD-168`, `AUD-169`, `AUD-170`, `AUD-171`).
Committed as `0476afc`; the eight workspaces were rebuilt and are running. My suggestion for the next session: build `Repair>cleanup` first, since you have a concrete pile of junk to clear and it is a read-then-confirm operation with no risk to the Pi history.
## Source paths observed
- `pause/resume/wake`
## Evidence
- Confidence: 84%
- Reason: Update component/repository context with detailed discovered structure and configuration
## Related learned memories <!-- same-turn-2026-11-11 02:40:13 -->
- context: [[packs/paperclip-harness/20-context/paperclip-harness-tui-key-hint-footer-convention-and-planned|paperclip-harness TUI key-hint footer convention and planned work]]
- observation: [[packs/paperclip-harness/60-observations/tmp-repository-structure-and-configuration-patterns|paperclip-harness task state and session inventory]]
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-pause-2026-11-11-02-40-13|Rich discovery: pause 2026-11-11 02:40:13]]
- context: [[packs/paperclip-harness/20-context/paperclip-harness|pause]]

View File

@@ -2554,3 +2554,120 @@ Committed as `f949345`; `docs/RUNS-AND-MERGE.md` now carries the explanation of
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-each-of-those-was-a-real-defect-not-misunders|Rich discovery: each-of-those-was-a-real-defect-not-misunderstanding-on-your 2026-11-11 02:28:06]]
- context: [[packs/paperclip-harness/20-context/each-of-those-was-a-real-defect-not-misunderstanding-on-your|each-of-those-was-a-real-defect-not-misunderstanding-on-your]]
- observation: [[packs/paperclip-harness/60-observations/tmp-repository-structure-and-configuration-patterns|each-of-those-was-a-real-defect-not-misunderstanding-on-your repository structure and configuration patterns]]
---
## Update (2026-11-11 02:40:13)
As of this turn in the paperclip-harness repo: 13 tasks exist in the project, only 1 open — AUD-162 'Tree render check' in todo, a leftover test task from the first day. All others done, including AUD-168, AUD-169, AUD-170, AUD-171 created earlier the same day.
Environment caveat: `~/.pi/paperclips` holds 37 sessions, 21 of them from a closed project's tests. This path is Pi history and must never be touched by cleanup tooling.
Build/validation: `go build` returned build=0 after the footer change; commit 0476afc; the eight workspaces were rebuilt and are running.
## Detailed observations from completed turn
Footers are now short and comma-separated, with `n p` in:
```
Work n p task, [ ] tab, ↑↓ scroll, enter log, o pick, m merge, t tools, r refresh, R rebuild
Board ↑↓ move, enter open, a assign, u unblock, t tools, / filter, ? keys, tab panel, r refresh
Agents [ ] tab, enter open, p P w pause/resume/wake, r refresh, ? keys
Repair [ ] tab, R rebuild, ↑↓ scroll, r recheck, q quit
Reply enter reply, s status, ↑↓ scroll, r refresh, R rebuild, q quit
New task tab field, enter next/create, ctrl+n tab, esc cancel
```
## What is left — `docs/NEXT.md`
In order of usefulness:
1. **`Repair>cleanup`** — the pane you asked for: sessions with pane count and age, kill only what you tick, refuse attached ones and refuse `paperclip-harness`, and never touch `~/.pi/paperclips` (that is your history). Still 37 sessions, 21 of them from the closed project's tests; nothing killed.
2. **A Pi session browser** — cheapest first: a `t` entry opening `~/.pi/paperclips` in Yazi, and one running `pi --resume`. A transcript tab later only if browsing files feels like a detour.
3. **`Project>projects`** — a registry of adopted projects (id, folder, host, session) with a switch key. A project on `.27` shows as `on .27`, not offered.
4. **Start a review from `Work>review`** — `v` runs `bin/review <task> --post` in the background, tab follows the log, exactly as merge does now.
5. **The old `office` scaffold** — `settings.toml`, a file per role, `verify.sh`, page notes, writing only what is missing. The cheapest remaining gap in the project layer.
6. **`Board>needs` acting on a card** — unblock, assign, open in Reply, from the card itself.
7. **Spend chart** in `Project>overview`, in Go, next to the runs sparkline.
8. **Memory per agent** — read-only row showing whether an agent uses engram or headroom, before any switch.
9. **MOUSE-1** — key present, software absent; triage only, never a gate.
## Unproven, worth a test
- opening a project **on another machine** (`bin/office --host`) — written, never exercised;
- **clicking** a task row with the mouse — zones wired, nobody has clicked;
- `R` from a pane that is not at its expected size;
- a task whose blocker is still **open** — does the agent stay away until it closes?
## Paperclip tasks in this project
Thirteen tasks, **one open**: `AUD-162`, a leftover test task in `todo` from the first day. Everything else is `done` — including the four you created today (`AUD-168`, `AUD-169`, `AUD-170`, `AUD-171`).
Committed as `0476afc`; the eight workspaces were rebuilt and are running. My suggestion for the next session: build `Repair>cleanup` first, since you have a concrete pile of junk to clear and it is a read-then-confirm operation with no risk to the Pi history.
## Evidence
- Confidence: 80%
- Reason: Factual counts, task state, and the never-touch path caveat are durable operational facts.; enriched with final-answer detail because persistence should be reusable
---
## Update (2026-11-11 02:40:13)
## Structural/configuration observations (2026-11-11 02:40:13)
Footers are now short and comma-separated, with `n p` in:
```
Work n p task, [ ] tab, ↑↓ scroll, enter log, o pick, m merge, t tools, r refresh, R rebuild
Board ↑↓ move, enter open, a assign, u unblock, t tools, / filter, ? keys, tab panel, r refresh
Agents [ ] tab, enter open, p P w pause/resume/wake, r refresh, ? keys
Repair [ ] tab, R rebuild, ↑↓ scroll, r recheck, q quit
Reply enter reply, s status, ↑↓ scroll, r refresh, R rebuild, q quit
New task tab field, enter next/create, ctrl+n tab, esc cancel
```
## What is left — `docs/NEXT.md`
In order of usefulness:
1. **`Repair>cleanup`** — the pane you asked for: sessions with pane count and age, kill only what you tick, refuse attached ones and refuse `paperclip-harness`, and never touch `~/.pi/paperclips` (that is your history). Still 37 sessions, 21 of them from the closed project's tests; nothing killed.
2. **A Pi session browser** — cheapest first: a `t` entry opening `~/.pi/paperclips` in Yazi, and one running `pi --resume`. A transcript tab later only if browsing files feels like a detour.
3. **`Project>projects`** — a registry of adopted projects (id, folder, host, session) with a switch key. A project on `.27` shows as `on .27`, not offered.
4. **Start a review from `Work>review`** — `v` runs `bin/review <task> --post` in the background, tab follows the log, exactly as merge does now.
5. **The old `office` scaffold** — `settings.toml`, a file per role, `verify.sh`, page notes, writing only what is missing. The cheapest remaining gap in the project layer.
6. **`Board>needs` acting on a card** — unblock, assign, open in Reply, from the card itself.
7. **Spend chart** in `Project>overview`, in Go, next to the runs sparkline.
8. **Memory per agent** — read-only row showing whether an agent uses engram or headroom, before any switch.
9. **MOUSE-1** — key present, software absent; triage only, never a gate.
## Unproven, worth a test
- opening a project **on another machine** (`bin/office --host`) — written, never exercised;
- **clicking** a task row with the mouse — zones wired, nobody has clicked;
- `R` from a pane that is not at its expected size;
- a task whose blocker is still **open** — does the agent stay away until it closes?
## Paperclip tasks in this project
Thirteen tasks, **one open**: `AUD-162`, a leftover test task in `todo` from the first day. Everything else is `done` — including the four you created today (`AUD-168`, `AUD-169`, `AUD-170`, `AUD-171`).
Committed as `0476afc`; the eight workspaces were rebuilt and are running. My suggestion for the next session: build `Repair>cleanup` first, since you have a concrete pile of junk to clear and it is a read-then-confirm operation with no risk to the Pi history.
## Source paths observed
- `pause/resume/wake`
## Evidence
- Confidence: 82%
- Reason: Captured factual repo structure/configuration patterns from rich discovery
## Related learned memories <!-- same-turn-2026-11-11 02:40:13 -->
- context: [[packs/paperclip-harness/20-context/paperclip-harness-tui-key-hint-footer-convention-and-planned|paperclip-harness TUI key-hint footer convention and planned work]]
- observation: [[packs/paperclip-harness/60-observations/tmp-repository-structure-and-configuration-patterns|paperclip-harness task state and session inventory]]
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-pause-2026-11-11-02-40-13|Rich discovery: pause 2026-11-11 02:40:13]]
- context: [[packs/paperclip-harness/20-context/paperclip-harness|pause]]

View File

@@ -0,0 +1,80 @@
---
type: session
id: session.paperclip-harness.rich-discovery-pause-2026-11-11-02-40-13
title: Rich discovery: pause 2026-11-11 02:40:13
status: active
source_of_truth: false
freshness: current
last_reviewed: 2026-11-11
tags:
- pack/paperclip-harness
- agent-memory/session
- autolearn
- rich-discovery
- repo/pause
---
# Rich discovery: pause 2026-11-11 02:40:13
Sanitized rich discovery snapshot captured automatically from the completed turn.
## Source paths observed
- `pause/resume/wake`
## Final answer snapshot
Footers are now short and comma-separated, with `n p` in:
```
Work n p task, [ ] tab, ↑↓ scroll, enter log, o pick, m merge, t tools, r refresh, R rebuild
Board ↑↓ move, enter open, a assign, u unblock, t tools, / filter, ? keys, tab panel, r refresh
Agents [ ] tab, enter open, p P w pause/resume/wake, r refresh, ? keys
Repair [ ] tab, R rebuild, ↑↓ scroll, r recheck, q quit
Reply enter reply, s status, ↑↓ scroll, r refresh, R rebuild, q quit
New task tab field, enter next/create, ctrl+n tab, esc cancel
```
## What is left — `docs/NEXT.md`
In order of usefulness:
1. **`Repair>cleanup`** — the pane you asked for: sessions with pane count and age, kill only what you tick, refuse attached ones and refuse `paperclip-harness`, and never touch `~/.pi/paperclips` (that is your history). Still 37 sessions, 21 of them from the closed project's tests; nothing killed.
2. **A Pi session browser** — cheapest first: a `t` entry opening `~/.pi/paperclips` in Yazi, and one running `pi --resume`. A transcript tab later only if browsing files feels like a detour.
3. **`Project>projects`** — a registry of adopted projects (id, folder, host, session) with a switch key. A project on `.27` shows as `on .27`, not offered.
4. **Start a review from `Work>review`** — `v` runs `bin/review <task> --post` in the background, tab follows the log, exactly as merge does now.
5. **The old `office` scaffold** — `settings.toml`, a file per role, `verify.sh`, page notes, writing only what is missing. The cheapest remaining gap in the project layer.
6. **`Board>needs` acting on a card** — unblock, assign, open in Reply, from the card itself.
7. **Spend chart** in `Project>overview`, in Go, next to the runs sparkline.
8. **Memory per agent** — read-only row showing whether an agent uses engram or headroom, before any switch.
9. **MOUSE-1** — key present, software absent; triage only, never a gate.
## Unproven, worth a test
- opening a project **on another machine** (`bin/office --host`) — written, never exercised;
- **clicking** a task row with the mouse — zones wired, nobody has clicked;
- `R` from a pane that is not at its expected size;
- a task whose blocker is still **open** — does the agent stay away until it closes?
## Paperclip tasks in this project
Thirteen tasks, **one open**: `AUD-162`, a leftover test task in `todo` from the first day. Everything else is `done` — including the four you created today (`AUD-168`, `AUD-169`, `AUD-170`, `AUD-171`).
Committed as `0476afc`; the eight workspaces were rebuilt and are running. My suggestion for the next session: build `Repair>cleanup` first, since you have a concrete pile of junk to clear and it is a read-then-confirm operation with no risk to the Pi history.
## Evidence
- Confidence: 86%
- Reason: Preserve full sanitized discovery detail from a rich investigation turn
## Related
- [[packs/paperclip-harness/00-system/pi-agent/memory-manifest|Memory Manifest]]
## Related learned memories <!-- same-turn-2026-11-11 02:40:13 -->
- context: [[packs/paperclip-harness/20-context/paperclip-harness-tui-key-hint-footer-convention-and-planned|paperclip-harness TUI key-hint footer convention and planned work]]
- observation: [[packs/paperclip-harness/60-observations/tmp-repository-structure-and-configuration-patterns|paperclip-harness task state and session inventory]]
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-pause-2026-11-11-02-40-13|Rich discovery: pause 2026-11-11 02:40:13]]
- context: [[packs/paperclip-harness/20-context/paperclip-harness|pause]]