Content Decision Intake
Gate A — read a closed, countersigned decision doc from a governed repo and, only if it's eligible, emit it as a ledger-artefact into abacus for drafting.
inputs
| name | required | default |
|---|---|---|
repo_path |
yes | — |
decision_path |
yes | — |
org_key |
yes | — |
abacus_path |
no | — |
routing
triggers
- feed this decision into the content pipeline
- is this decision eligible for content
- intake this ADR for downlink/journal
- gate this decision for publishing
not for
- judging content quality, voice, or provenance once drafted (jazz's 30_verify_gate)
- drafting the actual journal/blog entry (jazz's 00_core_translator + org adapter)
- deciding when in the arc it should ship (Yáo / content-arc-declare cadence)
- editing or reopening the decision doc itself (that's petrova-decide/petrova-phase-close territory, upstream of this)
prompt
No parsed structure available.
notes
Reuses the countersign-validity check already documented per-repo (each governed repo states its own convention in CLAUDE.md) rather than inventing a new one. Reuses abacus's existing ledger-artefact schema and 00-inbox/ stage rather than a new intermediate format. The only new artefact this introduces is the intake mapping itself (decision doc → ledger-artefact JSON).
description
The upstream gate in the multi-org content pipeline: turns a repo's own
decision ledger (docs/decisions/*.md, docs/verification/*.md — any
PETROVA-governed repo, starting with stratt-hq) into a
jazz/dj-educator-shaped ledger-artefact (schemas/ledger-artefact.schema.json
in asgard-codes/agent/jazz), and drops it into abacus 00-inbox/ for
intake. This is the ONLY place source eligibility is decided —
downstream steps (jazz's core translator, its 30_verify_gate,
40_series_arc) trust that anything reaching them already passed this
gate and do not re-check it.
Eligibility (fail closed, all required):
- decision status is closed, not draft/open
- carries a real countersign per the source repo's own convention
(a placeholder or empty acknowledgement is not a countersign —
see stratt-hq CLAUDE.md, "Countersign convention")
- not superseded (no unresolved `Gates-superseded-by:` pointer)
- not already emitted (idempotent — checks abacus for an existing
artefact citing this decision's path + git sha before emitting again)
This prompt does not draft, does not judge honesty/voice/provenance
(that's jazz's 30_verify_gate), and does not decide arc pacing (that's
Yáo). It only decides: is this decision even eligible to become public
content.