Intent+Receipt Conformance
Intent + Receipt Conformance (Normative v1.x)
Status: normative for OSS v1.x producers/consumers that claim boundary-intent and receipt continuity.
This contract proves a full chain:
- intent shape conformance
- gate digest continuity (
intent_digest,policy_digest) - runpack receipt continuity (
refs.receipts) - ticket-footer continuity (
gait run receipt)
See also:
docs/contracts/primitive_contract.mddocs/contracts/artifact_graph.md
Required Schemas
schemas/v1/gate/intent_request.schema.jsonschemas/v1/gate/trace_record.schema.jsonschemas/v1/runpack/refs.schema.json
Minimal Normative Command Sequence
From repo root:
go build -o ./gait ./cmd/gait
./gait demo --json > ./gait-out/intent_receipt_demo.json
./gait gate eval \
--policy examples/policy/base_low_risk.yaml \
--intent examples/policy/intents/intent_read.json \
--trace-out ./gait-out/intent_receipt_trace.json \
--json > ./gait-out/intent_receipt_gate.json
./gait run receipt --from run_demo --json > ./gait-out/intent_receipt_footer.jsonRequired Fields And Continuity Checks
Intent request conformance
intent_request.schema.json required fields MUST remain present:
schema_idschema_versioncreated_atproducer_versiontool_nameargstargetscontext
Gate digest continuity
gait gate eval --json output MUST include:
verdictintent_digestpolicy_digesttrace_idtrace_path
intent_digest and policy_digest MUST be 64-char sha256 hex.
Runpack receipt continuity
runpack.zip -> refs.json MUST include:
schema_id = gait.runpack.refsrun_idreceiptsarray
Each receipt object MUST include:
ref_idsource_typesource_locatorquery_digestcontent_digestretrieved_atredaction_mode
Ticket footer continuity
gait run receipt --from MUST include:
ok=truerun_idmanifest_digestticket_footer
ticket_footer MUST match contract form:
GAIT run_id=<run_id> manifest=sha256:<64-hex> verify="gait verify <run_id>"CI Conformance Gate
Canonical script:
bash scripts/test_intent_receipt_conformance.sh ./gaitThis script is wired into make test-contracts and CI contract lanes.