Work>work chooses its own task and merges from the interface; panes find their tools; shell follows the project folder

This commit is contained in:
Sam
2026-11-11 12:02:12 +11:00
parent 678c497064
commit 7198c34e42
13 changed files with 441 additions and 15 deletions

View File

@@ -0,0 +1,83 @@
---
type: session
id: session.paperclip-harness.rich-discovery-agents-2026-11-11-00-28-33
title: Rich discovery: agents 2026-11-11 00:28:33
status: active
source_of_truth: false
freshness: current
last_reviewed: 2026-11-11
tags:
- pack/paperclip-harness
- agent-memory/session
- autolearn
- rich-discovery
- repo/agents
---
# Rich discovery: agents 2026-11-11 00:28:33
Sanitized rich discovery snapshot captured automatically from the completed turn.
## Source paths observed
- `../bin/harness`
- `agents/heartbeats/routines`
## Final answer snapshot
You are right on both counts, and I will be precise about what was invented and whose rule it was.
## Where the shell command came from — and why I was wrong to force it
It is **not** a Paperclip rule. It is your own project rule, written in `docs/OPERATING-RULES.md` before this attempt:
> **How a task is judged finished.** The test is a **command**, kept with the project, and agreed **before** the work starts.
That came out of the old project, along with `.harness/verify.sh`. Paperclip has no such field. An agent sets a task's status itself; the reviewer or a review stage checks it. I took a project convention and turned it into a mandatory form field and a shell prompt in a test plan, which made the agent look like a dumb executor. That is my error, and the rule is now marked in `OPERATING-RULES.md` as ours, not Paperclip's.
**What changed in the program:**
- The field is now called **"A command that proves it (optional)"**, and its hint says: *"leave empty and the agent decides how to check its own work."*
- The guidance panel no longer asks you to write shell prompts; it says most tasks need nothing there and to fill it only for a gate no agent can talk its way past.
- `bin/merge` already worked without one — it says *"no verify command: this would pass on the agent's word"* and continues to the review.
## What Paperclip actually does, and what you actually write
You write a task in your own words. Pi reads it, works out how to do it, runs the project's own tests, comments with evidence, and sets the status. Paperclip adds the parts you do not want to run by hand: blockers as links between tasks, review stages (`in_review` with a participant), approvals, run history, cost, and a worktree per task.
So the autonomy is in the *work*, not in your instructions. My test plan asked for a file name and an exact line, which is why it read like dictating a patch.
## The error you saw was a real bug, not your mistake
`AUD-167` **was created and completed** — `ADd a file named STATUS.md`, status `done`, assigned to Builder. The "[The program exited with status 0.]" was the pane dying: the New task pane ran the form alone, so when the form quit after creating, nothing was left to run. Two fixes:
- the form now **stays open** and shows `created AUD-1xx, handed to an agent which will start on its own`, with the fields cleared for the next one;
- every pane now **falls back to a shell**, so a program that exits returns to a prompt instead of leaving a dead pane.
I proved both by creating `AUD-168` — *"Tidy the README introduction"*, assigned, no verify command. It shows `in_progress` with Builder working, and the form stayed usable.
## On "have you fully read and understood Paperclip"
No, and I should have said so earlier. I have read the agent skill, the API specification, the agents/heartbeats/routines documentation, and I have probed the API extensively. What I got wrong was mixing your old project's conventions with Paperclip's model and presenting the mixture as if it were Paperclip's. Where I am unsure — review stages, execution policy, approvals — I will read before advising, and say when I have not.
## The test plan, corrected
`docs/TEST-PLAN.md` no longer asks for a shell command anywhere. Step 1 is now: title, plain-language description, no blocker, no command, `yes` to assign — and expect the agent to pick it up within seconds and decide for itself how to check the work. Step 4 keeps `bin/merge` but explains that "no verify command" is a normal outcome, not a failure.
Committed as `678c497`. `AUD-168` is running now if you want to watch it in `Agents>agents` — that is the honest demonstration of autonomy: you said what you wanted, it is working out how.
## 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 00:28:33 -->
- session: [[packs/paperclip-harness/80-sessions/rich-discovery-agents-2026-11-11-00-28-33|Rich discovery: agents 2026-11-11 00:28:33]]
- context: [[packs/paperclip-harness/20-context/agents|agents]]
- observation: [[packs/paperclip-harness/60-observations/tmp-repository-structure-and-configuration-patterns|agents repository structure and configuration patterns]]