|
1 | 1 | # Log Book
|
2 | 2 |
|
| 3 | +## 2025-05-07 |
| 4 | + |
| 5 | +### Antithesis meeting |
| 6 | + |
| 7 | +* We have new joiners in both teams! |
| 8 | +* We discussed several topics to work on next: |
| 9 | + * schedule runs in CI to have regular reports overnight |
| 10 | + * some issue with cardano-tracer integration being restarted: all containers are defaulted (controllable only from AT side), so we need to ensure this particular container is safe to be able to haev meaningful assertions |
| 11 | + * Important: `sometimes` assertion only matters if they are catalogued, otherwise the report cannot tell them apart from `always` assertions |
| 12 | +* Community engagement: It's fine if people request the CF to run some tests that are curated by us |
| 13 | +* Discussing how we can make the environment less "dumb" |
| 14 | + * share Praos paper defining the adversary |
| 15 | +* publishing and sharing blog post |
| 16 | + |
| 17 | +#### 17:11 (db-server) |
| 18 | + |
| 19 | +Key issue is tied to the "faults power" of the AT driver: Injecting "dumb" system-level faults leads |
| 20 | + |
| 21 | +Some interesting property from https://eprint.iacr.org/2020/1021.pdf: Even in the face of temporary adversarial supremacy, Cardano network can recover after some time |
| 22 | + |
| 23 | +Consensus-focused tests we could start designing & running: |
| 24 | +* Basic property we want to ensure is that a node never crashes! |
| 25 | +* Genesis: |
| 26 | + * Run cluster of nodes with genesis enabled for a while then at some point stop a node, remove its DB, restart it |
| 27 | + * Have a new node join later |
| 28 | +* Utxo-hd enabled (10.4.1) |
| 29 | + * run a mix of nodes with lmdb and in-memory UTxO-HD enabled |
| 30 | + * load the system with transactions |
| 31 | + * There might be new race conditions due to code moving from STM to IO |
| 32 | + * node should restarts gracefully |
| 33 | + |
| 34 | +Our mission should be to try very hard to crash the node, more like stress testing the system |
| 35 | +* Just syncing a node from another node in the same container and ensuring they end up on the same chain is interesting |
| 36 | + |
| 37 | +A simple adversarial node we could build: |
| 38 | +* Connect to some random node |
| 39 | +* Request arbitrary intersection along the node's chain |
| 40 | +* Sync a little |
| 41 | +* disconnect |
| 42 | +* restart |
| 43 | + |
| 44 | + |
| 45 | +### Meeting consensus team |
| 46 | + |
| 47 | +Everyone is interested in using AT to test Consensus code, esp. as we have evidence it can find bugs ! Key issue for "deep" testing of consensus properites is tied to the "faults power" of the AT driver: Injecting "dumb" system-level faults leads to a very degraded environment in which no guarantees can be given. |
| 48 | + |
| 49 | +Some interesting property from https://eprint.iacr.org/2020/1021.pdf: Even in the face of temporary adversarial supremacy, Cardano network can recover after some time |
| 50 | + |
| 51 | +Consensus-focused tests we could start designing & running: |
| 52 | +* Basic property we want to ensure is that a node never crashes! |
| 53 | +* Genesis: |
| 54 | + * Run cluster of nodes with genesis enabled for a while then at some point stop a node, remove its DB, restart it |
| 55 | + * Have a new node join later |
| 56 | +* Utxo-hd enabled (10.4.1) |
| 57 | + * run a mix of nodes with lmdb and in-memory UTxO-HD enabled |
| 58 | + * load the system with transactions |
| 59 | + * There might be new race conditions due to code moving from STM to IO |
| 60 | + * node should restarts gracefully |
| 61 | + |
| 62 | +Our mission should be to try very hard to crash the node, more like stress testing the system |
| 63 | +* Just syncing a node from another node in the same container and ensuring they end up on the same chain is interesting |
| 64 | + |
| 65 | +A simple adversarial node we could build: |
| 66 | +* Connect to some random node |
| 67 | +* Request arbitrary intersection along the node's chain |
| 68 | +* Sync a little |
| 69 | +* disconnect |
| 70 | +* restart |
| 71 | + |
3 | 72 | ## 2025-04-23
|
4 | 73 |
|
5 | 74 | ### Antithesis meeting
|
|
0 commit comments