feat(affiliates): add gas rebate 69 for June 2026#4960
Conversation
💡 Codex Reviewhttps://github.com/UMAprotocol/protocol/blob/5d176224d6751cb18156c826d579e4b9019d908a/packages/affiliates/gas-rebate/rebates/Rebate_69.audit.md#L44 For votes whose reveal landed at the start of June but whose commit was before ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
5d17622 to
36d1e02
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 36d1e0287c
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| maxBlockLookBack, | ||
| transactionConcurrency, | ||
| maxPriorityFee, | ||
| commitLookbackBlocks, |
There was a problem hiding this comment.
Record commit lookback in the audit config
When COMMIT_LOOKBACK_BLOCKS is overridden, the payout can change because this value is now passed into the calculator, but the monthly audit's effectiveConfig still omits it. That leaves committed rebate artifacts (and later correction/audit reruns if the default changes) without the policy parameter needed to reproduce why boundary commits were or were not recovered; include the resolved lookback value in MonthlyAuditReportConfig/Markdown alongside the other effective parameters.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Fixed in 100fe2c — commitLookbackBlocks is now recorded in the monthly audit effectiveConfig and rendered in the Markdown (Commit lookback blocks: 50000), alongside the other effective parameters.
Commits were only refunded when their matching eligible reveal fell inside the same monthly block range. Votes committed near the end of a month but revealed at the start of the next (a reveal phase straddling midnight of the 1st) had their commit gas reimbursed by neither payout: the reveal month never saw the commit, and the commit month never matched it to an in-range reveal. Scan a configurable lookback window (COMMIT_LOOKBACK_BLOCKS, default 50000) before fromBlock to recover the commit transaction for such reveals. A commit transaction is skipped when any vote it commits was eligibly revealed before fromBlock, so transactions already reimbursed by the previous month are never double paid. reveal_missing_commit anomalies now fire only for commits absent from the lookback window. Adds a boundaryCommitEventsRecovered audit metric and records the resolved commit lookback in the monthly audit effective config so committed artifacts remain reproducible.
36d1e02 to
1cd1a7b
Compare
|
Re: the cross-month commit gas finding — fixed in 100fe2c. The calculator now recovers the commit transaction for eligible reveals whose commit landed before For rebate 69 this recovered 18,265 boundary commit transactions (total payout 4.893278 → 5.094695 ETH). The audit reports validation passed with 0 anomalies. |
…s rebate Load an optional address exclusion list (EXCLUSION_LIST_PATH, default gas-rebate/exclusions/rebate-exclusions.json) and drop transactions sent from those addresses from the payout, so delegate voters can be excluded. The list is kept private (gitignored); the monthly audit records only its SHA-256, size, and the excluded voter/rebate totals, so payouts stay reproducible without publishing the addresses.
1cd1a7b to
bd2acd3
Compare
Summary
Fix cross-month commit gas reimbursement in the VotingV2 gas rebate script, add an optional delegate exclusion list, then add the June 2026 rebate 69 artifact produced with both.
Fix: cross-month commit gas
Commits were reimbursed only when their eligible reveal fell inside the same monthly block range. Votes committed at the end of a month but revealed at the start of the next (a reveal phase straddling midnight of the 1st) had their commit gas reimbursed by neither payout. The calculator now scans a configurable lookback window (
COMMIT_LOOKBACK_BLOCKS, default 50000) beforefromBlockto recover those commit transactions, skipping any transaction whose votes were eligibly revealed beforefromBlockso nothing the previous month already paid is double counted.reveal_missing_commitanomalies now fire only for commits absent from the lookback window; the resolved lookback is recorded in the auditeffectiveConfig.Feature: delegate exclusion list
Optional address list (
EXCLUSION_LIST_PATH, defaultgas-rebate/exclusions/rebate-exclusions.json); transactions sent from those addresses are dropped from the payout. The list is kept private (gitignored) — the monthly audit records only its SHA-256, size, and the excluded voter/rebate totals, so payouts stay reproducible without publishing the addresses.Rebate 69 (June 2026)
Validation
yarn test-local(affiliates) — calculator unit tests: boundary recovery, previous-month double-pay guard, out-of-window anomaly, and exclusion filtering.tsc --noEmitclean.Validation passed: true, 0 anomalies,Boundary commits recovered: 18265,Exclusion list size: 115,Excluded voters: 101.