-
Notifications
You must be signed in to change notification settings - Fork 99
Description
To whom is this feature for?
End user
Why is is this feature needed?
For the outlined Agglayer bridge implementation in 0xMiden/protocol#1910, it necessary to be able to make FPI calls in transactions executed by the network transaction builder.
Example in the context of bridging in using Agglayer:
CLAIM note -> Agglayer Faucet (FPI to Agglayer Bridge) -> P2ID note
The CLAIM note is created by the user and is executed against the Agglayer faucet in a network transaction. During consumption, the P2ID note is created.
@bobbinth You mentioned this issue was brought up in a separate thread in a different issue, I couldn't find that thread so I am creating this issue.
How is this feature used?
This feature would be used in the context of bridging in assets using the Agglayer. The user creates a CLAIM note which is consumed by the "Agglayer faucet". During this transaction, the Agglayer faucet makes an FPI call to the Agglayer bridge contract which contains the MMR structure to check if the supplied merkle proof in the CLAIM note is valid. If so, the Agglayer faucet issues the note which is commited to in the Agglayer MMR structure.
Anything else?
Afaik this is currently possible, but as @igamigo pointed out, the entire Account which is FPI called into would be loaded, not the specific data that would need to be read. I think this is the optimization @bobbinth you were referring to that would need to be made.
The absence of the feature does not block development of the bridging in components in Miden base, but would be required when testing out the end to end flow on testnet.