Skip to content

fix(driver-memory)!: refuse an array comparand and compare Date comparands by time value #22758

fix(driver-memory)!: refuse an array comparand and compare Date comparands by time value

fix(driver-memory)!: refuse an array comparand and compare Date comparands by time value #22758

Triggered via pull request September 8, 2026 11:35
Status Success
Total duration 54s
Artifacts

pr-automation.yml

on: pull_request
Check PR Size
16s
Check PR Size
Check Changeset
50s
Check Changeset
Auto Label
18s
Auto Label
Fit to window
Zoom out
Zoom in

Annotations

1 notice
Check Changeset: .changeset/driver-memory-array-comparand-refusal-date-equality.md#L0
ADR-0087 exemption (no-migration-prescription): An accept-set narrowing and an evaluation repair inside one driver's filter gate: no metadata key, spec symbol, Zod schema, object definition or stored representation is added, removed or renamed. `packages/spec`'s half of this diff is a docblock sentence and one test comment — `filter-comparand-type.ts`'s list of the cases its door deliberately does not rule, corrected to state what the drivers now do — and no schema member, accepted key or exported symbol moves with it, so `check:api-surface` and `check:authorable-surface` see an unchanged surface. What moves is which FILTERS `@objectstack/driver-memory` accepts, which is authored at a call site or in a stored `where`, never a key `objectstack migrate meta` could visit: there is no old spelling to rewrite into a new one, because the refused shape has no replacement spelling that means the same thing — an array comparand never had agreed semantics to preserve, which is the whole reason the cell is refused rather than converged. Measured on this tree, the authored corpus that could carry the shape holds none of it: a structural scan of every tracked JSON and YAML file with a `where` / `filters` / `filter` object (10 JSON candidates, 1 YAML candidate — the latter a GitHub Actions job named `filter`, not a filter) finds ZERO bare-array comparands, and across the repository's own suites exactly one case authored the shape (`{ code: [] }`, in this package's face-agreement table), moved in this diff to assert the refusal. Whether an out-of-repo host authors one is NOT measured and is not claimed to be zero.