propose-harness-changelisted
Install: claude install-skill Rockielab/rockie-claude
# /propose-harness-change — safe self-improvement
Autonomous research harnesses that let the agent edit themselves tend
to drift (MINJA / eTAMP memory-poisoning, arXiv 2603.29231's finding
that "memory scaffolds universally decrease long-horizon reliability",
the Ouroboros "CLAUDE.md rewrite" footgun). rockie's discipline is
**Generator / Verifier / Updater separation** — nobody is allowed to
propose, verify, and commit in the same role.
## The three roles
### Generator (the proposing agent)
- Writes the diff against a LOCAL CLONE of the rockie source repo.
- Writes a short rationale: what pattern broke, why the fix composes
with existing differentiators, what smoke-test assertion(s) prove it.
- **Never** commits directly. Produces a patch file
`~/rockie-proposals/<YYYY-MM-DD-slug>/patch.diff` plus
`rationale.md`, `test.sh` (the specific smoke-test snippet).
### Verifier (fresh-context audit agent)
- Dispatched via the `Agent` tool with NO prior context.
- Reads the patch + rationale, the files being touched, and the
`CONTRIBUTING.md` composition rules.
- Must answer four questions with evidence:
1. Does this compose with the existing differentiators, or duplicate
one of them?
2. Does the smoke test actually test the claimed improvement?
3. Is the change local (one file) or does it ripple across the schema?
4. Is there a path-traversal, SQL-injection, or shell-injection
regression?
- Returns `APPROVE` | `CHANGES_REQUESTED` | `REJECT` with a short