Context
campaign/src/lib.rs uses extend_ttl (~16 sites) and rewards ~23 sites. With thousands of
participants each holding persistent entries, naive per-entry TTL bumping becomes expensive and can
exceed ledger resource budgets, while un-bumped entries get archived and break reads. There is a
docs/TTL_STRATEGY.md but no scale test.
Scope
- Define which entries are persistent vs temporary vs instance and document expected rent.
- Batch/lazy TTL extension; consider archival + on-demand restore for cold participants.
- Add a load test simulating 10k participants and measuring TTL/rent cost.
Acceptance criteria
Context
campaign/src/lib.rsusesextend_ttl(~16 sites) andrewards~23 sites. With thousands ofparticipants each holding persistent entries, naive per-entry TTL bumping becomes expensive and can
exceed ledger resource budgets, while un-bumped entries get archived and break reads. There is a
docs/TTL_STRATEGY.mdbut no scale test.Scope
Acceptance criteria