Package hearth escrows a single ecosystem raise in ugnot and later splits revenue deposits across contributors by paid share.
Contribute accepts ugnot while the raise is open. Each call must be at least MinContribute. The running total cannot pass HardCap; excess ugnot is sent back to the caller. Hitting HardCap closes the raise.
Raise principal (WithdrawRaise) and revenue (DepositRevenue) are separate ledgers. Withdrawing the raise does not change shares. After Close, DepositRevenue opens an epoch. Settle pays the next batch of unpaid wallets for that epoch. Claim pays one caller. Integer dust stays in the realm and is not withdrawable.