Docs carry the shape of the system, not its status
MIZAN.md's phase-numbered implementation order, PRODUCT_ARCHITECTURE's "Deferred until Render revenue funds it" and "Shipped in", PSR_VS_EDGE's current-state section, and the READMEs' passing-test counts were all reporting where the work stood rather than what the system is. OWED_SURFACE keeps its subject — surface that is specified but unbuilt — stated as the shape each unit owes. The channel sections follow the renamed slots: Params / ClientMessage / ServerMessage, and Channel as the base class on both backends. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -27,7 +27,8 @@ frontends/ client kernel + per-framework adapters + transports
|
||||
cores/ shared language-level primitives
|
||||
mizan-python/ @client decorator, registry, MWT, HMAC cache keys
|
||||
mizan-rust/ Rust core — IR build (build_ir()), registry
|
||||
mizan-rust-macros/ #[derive(Mizan)] / #[mizan::client] proc-macros
|
||||
mizan-rust-macros/ #[derive(Mizan)] / #[mizan::client] / #[mizan::context] /
|
||||
#[mizan::channel] proc-macros
|
||||
mizan-rust-ssr/ embedded-V8 SSR engine (deno_core + deno_web); evals the
|
||||
build-time bundle, renders per request; no_rsc guard
|
||||
protocol/ protocol-level tooling
|
||||
@@ -65,9 +66,9 @@ Svelte developer gets readable stores. Same kernel underneath.
|
||||
|
||||
The Mizan IR is **KDL** — the LLVM-IR-equivalent of the system. Every
|
||||
backend adapter produces KDL describing its registered functions,
|
||||
contexts, types, and invalidation graph. Every codegen target consumes
|
||||
KDL. KDL is the contract; everything else (REST envelopes, OpenAPI
|
||||
documents, framework idioms) is sediment around it.
|
||||
contexts, types, channels, and invalidation graph. Every codegen target
|
||||
consumes KDL. KDL is the contract; everything else (REST envelopes,
|
||||
OpenAPI documents, framework idioms) is sediment around it.
|
||||
|
||||
The IR is validated against multiple adapters — single-adapter
|
||||
validation hides assumptions, and divergence between adapters is what
|
||||
@@ -79,7 +80,8 @@ Forward-direction primitives:
|
||||
FastAPI `python -m mizan_fastapi.ir <module>`, Django
|
||||
`python manage.py export_mizan_ir`, Rust a consumer-side cargo bin
|
||||
that calls `mizan_core::build_ir()`. Python's `build_ir()` walks
|
||||
`mizan_core.registry`. The IR grammar (`type` / `function` /
|
||||
`mizan_core.registry`; the Rust emitter walks the linkme slices the
|
||||
proc-macros populate. The IR grammar (`type` / `function` /
|
||||
`context` / `channel` nodes) is parsed by `mizan-codegen`'s
|
||||
`src/ir.rs`; fixtures live at
|
||||
`protocol/mizan-codegen/tests/fixtures/*.kdl`.
|
||||
|
||||
Reference in New Issue
Block a user