Scope
Activate W05 from docs/backlog/implementation/W05-royalty-failure-isolation.md.
Outcome
A royalty recipient that rejects or cannot receive an immediate native transfer must not make an otherwise valid Classic access purchase fail.
Required boundaries
- Preserve exact value accounting, including rounding and repeated purchases.
- Keep payment, immediate payout, pending claim, claim success, and transfer failure distinguishable.
- Bound external-call gas and preserve reentrancy protection.
- Add regression coverage for rejecting, gas-consuming, reentrant, dust/rounding, multiple-recipient, double-claim, and unauthorized-claim cases.
- Add the minimal affected-recipient UI, without displaying accrued/claimable amounts as already received.
- Include Diamond storage/selector/ABI compatibility evidence and a local upgrade/redeployment rehearsal.
Non-goals
No automatic live facet cut, treasury redesign, speculative rewards, CASH integration, live deployment, or fund movement.
Scope
Activate W05 from
docs/backlog/implementation/W05-royalty-failure-isolation.md.Outcome
A royalty recipient that rejects or cannot receive an immediate native transfer must not make an otherwise valid Classic access purchase fail.
Required boundaries
Non-goals
No automatic live facet cut, treasury redesign, speculative rewards, CASH integration, live deployment, or fund movement.