[package] name = "aura-bench" edition.workspace = true version.workspace = true license.workspace = true publish.workspace = true [[bin]] name = "aura-bench" path = "src/main.rs" # Dev-only measurement tool (issue #251): benches the engine / ingest / campaign # surfaces against committed baselines under baselines/. No production crate # depends on this crate; nothing here reaches a frozen deploy artifact (C13). [dependencies] aura-core = { path = "../aura-core" } aura-engine = { path = "../aura-engine" } aura-std = { path = "../aura-std" } aura-ingest = { path = "../aura-ingest" } serde = { workspace = true, features = ["derive"] } serde_json = { workspace = true } # clap: same CLI surface convention as aura-cli (usage errors exit 2). clap = { version = "4", features = ["derive"] } # zip: writes the synthetic 48-byte M1 archives the ingest/campaign surfaces # measure — the same on-disk format the test suites hand-pack as a dev-dep # (aura-cli/aura-ingest). First runtime (non-dev) use in the workspace, admitted # under the C16 per-case policy: aura-bench is a dev tool outside every deploy # path, and zip is already in the build graph via data-server. zip = "2" [dev-dependencies] # Lockstep guard for the campaign fingerprint's stdout-schema coupling: the # winner_fingerprint test constructs a REAL CampaignRunRecord (aura-registry) # with a real FamilySelection (aura-analysis) and serializes it, so a field # rename in those crates fails this crate's tests instead of silently eroding # fingerprint coverage. aura-registry = { path = "../aura-registry" } aura-analysis = { path = "../aura-analysis" } # the winner_fingerprint lockstep guard's RBootstrap literal (moved from # aura-engine, #291/#292) — test-only, same coupling-guard rationale as the # other three dev-deps above. aura-backtest = { path = "../aura-backtest" }