{"lexicon":1,"id":"money.atmosphere.payment.lifecycle","defs":{"main":{"type":"record","key":"any","description":"EXPERIMENTAL DRAFT — unpublished immutable lifecycle revision for one exact proof. Revision 1 is settled genesis at the proof's rkey in the lifecycle authority's repository, created atomically with that proof. Every later revision is a new create-only record with previous naming the exact predecessor URI and CID; previous is absent at revision 1 and required from revision 2. The public sequence is dense 1,2,3,...; composed ledger transitions must remain table-legal. Segment size R is 16: revision 1 uses proofRkey, revisions 2..16 use proofRkey.<revision>, and later revisions use proofRkey.s<segment>.<revision>, where segment=floor((revision-1)/16)+1 and numbers use canonical positive decimal without leading zeros. Revision n+1 may be handed off only after exact authenticated read-back confirms n. Frozen bytes at the same deterministic key are reused; different bytes occupying that key are terminal integrity failure. A direct reader covers every key of each segment plus the next segment's first key at one signed head and derives prefix(n), never current. Qualified gap-free ingestion or complete exhaustion evidence at one head is required for current. A visible hole, changed predecessor, divergence or interior deletion is sticky integrity; no automatic clear is permitted. The canonical ledger remains authoritative, and the complete algorithm and retained producer/checkpoint requirements are in COMMITMENT_PROFILE.md.","record":{"type":"object","required":["proof","status","revision","asOf"],"properties":{"proof":{"type":"ref","ref":"com.atproto.repo.strongRef","description":"Exact reference to the immutable money.atmosphere.payment.proof record whose payment this state describes. Its cid is the proof's canonical AT repository-record CID string (lowercase unpadded base32 CIDv1, DAG-CBOR, SHA-256/32)."},"previous":{"type":"ref","ref":"com.atproto.repo.strongRef","description":"Exact immediately preceding lifecycle revision URI and canonical repository-record CID in this proof's path and authority. Required when revision >= 2 and forbidden at revision 1; Lexicon cannot express this conditional, so profile verification enforces it. The predecessor revision is exactly revision-1 and every revision retains the same exact proof."},"status":{"type":"string","maxLength":64,"knownValues":["settled","refunded","partially-refunded","disputed","reversed"],"description":"State asserted at this immutable revision. settled is required at genesis and may express a later table-legal restoration. The transition meanings and Stripe projection doctrine remain in COMMITMENT_PROFILE.md. Unknown values are present but unrecognized and cannot authorize effects; transferred remains reserved and is not an admitted v1 state."},"revision":{"type":"integer","minimum":1,"maximum":9007199254740991,"description":"Dense public lifecycle sequence for this exact proof path, starting at 1 with no skipped number. It is independent of internal ledger transition counters; a composed transition must be table-legal. Reuse the frozen value on identical retries. It determines the immutable segmented rkey and exact predecessor, and never orders different authorities' paths."},"reason":{"type":"string","maxLength":64,"description":"Optional short machine-readable reason code (kebab-case). Never free text, PII, or processor detail."},"asOf":{"type":"string","format":"datetime","description":"UTC instant at which the lifecycle authority asserted this immutable state. It does not replace dense revision order or establish real-time canonical-ledger currentness."}}}}}}