dev.malpercio.cards.item

A card (or sealed pack) held by the repo owner. Not authoritative on its own: validity comes from the chain of strongRefs back to a provider give whose recipient matches the current owner at each hop. Blobs are the owner's local copies and must hash to the CIDs on the root give.

Details · record, key tid
Kindrecord
Record keytid
Authoritycards.malpercio.dev
Indexed

Record

record · key tid

Properties

acceptedAt

requiredstring · datetime

asset

blob
  • maxSize: 5000000
  • accept: image/*

assetCid

string · cid

Must equal the root give's assetCid.

give

requiredstring · at-uri

Root give in the provider repo. Constant for the card's whole life. A plain URI, not a strongRef: the give mutates on pack open and on revocation.

icon

blob
  • maxSize: 1000000
  • accept: image/*

iconCid

string · cid

note

string

Owner's own annotation. Never verified.

  • maxLength: 512

provider

requiredstring · did

Denormalized from the give URI for indexing.

title

string

Display cache; verifiers use the set manifest, not this.

  • maxLength: 128

via

ref

The dev.malpercio.cards.transfer that delivered this card to the owner. Omit if received directly from the provider.

Similar lexicons

semantic match

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • Issuance of a single card instance or a sealed pack, written by the provider into its own repo. This record is the root of a card's provenance chain and its at-URI is the card's permanent identity. The rkey is a TID, so issuance order is implicit.

  • Written by the current owner to hand a card to another DID. The recipient completes the transfer by writing a dev.malpercio.cards.item whose 'via' strongRefs this record. Repos are mutable, so an appview indexing the firehose resolves conflicting transfers of the same give (first seen wins).

  • An owner-curated collection of their own cards (binder, deck, showcase). Purely user-side; a verifier checks each item resolves to a valid give held by this DID.

  • An appview's signed observation of a card changing hands, written into the appview's own repo. Triggered by a dev.malpercio.cards.item appearing on the firehose. Accepted witnesses form a prev-linked chain per give; exactly one accepted witness exists per (give, hop). Rejected witnesses explain why a claimant's item is not recognized. The chain is durable against player-side deletions and auditable by replaying the firehose.

  • A card's verified paint (docs/OVERHAUL.md section 4): model prose, cached and never journaled, so outside the signed tree; the exact card is its strongRef.