Deep Adapter Recipes Proof
This report records the generated-surface adapter recipes that are already
covered by tests, browser examples, and package-consumer smoke. It complements
docs/adapter-recipes-roadmap.md, which remains the forward-looking checklist
for broader public-release hardening.
Vega-Lite Compile-To-Vega
Status: proven in adapter tests and browser example coverage.
test/adapters/vega.test.tscompiles a Vega-Lite spec through publicvega-liteandvegaAPIs, runs a VegaView, and anchors to the generated scenegraph mark bymarkName,markType, and datum predicate.examples/vega-basicandscripts/verify-examples-browser.mjsverify rendered Vega marks, target alignment, generated obstacles, visible notes, visible connectors, and screenshot evidence.
Mermaid Flowchart And Sequence SVG
Status: flowchart and sequence browser-proven, with translated-label data-hook recipes also browser-proven; sequence SVG fixture coverage is also kept in adapter tests.
examples/mermaid-basicrenders real Mermaid flowchart and sequence diagrams, annotates rendered flowchart node labels, a rendered flowchart edge route, a sequence actor, a sequence message label, andmermaid-sequence-route. Browser verification checks target alignment against actual Mermaid SVG nodes, paths, actor elements, message labels, andline.messageLine0/path message routes.- The same browser example renders a localized
Ingresso datinode and anchorsmermaid-translated-datathrough[data-node-id="flow-intake"]plus thetranslated-nodeclass, proving consumers can avoid label text when Mermaid translated labels or user-authored labels are unstable. test/adapters/mermaid.test.tscovers a Mermaid sequence-style SVG fixture with participant, message label, and message route anchors using labels,data-message-id, anddata-edge-id.src/adapters/mermaid.tstreats common sequence classes such asactor,messageText,path.messageLine0,line.messageLine0, andmessageLine1as default obstacles and route candidates.
D2 Nested Diagrams And Routes
Status: nested compiled geometry is test-proven; rendered D2 SVG and route anchors are browser-proven in the basic example.
test/adapters/d2.test.tswalks nested diagram shapes, layer shapes, and generated connection routes from compiled D2 geometry.examples/d2-basicand browser verification check rendered D2 shapes and connection routes through target-alignment assertions.- SVG-only consumers are covered by rendered SVG selectors, classes, labels, data attributes, shape ids, and connection ids in the D2 adapter tests.
React Flow Viewport, Handles, And Editing
Status: public state, transformed viewport coordinates, measured handles, edge anchors, and host-owned edit patches are browser-proven and test-proven.
test/adapters/react-flow.test.tsnormalizes node boxes through viewportx,y, andzoom, uses measured handle geometry before fallback side anchors, and extracts node, handle, and edge obstacles.examples/react-flow-basicruns with a non-identity React Flow viewport, verifies rendered nodes, edges, and handles against public adapter output in the browser, and persists a dragged note edit as a host-owned annotation patch.npm run test:dogfood:externalcan run withPONCHIA_ANNOTATIONS_EXTERNAL_CONSUMER_MODE=react-flow; the local external pass measured a real rendered React Flow diagram, fed 7 rendered nodes, 6 generated edge routes, 12 handles, and 42 sampled SVG route points throughprepareReactFlowAnnotations, then verified visible notes/connectors and target alignment in Chromium.test/adapters/authoring-contract.test.ts,test/core/edit.test.ts, andexamples/react-basiccover edit-patch preservation and note/anchor movement contracts.
Remaining Limits
- The clean generated-surface dogfood consumer still uses invented report
content, but
npm run test:dogfood:self-reportnow covers a real release-evidence report built from the repository's own readiness and completion data.npm run test:dogfood:externaladds env-gated external Astro/React host passes over rendered DOM stack-page geometry and rendered React Flow diagram geometry; broader production-specific Vega, Mermaid, D2, and editing surfaces should still keep feeding friction reports before widening0.1.xstability promises.