Schema Drift
Divergence between a schema and the code, types, or documentation that describe it.
Schema drift is the gap that opens between a data model and everything else that claims to describe it: generated types, validation rules, documentation, tooling, and the assumptions embedded in code.
The reliable defense is generation plus verification. Types derived from the schema cannot drift by construction, and a build step that regenerates them and fails on any difference converts drift into a red build rather than a runtime surprise. Worth knowing: such a check can be triggered by changes that seem purely cosmetic, since documentation text on a field is frequently emitted into the generated output.
Drift also travels along the type graph in ways a diff cannot show. Relaxing a required field to optional widens its generated type, which breaks every reader in the codebase — including readers written after the change was started, which appear in neither the conflict list nor the change's own diff. The type checker, not the merge, is the detector. See Semantic Conflict.
A related asymmetry causes real bugs: a system may advertise a richer schema through its introspection surface than its write path actually accepts. Readers then learn about fields that writes reject. Keeping the two in lockstep — ideally with a test asserting the read model equals the write model — is what closes it.
See also6
Relational Database
Data organized as tables with declared relationships, queried declaratively and guarded by constraints.
Data & Content13 connections
Schema Validation
Checking data against a declared shape at runtime, and using the result as the typed value.
Agents & Language Models15 connections
Documentation Rot
Documentation that has drifted from the system it describes, and is now worse than none.
Method27 connections
Database Migration
A versioned, ordered change to a database schema, applied once and recorded.
Data & Content13 connections
Deprecation
Marking something as superseded and scheduled for removal, without removing it yet.
Method15 connections
Client-Server Boundary
The line in an application where execution moves from the server to the browser.
Web Platform11 connections
Related2
Nearby in the graph rather than deliberately chosen. Looser, sometimes surprising.
Linked from9
- Client-Server BoundaryWeb Platform
The line in an application where execution moves from the server to the browser.
- Contract TestingTesting & Verification
Verifying that a service and its consumer agree on an interface's shape, without either side needing the other running to test against.
- Database MigrationData & Content
A versioned, ordered change to a database schema, applied once and recorded.
- DeprecationMethod
Marking something as superseded and scheduled for removal, without removing it yet.
- Documentation RotMethod
Documentation that has drifted from the system it describes, and is now worse than none.
- Live Service GamePlay & Games
A game operated as a running service rather than shipped as a finished artifact, with the consequences that shift implies.
- Relational DatabaseData & Content
Data organized as tables with declared relationships, queried declaratively and guarded by constraints.
- Schema ValidationAgents & Language Models
Checking data against a declared shape at runtime, and using the result as the typed value.
- Semantic ConflictVersion Control & Delivery
Two changes that merge cleanly and are incompatible in meaning.