Skip to content

Commit 17f4ae0

Browse files
committed
test(driver-memory): the analytics face's declared-operator probe covers $icontains (#6520)
`memory-driver-filter-logic-conformance.test.ts` keys its probe map by the face's OWN declared vocabulary and fails when a declared operator has no probe — so adding `$icontains` to `MONGO_TO_CUBE_OPERATOR` correctly turned it red. That gate is the reason #5374 cannot recur, and it fired exactly as designed. The comparand is UPPER-case ('BET') against a lower-case fixture row ('beta'), so the probe only selects a row once the ASCII fold actually runs. A lower-case comparand would have been discriminating too and would have agreed across the two faces for free even if neither folded — the free-agreement certification that block's own header warns against. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PiRUoQkTSBBmpyXBY3cVn2
1 parent 72e77e5 commit 17f4ae0

1 file changed

Lines changed: 6 additions & 0 deletions

File tree

‎packages/drivers/driver-memory/src/memory-driver-filter-logic-conformance.test.ts‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -587,6 +587,12 @@ const DECLARED_OPERATOR_PROBES: Record<string, FilterCondition> = {
587587
$nin: { code: { $nin: ['100'] } } as FilterCondition,
588588
$contains: { name: { $contains: 'et' } } as FilterCondition,
589589
$notContains: { name: { $notContains: 'et' } } as FilterCondition,
590+
// [#6520] The comparand is deliberately UPPER-case against a lower-case
591+
// fixture (`beta`), so the probe only selects row 2 once the ASCII fold
592+
// actually runs. `'et'` would have been discriminating too, and would have
593+
// agreed for free on a face that never folded — which is the certification
594+
// this block's own header warns against.
595+
$icontains: { name: { $icontains: 'BET' } } as FilterCondition,
590596
$exists: { closed_at: { $exists: false } } as FilterCondition,
591597
};
592598

0 commit comments

Comments
 (0)