Skip to content

rocky eva wire rollout

Operator-facing playbook for the realignment ratified in docs/decisions/2026-05-06-rocky-ownership-and-eva-introduction.md. This runbook supersedes docs/runbooks/lore-cairnet-wire-rollout.md (left in place per MR-7) and folds the prior phasing under the renamed integration plus a new Phase 3 for EVA.

Layer vocabulary (unchanged): AIRLOCK = auth · PEBBLE = MCP gateway (Traceo + SMO1 handoffs) · ARES = CI/CD.

The CLI verb has been renamed: petrova lore-cairnet-status <slug>petrova rocky-status <slug>. Endpoint shape is unchanged (/api/knowledge/repos, /api/cairn/stones).

  1. PETROVA_PEBBLE_TOKEN set on the operator machine; default endpoint https://mcp.devarno.cloud (override via PETROVA_PEBBLE_ENDPOINT).
  2. petrova doctor --self-check passes against the post-realignment spine.
  3. Pinned core/playbook/prompts submodule contains 09-rocky-wire.md (renamed from 09-lore-cairnet-wire.md) and the placeholder 10-eva-wire.md.

Phase 1 — ROCKY rename land (serial, idempotent)

Section titled “Phase 1 — ROCKY rename land (serial, idempotent)”

Pure governance shift; consumer PRs flip lore_cairnet: keys in their local .petrova/contract.yaml to rocky: and update their decision doc to cite this doc.

WaveRepoWhy this slot
1grace-hqalready wired under sub-project E; smallest blast radius for the rename
2kahn-hqdeferreddiscovered 2026-05-06 during MR-10 verification: kahn-hq has no .petrova/contract.yaml. Sub-project A onboarding must precede a Wave 2 flip. Tracking finding F-4.

Gate review after wave 2:

  • Did petrova rocky-status <slug> produce identical diagnostic output to the pre-rename lore-cairnet-status? If not, halt.
  • Did petrova doctor --commit-state correctly write rocky: keys to state/<slug>.yaml while leaving prior lore_cairnet probe_history records untouched?

Phase 2 — ROCKY rename pipelined (parallel)

Section titled “Phase 2 — ROCKY rename pipelined (parallel)”

Three repos targeted, contract flip + decision doc only:

  • choco-hq — no .petrova/contract.yaml locally (only registry-entry.yaml snapshot). Per finding F-4, requires sub-project A onboarding before flip. Deferred.
  • stratt-hq — no .petrova/contract.yaml locally. Deferred.
  • devarno-cloud — no .petrova/contract.yaml locally. Deferred.

Result: Phase 2 is deferred wholesale pending sub-project A onboarding for these slugs. Without contracts, there is nothing to flip; the registry’s integrations_applicability.rocky: required declaration alone is insufficient — petrova doctor requires a per-repo contract.

Each PR (when it can land) cites this doc and 2026-05-06-rocky-ownership-and-eva-introduction.md.

Phase 3 — EVA introduction (deferred until eva-hq surface lands)

Section titled “Phase 3 — EVA introduction (deferred until eva-hq surface lands)”

Placeholder. Steps will land in a follow-up runbook revision once eva-hq publishes its consumption surface (eva_service_id allocation, endpoint shape, evidence schema).

Until then:

  • Every repo declares eva: not_applicable in integrations_applicability (governance) and eva: { status: pending } in their consumer contract.
  • petrova eva-status <slug> returns not_implemented with a pointer to the 2026-05-06 decision doc — this is correct, not a regression.

When eva-hq ships, this runbook gains a Phase 3 wave plan analogous to Phase 1 (start with the smallest blast-radius consumer; canary the probe; gate review; pipelined rollout).

The rename is reversible by reverting the parent-repo PR + the core/playbook/prompts submodule pointer bump. Consumer-repo contract flips revert per repo (each is one decision doc + one yaml diff). No data migration is required: probe_history retains the legacy lore_cairnet integration name and remains valid under the post-realignment state.schema.json.