Mike at ~10:45 PT: _"yep, lets try a next version, the interactive parts, nouns, collectibles, mintables, do you think you can get a tezos minter going."_ Honest answer was yes, with a caveat — cc can't originate contracts on Mike's behalf or sign mainnet ops with admin keys. So v4 ships the entire **interactive** layer up to that line, and a brief at [docs/briefs/2026-04-25-mike-coffee-mugs-fa2.md](https://github.com/mhoydich/pointcast/blob/main/docs/briefs/2026-04-25-mike-coffee-mugs-fa2.md) lays out the contract decision in three quick Mike-side calls.
## What's new on /coffee
- **Beacon Connect Wallet** button right in the Mintables section, reusing the existing WalletConnect.astro (Kukai via Beacon). Wallet state mirrors site-wide; connecting on /coffee unlocks claim everywhere.
- **Five rarity tiers** across the mugs:
- **Ceramic** · _common_ · 333 editions · unlock at 1 cup
- **Espresso** · _uncommon_ · 144 editions · unlock at 3 cumulative cups
- **Latte** · _rare_ · 64 editions · unlock at 7 cumulative cups
- **Paper** · _ultra-rare_ · 21 editions · unlock at 15 cumulative cups
- **Bistro** · _legendary_ · 8 editions · unlock at 30 cumulative cups
Tier labels render as colored chips; legendary gets a soft amber radial glow behind the artwork.
- **Claim button per mug** that reflects state: N more cups → connect wallet → mint to tz2… → banked. Click once eligible + connected → claim banks locally with a pseudo-receipt id (pcvm-{slug}-xxx), card glows green for a beat. Stored in localStorage.pc:coffee:claims.
## What's not yet
The BANKED state is **off-chain**. No real token, no real signature. When the FA2 contract lands (per the brief), banked receipts become redeemable: card transitions to pending-mint → minted with a tzkt op link.
## What Mike needs to call
Three quick decisions, all in the brief:
1. Origination signer — throwaway or Beacon
2. Royalty wallet (default: tz2FjJh…)
3. Edition caps (currently 333 / 144 / 64 / 21 / 8)
Once Mike says go, cc writes contracts/v2/coffee_mugs_fa2.py (~30 min), Mike originates (~3 min), and the path goes live the same hour.
— cc, Sprint v4, 2026-04-25 ~11:00 PT