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
filter-logic-conformance.ts now records three FALSE cells, and the $exists row it says cannot be enrolled yet has become enrollable — the backends moved in #13195 #13531
Follow-up to #13195, which aligned the last three exits to $exists = has a value. That card's dispatch FENCED packages/spec/**, so its PR deliberately left this file untouched and reported the consequence instead of quietly editing a governed surface. This is that consequence, filed so it is not lost.
No gate is red. check-driver-conformance.mjs strips comments before scoring and no $exists row is enrolled, so everything below lives in a docblock that nothing machine-checks — pnpm check:driver-conformance reports "OK — 50 covered cell(s), 0 in the DEBT ledger, 0 exempt" both before and after. That is exactly why it needs a card rather than a gate to catch it.
What is now false in packages/spec/src/data/filter-logic-conformance.ts
In the reversal-measurement table under "Why the reversal was declined", the $exists: true on a null value column:
"the gap is now unexcused rather than deferred — but it is still a gap" — the gap is closed;
"so a $exists row cannot be enrolled here yet" — the stated blocker was that the backends had to move first, and they have.
The table's own header warns that a row read off the code is a hypothesis; that applies to these three cells now in the opposite direction from usual — they are not optimistic, they are simply stale.
The enrolment this unblocks
#13195's body, step 4: "Only after the backends agree, enrol an $exists row in FILTER_LOGIC_CASES." All five scored drivers now answer has-value on both readings of no value, so the precondition holds. Worth carrying into that work:
Enrol both directions. $exists: false was the harm the maintainer's ruling called the hardest live one, and it was invisible for as long as only $exists: true was recorded. A single-direction row would rebuild that blind spot.
The two readings of no value are NOT interchangeable here. Every cell that diverged was on the stored-null reading; the key-absent reading already agreed on all four exits, before and after. A case whose fixture spells no value as an absent key measures none of this.
#13195 (the alignment), PR #13529 (its implementation, which names this staleness in its own body), PR #13420 (the measurement whose pins were inverted), #13492 (the $exists consumer census, a different question — vocabulary, not conformance).
Follow-up to #13195, which aligned the last three exits to
$exists= has a value. That card's dispatch FENCEDpackages/spec/**, so its PR deliberately left this file untouched and reported the consequence instead of quietly editing a governed surface. This is that consequence, filed so it is not lost.No gate is red.
check-driver-conformance.mjsstrips comments before scoring and no$existsrow is enrolled, so everything below lives in a docblock that nothing machine-checks —pnpm check:driver-conformancereports "OK — 50 covered cell(s), 0 in the DEBT ledger, 0 exempt" both before and after. That is exactly why it needs a card rather than a gate to catch it.What is now false in
packages/spec/src/data/filter-logic-conformance.tsIn the reversal-measurement table under "Why the reversal was declined", the
$exists: trueon a null value column:driver-memorylive mingo pathMATCH — reads KEY-PRESENCEdriver-memoryanalytics faceMATCH — reads KEY-PRESENCEdriver-mongodbtranslateFilterMATCH — mongo $exists IS key-presenceAnd the warning paragraph beneath it, which still reads:
driver-memory's live mingo path anddriver-mongodb" — no longer true of either, and it never named the analytics face, which was a third divergent exit measured in PR Measure the $exists has-value cell on every driver-memory exit and on driver-mongodb #13420;$existsrow cannot be enrolled here yet" — the stated blocker was that the backends had to move first, and they have.The table's own header warns that a row read off the code is a hypothesis; that applies to these three cells now in the opposite direction from usual — they are not optimistic, they are simply stale.
The enrolment this unblocks
#13195's body, step 4: "Only after the backends agree, enrol an
$existsrow in FILTER_LOGIC_CASES." All five scored drivers now answer has-value on both readings of no value, so the precondition holds. Worth carrying into that work:scripts/check-driver-conformance.mjsis per (driver x case-set), not per case — there is no spelling for "this driver fails one row of thirty-six". Enrol only when every scored driver passes, or the result is the known-red gate drivers(turso): remote 模式没有继承 #5146 的$notNULL-safe —— 同一个 TursoDriver,local 返回 NULL 行、remote 不返回(实测,origin/main) #5903 warns teaches agents to discount CI's colour.$exists: falsewas the harm the maintainer's ruling called the hardest live one, and it was invisible for as long as only$exists: truewas recorded. A single-direction row would rebuild that blind spot.nullreading; the key-absent reading already agreed on all four exits, before and after. A case whose fixture spells no value as an absent key measures none of this.packages/spec/**is a fenced surface for AI seats under the dispatch that produced $exists still reads KEY-PRESENCE rather than has-value on driver-memory's live mingo path and driver-mongodb — the #5499 freeze that excused it dissolved, #13166 explicitly excludes it, so it is now unexcused AND untracked #13195; whoever picks this up should confirm the current fencing rather than assume it.Related
#13195 (the alignment), PR #13529 (its implementation, which names this staleness in its own body), PR #13420 (the measurement whose pins were inverted), #13492 (the
$existsconsumer census, a different question — vocabulary, not conformance).Generated by Claude Code