Volatile/immutable eb store and how to fetch all volatile EBs?
Home /
Input Output /
ouroboros-leios
Feb 07, 10-11 PM (0)
Feb 07, 11-12 AM (0)
Feb 08, 12-1 AM (0)
Feb 08, 1-2 AM (0)
Feb 08, 2-3 AM (0)
Feb 08, 3-4 AM (0)
Feb 08, 4-5 AM (0)
Feb 08, 5-6 AM (0)
Feb 08, 6-7 AM (0)
Feb 08, 7-8 AM (0)
Feb 08, 8-9 AM (0)
Feb 08, 9-10 AM (0)
Feb 08, 10-11 AM (0)
Feb 08, 11-12 PM (0)
Feb 08, 12-1 PM (0)
Feb 08, 1-2 PM (0)
Feb 08, 2-3 PM (0)
Feb 08, 3-4 PM (0)
Feb 08, 4-5 PM (0)
Feb 08, 5-6 PM (0)
Feb 08, 6-7 PM (0)
Feb 08, 7-8 PM (0)
Feb 08, 8-9 PM (1)
Feb 08, 9-10 PM (0)
Feb 08, 10-11 PM (0)
Feb 08, 11-12 AM (0)
Feb 09, 12-1 AM (0)
Feb 09, 1-2 AM (0)
Feb 09, 2-3 AM (0)
Feb 09, 3-4 AM (0)
Feb 09, 4-5 AM (0)
Feb 09, 5-6 AM (0)
Feb 09, 6-7 AM (0)
Feb 09, 7-8 AM (0)
Feb 09, 8-9 AM (0)
Feb 09, 9-10 AM (0)
Feb 09, 10-11 AM (0)
Feb 09, 11-12 PM (0)
Feb 09, 12-1 PM (2)
Feb 09, 1-2 PM (0)
Feb 09, 2-3 PM (3)
Feb 09, 3-4 PM (3)
Feb 09, 4-5 PM (2)
Feb 09, 5-6 PM (0)
Feb 09, 6-7 PM (1)
Feb 09, 7-8 PM (2)
Feb 09, 8-9 PM (0)
Feb 09, 9-10 PM (0)
Feb 09, 10-11 PM (0)
Feb 09, 11-12 AM (0)
Feb 10, 12-1 AM (0)
Feb 10, 1-2 AM (0)
Feb 10, 2-3 AM (0)
Feb 10, 3-4 AM (0)
Feb 10, 4-5 AM (0)
Feb 10, 5-6 AM (0)
Feb 10, 6-7 AM (0)
Feb 10, 7-8 AM (1)
Feb 10, 8-9 AM (0)
Feb 10, 9-10 AM (0)
Feb 10, 10-11 AM (0)
Feb 10, 11-12 PM (1)
Feb 10, 12-1 PM (1)
Feb 10, 1-2 PM (0)
Feb 10, 2-3 PM (2)
Feb 10, 3-4 PM (0)
Feb 10, 4-5 PM (3)
Feb 10, 5-6 PM (0)
Feb 10, 6-7 PM (1)
Feb 10, 7-8 PM (0)
Feb 10, 8-9 PM (0)
Feb 10, 9-10 PM (0)
Feb 10, 10-11 PM (4)
Feb 10, 11-12 AM (0)
Feb 11, 12-1 AM (0)
Feb 11, 1-2 AM (0)
Feb 11, 2-3 AM (0)
Feb 11, 3-4 AM (0)
Feb 11, 4-5 AM (1)
Feb 11, 5-6 AM (0)
Feb 11, 6-7 AM (0)
Feb 11, 7-8 AM (0)
Feb 11, 8-9 AM (0)
Feb 11, 9-10 AM (0)
Feb 11, 10-11 AM (1)
Feb 11, 11-12 PM (0)
Feb 11, 12-1 PM (0)
Feb 11, 1-2 PM (3)
Feb 11, 2-3 PM (1)
Feb 11, 3-4 PM (3)
Feb 11, 4-5 PM (0)
Feb 11, 5-6 PM (0)
Feb 11, 6-7 PM (0)
Feb 11, 7-8 PM (0)
Feb 11, 8-9 PM (0)
Feb 11, 9-10 PM (0)
Feb 11, 10-11 PM (0)
Feb 11, 11-12 AM (0)
Feb 12, 12-1 AM (0)
Feb 12, 1-2 AM (0)
Feb 12, 2-3 AM (0)
Feb 12, 3-4 AM (0)
Feb 12, 4-5 AM (0)
Feb 12, 5-6 AM (0)
Feb 12, 6-7 AM (3)
Feb 12, 7-8 AM (2)
Feb 12, 8-9 AM (1)
Feb 12, 9-10 AM (0)
Feb 12, 10-11 AM (0)
Feb 12, 11-12 PM (0)
Feb 12, 12-1 PM (0)
Feb 12, 1-2 PM (0)
Feb 12, 2-3 PM (2)
Feb 12, 3-4 PM (3)
Feb 12, 4-5 PM (0)
Feb 12, 5-6 PM (0)
Feb 12, 6-7 PM (0)
Feb 12, 7-8 PM (12)
Feb 12, 8-9 PM (0)
Feb 12, 9-10 PM (0)
Feb 12, 10-11 PM (0)
Feb 12, 11-12 AM (0)
Feb 13, 12-1 AM (0)
Feb 13, 1-2 AM (1)
Feb 13, 2-3 AM (0)
Feb 13, 3-4 AM (0)
Feb 13, 4-5 AM (0)
Feb 13, 5-6 AM (0)
Feb 13, 6-7 AM (0)
Feb 13, 7-8 AM (0)
Feb 13, 8-9 AM (0)
Feb 13, 9-10 AM (0)
Feb 13, 10-11 AM (0)
Feb 13, 11-12 PM (3)
Feb 13, 12-1 PM (0)
Feb 13, 1-2 PM (6)
Feb 13, 2-3 PM (0)
Feb 13, 3-4 PM (2)
Feb 13, 4-5 PM (0)
Feb 13, 5-6 PM (0)
Feb 13, 6-7 PM (0)
Feb 13, 7-8 PM (0)
Feb 13, 8-9 PM (0)
Feb 13, 9-10 PM (0)
Feb 13, 10-11 PM (0)
Feb 13, 11-12 AM (0)
Feb 14, 12-1 AM (0)
Feb 14, 1-2 AM (0)
Feb 14, 2-3 AM (0)
Feb 14, 3-4 AM (0)
Feb 14, 4-5 AM (1)
Feb 14, 5-6 AM (0)
Feb 14, 6-7 AM (0)
Feb 14, 7-8 AM (0)
Feb 14, 8-9 AM (0)
Feb 14, 9-10 AM (0)
Feb 14, 10-11 AM (0)
Feb 14, 11-12 PM (0)
Feb 14, 12-1 PM (0)
Feb 14, 1-2 PM (0)
Feb 14, 2-3 PM (0)
Feb 14, 3-4 PM (0)
Feb 14, 4-5 PM (0)
Feb 14, 5-6 PM (0)
Feb 14, 6-7 PM (0)
Feb 14, 7-8 PM (0)
Feb 14, 8-9 PM (0)
Feb 14, 9-10 PM (0)
Feb 14, 10-11 PM (0)
72 commits this week
Feb 07, 2026
-
Feb 14, 2026
Merge pull request #765 from input-output-hk/bwbush/fix-fig-links
Bwbush/fix fig links
Added figures to fix broken links in documentation
Bump leios-design version and changelog
Re-order consensus sections and pull out resource management
The resource management discussion will be relevant for multiple sections following it (sizing the storage, discussing alternative forms of it).
Add a note on resource management
Add notes about block forging
Use Dijkstra era in design chapter
Add note about validity in EBs
Merge pull request #754 from input-output-hk/bwbush/crypto-extra
Minor enhancements to cryptography documentation
Merge branch 'main' into bwbush/crypto-extra
Apply suggestions from code review
Corrections in response to reviewer comments. Co-authored-by: Thomas Vellekoop <[email protected]>
Fix CI build context to use repo root
Dockerfiles reference files from both demo/ and antithesis/ directories, so the build context must be the repo root. Signed-off-by: Chris Gianelloni <[email protected]>
Make proto-devnet and immdb mutually exclusive profiles
- Add `profiles: ["devnet"]` to all proto-devnet services - Proto-devnet now requires `--profile devnet` to start - ImmDB remains `--profile immdb` - Update README with new usage instructions - Update IP addresses in README for immdb profile Usage: docker compose --profile devnet up # Proto-devnet docker compose --profile immdb up # ImmDB mock Signed-off-by: Chris Gianelloni <[email protected]>
Default to proto-devnet for Antithesis configuration
Add proto-devnet with 3 block-producing pools as the default setup: - pool1, pool2, pool3 in mesh topology with real block production - tx-generator for transaction load testing - Shared genesis volume for synchronized startup - Fast 0.1s slots for rapid iteration Keep existing immdb-server setup under --profile immdb: - upstream/node0/downstream services moved to immdb profile - analysis-immdb container for immdb-specific metrics Signed-off-by: Chris Gianelloni <[email protected]>
Fix IP conflicts and genesis file paths
- Separate immdb profile IPs to avoid conflicts with proto-devnet: - upstream: 172.28.0.10 -> 172.28.0.110 - node0: 172.28.0.20 -> 172.28.0.120 - downstream: 172.28.0.30 -> 172.28.0.130 - Fix genesis file paths: use /data directly instead of /data/genesis to match config.json relative path expectations - Both profiles now work correctly together or separately Signed-off-by: Chris Gianelloni <[email protected]>
Dockerfile: build cardano-node and tx-generator separately
- cardano-node from leios-prototype branch - tx-generator from stable cardano-node 10.5.4 (leios-prototype has API incompatibility) - cardano-cli from blink labs pre-built image The tx-generator on leios-prototype fails to compile due to ouroboros-network API drift, but has no Leios-specific changes. Signed-off-by: Chris Gianelloni <[email protected]>
Fix analysis log parser and Leios timing
- Fix timestamp parsing to handle nanosecond precision (truncate to microseconds) - Fix log format detection: use 'ns' field for namespace detection (cardano-node format) - Add type safety checks for msg/data fields that may be strings - Parse block hash and slot from 'data.newtip' field (format: "hash@slot") - Detect BlockFetch.CompletedBlockFetch and immdb-server MsgBlock events - Fix schedule cleanup: remove stale base-schedule.json and schedule.json on init - Reduce default LEIOS_RELEASE_TIME from 128.9s to 10s for faster testing Signed-off-by: Chris Gianelloni <[email protected]>
Clean up docker-compose configuration
- Remove obsolete version attribute from docker-compose.yaml - Rename compose.yaml to k8s-pod.yaml to avoid conflict with docker compose (was a Kubernetes Pod spec, not a compose file) Signed-off-by: Chris Gianelloni <[email protected]>
Antithesis docker-compose orchestration and CI
Antithesis docker-compose stack and CI workflow for testing: - docker-compose.yaml: Full stack orchestration with init containers, main services (upstream, node0, downstream), analysis container, and optional observability stack. Uses 172.28.0.0/24 subnet with static IPs, healthchecks, and WAN emulation support via NET_ADMIN - scripts/test-local.sh: Local testing script that builds images, starts stack, waits for health, runs for configurable duration, and checks analysis assertions - .github/workflows/antithesis-leios.yaml: CI workflow to build and push images to GHCR, with optional local stack testing on PRs Signed-off-by: Chris Gianelloni <[email protected]>
Antithesis analysis container
Python-based analysis container that monitors node logs and reports assertions to Antithesis SDK: - Dockerfile.analysis: Python 3.11 slim image with pandas, matplotlib, and antithesis SDK - analyse.py: Log parsing and metrics computation module, extracts Praos and Leios block events, computes latency statistics - entrypoint-analysis.py: Main loop that periodically analyzes logs and reports assertions (p95 latency thresholds, block propagation) Signed-off-by: Chris Gianelloni <[email protected]>
Antithesis observability stack configuration
Observability infrastructure for local testing (enabled via --profile observability): - prometheus.yml: Metrics scraping configuration for cardano-nodes - loki.yml: Log aggregation configuration with TSDB storage - alloy.river: Grafana Alloy config to ship logs from /logs to Loki - grafana/provisioning/datasources: Prometheus and Loki datasources - grafana/provisioning/dashboards: Leios overview dashboard with log panels for each node and error/warning filtering Signed-off-by: Chris Gianelloni <[email protected]>
Antithesis immdb-server container infrastructure
Dockerfile and scripts for building immdb-server container for Antithesis testing: - Dockerfile.immdb-server: Multi-stage build using Blink Labs base image, builds immdb-server and leiosdemo202510 from ouroboros-consensus leios-prototype branch - init-upstream.sh: Generates leios.db and schedule.json using leiosdemo202510, extracts immutable chain data, patches genesis paths - run-upstream.sh: Runtime script with optional WAN emulation Signed-off-by: Chris Gianelloni <[email protected]>
Antithesis cardano-node container infrastructure
Dockerfile and scripts for building cardano-node-leios container for Antithesis testing: - Dockerfile.cardano-node: Multi-stage build using Blink Labs base image, builds cardano-node from leios-prototype branch with patched ouroboros-consensus reference for LeiosDemoDb support - init-node0.sh: Initializes node0 data directory with leios.db, topology.json, and patched genesis paths - init-downstream.sh: Initializes downstream node connecting to node0 - run-cardano-node.sh: Runtime script with optional WAN emulation - setup-wan-emulation.sh: tc-based network shaping for local testing Signed-off-by: Chris Gianelloni <[email protected]>