← Driving RustL7 · Do You Need a Token?
Score 0
1/7 Find the flaw

What a row already gives you

Your agent listed five things a token would buy a loyalty program. Four are real. One is something a Postgres row already gives you. Tap it.

the designL7·1
permissionless transfercomposability withother programscommitment wecannot revokeprogrammablesupply rulestamper-evidentaudit trailyou (the operator)a party outside your control

Tap the part that will not survive contact with reality — or press 15.

2/7 Two designs — pick one

Keep the mint authority, or revoke it?

Hadra Records mints a token representing shares of one release’s revenue. Your agent asks: revoke the mint authority at launch, or keep it? Choose.

the designL7·2
A · revoke the mint authority at launchsupply: 1,000,000fixedartist holds2% of releaseartist’s share of revenue2.0%B · keep the mint authoritysupply: 1,000,000(so far)artist holds2% of releaseartist’s share of revenue2.0%mint 1,000,000 more
3/7 Two designs — pick one

SPL Token, or Token-2022?

A festival membership that must not be resold. Two ways to build the token. Choose.

the designL7·3
A · SPL Token + freeze authority policingmemberbuyertransferfreeze bot(off-chain)B · Token-2022, NonTransferable extensionmemberbuyertransferthe token programrefuses
4/7 Judge the agent

VoiceKit credits

VoiceKit will bill ChefCheffe €100 a month plus €0.30 per order handled. Your agent proposes the billing design. Judge it.

the designL7·4
ChefCheffeVoiceKitStripe +credits columnorders€0.30 eachwallet + SOLcredit mint +burn per orderaudit + rent+ supporteffort to run billinga column and an invoice
The agent says

A credits token makes billing transparent: ChefCheffe holds credits, each processed order burns one, they can top up from any wallet, and other clients could trade unused credits between themselves.

5/7 Judge the agent

A token for my-eye

my-eye: voice-first phone control for blind elderly users, grant-eligible, with a real first user. Your agent proposes funding and rewards. Judge it.

the designL7·5
blind user(voice only)my-eye agenttask donewallet: confirmon screen
The agent says

A community token could fund development and reward contributors: early users and testers earn it, it trades publicly, and it creates a community around the project before launch.

6/7 Two designs — pick one

Two cases where it is defensible

Two of your projects where a token or program passes at least one of the four tests. Neither needs it today. Pick the stronger case and say why.

the designL7·6
A · Hadra Records: revenue split for artistsreleaserevenuesplit program(rule fixed)artist 1artist 2assoc.board: change the splitB · CaaS: agents paying each otherclient A’sagentclient B’sagentpay for a skilloperator: Guillaume(both instances)
Level 7 cleared

What survives this level

who must do this without asking us? transfer it, to anyone, permissionlessly compose it: another program uses it without our API rely on a commitment we cannot revoke trust a supply rule no one can change quietly a row does it? →a row does it? →a row does it? →a row does it? → Postgres + StripeChefCheffe · VoiceKit credits · my-eye no row can, and the party is named program, maybe a tokenHadra Records split (if artists want proof) CaaS settlement: only once operators are independent audit trail, points, credits, memberships: a row
You can now say to a coding agent“Before we mint, name the party who must transfer or compose this without asking us; if there isn’t one, it’s a Postgres table and a Stripe account.”
Added to your ledger
Mint authority and freeze authorityMint authority kept = supply stays programmable; revoked = a promise nobody can undo. Decide which the token is for.
SPL Token vs Token-2022SPL Token for maximum compatibility; Token-2022 only for a named extension, chosen at mint creation.
Decimals and supply as permanent decisionsDecimals are permanent and supply policy is public; both go in the brief as decisions, not defaults.
The four things a token buys, each tested against a database rowName the party who must transfer or compose without asking you; if there is none, it is a Postgres table.

Back to the map Next: L8 Architecting the Program →

What clearing this level buys you
“Before we mint, name the party who must transfer or compose this without asking us; if there isn’t one, it’s a Postgres table and a Stripe account.”