@@ -200,11 +200,12 @@ export type RetiredDefaultResidue = Readonly<Record<string, boolean | number | s
200200 * ## The class of retirement this exists for
201201 *
202202 * {@link retiredKey} makes a removal audible in both authoring channels (the
203- * `tsc` tombstone input type + the parse-time prescription). That is the right posture for a key
204- * an author WROTE — but a key that carried a Zod `.default(…)` has a third
205- * population nobody authored: **every artifact built by a released toolchain
206- * has the key MATERIALIZED at its default in every entry**, because the parse
207- * that built the artifact emitted the default. Refusing that emitted default
203+ * `tsc` tombstone input type + the parse-time prescription). That is the right
204+ * posture for a key an author WROTE — but a key that carried a Zod
205+ * `.default(…)` has a third population nobody authored: **every artifact
206+ * built by a released toolchain has the key MATERIALIZED at its default in
207+ * every entry**, because the parse that built the artifact emitted the
208+ * default. Refusing that emitted default
208209 * sentences every previously built artifact — marketplace packages, installed
209210 * environments — to death on the next runtime upgrade, over a value that is
210211 * behaviourally identical to absence for the key's entire history. (The
@@ -232,8 +233,8 @@ export type RetiredDefaultResidue = Readonly<Record<string, boolean | number | s
232233 * The authoring surface keeps every refusal the retirement established: the
233234 * shape still declares the key as a {@link retiredKey} tombstone (`z.input`
234235 * stays the tombstone input type, so writing the key in TypeScript source fails
235- * `tsc` exactly as before), the JSON-schema/authorable-surface artifacts still publish the
236- * `[REMOVED]` tombstone row, and a non-default value is refused with the
236+ * `tsc` exactly as before), the JSON-schema/authorable-surface artifacts still
237+ * publish the `[REMOVED]` tombstone row, and a non-default value is refused with the
237238 * original prescription everywhere. What changes is only the disposition of
238239 * the **emitted default in already-parsed data** — provenance that JSON cannot
239240 * carry, which is why the discrimination is by value, as ruled.
0 commit comments