## What
Two bounded doctrine-reconciliation slices (one coherent arc):
**ag-88y5** — the out-of-session dispatch unit is the `/rpi`·`/evolve`
**skill**, not the `ao rpi`/`ao evolve` CLI. Per the 3.0
skills-are-the-runtime thesis (using-ntm #693 already frames it this
way), re-narrate the **live** doctrine surfaces so the substrate spawns
an agent that *runs the /rpi skill* over a bead:
- docs/3.0.md, docs/architecture/canonical-loop-model.md,
docs/runbooks/nightly-evolution.md
- skills/using-agentops, skills/agent-native,
skills/domain/references/factory.md
Historical surfaces (MIGRATION-3.0, ADR-0009, release notes) +
CLI-reference left as-is; the actual `ao rpi`/`ao evolve` CLI removal is
the **ag-iowf** epic (live automation callers — overnight-evolve,
release-smoke — must migrate first).
**ag-ogp5** — drop the 4 docs still asserting Gas City as THE reference
substrate → NTM+MCP+managed-agents:
- docs/ARCHITECTURE.md, docs/SCHEMAS.md,
docs/contracts/agents-write-surfaces.md,
docs/patterns/completion-notifications.md (Pattern C)
The ~37 historical/illustrative GC refs are intentionally retained (per
ag-ogp5 scope).
## Verification
regen-all --check, embedded-sync, heal --strict, registry-drift,
codex-rpi-contract, codex-artifacts --scope head — all green.
Closes-scenario: ag-88y5#docs-skills-dispatch-reframe
Bounded-context: BC4-Factory
Evidence: docs/3.0.md
Closes soc-yjzp.4. Documents three webhook-equivalent patterns for off-API
users: (A) GitHub Actions issue creation, (B) git post-commit hook -> curl,
(C) ao daemon log tailing. Decision matrix included. Explicitly positions
this as the "you don't need a webhook server" answer to Anthropic's 2026-05-06
Managed Agents webhook primitive.
- docs/patterns/completion-notifications.md: new file (120 lines)
- docs/documentation-index.md: new "Patterns" section catalogues the new
doc alongside the existing agents-hygiene-contract pattern, satisfying
the project's "Contracts must be catalogued" rule.
Wave 2 partial: yjzp.5 (forge review CLI) is on hold pending scope re-spec
after discovering ao forge review already exists in cli/cmd/ao/forge.go
with structural + LLM review modes. The original pre-mortem fix referenced
ao forge --promote which is a /forge slash-command verb, not a CLI flag.
See yjzp.5 notes for re-scope.
Refs-epic: soc-yjzp
Cycle 6 of /evolve — promote the catalog -> lint -> CLI surface
pattern that emerged in PRs #139-#143 into a durable docs/patterns/
artifact so future hygiene work can cite it.
Captures the five-ring shape (contract doc, shell lint, bats tests,
CLI surface, pre-push wire-in), the why-it-works rationale, and the
explicit "when NOT to apply" guidance from cycle 2's read-vs-write
realization. Includes the cycle ledger as a concrete worked example.
The repo-local .agents/ tree is gitignored, so the pattern lives
under docs/ where it ships with the repo and is discoverable from
docs/INDEX.md.