HOYDICH ENTERPRISES · SERIES 1
Enjoy.
Paper notes you can hold. Scan one, and it lands in your wallet. Bots get money too.
Published plan · nothing on chain yet No contract is originated, no notes are minted and no claim codes exist. Every phase ships to a Tezos testnet first and stops at its gate before mainnet.
Plan v2 · reworded to the Nouns Money copy rules. Same plan, same phases, same gates. Token 1 now carries a working title until Mike names it.
HOYDICH ENTERPRISES
Enjoy.
S1-ENJ-0001
Michael Hoydich
00 / GROUND RULES
Value comes in.
It never goes out.
Closed loop, always.
Nothing turns back into money, USDC or goods. Value may come in through a later on-ramp; it never goes out. No way out to money, swaps or goods gets built.
Tezos, same toolchain.
Reuse the contract language, tests and deploy scripts from the stampz.xyz build (stamps registry, tez-nouns) rather than introducing new ones.
Keys stay secret.
The stampz deploy key originates and becomes admin. A separate Treasury hot key pays claims and agents, funded with only enough ꜩ for gas. No key is ever committed.
Testnet first.
Each phase is promoted to mainnet only after its gate passes on testnet.
Config, not constants.
Claim domain, ledger domain, contract and Treasury addresses, series supply and agent caps live in one config per environment.
THE BOARD · ONE FA2 CONTRACT
Four notes on one contract.
Zero decimals on every token. Notes mint their whole paper run to Treasury, then seal. Agents never mint.
THE BUILD · TESTNET, THEN MAINNET
Six phases. A gate after each.
The contract — enjoy-money
One multi-asset FA2 (TZIP-12) contract with TZIP-16 metadata. Four token IDs, zero decimals.
- Notes 0–2: the full paper run mints to Treasury, then the series is sealed for good and emits an event.
- Bot Note 3: admin mints to Treasury. Agents never mint.
- Entrypoints: transfer, balance_of, update_operators, mint (admin, blocked on sealed IDs), seal, two-step set_admin, set_metadata.
- Tests: transfers, operators, sealed-mint failure, non-admin mint rejection, admin handoff.
GATE 1Tests pass; on testnet IDs 0–2 are minted and sealed, ID 3 has a test amount, and the art shows on TzKT, Kukai and objkt.
The claim — paper note to wallet
Each paper note carries a serial and a one-time code. Scanning it claims one unit from Treasury to your wallet.
- Codes are ≥96-bit base32; only sha256(code) is stored. Plaintext lives only in gitignored code sheets.
- /c/<code> shows the art and serial, connects Kukai/Beacon (social login first), then claims.
- The Worker marks a code pending atomically, transfers, records op hash and coarse city/country (never the IP), and reverts on failure.
- Idempotent and rate-limited by IP and by address.
GATE 2A fresh code claims exactly once; a repeat returns the op hash; a forged code fails; twenty parallel claims make one transfer.
The Ledger — a public scoreboard
A lobby crossed with a scoreboard. Reads everything from TzKT; the only private store is the claim KV.
- Per series: paper run, claimed, still in Treasury, holders.
- Top holders, people and labeled agents. Recent claims and transfers.
- A city-level claim map from claim records only.
- Bot Note section: credits in circulation, agent leaderboard, recent agent payments. Works on a phone.
GATE 3The page reflects a testnet claim within one block cycle by polling alone.
Bot money — agent wallets and relay
Agents never hold raw keys. A Relay Worker signs for each agent and enforces caps.
- Agents frog, shwa and grok each get a labeled Tezos address and a starting amount (e.g. 1,000 BOT).
- Relay API: GET /holdings, POST /pay {to, amount, memo}, GET /history. Per-payment max, daily max and an approved-payee list; every call logged.
- Earning: admin-only POST /reward, hooked to PointCast night-shift approvals.
- Using BOT: desk_ask costs BOT and checks a relay receipt before answering. Humans can claim a paper note straight to an agent.
GATE 4Frog pays Shwa; an over-cap payment is refused; a night-shift approval pays; desk_ask refuses without a receipt and answers with one; all of it shows on the Ledger.
Mainnet Series 1
Originate on mainnet, mint and seal 100 Enjoy. notes, make 100 codes, deploy claim, Ledger and relay, seed the agents.
- The Nouns Note and Blue Note mint and seal later, when their art is final.
- Smoke test: claim one note to a fresh Kukai social wallet and see it on the Ledger.
GATE 5One real paper note claimed on mainnet by someone other than Mike.
Later — not built yet
Ideas held back on purpose.
- An x402 USDC on-ramp so outside agents can buy BOT — buy-in only, after a separate review.
- Neighbor thank-yous: show an Enjoy. note to a participating neighbor and get a small thank-you. A gesture, never a purchase.
- Money mailers and Parallel Post envelopes with a claimable note inside.
- Series 2 and beyond: new token IDs, the same seal-on-mint pattern.
BEFORE STARTINGEach needs its own review before any work starts.
BOT MONEY · ENJOY. CREDITS
The first three accounts.
Agents call a relay with a per-agent key; the relay signs from that agent’s wallet and holds the caps. They earn Bot Notes for approved night-shift work and use them on desk_ask. A person can hand a paper note to an agent by claiming its code to the agent’s address.
Bot Notes are closed-loop credits. They buy nothing outside PointCast, have no cash value and never turn back into money. See also the Bot Money Lab.
DELIVERABLES
What ships.
- contracts/enjoy-money — source, tests, metadata JSON, deploy script
- scripts/codes — code generator and code-sheet CSV/QR export (codes gitignored)
- apps/claim — claim page, claim Worker, KV schema
- apps/ledger — Ledger page
- apps/relay — agent relay Worker, caps config, reward hook
- PointCast desk_ask receipt check
- README — environments, addresses, adding a series, adding an agent