0010 — adopt eva.consumption.v1 for rocky-hq
Date: 2026-05-08 Status: ratified Supersedes: none — first eva consumption declaration for this slug Superseded-by: none — current
Context
eva-hq ratified the eva.consumption.v1 contract on 2026-05-08
(eva-hq:docs/decisions/2026-05-08-eva-consumption-contract.md,
schema at eva-hq:contracts/consumption.v1.json). The contract
publishes three independently-gated EVA surfaces — events, control,
prompts — and the consumption envelope every consumer slug must
populate in .petrova/contract.yaml#integrations.eva to be wired.
rocky-hq's registry entry in petrova-hq:registry.yaml was authored
2026-05-06 with integrations_applicability.eva: not_applicable and a
review_by 2026-08-06 clause, pending eva-hq surface publication.
That precondition is now satisfied. Two further signals point at
adoption today rather than at the August review:
8646bf3 feat(contract): declare eva.consumption.v1, status pendingalready authored the per-surface block in.petrova/contract.yaml#integrations.evawith all three surfaces instate: pending. The declaration is live; the registry must catch up or thepetrova doctorsweep will reject any subsequent flip (perpetrova-hq:core/prompts/10-eva-wire.mdPhase 0).2026-05-08-agentic-emission-v1.md(ratified 2026-05-08) shipped the producer contract for CAIRNET stones with eva-hq listed as a first-class producer. Wiring the consumption side closes the producer↔consumer loop on the same day.
The precedent is petrova-hq:135cdae (2026-05-08) which performed the
identical flip for stratt-hq against the same contract.
Decision
Authorise the registry flip in petrova-hq:registry.yaml for
rocky-hq:
integrations_applicability.eva:not_applicable→required.contract_sha:1a593bc99ac2→6c71005c6051(git hash-object .petrova/contract.yamlat HEAD8646bf3).- Strike the
review_by 2026-08-06clause fromnotes— the precondition that motivated the deferral has resolved. - Update the file-level
updated:header comment to record the rocky-hq adoption.
Per-surface state in rocky-hq:.petrova/contract.yaml#integrations.eva
remains as already declared at 8646bf3:
| Surface | State | Rationale |
|---|---|---|
events |
pending |
rocky-hq has no .github/workflows/ yet; once CI lands, eva-emit will be wired per 10-eva-wire Taskset 3. |
control |
pending |
A control client is not yet authored; will be added via 10-eva-wire Taskset 4 when a use-case lands. |
prompts |
pending |
eva-prompts.lock.json not yet authored; will land via 10-eva-wire Taskset 5 once a prompt ID is referenced. |
The actual surface-by-surface wiring is not in scope for this ADR.
This ADR only authorises the registry flip and the corresponding
integrations_applicability change. Surface wiring is gated through
petrova-hq:core/prompts/10-eva-wire.md and lands per-surface as
each one becomes load-bearing.
Consequences
petrova doctor --slug=rocky-hqwill, post-flip, expect theintegrations.evablock to be a valideva.consumption.v1envelope (it already is, per8646bf3) and will reporteva: pending(notnot_applicable) until at least one surface flips towired.- Re-dispatching
petrova-wire-evawill pass Phase 0's applicability gate. Each surface taskset will still independently halt on its own gate; the registry flip does not auto-promote any surface. - MR-13 invariant preserved: the registry (intent applicability) and
the contract (declared per-surface state) are now consistent; probe
observation continues to live in
petrova-hq:state/rocky-hq.yaml. - MR-14 invariant preserved: no agent-side
pending → wiredpromotion occurs. The contract block remains entirelypending. - The
review_by 2026-08-06clause is dropped from registry notes; no calendar-driven re-evaluation is pending.
Rollback
Revert the petrova-hq registry edit (single-file diff on
registry.yaml); the .petrova/contract.yaml block can stay as
authored — a pending block under not_applicable applicability is
benign (it carries no evidence and triggers no probe action).