/examples/srs-receipt
Reading an SRS receipt
Here is the artifact; here is how to read it; here is how to check it.
This page takes one synthetic SRS receipt and shows it four ways: the JSON envelope that is the authoritative artifact, a plain-language reading aid for the envelope, a body-specific reading aid for the part GARP owns, and the conformance check you would run against it. Everything here is fictional and read-only. A receipt is an artifact, not a verdict.
The reading aids never replace the artifact. The JSON is authoritative; the renderings are conveniences for a human reader. A weak receipt renders weak; no reading aid strengthens it.
1. The artifact
The JSON envelope
The envelope is the authoritative artifact. It carries a version, an id, the boundary event it was issued at, the subject it points at, the artifacts it covers, its conformance posture, and a GARP body extension. ARCS owns the SRS envelope, its schema, its conformance check, and the plain-language envelope renderer. GARP owns body-kind rendering under extensions.garp.body.
{
"srs_version": "1.0.0",
"receipt_id": "SYN-SRS-RCPT-0001",
"issued_at": "2026-05-09T15:04:05Z",
"boundary_event": "publication_boundary",
"subject": {
"kind": "record_projection",
"ref": "SYN-REC-RW-0001"
},
"artifacts": [
{
"role": "page_model",
"sha256": "synthetic-sha256-rw-0001-2b9e3c5a7f81",
"path": "/garpedia/page-models/SYN-REC-RW-0001.json"
}
],
"conformance": {
"schema": "arcs/srs/envelope@1",
"checked": false,
"posture": "synthetic_reference_only"
},
"extensions": {
"garp": {
"body": {
"body_kind": "reverse_wiki_record",
"title": "Synthetic Demo: Reverse-Wiki Record for the Bootstrap Layout",
"anchor_resolution": "all_resolved",
"section_count": 3,
"cited_fragment_count": 4
}
}
}
}The subject points at the synthetic record SYN-REC-RW-0001. The pointer is a reference, not an endorsement. A conformant envelope is not an admitted record.
2. How to read it — the envelope
ARCS plain-language envelope reading
ARCS renders the envelope's own fields in plain language. This is a reading aid for the artifact above; it adds no field the JSON does not already carry, and it claims nothing the JSON does not say.
- srs_version1.0.0
- Which version of the SRS envelope shape this receipt was written against.
- receipt_idSYN-SRS-RCPT-0001
- The identifier for this receipt. It names this artifact; it does not assert that its subject is true.
- issued_at2026-05-09T15:04:05Z
- When the receipt was issued, in UTC.
- boundary_eventpublication_boundary
- The boundary the receipt was issued at — here, a publication boundary. The event is that a projection crossed a boundary, not that a claim was admitted.
- subject.refSYN-REC-RW-0001
- What the receipt is about: a reference to the projected record. The reference is a pointer, not an admission of the record.
- artifacts[0].sha256synthetic-sha256-rw-0001-2b9e3c5a7f81
- A named hash of the artifact the receipt covers. On this surface it is a fixture string; verifying it is the conformance check's job, not the reader's.
- conformance.posturesynthetic_reference_only
- How far the receipt has been checked. Here it is a synthetic reference only — no live check was run, and the reading aid says so rather than implying one was.
3. How GARP reads the body
GARP body-kind reading
The body under extensions.garp.body is body-kind-specific, and a body renderer is downstream and GARP-side: it knows how to read this body kind and would read another differently. The reading below describes that downstream GARP-side renderer; GARPedia does not depend on it and does not import it.
- extensions.garp.body.body_kindreverse_wiki_record
- The body kind tells a GARP-side renderer which body-specific reader to use. A different body kind would be read by a different reader.
- extensions.garp.body.titleSynthetic Demo: Reverse-Wiki Record for the Bootstrap Layout
- The record title carried in the body, for the reader's context.
- extensions.garp.body.anchor_resolutionall_resolved
- A body-specific posture field: whether every cited fragment resolved to its anchor. A body with unresolved anchors would render that plainly.
- extensions.garp.body.cited_fragment_count4
- How many fragments the body cites. A body that cited nothing would render as a thin body, not a strong one.
4. How to check it — conformance
The verify command
Conformance is owned by ARCS. The verify command checks the envelope against the SRS schema and reports whether its shape is valid. Conformance is a schema check, not a truth check.
arcs srs verify ./SYN-SRS-RCPT-0001.jsonWhat it checks
- The envelope matches the SRS envelope schema for its declared srs_version.
- Required envelope fields are present and well-formed.
- Each artifact entry names a role, a hash, and a path.
- The GARP body under extensions.garp.body is shaped like a known body kind.
What it does not check
- Whether the subject record is true.
- Whether the record was admitted anywhere.
- Whether including the record endorses it, or excluding one refutes it.
- Whether a weak body is a strong one — a weak receipt stays weak after a conformance pass.
conformance: schema shape OK (synthetic). This is a conformance result on the envelope, not a verdict on its subject.
What this example does not claim
The boundary is the point of the example, so it is stated plainly. GARPedia projects this example; it is not the authority for it.
- A receipt is an artifact, not a verdict.
- Conformance is a schema check, not a truth check.
- ARCS owns the SRS envelope, its schema, its conformance check, and the plain-language envelope renderer.
- GARP owns body-kind rendering under extensions.garp.body.
- GARPedia projects this example; it is not the authority for it.
- A conformant envelope is not an admitted record.
- Inclusion here is not admission, and refusal is not falsehood.
- A weak receipt renders weak; no reading aid strengthens it.