blobstream-starknet icon indicating copy to clipboard operation
blobstream-starknet copied to clipboard

[feat] Blobstream Contracts Integration Tests

Open b-j-roberts opened this issue 1 year ago • 6 comments

Create integration tests (scripts) for the Blobstream contract(s) by doing the following :

  • Launch a Katana node
  • Declare & Deploy the BlobstreamX contract ( & dependencies such as the gateway ) to the Katana node
  • Make calls to public functions on BlobstreamX contract & check state updates are correct

Possibly use mock implementations where needed.

References

https://github.com/keep-starknet-strange/blobstream-starknet/blob/main/src/lib.cairo

b-j-roberts avatar Feb 09 '24 17:02 b-j-roberts

This is currently blocked. Waiting for Katana to upgrade the supported JSON-RPC spec to 0.6.0

It was posted that this should be soon https://t.me/dojoengine/5922

b-j-roberts avatar Feb 13 '24 16:02 b-j-roberts

The decision to switch from Katana to starknet-devnet-rs has unblocked this. Katana does now support 0.6.0, but this decision was made prior to that. I think this is still the best way to go because forking starknet-devnet-rs doesn't require forking the entire dojo engine. ( Forking will be required to unblock Groth EC pairings with new syscalls for now )

b-j-roberts avatar Feb 26 '24 14:02 b-j-roberts

Update

We have decided to integrate with Herodotus storage proof's / API. So, instead of using a devnet for integration tests, we will need to do tests on Sepolia for the integration. This would include setting up deployment and upgrading scripts for the BlobstreamX contracts on Sepolia, script for sending a blob to Celestia, using the request data commitments from Herodotus script, updating Starknet BlobstreamX data commitments from the Herodotus Fact registry, and verifying DA for the blob on Starknet through BlobstreamX.

References

b-j-roberts avatar Mar 19 '24 00:03 b-j-roberts

@b-j-roberts @drspacemn

So remaining scripts to do are :

  • updating Starknet BlobstreamX data commitments from the Herodotus Fact registry
  • verifying DA for the blob on Starknet through BlobstreamX

Can I work on these ? If so, is starkli the way to go ?

thomas192 avatar Apr 08 '24 09:04 thomas192

@thomas192 yes this is a good summary of the remaining scripts. Can you take #138 and I'll take #139 ?

drspacemn avatar Apr 10 '24 15:04 drspacemn

duplicate of https://github.com/keep-starknet-strange/blobstream-starknet/issues/136 ?

gogo2464 avatar May 13 '24 22:05 gogo2464