0xPolygon/cdk-validium-node

Support ephemeral DA backends

Opened this issue · 0 comments

Certain DA providers use ephemeral storage which only persist preimages temporarily (e.g, EigenDA only stores blobs for 2 weeks after dispersal). This ephemeral DA type is incompatible with the existing CDK DA interface causing Forced DA verifier nodes to fail syncing and continually death loop when trying to read the first nonexistent batch from DA. This was proven via an experiment where we tuned down the blob expiration limit for a simulated EigenDA proxy backend.

Some type MAX_DA_WINDOW time value which defines a starting point that a verifier can sync chain state from external DA would alleviate this issue. This value would likely be best defined as a mutable public variable in the DA consensus contract.

NOTE: The existing forced DA node doesn't actually sync from DA when spun-up and instead death loops on trying to establish a connection with an intentionally broken trusted sequencer dependency URL. Doing these experiments required doing a few slight modifications to the node software to force the synchronizer to only read from DA to represent the intended forced nature.