diff --git a/docs/adr/0002-dual-token-payment-model.md b/docs/adr/0002-dual-token-payment-model.md index e0f9091..69387ac 100644 --- a/docs/adr/0002-dual-token-payment-model.md +++ b/docs/adr/0002-dual-token-payment-model.md @@ -1,13 +1,98 @@ -# Dual token payment model: own token for nodes, SOL/USDC for clients +# TAI token: revenue-backed rewards for nodes, USDT/SOL payments for clients -Clients pay in SOL or USDC — familiar, easy to buy, no new token required. Node operators stake and earn our native Solana L2 token, which creates speculative upside for early contributors and a staking mechanism for fraud prevention (slashing). The two are decoupled: client payments are auto-converted to partially fund token rewards; clients never need to hold or know about our token. +## Token -For the prototype contract boundary, settlement keeps three explicit ledgers: caller SOL/USDC balances by API key, node Token stake balances by wallet, and node Token reward balances by wallet. Every new caller receives configurable starting credit. Epoch settlement debits caller SOL/USDC balances for consumed compute and credits node Token rewards from taxes. Tax distribution is weighted by completed work and historical node speed so faster, larger nodes are economically incentivized. No AMM or real conversion is modeled yet. +The native token is named **TAI**. Fixed total supply (BTC-inspired — exact number TBD, see open questions). No ongoing minting after the initial issuance. Inflation is near-zero by design; any small scheduled emission follows a halving-style curve so early node operators earn disproportionately more, creating the viral early-adopter incentive. -Using SOL alone would give node operators no early-adopter upside ("why run my GPU for market-rate SOL?"), killing the viral growth mechanic. Launching a token-only system requires clients to acquire our token, adding friction that kills adoption. The dual model solves both. +Clients never hold or see TAI. They pay in USDT or SOL. Nodes earn TAI. This separation keeps the client experience frictionless while giving node operators early-adopter upside. + +## Revenue-backed price model + +TAI is not traded on any open market during the bootstrap phase. The only way TAI enters circulation is as a node reward for completed inference work. The price is therefore organically backed by real compute revenue, not speculation. + +**Conceptual price anchor:** +``` +TAI backing ratio ≈ USDT in protocol treasury / TAI in circulation +``` + +Price starts very low (near zero) and only rises as inference payments accumulate in treasury. There is no initial liquidity pool or AMM. The team sets a symbolic starting price (e.g. $0.0001) as the baseline for first reward calculations. + +## Payment and reward flow + +``` +Client pays $100 USDT for inference + └─ Protocol treasury receives $100 USDT + +Node completes compute work + └─ Node earns TAI worth $95 at current TAI price + (team transfers TAI from team holdings to node wallet) + └─ Protocol keeps $5 as operating spread (~5% of inference volume) + +Node wants to exit (sell TAI): + └─ Team buys back at 95% of current price + └─ Node receives $90.25 USDT (95% × $95) + └─ Team recovers the TAI + keeps $9.75 total on the round-trip + +Node holds TAI: + └─ Team keeps $95 USDT in treasury (backs future appreciation) + └─ Node benefits from price appreciation as more inference happens +``` + +The 5% spread on issuance + 5% spread on buyback compounds to ~9.75% protocol revenue on fully round-tripped volume. Nodes who hold TAI instead of selling immediately retain the full $95 value and benefit from price appreciation — a natural incentive to hold. + +## Team distribution schedule + +The team begins holding ~100% of the total TAI supply. Over approximately 5 years, the team distributes TAI to nodes as inference rewards, reaching a long-term target of **36% team holding**. The remaining ~64% is in the hands of node operators and, eventually, open-market participants. + +The distribution is not linear — it follows a halving-style decay so early nodes earn more TAI per USDT of compute than later nodes. This rewards the bootstrapping risk. + +**Open market listing:** Only after the network reaches a healthy market cap (specific threshold TBD). At listing, only a defined percentage of team holdings is made available — not the full 36%. This prevents a supply shock. + +## Wind-down guarantee + +If the project is shut down before reaching sustainable scale, the protocol guarantees it can buy back every TAI it has ever issued as a compute reward at the price at which it was originally issued. This is made possible because: + +1. Every inference payment flows into treasury first +2. The protocol only distributes TAI worth 95% of each inference payment +3. The 5% spread per transaction accumulates as the wind-down reserve +4. Even if all nodes sell immediately at 95%, the protocol collects ~9.75% of every dollar of inference volume as reserve + +Net effect: the protocol is always solvent to honor its obligations to node operators. No node that earned TAI through legitimate compute work can lose money if the project closes — they can always redeem at the issue price they received. + +## Protocol tax on volume + +The protocol collects approximately **10% of inference volume** as operating revenue, composed of: +- ~5% spread on TAI issuance to nodes (client pays $100, node gets $95 of TAI) +- ~5% spread on TAI buybacks (node sells $95 TAI, receives $90.25 USDT) + +This ~10% accumulates in the protocol treasury and serves three purposes in priority order: +1. Wind-down reserve (guarantee buyback of all circulating TAI at issue price) +2. Operating costs (infrastructure, legal, development) +3. Team profit (only after 1 and 2 are fully funded) + +## Prototype contract boundary + +The `packages/contracts` settlement layer tracks three ledgers: +- `caller_balance[api_key]` — USDT/SOL prepaid by clients +- `node_tai_balance[wallet]` — TAI earned by nodes, unredeemed +- `node_tai_stake[wallet]` — TAI locked as fraud collateral +- `protocol_usdt_reserve` — accumulated spread, earmarked as wind-down reserve + +Epoch settlement: debits caller USDT for consumed compute, credits node TAI rewards weighted by layers served × node speed benchmark. No live Solana settlement in prototype — contract boundary is a deterministic local adapter (see ADR-0007). ## Considered Options -- **SOL only**: simplest, no token launch risk, but no node incentive beyond spot market rates -- **Own token only**: maximum node incentive, but clients must acquire it — high friction -- **Own token (stake/rewards) + SOL/USDC (client pay)**: clean separation of concerns, chosen +- **SOL only**: no early-adopter upside for nodes, no viral growth mechanic — rejected +- **Own token only**: clients must acquire TAI — high friction, kills adoption — rejected +- **AMM / open market from day one**: exposes early price to speculation and manipulation before real volume establishes a floor — rejected +- **Revenue-backed TAI, no open market during bootstrap**: chosen — price is anchored to real compute work, wind-down guarantee is mathematically fundable, speculation cannot crash price before network effect is established + +## Open questions (to be resolved before token launch) + +- Total TAI supply (21M BTC-style? 100M? 1B?) +- Exact halving schedule for node emission rate +- Specific market-cap threshold for open-market listing +- Percentage of team holdings offered at listing vs. held long-term +- Rate limit on buybacks (max USDT/day per wallet to prevent bank-run drain) +- Node staking bootstrapping: how do new nodes acquire stake TAI before they have earned any (given TAI is not on open market)? +- Legal structure for token distribution in target jurisdictions