Files
rutster/crates/rutster-sim/Cargo.toml
Aaron D. Lee cc25e80310
Some checks failed
CI / fmt (push) Successful in 1m10s
CI / clippy (push) Successful in 8m17s
CI / test (1.85) (push) Failing after 9m49s
CI / test (stable) (push) Failing after 17m18s
CI / deny (push) Failing after 1m51s
CI / sim-bench (stable) (push) Successful in 24m52s
CI / image-build (4 images) (push) Has been skipped
CI / smoke (all-in-one TLS sim call) (push) Has been skipped
CI / smoke (T2 compose four-service) (push) Has been skipped
CI / smoke (caddy reload during live call, zero drops) (push) Has been skipped
CI / twilio-live (manual only) (push) Has been skipped
deploy-epoch: deployment topology — one binary, three blessed shapes (#27)
deploy-epoch: deployment topology — one binary, three blessed shapes

The full deploy-epoch integration: deployment topology spec + 4 implementation slices
(69 files, +14771/-36). Adds Docker image build pipeline (4 named --target stages),
container smoke CI (all-in-one TLS + compose + caddy reload-during-call), rustls
Phase 1 in-process TLS, /metrics endpoint, ValkeyEventSink, engine hygiene fixes
(TCP_NODELAY + TCP_QUICKACK-suppression + WS pings + trunk config), and the slice-F
tag-push image publish workflow. ADR-0011 (deployment topology) Proposed.

Pre-tag verification (PM-executed on integration tip c772485):
- Seam gate intact (loop_driver + rtc_session hashes unchanged)
- cargo fmt/clippy/test/doc all exit 0
- cargo deny bans+licenses FAILED pre-existing at main 6340e63 (CI authoritative
  via cargo-deny-action@v2 with cargo-deny 0.19.x)

PRs merged into this commit: #23 (dev-d/G), #24 (dev-a/A), #25 (dev-c/C+D+E), #26 (dev-b/B+F)
Integration PR: #27

Signed-off-by: Aaron D. Lee <himself@adlee.work>
Co-authored-by: Aaron D. Lee <himself@adlee.work>
Co-committed-by: Aaron D. Lee <himself@adlee.work>
2026-07-09 21:11:25 +00:00

47 lines
2.0 KiB
TOML

# crates/rutster-sim/Cargo.toml — the self-hostable benchmark + simulation
# harness crate (ADR-0010 spearhead step 4½). Default-off `sim-bench`
# feature gates the CI-regressed threshold sweep so the routine
# `cargo test --all` gate stays fast.
[package]
name = "rutster-sim"
version = "0.0.0"
license.workspace = true
edition.workspace = true
repository.workspace = true
description = "Self-hostable benchmark + simulation harness (ADR-0010 spearhead step 4½)."
[dependencies]
rutster-media = { path = "../rutster-media" }
rutster = { path = "../rutster" }
rutster-tap = { path = "../rutster-tap" }
tokio = { workspace = true, features = ["macros", "rt-multi-thread", "sync", "time"] }
serde = { workspace = true, features = ["derive"] }
toml = { workspace = true }
thiserror = { workspace = true }
tracing = { workspace = true }
url = { workspace = true }
[features]
default = []
# The CI-regressed threshold sweep. Default OFF so `cargo test --all` (the
# routine gate) stays fast. A separate CI job runs
# `cargo test --all --features=sim-bench -- --test-threads=1` per spec §5.4 +
# §6.5. A latency regression fails the build the same way a broken test
# does (ADR-0010).
sim-bench = []
[dev-dependencies]
# nodelay.rs (deploy slice A §5.1): drives the real trunk WS route through
# the production serve path over a real loopback socket. Test-only — the
# sim's own harness stays mpsc-pure.
rutster-trunk = { path = "../rutster-trunk" }
rutster-call-model = { path = "../rutster-call-model" }
tokio = { workspace = true, features = ["macros", "rt-multi-thread", "sync", "time", "net"] }
tokio-tungstenite = { workspace = true }
futures-util = { workspace = true }
# Option D for deploy-A §5.1: suppress the Linux loopback TCP_QUICKACK
# heuristic so the test can observe the Nagle/delayed-ACK stall. socket2
# is already in the lockfile transitively via tokio; this lifts only the
# direct dev edge for the sim-bench test. MIT OR Apache-2.0.
socket2 = { version = "0.6", features = ["all"] }