M1 — dspack surface → A2UI emitter
Milestone 1 of the AF governance layer. This tag marks dspack-to-a2ui as the pipeline's A2UI emitter:
- Surface emission: dspack surface v0.1 → A2UI v0.9 messages (
--emit-surface,emitSurface), projection knowledge as profile data (surfacePlandirectives), every synthesis audited as a warning — nothing silent. - Emitter gates A1–A3 (schema-compile / catalog-shape / instance validation), the architecture-wide names for the existing ajv gates; the render demo hosts the governed Generate view driven by
dspack-gen serve. - Library boundary: exports map + declarations, pack-and-install verified; consumed by dspack-gen as a git dependency pinned to this SHA (
b47a2cf). npm publish is a deliberate open decision. - Input contract at dspack v0.3 (mirrors dspack@m1).
Companion M1 tags: dspack@m1, dspack-gen@m1.
Addendum: main has since advanced two commits past this tag (#8, a demo-only "scripted fixture replay" label — demo/ is outside the published package's files set). npm publish of 0.2.0 from main 101e925 therefore ships a tarball byte-equivalent to this tag's library content.
Rename note (2026-07-02): this repository was renamed dspack-to-a2ui → dspack-emit after the json-render target merged (ADR-D2; trigger fired on #9). The name above is the repo's name at tag time. The npm package remains @aestheticfunction/dspack-to-a2ui@0.2.0 until the next publish (then @aestheticfunction/dspack-emit, with the old package deprecated).