@@ -5,6 +5,35 @@ here. The format follows [Keep a Changelog](https://keepachangelog.com/), and
55this project adheres to [ Semantic Versioning] ( https://semver.org/spec/v2.0.0.html )
66(pre-1.0; MINOR bumps may introduce breaking changes with notice).
77
8+ ## [ Unreleased]
9+
10+ ### Added
11+ - ** ` outputParser() ` stock generator** in ` @metaobjectsdev/codegen-ts/generators ` —
12+ for every declared ` template.output ` , emits a typed Zod parser file with a
13+ dual-API surface (` parseXxx(text) ` throws, ` safeParseXxx(text) ` returns
14+ Result). Field-type → Zod-type mapping covers all scalars, arrays, and
15+ nested ` field.object ` with ` @objectRef ` . The emitted file is self-contained
16+ (no cross-file payload import) and exports a ` <TemplateName>Data ` type-alias
17+ derived via ` z.infer ` ; consumers who also wire ` promptRender() ` can use the
18+ payload-VO interface from ` prompts.ts ` interchangeably (structurally
19+ identical). Wire it into ` metaobjects.config.ts ` :
20+ ` generators: [..., outputParser()] ` .
21+ - ** ` meta verify ` extension** for ` template.output ` drift — the build-time
22+ drift gate now checks both subtypes. Output diagnostics carry ` (output) `
23+ prefix; prompt diagnostics gain ` (prompt) ` prefix for symmetry.
24+ - ** Conformance fixture ` template-output-simple ` ** — shared cross-language
25+ corpus gains ` input/meta.npc.json ` , ` expected.json ` , and
26+ ` expected/NpcResponseOutput.output.ts ` byte-exact codegen artifact. TS
27+ conformance runner verifies ` outputParser() ` 's output matches.
28+
29+ ### Changed
30+ - ` meta verify ` log line format adds ` (<subtype>) ` after the template name
31+ (e.g., ` [npcTurn] (prompt) ERR_* ` ). A pre-FR6 log scraper that matched
32+ on the bare ` [name] ` prefix needs to update its regex.
33+
34+ See [ ADR-0010] ( spec/decisions/ADR-0010-template-output-parser-codegen.md )
35+ for the cross-port design.
36+
837## [ 0.6.0] — 2026-05-25
938
1039### Added
0 commit comments