Migration 20260612234500: CHECK (quantity >= 0) on sklad_batches and sklad_item_locations — the DB itself now rejects negative stock, so a future C2-class bug (cumulative decrements driving a batch negative and silently vanishing from totals) becomes a loud error instead of hidden corruption. All three databases verified clean of negative rows before the migration. audit_logs.created_at TIMESTAMP(0) -> DATETIME(0): TIMESTAMP dies in 2038 and converts through the session timezone; existing wall times preserved by the MODIFY. Pinned by db-constraints.test.ts (4 tests, each watched fail pre-migration: negative insert/update/location all succeeded before, 2098 audit timestamp was rejected before). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
326 KiB
326 KiB