Explore this system
Step through curated paths without changing the source diagram.
Beat
Next
ReadyChapter 01 / 01
Guided chapter
Diagram guideExplore this system
Inspecting compiled semantics
E ExportT ThemeS Style0 Reset+ Zoom in- Zoom outEsc Close
Find a node
⌕/
No matching nodes
Semantic passport
Verified source
Authored reach
Route probeChoose a start node
Pick two semantic nodes on the diagram
Choose the source, then the destination. Direction matters.
Semantic lensCompare system roles
Choose up to two semantic kinds. One reveals its real traffic; two compare only direct authored relationships.
Choose a kind to inspect its nodes and touching relationships.
Semantic radar
Building overview
Click nodeDrag to pan
Semantic radar needs more MAP space.
The DSL: what a rule is
• name, action, match, params. The action fixes the phase: block, map_local, redirect short-circuit; headers run on request or response; body runs last
• match compiles once: host glob, path regex, method, dest, query, headers; status and content type only on response-phase rules, else a load error
• Order is module priority, then declaration index. First match wins for short-circuits; header and body rules all apply
The Python tier
• Hooks: on_load, on_unload, on_request, on_response, on_websocket_message, on_report, on_config, each with a per-module ctx: matches(), config, store, assets, synthesize(), register_transform()
• Hooks run after the declarative rules of the same phase and see the transformed body, so the tiers compose rather than race
• A raising hook is attributed and ignored; repeated failures quarantine the module. Code is trusted, unsandboxed, and dry run executes it
Where to extend
• New transform: a TransformSpec in build_registry with its params and Cost class, plus the cost table
• New action: the Action enum, ACTION_PHASE, _validate_params, an evaluator apply path, and the rule schema in contracts/
• examples/modules/ is the conformance suite; validate_module reports line numbers before anything loads