a982b96ecc
First fieldtest of the run-metrics + manifest report surface. A standalone
downstream-consumer crate (fieldtests/cycle-0009-run-metrics/) path-depends on
the engine crates and exercises the post-0009 surface from the public interface
only (rustdoc + ledger + glossary + project layout, never crates/*/src).
Primary axis empirically met: the north-star "a run emits metrics + manifest"
move is reachable from rustdoc alone — drain two recording sinks -> f64_field ->
summarize -> RunManifest -> to_json, metrics matching the hand model on the first
run, deterministic across reruns.
Findings: 0 bugs, 1 friction, 1 spec_gap, 4 working.
- working x4: north-star reachable from rustdoc; SimBroker firing/slot docs (a
resolved 0007 gap) now carry the example; summarize metric definitions exact
on six degenerate inputs (incl. negative-curve drawdown + flat-as-sign-0);
f64_field panics precise and well-located.
- spec_gap: to_json's JSON key names + {manifest,metrics} nesting are not on
the public surface — a consumer parsing the JSON (C18 registry, the deferred
aura run printer) cannot author against it from rustdoc alone.
- friction: to_json renders whole-valued f64 without a decimal point (3.0 ->
"3"), so one f64 field appears as integer or decimal token within one schema.
Both doc-level findings are the same doc pass and matter mainly for the deferred
aura run (#8) and the C18 registry that will parse this JSON. Spec feeds the next
plan as reference.
refs #6
38 lines
1.1 KiB
TOML
38 lines
1.1 KiB
TOML
# Standalone downstream-consumer crate for the cycle-0009 fieldtest (run report).
|
|
#
|
|
# Like the cycle-0007/0008 fixtures, this is NOT a member of the aura workspace —
|
|
# it path-depends on the engine crates exactly as a real research project (C16)
|
|
# would, and is built via
|
|
# `cargo run --manifest-path fieldtests/cycle-0009-run-metrics/Cargo.toml --bin <name>`
|
|
# so HEAD source is always what runs.
|
|
# Empty [workspace] table: marks this fixture crate as its OWN workspace root
|
|
# (documented in docs/project-layout.md as the nested-project onboarding fix).
|
|
[workspace]
|
|
|
|
[package]
|
|
name = "c0009-fieldtest"
|
|
version = "0.0.0"
|
|
edition = "2024"
|
|
publish = false
|
|
|
|
[dependencies]
|
|
aura-core = { path = "../../crates/aura-core" }
|
|
aura-engine = { path = "../../crates/aura-engine" }
|
|
aura-std = { path = "../../crates/aura-std" }
|
|
|
|
[[bin]]
|
|
name = "c0009_1_run_to_report"
|
|
path = "c0009_1_run_to_report.rs"
|
|
|
|
[[bin]]
|
|
name = "c0009_2_compare_two_runs"
|
|
path = "c0009_2_compare_two_runs.rs"
|
|
|
|
[[bin]]
|
|
name = "c0009_3_degenerate_streams"
|
|
path = "c0009_3_degenerate_streams.rs"
|
|
|
|
[[bin]]
|
|
name = "c0009_4_f64field_and_json"
|
|
path = "c0009_4_f64field_and_json.rs"
|