chainbound / bolt

Bolt: permissionless out-of-protocol proposer commitments.
https://chainbound.github.io/bolt-docs/
MIT License
27 stars 5 forks source link

Kurtosis devnet scenarios #29

Open mempirate opened 1 month ago

mempirate commented 1 month ago

Context

We want to showcase Bolt functionality in a couple of happy and not-so-happy scenarios. This issue will track the progress of each.

## Scenarios
- [x] Succesful inclusion preconfirmation through PBS [PRIORITY]
- [x] Succesful inclusion preconfirmation with builder / relay fault (fallback building) [PRIORITY]
- [ ] Inclusion preconf commitment breach with successful challenge (safety fault)
- [ ] Inclusion preconf commitment breach with liveness fault and unsuccessful challenge
thedevbirb commented 1 month ago

I'm reasoning how to introduce this different scenarios easily. What if we introduce some new CLI args to the modified builder/relay? For instance there could a flag --enable-preconfirmation-faults where, if enabled, with probability $1/2$ either the builder produces invalid proofs/skips them and the relay doesn't forward the proofs generated.

Assuming we have that, then we should:

mempirate commented 1 month ago

I like it. Ideally let's get the happy case working first and see if we have everything we need for that. To introduce a fault, we could possibly just shut down the relay container at the right time, forcing the sidecar to propose the locally built block.

merklefruit commented 1 day ago

Closing priority 2 with #97!