Generic Verifiers #745
Replies: 4 comments 7 replies
-
I want to make sure we enumerate some of the fulfill conditions that are possible to implement and make sure our protocol is flexible enough to support. Here are some conditions I thought of so far, will add more as needed.
|
Beta Was this translation helpful? Give feedback.
-
Couple of queries Queries:
Addressing the Outstanding questions:
Yeah, this sounds better.
This will be probably required on receiving side |
Beta Was this translation helpful? Give feedback.
-
Updated the original to include:
|
Beta Was this translation helpful? Give feedback.
-
Moving discussion to archive, may no longer be necessary with the generic messaging direction. |
Beta Was this translation helpful? Give feedback.
-
Summary
This feature allows pointing to an external contract to evaluate whether a transaction should be cancelled or fulfilled. The current contracts restrict the fulfillment and cancellation conditions to verifying a user signature, making direct contract integrations difficult.
Motivation
Without a way to delegate the ability to mark a transaction as "fulfilled" to an arbitrary contract, many contract-based use cases would need custom code rather than allowing a native integration.
Proposed Solution
The team maintains a whitelisted registry of
Verifiers
that is identical across all supported chains. ThisVerifierRegistry
should allow for details about a specificConditionalVerifier
to be retrieved byid
(which would be the same across chains). As these verifiers impact the flow of funds throughout the protocol, the code should be reviewed and subject to approval by maintainers.The
InvariantTransactionData
should be modified to include the following additional fields:Each
ConditionVerifier
should implement the following interface:Each interpreter will return a
bool
indicating whether the validation has passed for that interpreter.Test Cases
The following tests should be implemented with a simple interpreter:
Additionally, a happy case flow with the following interpreters should be implemented:
Outstanding Questions
interpreterName
and a library of registered condition interpreters, we can allow the user to pass in the deployed address of the condition on the sending and receiving chain, saving gas.prepare
necessary?Tasks / PRs
Beta Was this translation helpful? Give feedback.
All reactions