Documentation · Markdown source · Edit on GitHub · CC0 1.0

ADR 0007: Receipt Envelope v1 — Flat attestations[] and Decisions D1–D8

Status: Proposed — the decisions below have been normative in spec/receipt-v1.md since its first publication (2026-06-24); this record states them as the standard's own. Date: 2026-10-17

Related: ADR 0002 (no-gatekeeper trust and interop), ADR 0005 (the standard is the source of truth), ADR 0008 (key lifecycle), spec/receipt-v1.md, schemas/vrp-receipt.v1.schema.json, spec/profiles/mcp-composition-profile.md.

Context

VRP's receipt envelope is a versioned, verifiable booking record: one object that carries signed attestations from independent trust layers (offer, transport, payment, …) so a verifier can check each layer on its own. The envelope was first designed alongside the reference implementation, and the record of its design decisions stayed in that implementation's repository. This repository cited that record thirty times as "ADR 0010" — in the receipt specification, the MCP profile, the receipt schema, the reference verifier and the license footer of every specification document — so a reader following the reasoning behind the standard left the standard to find it.

ADR 0005 decides that the artifacts in this repository are authoritative and that no implementation is. This record states the receipt-envelope decisions in the standard's own terms, numbered in this repository's sequence. The implementation's record is not copied and is not authoritative for VRP.

Decision

The decision identifiers D1–D8 keep the meaning they have had in the specification and the schema, so every existing "D2", "D5" or "D8" citation stays valid.

Not carried over from the implementation's record: its delivery phases, its implementation-status tables, its internal code paths, and its rules for its own public communication. They describe one implementation, not the standard.

Consequences

This ADR adds no runtime behavior and no new tools.