This workstream removes correctness drift between the UI authoring experience and the actual engine.
Primary inspiration:
samueljklee-attractorfor reducing ambiguity between definition and executionTheFellow-fkyeahfor keeping semantics testable and explicit
Goal
Make the visual builder a trustworthy client of the canonical Elixir parser and validator.
Problem Statement
The builder should not maintain a separate weaker interpretation of DOT. If it does:
- the UI can drift from engine semantics
- linting becomes inconsistent
- round-trip editing becomes less trustworthy
- repair and autofix features become harder to implement safely
Work Items
- Replace the ad-hoc JS DOT parser path with server-backed parse and normalize endpoints.
- Return the canonical graph model from Elixir for builder rendering.
- Show validator diagnostics inline in the builder.
- Add autofix suggestions for common graph issues.
- Add canonical DOT formatting and stable serialization.
- Add graph templates and graph transforms as composable authoring actions.
Deliverables
- Canonical parse/normalize API
- Builder lint panel
- Stable DOT formatting
- Autofix actions
- Trustworthy round-trip editing
Success Criteria
This workstream is done when:
- the builder no longer depends on a separate homegrown DOT interpretation for correctness
- diagnostics shown in the UI match the engine and API behavior
- graph serialization is stable and canonical
- round-trip authoring is reliable enough to support advanced repair and refactoring tools