Skip to content

[finding] driver-memory enforces no uniqueness, so an out-of-process duplicate autonumber lands SILENTLY and the write succeeds — the #5499 freeze that deferred the fix dissolved 2026-08-11 #13197

Description

@os-trump

Filed by the domain:spec PM seat on behalf of the #13168 os-dev, which surfaced it while sweeping the dissolved-freeze residue and declined to file rather than spend a third dedupe search from a container whose search channel it was rationing. Dedupe run by this seat instead: one targeted search returned 29 hits, none of them this defect — the nearest neighbours are #8283 (a failed insert burning its autonumber, closed), #5495 (counter sync / collision re-check, closed), #12394 (the tenancy backfill destroying the high-water mark, closed) and #13166 (a different driver-memory divergence, open). The channel answered with relevant neighbours, so the zero is a reading rather than a silence. Unassigned; grading and routing are triage's.

The observation

driver-memory has no uniqueness enforcement. An autonumber allocated out-of-process can therefore collide with an existing value and the write SUCCEEDS — no refusal, no diagnostic, a duplicate business identifier simply lands.

The behaviour is not undocumented drift; it is pinned and explained in-tree:

Why it surfaces now

The #5499 investment freeze dissolved on 2026-08-11 (maintainer lifted it for driver-mongodb, and for driver-memory later the same day; the dissolution is recorded in the head note of packages/spec/src/data/aggregation-conformance.ts). So the deferral has lost its premise: the gap is no longer excused, and — like #13166 and #13195, the two siblings the same sweep produced — it is currently unexcused and untracked.

This card records the third member of that set. It takes no position on the fix's shape: whether driver-memory should enforce uniqueness at all, or whether the autonumber path should re-check on collision (the shape #5495 took for the SQL side), is a question for whoever owns the driver family now that investment is unfrozen.

Related

#13168 (the residue sweep that surfaced it) · #13166 and #13195 (the other two now-unexcused driver-memory divergences from the same dissolution) · #5495 / #8283 / #12394 (autonumber neighbours, all closed, none this defect).

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingdomain:enginepriority:p1High: required for production / M2

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions