test: harden public EVM-Aztec E2E and fix lock reconciliation#177
Merged
Conversation
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.
Summary
Root cause fixed
SolverLocked.reward_token is an AztecAddress belonging to the chain where the solver lock exists. The decoder incorrectly normalized it using dst_chain. For an EVM counterparty this truncated the 32-byte Aztec token to 20 bytes, so the workflow correctly rejected the event as an economics mismatch even though the on-chain lock was canonical.
The fix removes only that invalid conversion. Strict workflow event validation remains unchanged.
Validation
A funded post-fix public rerun must happen after the updated Aztec service image is deployed; the currently deployed service still contains the defective decoder.
Remaining concern
The advertised exact route minimum and maximum are rejected by the solver in both directions. That P1 boundary inconsistency is unrelated to this decoder fix and is intentionally not mixed into this PR.
Security
Reports redact wallet secrets and private account material. No credentials or recovery secrets are committed.