34987be389
Iteration stderr-markers-1, tasks 1-2 of the stderr-class-markers plan (spec signed via grounding-check PASS, decisions logged on #278). The two stderr diagnostic classes become machine-separable (refs #278): a new crate-internal diag module owns the grammar as note!/warning! macros (`aura: note: <text>` benign continuing-run diagnostic, `aura: warning: <text>` recorded fault the run survives); the four undifferentiated sites are retagged — gate-emptied cell -> note, failed cell / walkforward cell / mc cell -> warning — and the four scaffold literals migrate onto the shared macro (output bytes unchanged). The always-on record summary line gains the bare `aura: ` namespace it was missing; bare-prefix stays the vocabulary for error lines accompanying a non-zero exit (C14 partition) and plain info lines. Exit codes unchanged throughout. Verification: RED->GREEN warning pin on the per-cell-fault e2e; new gate-emptied e2e (impossible n_trades threshold) pins the note marker, exit 0, and the summary-line prefix; scaffold e2es and the full workspace suite green; clippy -D warnings clean on aura-cli. The C28 shell-module roster test gained the diag.rs entry. Known residue for the next slices: aura-runner literals (stale-dylib warning, three tap/no-nominee notes) and the #313 zero-trade notice follow in tasks 3-5. The verb_sugar warning call sites remain e2e- uncovered (a hostless walkforward fault fixture is structurally unreachable — single-instrument validation refuses before the cell loop); their grammar is pinned via the shared macro and the campaign warning e2e. refs #278
21 lines
668 B
Rust
21 lines
668 B
Rust
//! Stable stderr class markers (C14): `aura: note: <text>` for benign
|
|
//! diagnostics on a continuing run (exit code unaffected),
|
|
//! `aura: warning: <text>` for recorded faults the run survives.
|
|
//! Error lines that accompany a non-zero exit — and plain info lines
|
|
//! such as the run-record summary — keep the bare `aura:` prefix; for
|
|
//! errors, the exit-code partition is the machine contract.
|
|
|
|
macro_rules! note {
|
|
($($arg:tt)*) => {
|
|
eprintln!("aura: note: {}", format_args!($($arg)*))
|
|
};
|
|
}
|
|
|
|
macro_rules! warning {
|
|
($($arg:tt)*) => {
|
|
eprintln!("aura: warning: {}", format_args!($($arg)*))
|
|
};
|
|
}
|
|
|
|
pub(crate) use {note, warning};
|