PP - #77
Open
chrismaree wants to merge 1 commit into
Open
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
chrismaree
force-pushed
the
chrismaree/signed-proposer
branch
from
August 31, 2026 13:01
733aec2 to
32e23e4
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What Changed
SignedProposer, a permissioned Permit2 witness-signature relay for submitting Managed Optimistic Oracle V2 proposals on behalf of off-chain signers.SignedProposerto a replacement deployment.maxPaymentis included in the signed proposal witness, the relayer chooses an actual payment up to that cap, and retained payments can be withdrawn by the admin.proposePriceFor.tryMulticall(bytes[])for delegated relayers to execute independent proposal attempts without ordinary child reverts rolling back successful siblings. Existing OpenZeppelin atomicmulticall(bytes[])remains unchanged.1.3.6, adds deployment configuration andDeploySignedProposer.s.sol, and documents deployment, role, whitelist, payment, batching, and Polygon capacity behavior.Why
Impact
multicallbehavior are unchanged.DELEGATED_PROPOSER_ROLEmay execute signed proposals or partial-success batches. Administrative and whitelist operations remain separately permissioned.tryMulticallhas no production batch-size or per-child gas magic numbers. Under EIP-150, an out-of-gas child may returnfalsewhile preserving enough outer gas to continue, may starve later children, or may ultimately cause the outer batch to revert. Afalseresult is therefore an unsuccessful execution attempt, not proof that the proposal itself is invalid.proposal.oracle. The chosen oracle supplies the request currency and receives an allowance for the signed proposal execution, so an unintended oracle can spend up to the Permit2-authorized amount for that proposal.High risk Sections to review with detail
maxPayment, while Permit2 binds token, amount, nonce, deadline, signer, andSignedProposeras spender.proposePriceFor, revoked immediately afterward, and is not exposed during whitelist add/remove hooks.delegatecall, per-child rollback, nested-batch blocking, failure metadata, and EIP-150 gas-starvation behavior.Validation
1.3.6:forge fmt --check1.3.6:forge build --sizes