diff --git a/crates/aura-engine/src/graph_model.rs b/crates/aura-engine/src/graph_model.rs index 7770d17..5adc4f2 100644 --- a/crates/aura-engine/src/graph_model.rs +++ b/crates/aura-engine/src/graph_model.rs @@ -1,8 +1,10 @@ //! The `aura graph` model serializer (#13, cycle 0026): turns the engine's //! authored blueprint (graph-as-data, C9) into the canonical, deterministic JSON //! model the browser viewer consumes. Read-only — walks structure + declared -//! `NodeSchema`s only, never `eval`/`compile`/`bootstrap`. Hand-rolled JSON in the -//! `RunReport::to_json` house style (no serde, C14). +//! `NodeSchema`s only, never `eval`/`compile`/`bootstrap`. The model JSON is +//! hand-rolled (no serde) — small, closed, deterministic (C14). Since cycle 0033 +//! moved `RunReport::to_json` to serde, this is the engine's last hand-rolled +//! JSON writer. use crate::{BlueprintNode, Composite}; use aura_core::{Firing, ScalarKind}; @@ -27,7 +29,7 @@ fn firing_str(f: Firing) -> String { } /// A JSON string literal: wrap in quotes, escape `"` and `\` (the minimal set -/// `RunReport::json_str` uses — model names are author-controlled identifiers). +/// sufficient here — model names are author-controlled identifiers). fn json_str(s: &str) -> String { let mut out = String::with_capacity(s.len() + 2); out.push('"'); diff --git a/docs/design/INDEX.md b/docs/design/INDEX.md index 68ff404..fe13ef7 100644 --- a/docs/design/INDEX.md +++ b/docs/design/INDEX.md @@ -726,7 +726,8 @@ signature travels beside the node, so `bootstrap` reads it without a built-node #51).** `aura graph` no longer renders ASCII. The render path is now two pieces: a read-only **model serializer** (`aura_engine::model_to_json`, iteration 1) that walks the root composite + every distinct composite type into a deterministic, -hand-rolled JSON model (C14, golden-tested like `RunReport::to_json`; the +hand-rolled JSON model (C14, golden-tested; the engine's last hand-rolled JSON +writer after `RunReport::to_json` moved to serde in cycle 0033; the swapped-param mis-wire property moved here from the old compiled-view test), and a **self-contained HTML viewer** (`aura-cli::render::render_html`, iteration 2) that inlines that model, the ported prototype viewer JS, and a vendored Graphviz-WASM