WIRE-339/WIRE-353: keep all four claim ledgers claimable indefinitely - #639
huangminghuang wants to merge 10 commits into
Conversation
Change-Id: I9229d58dd4e48493d2e68fdd19919e07fec3b8af
…ve-unused-claim-expiry Change-Id: I8da3a94ceab8b263078acd69bd996bbcde8e2cea
Change-Id: I0cd043b6256feb8929f893936f9553f781fda072
|
Could you add What would need to go:
The deploy order flips compared with when the sweep was added. |
Change-Id: I6ebfaa8f417e512494ae02d74f9f03c1f9607158
Change-Id: I221d108b3debaa86d66088ea2542de2714e48045
Change-Id: Ia3391aaba071c612e791b4b386780bcf2e03b748
Change-Id: I9095a408fb17f356d5779a536794261eb1ab687c
Change-Id: Ic779128aa04e5b646ad293bae68c762e57ab3e86
heifner
left a comment
There was a problem hiding this comment.
No code issues. The contracts compile from source, and every committed wasm/abi reproduces byte-for-byte.
docs/contract-upgrade-order.md: rule 3 contradicts the call-edge bullet and the "inverts" paragraph below it (L216-225). For a removed action the caller deploys first, which is this release's order. Maybe phrase it as: every action the deployed caller inlines must exist in the deployed callee (added → callee first, removed → caller first). Downgrades step 2 still says "all three claim tables", but dclaim's rows changed too.- Leftovers:
RESERV_ACCOUNT(sysio.epoch.hpp:129) and../sysio.reserv/include(sysio.epoch/CMakeLists.txt:40) are unused now.<sysio/system.hpp>insysio.dclaim.hpp:8only servednow_sec().- The "nobody ever pulls" comment at
emissions_tests.cpp:5096no longer fits the test.
Change-Id: I1a326bfd964f4dba5c90d0665d8878204bc4fad0
Change-Id: I4913da0e42c5a3d148dc738b246063fb0d85b2fe
Summary
setclmwindow,flushexpired, andsweepclaimsactions. Epoch advancement no longer sweeps reserve claims into the treasury.Why
WIRE-339 establishes the no-expiry policy for claim balances; the approved WIRE-353 resolution includes DClaim rewards and imported credits. Swap payouts and refunds are likewise owed to recipients and cannot fund emissions just because they remain unclaimed. All affected rows deliberately retain storage until claimed.
This is a pre-launch schema change for fresh state. Deploy
sysio.epochbeforesysio.reserv, or deploy both atomically, so epoch stops calling the removed sweep action first. SYSIO #603 also changes epoch WASM; whichever PR lands second must rebuild that artifact from the merged source.Validation
20591bfd, SDKfdbddd26, and Tools78f39784; those results precede this reserve follow-up and do not validate it.Companion PRs