Adds the pipeline-stage host kind wrapping the production stage-supervisor lifecycle (Cold/Registering/Running/Halted per RELAY_SPEC), N3 relay calibration scenarios (own-relay and canary-relay, real-worker and stub), relay invariant and scenario-validation tests, and an adversarial judge test suite hunting spec/code gaps. Expands SIM_SPEC to a three-layer failure decomposition. Signed-off-by: Zachery Aaron Shores-Chmielewski <zacheryasc@gmail.com>
98 lines
2.1 KiB
TOML
98 lines
2.1 KiB
TOML
[package]
|
|
name = "simulation"
|
|
version = "0.1.0"
|
|
edition = "2024"
|
|
|
|
[lib]
|
|
path = "src/lib.rs"
|
|
|
|
[dependencies]
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = { version = "1", features = ["preserve_order"] }
|
|
toml = { version = "0.8", features = ["preserve_order"] }
|
|
# SipHash-2-4 for the §7.2 substream derivation. Pure-Rust, no float
|
|
# math, identical output on every architecture.
|
|
siphasher = "1"
|
|
# SHA-256 for the §9.4 manifest hash integrity field. Pure-Rust.
|
|
sha2 = "0.10"
|
|
# §3.3 / §6.4 — the simulator re-uses production's SWIM message
|
|
# types and JSON codec so the bytes its bandwidth model carries match
|
|
# the bytes production puts on the wire. Default features only — no
|
|
# iroh, no tokio, no axum.
|
|
distribution = { path = "../distribution" }
|
|
|
|
[dev-dependencies]
|
|
proptest = "1"
|
|
tempfile = "3"
|
|
|
|
[[test]]
|
|
name = "scenario_examples"
|
|
path = "tests/scenario_examples.rs"
|
|
|
|
[[test]]
|
|
name = "scenario_validation"
|
|
path = "tests/scenario_validation.rs"
|
|
|
|
[[test]]
|
|
name = "scenario_invariants"
|
|
path = "tests/scenario_invariants.rs"
|
|
|
|
[[test]]
|
|
name = "network_invariants"
|
|
path = "tests/network_invariants.rs"
|
|
|
|
[[test]]
|
|
name = "engine_invariants"
|
|
path = "tests/engine_invariants.rs"
|
|
|
|
[[test]]
|
|
name = "bundle_invariants"
|
|
path = "tests/bundle_invariants.rs"
|
|
|
|
[[test]]
|
|
name = "evaluator_invariants"
|
|
path = "tests/evaluator_invariants.rs"
|
|
|
|
[[test]]
|
|
name = "cross_arch_parity"
|
|
path = "tests/cross_arch_parity.rs"
|
|
|
|
[[test]]
|
|
name = "swim_codec_parity"
|
|
path = "tests/swim_codec_parity.rs"
|
|
|
|
[[test]]
|
|
name = "swim_host_invariants"
|
|
path = "tests/swim_host_invariants.rs"
|
|
|
|
[[test]]
|
|
name = "early_termination"
|
|
path = "tests/early_termination.rs"
|
|
|
|
[[test]]
|
|
name = "swim_integration"
|
|
path = "tests/swim_integration.rs"
|
|
|
|
[[test]]
|
|
name = "property_runner"
|
|
path = "tests/property_runner.rs"
|
|
|
|
[[test]]
|
|
name = "relay_invariants"
|
|
path = "tests/relay_invariants.rs"
|
|
|
|
[[test]]
|
|
name = "stage_host_invariants"
|
|
path = "tests/stage_host_invariants.rs"
|
|
|
|
[[test]]
|
|
name = "relay_scenario_validation"
|
|
path = "tests/relay_scenario_validation.rs"
|
|
|
|
[[test]]
|
|
name = "relay_assertion_invariants"
|
|
path = "tests/relay_assertion_invariants.rs"
|
|
|
|
[[test]]
|
|
name = "adversarial_judge"
|
|
path = "tests/adversarial_judge.rs"
|