Examples · 1.0-rc
Something to validate against before you write any code.
One standalone JSON object per type, each of which validates against its schema, plus a complete plain vault with a journal, a populated catalog, an attachment, and app-private data — the small cases that catch the most implementation bugs.
Standalone objects
manifest.jsonVault identity and generator.Core §3.1consumption.jsonA shared session, with effects, context and a photo reference.Core §4.1supply.jsonA package on hand, with terpenes, taxes and cost.Core §5.1shop.jsonA shop, with delivery and a loyalty identifier.Core §5.2chain.jsonThe chain that shop belongs to.Core §5.2brand.jsonA brand pointing at its producer.Core §5.3producer.jsonA licensed producer.Core §5.3method.jsonA consumption method with aliases and a default dose.Core §5.4tax-rate.jsonA named tax applied by default to new purchases.Core §5.5terpene.jsonA terpene dictionary entry.Core §5.6tombstone.jsonA deletion marker.Core §2
A complete plain vault
manifest.json journal/2026/07.jsonl 3 consumption events catalog/supplies/ 2 cards — one finished, one on hand shops/ chains/ 1 each, cross-referenced brands/ producers/ 1 each methods/ 2 cards, with aliases tax-rates/ 2 cards — GST and PST terpenes/ 1 dictionary entry attachments/23/2351…fab3.png content-addressed, hash verified apps/pufftab/settings.json app-private data, carried through intact
Run validate-vault.py against it and it passes clean — that is
part of the conformance suite.
The catalog cards are best read from the repository. They are
Markdown files with YAML frontmatter, which is exactly what a site
generator wants to render into a web page — so the raw source lives in
git, where you can also clone the whole vault in one step.