#migration
6 pieces filed under “migration”.
Swapping the model without breaking the product
Model migrations without breaking the product: shadow runs, eval-gated cutovers, tone and format regression diffs, and rollback plans for behaviour you can't unit test.
The model deprecation playbook nobody writes until it's 3am
Your LLM provider just announced a deprecation window. How to migrate without panic: abstraction layers, eval-gated cutovers, shadow traffic and honest customer comms.
The TypeScript strictness ratchet: stricter every sprint, never a big bang
Strict mode on a legacy codebase is a migration disguised as a flag. The ratchet approach: incremental flags, scoped configs, codemods and type-debt metrics.
International SEO without tears: hreflang, ccTLDs and content reuse
Going international without tanking search: ccTLD vs subfolder trade-offs, hreflang that doesn't break, translations that respect local intent, staged validation.
CMS migrations: the script is the deliverable
Why the migration script — not the new CMS — is the real deliverable: idempotent exports, content checksums, redirect mapping and parallel-running.
The headless CMS migration runbook
A field-tested runbook for migrating to a headless CMS: content inventory, model mapping, redirect strategy, preview parity, and the cutover weekend checklist.