Protocol: contracts, keeper, security
What runs where, who can do what, and how to check it.
Contracts
Solidity 0.8.26 to 0.8.30, cancun, Foundry. V4SocialHook, V4SocialRouter, ScoreBook, V4SocialBond and MerkleEpochDistributor. Addresses are listed on the protocol page once deployed. The fee constants are immutable.
The keeper
Every hour: read new Post and Copy events, mark each open copy to price, post the changed scores and the root, flush the burn reserves and buy and burn $V4S. Every Monday 00:00 UTC: harvest the creator fees, post the weekly epoch, slash the bonds of traders whose followers ended the week down.
Security notes
The keeper key decides the scores, so it decides who is paid and whose bond is slashed; its inputs and outputs are public and the key change is timelocked for 48 hours. The hook holds royalties and the burn reserve as PoolManager claims and pays them out by redeeming those claims. A copy can lose money like any swap, and thin pools move: the 1% cap reverts a copy rather than filling it badly.
Support
Write to the project account on X, linked in the footer.