Files
Brummel a982b96ecc fieldtest: cycle-0009 — 4 examples, 6 findings
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
2026-06-04 19:06:13 +02:00

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"