You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Found while implementing #7117 on packages/drivers/driver-memory. The driver-memory copies of this prose are corrected in that PR; these two live in packages/spec and dragging them into a driver-memory patch would pull a second package (and a second changeset) into an unrelated diff, so they are filed instead.
Measured on origin/main @ 69fde55
#7723 took the i flag off MemoryDriver.filterSubstringPattern, putting the $contains family on #4706 Q2 = A across every face of that package, and pnpm check:driver-conformance now reports 40 covered / 0 DEBT / 0 exempt with driver-memory's FILTER_TEXT cell ok. Two spec docblocks still describe the pre-#7723 world:
packages/spec/src/data/filter.zod.ts:521 — the per-backend table row:
filter.zod.ts's table is the spec's single statement of what each backend means by the $contains family — the thing a driver author reads before writing an arm. A row that says driver-memory folds Unicode is an instruction to match a behaviour that no longer exists, and it is the same document the #4706 rulings are anchored in. Prime Directive #10's corollary applies in reverse: declared ≠ enforced is a defect in either direction.
Scope
Two docblock edits. No code, no schema, no generated baseline — a skip-changeset docs PR. Worth grepping #6682 across packages/spec in the same pass; filter-text-conformance.ts:259-271 reads correct today but is written around the same distinction and should be re-read rather than assumed.
Found while implementing #7117 on
packages/drivers/driver-memory. The driver-memory copies of this prose are corrected in that PR; these two live inpackages/specand dragging them into adriver-memorypatch would pull a second package (and a second changeset) into an unrelated diff, so they are filed instead.Measured on
origin/main@69fde55#7723 took the
iflag offMemoryDriver.filterSubstringPattern, putting the$containsfamily on #4706 Q2 = A across every face of that package, andpnpm check:driver-conformancenow reports 40 covered / 0 DEBT / 0 exempt with driver-memory'sFILTER_TEXTcellok. Two spec docblocks still describe the pre-#7723 world:packages/spec/src/data/filter.zod.ts:521— the per-backend table row:Both cells are now wrong. The rule is
new RegExp(escapeRegex(v)), case-exact, and it is not "the last one standing" — nothing is.packages/spec/src/data/filter-text-conformance.ts:95— the@seeline:The parenthetical contradicts that file's OWN header 37 lines earlier, which fix(driver-memory): make the
$containsfamily case-exact and answercount_distinct#7723 updated correctly (:58— "driver-memoryanswers it too since drivers(memory, mongodb): the$containsfamily still folds case — the last two backends left on the wrong side of #4706 Q2 = A #6682's second half: theiflag came off …"). So this one is internally inconsistent, not merely stale.Why it is worth an issue rather than absorbing
filter.zod.ts's table is the spec's single statement of what each backend means by the$containsfamily — the thing a driver author reads before writing an arm. A row that says driver-memory folds Unicode is an instruction to match a behaviour that no longer exists, and it is the same document the #4706 rulings are anchored in. Prime Directive #10's corollary applies in reverse: declared ≠ enforced is a defect in either direction.Scope
Two docblock edits. No code, no schema, no generated baseline — a
skip-changesetdocs PR. Worth grepping#6682acrosspackages/specin the same pass;filter-text-conformance.ts:259-271reads correct today but is written around the same distinction and should be re-read rather than assumed.