|
| 1 | +--- |
| 2 | +"@objectstack/spec": patch |
| 3 | +--- |
| 4 | + |
| 5 | +docs(spec): mark `PromptTemplate.system` / `.user` `[EXPERIMENTAL — not enforced]` (#15954, #16321) |
| 6 | + |
| 7 | +Prose only. `Clause-②: no` — no accept-set change, no new/narrowed authorable |
| 8 | +key, no matrix declaration. Every value that parsed before parses now, and |
| 9 | +every value refused before is refused identically. |
| 10 | + |
| 11 | +Under the #15954 ruling (decision batch #56, option B) the template-typed pair |
| 12 | +is **marked, not retired**. Both `.describe()` strings on |
| 13 | +`ai/PromptTemplateSchema` now carry the repo's existing |
| 14 | +`[EXPERIMENTAL — not enforced]` prefix and state that no runtime renders or |
| 15 | +executes the template today: |
| 16 | + |
| 17 | +```ts |
| 18 | +system: TemplateExpressionInputSchema.optional().describe('[EXPERIMENTAL — not enforced] System prompt — supports {{var}} interpolation. No runtime renders or executes the template today.'), |
| 19 | +user: TemplateExpressionInputSchema.describe('[EXPERIMENTAL — not enforced] User prompt template — supports {{var}} interpolation. No runtime renders or executes the template today.'), |
| 20 | +``` |
| 21 | + |
| 22 | +**Why an author sees this.** `PromptTemplateSchema` has no consumer outside |
| 23 | +`packages/spec`, so the `{{var}}` holes are never interpolated and the declared |
| 24 | +`variables` are never checked against them. The ADR-0058 D7 conformance ledger |
| 25 | +already recorded that verdict (`template-prompt`, `state: 'experimental'`, |
| 26 | +`PARSE ONLY — NO EVALUATOR FOUND`); until now nothing said it at the |
| 27 | +declaration, so the generated reference page advertised a capability the |
| 28 | +runtime does not deliver. |
| 29 | + |
| 30 | +**What does NOT change.** `.user` remains **required** and `.system` remains |
| 31 | +optional — the schema shape is untouched. Optionalising or retiring a required |
| 32 | +key is a parse-breaking change and is deliberately left to its own card. No |
| 33 | +tombstone and no ADR-0087 entry is owed: nothing is renamed, retired or |
| 34 | +re-typed. |
0 commit comments