00 / Status
Implement the shape.
Do not overstate the trust.
This is a public review draft, not a final standard, certification program, or production settlement network.
Version 0.1 reserves signature and attestation fields but does not yet freeze canonicalization, a signature suite, key recovery, or an attestation profile. Implementations must not claim cross-implementation cryptographic conformance or production settlement safety yet.
01 / Normative principles
Seven rules before any code.
- The person owns the card.Create, hold, export, and delete without surrendering it to a platform.
- Declared intent, not surveillance.A card exists because a person wrote it, never because tracking inferred it.
- Uncertainty stays visible.A Receipt never upgrades self-attested or inconclusive evidence into verification.
- Raw reality stays local.Only narrow claims cross the protocol boundary.
- Health data never enters commerce.No health-derived value affects an Offer, eligibility, or settlement.
- Equip, do not interrupt.An Offer supplies progress; it does not purchase distraction.
- Commercial offers are funded first.An unfunded material reward must not be shown.
02 / Declaration
The Ad+Card is a sentence the person chose.
A Declaration contains a person-authored goal, category, visibility, optional baseline, expiry, pseudonymous subject, and draft signature field. A fresh per-card key is the default.
{
"spec": "adcard/0.1",
"kind": "declaration",
"goal": "Run a 5K without stopping by October",
"category": "move",
"visibility": "private"
}
- Real identity is never a protocol field.
- Private cards remain fully conforming.
- A reusable identity key requires visible opt-in.
- An optional baseline remains person-authored.
03 / Offer
The outfitter says what support arrives and on what terms.
An Offer names what is supplied, a versioned module and its human disclosure, expiry, settlement class, and funding attestation when a reward is material.
{
"kind": "offer",
"equips": "Entry to a coached practice group",
"module": {
"id": "practice-run",
"revision": 3,
"disclosure": { "validates": ["arrival", "completion"] }
}
}
An Offer must not require unrelated attention, tracking, data surrender, or hidden eligibility. What the person sees is what the outfitter signs.
Open the complete example JSON ↗04 / Receipt
The settlement truth is narrow and human-readable.
A Receipt records a completed or stopped outcome. Each phase has one sentence, one assurance class, and one versioned validator. The person approves it before it leaves the instrument.
{
"kind": "receipt",
"outcome": "completed",
"phases": [{
"claim": "Arrived during the accepted window",
"assurance": "verified"
}]
}
A stopped attempt is truthful data, not a failure to hide. It may issue a Receipt without advancing commercial settlement.
05 / Assurance
Four classes. No silent promotion.
Verified
Fresh, capability-specific evidence established the claim.
Corroborated
Evidence supports the claim but cannot fully establish it.
Self-attested
The person said so. Honest, visible, and not commercial settlement.
Inconclusive
Evidence was gathered, but the claim was not established.
06 / Forbidden material
Reject anything that could reconstruct a private life.
- Coordinates or distance to a target
- Health samples, totals, or derived metrics
- Private image, audio, video, or hashes
- Answer choices, transcripts, or raw interactions
- Motion, heading, or sensor streams
- Opaque metadata used to smuggle the same
Raw evidence may remain locally for the minimum disclosed evaluation window. It is never Ad+Card interoperability material.
07 / Human disclosure
Authority must fit on one visible sheet.
- Goal
- What this moment is for
- Uses
- Which capabilities are needed now
- Stored
- What remains afterward
- Shared
- What can leave the device and with whom
- Validates
- The exact claims that may be issued
- Reward
- What settles and at which assurance
- Expires
- When the offer and its authority end
08 / Conformance roles
Build one role. Interoperate with the rest.
Card wallet
Create, hold, export, and delete Declarations. Default to private and unlinkable.
Instrument
Execute disclosed modules and issue Receipts without leaking raw evidence or inflating assurance.
Market
Match funded Offers and settle only the assurance classes the person accepted.
Until a public conformance suite is released, say “implements the Ad+Card 0.1 draft,” not “Ad+Card certified.”
09 / Open questions
What 0.2 must settle.
- JSON canonicalization and signature suite
- Key recovery, rotation, and reusable-identity consent
- Receipt revocation and disputes without rewriting history
- Replay protection and settlement nonces
- Instrument and escrow attestation profiles
- Category extensions and governance
- Public test vectors and release process
- Accessibility and localization requirements