71c8f6ed24ffd0b055d2c54f27ce45a338219fc2
Architect drift review over 724ad66..77a1d26 (node-contract-and-ctx):
no code drift. The shipped node contract matches the ledger:
- C8: Node = schema() + eval(ctx) -> Option<Scalar>; engine-provided zero-copy
financial-indexed Window per input via Ctx; None = not-warmed-up. Sma authored
in the downstream aura-std crate genuinely exercises the cross-crate contract.
- C7: Ctx accessors take the wiring-checked typed column once (as_*) then hand a
zero-copy Window — no dyn Any, no per-event alloc; panic-once-at-access matches
"type check paid once at wiring".
- C5: run_count freshness primitive untouched and still canonical.
- Glossary: Node/Ctx/NodeSchema/InputSpec introduce no nomenclature competing
with the canonical `node` entry or any Avoid list.
One advisory item (resolution: carry-on, no ledger edit):
Architect noted NodeSchema.output is a non-optional single ScalarKind, which
structurally forbids the zero-output sink arm of C8/C22. This is honestly
deferred in spec 0002 ("Out of scope: sinks / no-output nodes"). Resolution:
the ledger records the contract (the full C8 target), not implementation
status; building the producer arm first is normal incremental progress, and
the deferral's home is the spec + forward queue, not the C8 contract text.
Annotating C8 with "this arm is unimplemented" would conflate contract with
status and require per-cycle upkeep. No code fix scheduled.
Regression gate: profile regression list empty — architect is the sole gate,
and it is clean. Next direction: the sim-loop / freshness slice (C4/C5).
Description
No description provided
Languages
Rust
68.9%
JavaScript
24.4%
HTML
6%
Shell
0.6%
CSS
0.1%