Skip to content

Validate intent typedData in bridge quote responses#7895

Open
oscarwroche wants to merge 19 commits intofeat/intent-v2from
intent-backend-api-change
Open

Validate intent typedData in bridge quote responses#7895
oscarwroche wants to merge 19 commits intofeat/intent-v2from
intent-backend-api-change

Conversation

@oscarwroche
Copy link
Contributor

@oscarwroche oscarwroche commented Feb 10, 2026

Explanation

  • Extend bridge quote validation to accept intent.typedData for intent swaps.
  • Keep validation lightweight for typedData.domain and typedData.message to avoid deep type recursion while still checking structural EIP‑712 fields.

References

Checklist

  • I've updated the test suite for new or updated code as appropriate
  • I've updated documentation (JSDoc, Markdown, etc.) for new or updated code as appropriate
  • I've communicated my changes to consumers by updating changelogs for packages I've changed
  • I've introduced breaking changes in this PR and have prepared draft pull requests for clients and consumer packages to resolve them

Note

Medium Risk
Medium risk because it changes intent-order submission to optionally sign EIP-712 data via KeyringController, affecting transaction submission behavior and introducing a new failure mode when typedData is absent.

Overview
Intent quote validation now accepts optional EIP-712 intent.typedData payloads (lightweight structural checks for required fields) when validating bridge quote responses.

BridgeStatusController.submitIntent now treats signature as optional: if omitted, it signs the provided intent.typedData internally via KeyringController:signTypedMessage (V4); if both signature and typedData are missing it throws. Updates messenger action typings accordingly and adds unit tests covering the autosign + missing-data error paths.

Written by Cursor Bugbot for commit 60faf46. This will update automatically on new commits. Configure here.

@oscarwroche oscarwroche requested a review from a team as a code owner February 10, 2026 17:39
@oscarwroche oscarwroche marked this pull request as draft February 10, 2026 17:39
@oscarwroche oscarwroche marked this pull request as ready for review February 25, 2026 12:36
@oscarwroche oscarwroche requested a review from a team as a code owner February 25, 2026 12:36
@Akaryatrh Akaryatrh changed the base branch from main to feat/intent-v2 February 26, 2026 11:21
@Akaryatrh Akaryatrh requested review from a team as code owners February 26, 2026 11:21
@Akaryatrh Akaryatrh changed the base branch from feat/intent-v2 to main February 26, 2026 11:23
@Akaryatrh Akaryatrh changed the base branch from main to feat/intent-v2 February 26, 2026 11:23
@Akaryatrh Akaryatrh marked this pull request as draft February 26, 2026 11:23
@oscarwroche oscarwroche marked this pull request as ready for review February 26, 2026 17:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant