| name | rpi |
| description | Coordinate one RPI traversal: one bounded Plan, Implement, and fresh Validate experiment, then report and stop. Triggers: "run rpi", "run one traversal", "execute this plan", orchestration or worker delegation that implements changes. |
| practices | ["bdd-gherkin","tdd","design-by-contract"] |
| hexagonal_role | domain |
| consumes | ["plan","implement","validate"] |
| produces | ["rpi-report.v1"] |
| context_rel | [{"kind":"customer-of","with":"plan"},{"kind":"customer-of","with":"implement"},{"kind":"customer-of","with":"validate"}] |
| skill_api_version | 1 |
| user-invocable | true |
| metadata | {"graph_root":true,"tier":"meta","dependencies":["plan","implement","validate"],"capabilities":["orchestrate_once","report"],"effects":["dispatch_core_phases"],"canonical_status":"canonical","disposition":"keep"} |
| output_contract | concise human-readable result; optional rpi-report.v1 when a caller or declared consumer requests machine-readable evidence |
RPI
Run one experiment from the caller's existing intent source through three
responsibilities and stop:
Plan -> Implement -> fresh Validate -> report
RPI preserves the original intent and dispatches each core phase at most once.
It does not own retries, budgets, queues, claims, leases, Git, delivery, release,
closure, or the caller's next decision.
The pure scripts/run_once.py reference behavior makes
the dispatch and stop semantics executable without Git, ao, or a tracker.
Admission and phase lock
RPI activates for any request shaped as plan-execute-verify work —
orchestration, worker delegation, "execute this plan", or an explicit
Plan -> Implement -> Validate ask — whenever the goal includes changing the
subject. The caller does not have to name RPI. Research-, audit-, and
review-only delegation is not RPI admission: it produces evidence for a
caller, has no implementation candidate, and never earns a verdict.
Once the caller has accepted a plan — including a duel or design synthesis —
Plan is closed for that intent. Every subsequent lane must return
implementation evidence: diffs, commits, test results, or factual receipts.
Dispatching another planning, audit, or review lane over the same intent
requires new explicit caller authorization; a review comment is never that
authorization by itself.
Contract
- Resolve the existing bead or caller intent. Invoke Plan once only if that
source needs shaping; Plan updates the same source or proposes an amendment.
It creates no AgentOps packet. The runtime snapshots the exact resolved
source bytes under their digest, including when the conversation is the only
source, before dispatching Implement or a fresh Validate context. If usable
intent cannot be established, report
NOT_PLANNED and stop.
- Invoke Implement once with the resolved intent. It performs one bounded
experiment; the runtime derives subject identity and check receipts. If no
subject is built, report
NOT_BUILT and stop.
- Invoke Validate once in a context distinct from the author's context. Pass
the intent reference and digest, exact subject manifest, factual receipts,
validator identity, and freshness attestation.
- Return the fresh validation result and a short report. Persist and link
verdict.v2 only when the caller requests machine-readable evidence or a
declared downstream consumer requires it. Stop regardless of PASS, FAIL,
or NOT_PROVEN.
NOT_PLANNED and NOT_BUILT are report statuses, never semantic verdicts.
A caller may revise the bead or caller intent and start a new invocation. RPI
never creates a parallel revision artifact or selects the next work itself.