Class a — reproducible defect, probe named. The sibling of #18560, left open by its own PR on purpose.
Probe (run by the #18560 dev at PR #18700's head 7f1a81419; the seat's reading of the report, the probe is one command)
A one-line diff adding
+ snapshotPath: placeholderFree(z.string(), 'persistence.snapshotPath').optional(),
to packages/spec/src/data/driver/memory.zod.ts, judged with node scripts/pm/check-widening-tells.mjs --declaration no --diff FILE on the default board, exits 0 with the file JUDGED (not NOT-MEASURED) and zero tells. That is a genuinely new author-writable key passing a no in silence — the same class as #18560, on this repo's own surface.
Why PR #18700 does not close it
PR #18700 repairs the vocabulary as a NAMED list of shared, exported helpers (SCHEMA_PROPERTY_FORMS, two registers, every form pinned by a counterfactual fixture). A list of shared helpers cannot name a factory private to one file, and its header refuses a name-shaped heuristic (*Refusal( / *Arm() because it would recognise lines on evidence they do not carry. What closes this class is a reading that resolves the factory's own value, which is a different mechanism and a different card. The header of check-widening-tells.mjs at that head carries the overturn condition and names the populations below.
Measured populations
At objectstack 6dfa3ea77: placeholderFree( 23 key lines, strictIdent( 12, INLINE_CREDENTIAL_REFUSED( 10, ruleArrayFilterError( 10, objectBlockHistory( 9, emptyProps( 9, belongsInConfig( 8, strictIdentOrNull( 8. At objectui 15f01223d: chatbotRequestBodyArm( 2 (and three siblings), retiredDeclarativeKanbanKey( 1.
Remedy shape (the successor's)
Resolve a key line's value through the factory's OWN definition when the factory is file-local (the file is in the diff's tree, so its body is readable at the judged head), and classify by what that body returns — a z.never/refusing predicate declines, anything else is a writable key. Keep the shared-helper list as the fast path. Pin with the same counterfactual shape #18700 uses: one fixture per file-local factory, both arms.
Provenance
Raised by the #18560 dev (report 5717123702, class a); filed by the skills seat. Dedupe words: check-widening-tells vocabulary, file-local declaring factory, SCHEMA_PROPERTY blind spot, placeholderFree, T1 key-line recognition. Checked against the 533 open issues at 15:10Z: #18560 (shared helpers, closing via PR #18700), #18640 (T1/T2 on options-object lines), #18629 (the z.unknown() reverse direction) and #18488 (matchingCloser −1) are neighbours; none is this.
Generated by Claude Code
Class a — reproducible defect, probe named. The sibling of #18560, left open by its own PR on purpose.
Probe (run by the #18560 dev at PR #18700's head
7f1a81419; the seat's reading of the report, the probe is one command)A one-line diff adding
to
packages/spec/src/data/driver/memory.zod.ts, judged withnode scripts/pm/check-widening-tells.mjs --declaration no --diff FILEon the default board, exits 0 with the file JUDGED (not NOT-MEASURED) and zero tells. That is a genuinely new author-writable key passing anoin silence — the same class as #18560, on this repo's own surface.Why PR #18700 does not close it
PR #18700 repairs the vocabulary as a NAMED list of shared, exported helpers (
SCHEMA_PROPERTY_FORMS, two registers, every form pinned by a counterfactual fixture). A list of shared helpers cannot name a factory private to one file, and its header refuses a name-shaped heuristic (*Refusal(/*Arm() because it would recognise lines on evidence they do not carry. What closes this class is a reading that resolves the factory's own value, which is a different mechanism and a different card. The header ofcheck-widening-tells.mjsat that head carries the overturn condition and names the populations below.Measured populations
At objectstack
6dfa3ea77:placeholderFree(23 key lines,strictIdent(12,INLINE_CREDENTIAL_REFUSED(10,ruleArrayFilterError(10,objectBlockHistory(9,emptyProps(9,belongsInConfig(8,strictIdentOrNull(8. At objectui15f01223d:chatbotRequestBodyArm(2 (and three siblings),retiredDeclarativeKanbanKey(1.Remedy shape (the successor's)
Resolve a key line's value through the factory's OWN definition when the factory is file-local (the file is in the diff's tree, so its body is readable at the judged head), and classify by what that body returns — a
z.never/refusing predicate declines, anything else is a writable key. Keep the shared-helper list as the fast path. Pin with the same counterfactual shape #18700 uses: one fixture per file-local factory, both arms.Provenance
Raised by the #18560 dev (report 5717123702, class a); filed by the skills seat. Dedupe words: check-widening-tells vocabulary, file-local declaring factory, SCHEMA_PROPERTY blind spot, placeholderFree, T1 key-line recognition. Checked against the 533 open issues at 15:10Z: #18560 (shared helpers, closing via PR #18700), #18640 (T1/T2 on options-object lines), #18629 (the
z.unknown()reverse direction) and #18488 (matchingCloser−1) are neighbours; none is this.Generated by Claude Code