@metaobjectsdev/render 1.0.9-rc.1 → 1.0.9-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"output-format-renderer.d.ts","sourceRoot":"","sources":["../../src/prompt/output-format-renderer.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAoB7D;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,eAAe,GAAG,MAAM,CAU7F"}
1
+ {"version":3,"file":"output-format-renderer.d.ts","sourceRoot":"","sources":["../../src/prompt/output-format-renderer.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAoB7D;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,eAAe,GAAG,MAAM,CAU7F"}
@@ -7,7 +7,8 @@
7
7
  //
8
8
  // Cross-port INVARIANT: the rendered text is byte-identical to the Java/C#/Kotlin
9
9
  // reference (com.metaobjects.render.prompt.OutputFormatRenderer). Do not change
10
- // the verbatim prose, skeleton shapes, or numeric-vs-quoted decision.
10
+ // the verbatim prose, skeleton shapes, or numeric-vs-quoted decision (a number /
11
+ // boolean is never quoted, placeholder or not).
11
12
  import { ESCAPERS } from "../escapers.js";
12
13
  import { FieldKind, Format } from "../extract/types.js";
13
14
  import { PromptStyle } from "./prompt-style.js";
@@ -131,9 +132,19 @@ function jsonValue(field, overrides, indent, mode, path, depth) {
131
132
  return jsonObjectField(field, overrides, indent, mode, path, depth);
132
133
  return jsonLeaf(field, overrides, mode);
133
134
  }
135
+ // A number or boolean is shown UNQUOTED wherever the skeleton holds a placeholder for it
136
+ // — the inline hint (`{Integer 1-5.}`, `true | false`) and the no-example fallback
137
+ // (`{averageRating}`). A quoted placeholder taught the model to answer a number as a
138
+ // JSON string, which the generated response parser then rejected. Only STRING / ENUM
139
+ // values (and OBJECT past the depth guard) are quoted.
134
140
  function jsonLeaf(field, overrides, mode) {
135
- if (mode === "inline")
136
- return `"${escapeJson(inlineContent(field, overrides))}"`;
141
+ const unquoted = NUMERIC_KINDS.has(field.kind);
142
+ if (mode === "inline") {
143
+ const content = inlineContent(field, overrides);
144
+ return unquoted ? content : `"${escapeJson(content)}"`;
145
+ }
146
+ if (unquoted && exampleValueIfDeclared(field, overrides) == null)
147
+ return `{${field.name}}`;
137
148
  const value = exampleValue(field, overrides);
138
149
  return isNumericOrBoolean(field.kind, value) ? value : `"${escapeJson(value)}"`;
139
150
  }
@@ -1 +1 @@
1
- {"version":3,"file":"output-format-renderer.js","sourceRoot":"","sources":["../../src/prompt/output-format-renderer.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,EAAE;AACF,gFAAgF;AAChF,+EAA+E;AAC/E,iFAAiF;AACjF,8DAA8D;AAC9D,EAAE;AACF,kFAAkF;AAClF,gFAAgF;AAChF,sEAAsE;AAEtE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAIxD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,aAAa,GAA2B,IAAI,GAAG,CAAY;IAC/D,SAAS,CAAC,GAAG;IACb,SAAS,CAAC,IAAI;IACd,SAAS,CAAC,MAAM;IAChB,SAAS,CAAC,OAAO;CAClB,CAAC,CAAC;AAEH,MAAM,MAAM,GAAG,IAAI,CAAC;AACpB,MAAM,cAAc,GAAG,CAAC,CAAC;AAIzB,kFAAkF;AAClF,2BAA2B;AAC3B,MAAM,SAAS,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACzD,MAAM,UAAU,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAE3D;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAsB,EAAE,SAA0B;IACnF,MAAM,cAAc,GAAG,SAAS,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC;IACrD,QAAQ,cAAc,EAAE,CAAC;QACvB,KAAK,WAAW,CAAC,YAAY;YAC3B,OAAO,iBAAiB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC5C,KAAK,WAAW,CAAC,MAAM;YACrB,OAAO,YAAY,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACvC;YACE,OAAO,WAAW,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACxC,CAAC;AACH,CAAC;AAED,+EAA+E;AAE/E,SAAS,YAAY,CAAC,IAAsB,EAAE,SAA0B;IACtE,OAAO,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,GAAG;QAC/B,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC;QAC9C,CAAC,CAAC,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,aAAa,CAAC,KAAkB,EAAE,SAA0B;IACnE,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,IAAI,KAAK,CAAC,UAAU,IAAI,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7F,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,OAAO,EAAE,CAAC;QACrC,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,MAAM,WAAW,GAAG,kBAAkB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACzD,OAAO,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,WAAW,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC;AACtE,CAAC;AAED,gFAAgF;AAChF,SAAS,kBAAkB,CAAC,KAAkB,EAAE,SAA0B;IACxE,MAAM,EAAE,GAAG,SAAS,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAChD,IAAI,EAAE,IAAI,IAAI;QAAE,OAAO,EAAE,CAAC;IAC1B,OAAO,KAAK,CAAC,WAAW,CAAC;AAC3B,CAAC;AAED,+EAA+E;AAE/E,SAAS,WAAW,CAAC,IAAsB,EAAE,SAA0B;IACrE,IAAI,EAAE,GAAG,0CAA0C,CAAC;IACpD,EAAE,IAAI,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,GAAG,CAAmB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7E,EAAE,IAAI,gCAAgC,CAAC;IACvC,EAAE,IAAI,iBAAiB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACzC,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,WAAW,CAClB,IAAsB,EAAE,SAA0B,EAAE,MAAc,EAClE,IAA2B,EAAE,KAAa;IAE1C,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,MAAM,WAAW,GAAG,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC;QACxC,EAAE,IAAI,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAChD,IAAI,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;YAClC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAO,CAAC;YAC7B,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,WAAW,KAAK,CAAC,CAAC,CAAC,GAAG,WAAW,GAAG,CAAC;YAC1E,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACjB,EAAE,IAAI,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YACnE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,UAAU,CAAC,KAAkB,EAAE,SAA0B,EAAE,WAAmB;IACrF,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;IACrD,IAAI,EAAE,GAAG,KAAK,WAAW,KAAK,GAAG,GAAG,CAAC;IACrC,MAAM,WAAW,GAAG,kBAAkB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACzD,IAAI,WAAW,IAAI,IAAI;QAAE,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;IAClD,EAAE,IAAI,IAAI,CAAC;IACX,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,IAAI,KAAK,CAAC,UAAU,IAAI,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7F,EAAE,IAAI,cAAc,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QACpD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC9B,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;YACpB,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;gBACnC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;gBACzB,IAAI,GAAG,IAAI,IAAI;oBAAE,EAAE,IAAI,SAAS,GAAG,MAAM,GAAG,IAAI,CAAC;YACnD,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,EAAE,GAAG,sBAAsB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACpD,IAAI,EAAE,IAAI,IAAI;QAAE,EAAE,IAAI,YAAY,EAAE,IAAI,CAAC;IACzC,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,gFAAgF;AAEhF,SAAS,iBAAiB,CAAC,IAAsB,EAAE,SAA0B;IAC3E,OAAO,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,GAAG;QAC/B,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC;QAC/C,CAAC,CAAC,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;AACrD,CAAC;AAED,+EAA+E;AAE/E,SAAS,kBAAkB,CAAC,IAAsB,EAAE,SAA0B,EAAE,IAAc;IAC5F,OAAO,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,CAAmB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,UAAU,CACjB,IAAsB,EAAE,SAA0B,EAAE,WAAmB,EACvE,IAAc,EAAE,IAA2B,EAAE,KAAa;IAE1D,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,MAAM,WAAW,GAAG,CAAC;IAC1D,MAAM,WAAW,GAAG,WAAW,GAAG,MAAM,CAAC;IACzC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAC3B,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,WAAW,IAAI,KAAK,CAAC,IAAI,MAAM,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,CAC3G,CAAC;IACF,OAAO,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,WAAW,GAAG,CAAC;AACpD,CAAC;AAED,SAAS,SAAS,CAChB,KAAkB,EAAE,SAA0B,EAAE,MAAc,EAC9D,IAAc,EAAE,IAA2B,EAAE,KAAa;IAE1D,IAAI,KAAK,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC/E,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM;QAAE,OAAO,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACzG,OAAO,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,QAAQ,CAAC,KAAkB,EAAE,SAA0B,EAAE,IAAc;IAC9E,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,UAAU,CAAC,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,GAAG,CAAC;IACjF,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC7C,OAAO,kBAAkB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC;AAClF,CAAC;AAED,SAAS,SAAS,CAAC,KAAkB,EAAE,IAA2B,EAAE,KAAa;IAC/E,OAAO,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,IAAI,IAAI;WACzD,KAAK,GAAG,cAAc,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,eAAe,CACtB,KAAkB,EAAE,SAA0B,EAAE,MAAc,EAC9D,IAAc,EAAE,IAA2B,EAAE,KAAa;IAE1D,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAC5E,MAAM,MAAM,GAAG,KAAK,CAAC,MAAO,CAAC;IAC7B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;IACzE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACpB,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,SAAS,CAChB,KAAkB,EAAE,SAA0B,EAAE,MAAc,EAC9D,IAAc,EAAE,IAA2B,EAAE,KAAa;IAE1D,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;IACnC,IAAI,IAAY,CAAC;IACjB,IAAI,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAO,CAAC;QAC7B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjB,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QACxE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,MAAM,UAAU,GAAG,IAAI,KAAK,MAAM,GAAG,CAAC;AAC/C,CAAC;AAED,+EAA+E;AAE/E,SAAS,iBAAiB,CAAC,IAAsB,EAAE,SAA0B,EAAE,IAAc;IAC3F,OAAO,IAAI,IAAI,CAAC,QAAQ,MAAM,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,CAAmB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,QAAQ,GAAG,CAAC;AAClI,CAAC;AAED,SAAS,OAAO,CACd,IAAsB,EAAE,SAA0B,EAAE,MAAc,EAClE,IAAc,EAAE,IAA2B,EAAE,KAAa;IAE1D,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACpG,CAAC;AAED,SAAS,QAAQ,CACf,KAAkB,EAAE,SAA0B,EAAE,MAAc,EAC9D,IAAc,EAAE,IAA2B,EAAE,KAAa;IAE1D,IAAI,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAO,CAAC;QAC7B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QAChF,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACpB,OAAO,GAAG,MAAM,IAAI,KAAK,CAAC,IAAI,MAAM,IAAI,GAAG,MAAM,KAAK,KAAK,CAAC,IAAI,KAAK,CAAC;IACxE,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACrG,OAAO,GAAG,MAAM,IAAI,KAAK,CAAC,IAAI,IAAI,SAAS,CAAC,OAAO,CAAC,KAAK,KAAK,CAAC,IAAI,KAAK,CAAC;AAC3E,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAkB,EAAE,SAA0B;IAC5E,MAAM,EAAE,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,EAAE,IAAI,IAAI;QAAE,OAAO,EAAE,CAAC;IAC1B,IAAI,KAAK,CAAC,OAAO,IAAI,IAAI;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC;IAChD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,YAAY,CAAC,KAAkB,EAAE,SAA0B;IAClE,MAAM,EAAE,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,EAAE,IAAI,IAAI;QAAE,OAAO,EAAE,CAAC;IAC1B,IAAI,KAAK,CAAC,OAAO,IAAI,IAAI;QAAE,OAAO,KAAK,CAAC,OAAO,CAAC;IAChD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,IAAI,KAAK,CAAC,UAAU,IAAI,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7F,OAAO,KAAK,CAAC,UAAU,CAAC,CAAC,CAAE,CAAC;IAC9B,CAAC;IACD,OAAO,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC;AAC3B,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAe,EAAE,KAAa;IACxD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3C,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IACvD,gFAAgF;IAChF,iFAAiF;IACjF,oFAAoF;IACpF,wFAAwF;IACxF,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IACvB,IAAI,CAAC,KAAK,EAAE,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACxD,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACpC,CAAC"}
1
+ {"version":3,"file":"output-format-renderer.js","sourceRoot":"","sources":["../../src/prompt/output-format-renderer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metaobjectsdev/render",
3
- "version": "1.0.9-rc.1",
3
+ "version": "1.0.9-rc.2",
4
4
  "description": "Logic-less, deterministic text render engine (Mustache) for MetaObjects templates — provider-resolved partials, format-driven escaping, zero core dependency.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -7,7 +7,8 @@
7
7
  //
8
8
  // Cross-port INVARIANT: the rendered text is byte-identical to the Java/C#/Kotlin
9
9
  // reference (com.metaobjects.render.prompt.OutputFormatRenderer). Do not change
10
- // the verbatim prose, skeleton shapes, or numeric-vs-quoted decision.
10
+ // the verbatim prose, skeleton shapes, or numeric-vs-quoted decision (a number /
11
+ // boolean is never quoted, placeholder or not).
11
12
 
12
13
  import { ESCAPERS } from "../escapers.js";
13
14
  import { FieldKind, Format } from "../extract/types.js";
@@ -160,8 +161,18 @@ function jsonValue(
160
161
  return jsonLeaf(field, overrides, mode);
161
162
  }
162
163
 
164
+ // A number or boolean is shown UNQUOTED wherever the skeleton holds a placeholder for it
165
+ // — the inline hint (`{Integer 1-5.}`, `true | false`) and the no-example fallback
166
+ // (`{averageRating}`). A quoted placeholder taught the model to answer a number as a
167
+ // JSON string, which the generated response parser then rejected. Only STRING / ENUM
168
+ // values (and OBJECT past the depth guard) are quoted.
163
169
  function jsonLeaf(field: PromptField, overrides: PromptOverrides, mode: SkelMode): string {
164
- if (mode === "inline") return `"${escapeJson(inlineContent(field, overrides))}"`;
170
+ const unquoted = NUMERIC_KINDS.has(field.kind);
171
+ if (mode === "inline") {
172
+ const content = inlineContent(field, overrides);
173
+ return unquoted ? content : `"${escapeJson(content)}"`;
174
+ }
175
+ if (unquoted && exampleValueIfDeclared(field, overrides) == null) return `{${field.name}}`;
165
176
  const value = exampleValue(field, overrides);
166
177
  return isNumericOrBoolean(field.kind, value) ? value : `"${escapeJson(value)}"`;
167
178
  }