Expand description
Manifest validator — semantic rules over a parsed Manifest. Mirrors
packages/mesofact-runtime/src/validate.ts. Used by the proxy on boot
(refuse a malformed manifest, keep the old one live) and by the build to
reject forbidden shapes before HTML hits R2.
Structural validation comes “for free” from serde — call validate only
after serde_json::from_str::<Manifest>(...) succeeds.
Rules enforced:
- R1 (
Mode1ScopedSource) — aMode::Staticroute whosesource_readsnames any non-globalsource is rejected. - R2 (
Mode1RequiresUser) — aMode::Staticroute whoserequirescontainsRequires::Useris rejected. - R3 (
UnknownHook) — ahooksentry naming a hook the engine does not invoke is rejected (R756-F6 / W311 §2).
See .yah/docs/architecture/mesofact.md §“Render axis × source axis”.
Structs§
Enums§
Constants§
- HOOK_
NAMES - Every Mode 2 hook name the engine knows how to invoke. Mirrors
HOOK_NAMESinpackages/mesofact-runtime/src/hooks.tsandmesofact_render::route_config.