mir-database-mongolisted
Install: claude install-skill anantbhandarkar/make-it-right
# /mir-database-mongo · Make It Right (MongoDB)
Engine module. `mir-database` runs the gates and decides what is true of the data. **This file carries only MongoDB's mechanics.** Use it at Gate 0 (engine fitness), Gate 5 (design), Gate 6 (collections, validators, indexes), Gate 7 (review).
**Release state, verified 13 Aug 2026** (mongodb.com/docs/manual/release-notes, /reference/versioning):
| Release | Status | What it changes for you |
|---|---|---|
| **8.3** (8.3.8, Aug 2026) | current | Cost-Based Ranker is now the **default** plan selector — query plans can change on upgrade. `removeShard` replaced by `startShardDraining` / `shardDrainingStatus` / `commitShardRemoval`. Only single-version downgrades |
| **8.2** | supported minor | Queryable Encryption prefix/suffix/substring queries are **public preview** — not for production; GA will be incompatible with the preview format |
| **8.0** | major, 5-year lifecycle | `j:true` now requires **every member counted by `w`** to journal (pre-8.0 only the primary did). `w:"majority"` members apply asynchronously after durably writing the oplog entry |
| **7.0** | major, supported | `analyzeShardKey` / `configureQueryAnalyzer` land here |
Majors ship every 2 years with a 5-year lifecycle. Minors (8.1 → 8.2 → 8.3) must be upgraded through **sequentially**, each step a binary upgrade **plus** an FCV bump. Pin a major if you need Atlas Live Migration or `mongosync` — minors do not always support them.
---
## 1. Schema design
**E