// the_machine
How it works
alvinmunk turns trust into something you can see — and other apps can read. Here's the whole machine, including the limits.
The vouch loop
scroll ↓Vouch
Pick someone you trust and add one line — why. No address needed; you get a share link that lights a star for them.
Vouch
Pick someone you trust and add one line — why. No address needed; you get a share link that lights a star for them.
mint · one lineClaim
They open the link, connect in a single tap (fees sponsored), and claim their half. Two halves become one card; both earn Social XP.
one tap · sponsoredConstellation
Every claimed vouch adds a star. Your profile is a living constellation that grows with the people who back you — readable by any app.
on-chain · foreverTwo kinds of XP
Social XP
Earned from vouches. Powers your rank, leaderboard, and clout. It is never cashable — and that's on purpose.
Earned XP
Earned only from attester-verified quests. It is the only track that can unlock USDC rewards.
Anti-sybil, honestly
We'd rather show you the limits than pretend they don't exist.
First-pair-only
A repeated A→B vouch mints the card but grants 0 extra XP — no back-and-forth pumping.
Daily cap
A wallet can only mint so many vouches per day (on-chain counter).
Two-track split
Vouches earn clout, not cash. Only verified quests touch the treasury.
Ring detection
Reciprocal rings (A↔B) are flagged off-chain and can be frozen.
Circuit breaker
A per-reward amount + a global daily cap bound every payout.
Proof-of-funding
On mainnet, a wallet must have received external value before it can cash out.
For developers
alvinmunk emits a canonical attestation primitive. Any app can read a wallet's reputation with one call.
// read a Social score (non-cashable) const score = await getScore(address); // → 42 // read the cashable Earned track const earned = await getEarned(address); // → 30





