Handing over voluntarily
The current controller can pass the seat two ways:handOver(token, to)- a direct transfer, signed by the seat holder.handOverWithSig- the controller signs an EIP-712 handover off-chain, and anyone can submit it. The signature names the token, the recipient, a nonce and an expiry, so it fits exactly one transfer and cannot be replayed.
Takeover, when the founder is gone
When a founder disappears and a community wants the page, the platform can propose a reassignment - but cannot execute it unilaterally:- Propose. The platform admin calls
proposeReassign(token, to), naming the new controller. This starts a 7-day clock, visible on-chain. - The founder veto. At any point in those 7 days, the current
controller can call
cancelReassignand the takeover dies. A founder who is present cannot be removed - the mechanism only completes against silence. Handing the seat over during the window also cancels the pending reassignment. - Execute. After the clock runs out, anyone can call
executeReassign. The seat moves, and in the same transaction the departed founder’s vesting vault - if one exists - has its dividend accrual renounced: locked supply must not keep earning under a seat its owner lost. The renounce is one-way and the tokens themselves stay the founder’s, still vesting on their schedule.
The 7-day delay is the design, not an inconvenience. A takeover that
the platform could execute instantly would make the platform the real
controller of every token. The delay plus the veto means the seat only
moves when its holder either agrees or has genuinely stopped answering.
