Skip to content

What a migration does to your prompts

Seventy specific things that change when the model underneath a prompt changes — formatting habits, refusals, arithmetic, personas, length.

A model migration is usually planned as an integration job. The API shapes differ, the SDK differs, the streaming events differ, and all of that is real work with a definite end. Then the integration lands, the tests go green, and the actual migration begins: the summariser starts emitting bullet points where it used to emit paragraphs, the extraction step trips over a fenced code block that was never there before, the agent finishes in four turns instead of eleven, and the red-team suite reports a pass rate nobody can interpret. None of that is a bug. It is the second half of the job, and it is the half nobody scoped.

These pages are about that half. The prompt string is the only part of the system that appears not to have changed, which is why it is the last place anyone looks — but a prompt is not a program, it is an input to a function whose entire behaviour was fixed by somebody else’s post-training. Change the function and every unstated assumption the prompt was leaning on is renegotiated at once. The cluster works through those assumptions one at a time: the formatting habits downstream code parses, the refusal boundary tests measure, the instruction literalism agents budget against, the personas, the lengths, and the operational scaffolding — cost attribution, runbooks, alert thresholds, contracts — that was quietly calibrated to one provider and has to be recalibrated to another.

Migrating an Internal Style Guide for Prompts Between Model Families

The four independent layers between a prompt string and a model's behaviour, and how to rewrite a house prompt-writing guide so it survives the next swap too.

10 min read

What a Migration Does to Existing Prompt Injection Test Baselines

Why a red-team suite's pass rate is not comparable across a model swap, how much of an apparent move is sampling noise, and the procedure that produces a real baseline.

10 min read

Migrating Prompt Chains Built Around One Model's Output Format Habits

The parse errors a multi-step chain throws when a later step's model changes its default formatting, and the three levels of fix from extractor patch to format contract.

10 min read

What “Knowledge Cutoff” Differences Mean for a Migration

How a shifted training cutoff changes model behaviour in ways that survive retrieval, and how to audit a prompt library for the places it actually matters.

9 min read

Migrating an Internal Prompt Testing Dataset to Cover a New Provider

How to extend an existing prompt regression suite with cases that probe the specific differences a migration exposes, instead of re-running an old suite that cannot see them.

11 min read

What Changes About Streaming Backpressure When You Switch Providers

Where backpressure actually lives in a streaming completion, why most SDK iterators remove it entirely, and what breaks in a client that assumed one provider's behaviour.

10 min read

Migrating a Client Library's Connection Pool Settings Between Providers

Why a pool sized for one provider's latency profile queues on another, derived from Little's law, plus the keepalive race that turns into duplicate side effects.

10 min read

What a Provider's Regional Endpoint Structure Means for a Migration

The three shapes regional endpoints come in, a worked round-trip estimate for getting the region wrong, and the residency question that only one of the three raises.

10 min read

Migrating a Prompt Library's Version Control Branching Strategy

Why a branch per provider guarantees silent drift, and a base-plus-overlay layout with a recorded base hash that makes drift a CI failure instead.

10 min read

What Changes in an Agent's Planning Behaviour After a Model Migration

Why a task-decomposition pattern shifts after a model swap, traced to reasoning-trace training and eagerness rather than to a prompt bug, and how to re-tune the budget.

10 min read

Re-Tuning an Agent's Step Limit After a Model Migration

Why a max-step ceiling that never fired on the old model starts throwing on the new one, and how to re-derive the number instead of doubling it.

9 min read

Migrating a Prompt Compression or Summarization Preprocessor

A compressor drops what its own scoring model finds predictable, which is not the same as what your new serving model can do without.

9 min read

What a Migration Does to an Existing Jailbreak Defense Test Suite

A green jailbreak suite after a model swap usually means the detectors are matching the old model's refusal phrasing, not that the new model refused.

9 min read

Migrating Cost Attribution From Per-Provider to Unified Tracking

Builds a normalized usage record that ingests three providers' differently-shaped usage objects without losing the distinction between cached, written and fresh input tokens.

10 min read

What Breaks in an Internal Chargeback Model After a Provider Migration

Team totals that no longer sum to the invoice after a migration, traced to a usage-field assumption and a price table keyed on a model string that stopped appearing.

9 min read

Migrating a Prompt A/B Testing Framework's Metric Definitions

Why a judged metric like helpfulness moves on a migration for reasons that have nothing to do with helpfulness, and how to separate metric drift from model drift.

9 min read

What a Deprecation Grace Period Actually Gives You Time to Do

Schedules a real notice period backwards from the retirement date into inventory, testing, dual-run and cutover, and shows where the time actually goes.

10 min read

Migrating Away From a Model That's Being Sunset Mid-Contract

What to do when a specific model version is retired while a commercial commitment still has months to run, and which clause types decide how much leverage you have.

9 min read

What a Provider Outage During a Migration Window Means for Your Rollback

The target provider degrades halfway through a cutover, and the rollback trigger you wrote does not fire because the SDK is retrying the failures away.

9 min read

Migrating a Prompt Injection Canary System Between Model Families

A canary marker detects extraction only when the model quotes it, and a model that paraphrases or spells it out defeats an exact-string comparison silently.

9 min read

What a Fine-Tune's Data Format Requirements Are Across Providers

The dataset shape each provider expects, the five decisions a converter has to make, and the requirement that is not a format at all.

9 min read

Migrating a RAG Reranker's Input Format Between Providers

What changes in a RAG pipeline's reranking step when the reranker changes provider, and why the tuned score threshold is the part that breaks.

9 min read

What a Provider Migration Means for Existing Rate-Limit Increases

Why an elevated limit does not travel with you, what determines the lead time on the target, and how to size a cutover to the limit you actually have.

9 min read

Migrating a Prompt Engineering Team's Internal Documentation

Which parts of a prompt wiki go wrong after a provider migration, why they go wrong silently, and how to convert the fragile ones into things that fail loudly.

9 min read

What Happens to a Custom Model Alias After the Model Is Retired

The 404 and the silent version change are the same bug seen twice; here is the audit that finds both before production does.

9 min read

Migrating a Prompt Template Engine's Variable Syntax

Why moving a template library between engines is not a rename, what the brace collision does to prompts containing JSON, and the render-diff that makes the move safe.

9 min read

Moving a Project Off a Free Tier Without an Outage

The quota discontinuity, the data-handling clause and the key rotation that come with leaving a free tier, and a staged cutover with a measurable rollback trigger.

10 min read

Migrating an Internal Prompt Approval Workflow

What a reviewer can honestly approve on once the model they had in their head is gone, and how to end a dual-provider review period rather than living in it.

9 min read

Does a Knowledge Cutoff Matter If You Are Using RAG?

It matters exactly where the retrieved passage contradicts what the model already believes, which makes it a property of your corpus rather than of the model.

10 min read

Migrating Few-Shot Examples From JSON to Markdown or Back

What each vendor's prompting guide recommends for example formatting, the three traps in the rewrite, and a decision rule for whether the new format is actually better.

10 min read

What Support Escalation Changes When You Move Provider

The incident evidence your escalation runbook collects is provider-shaped, and half of it stops existing the day you cut over.

9 min read

Retuning an Injection-Detection Threshold After a Migration

Why an injection alert goes silent rather than noisy after a model change, and the replay procedure that gives you a defensible new threshold.

10 min read

What a Migration Does to Your Fine-Tuning Artifacts

A hosted fine-tune is a model id on somebody else's serving stack, not a file you own; here is what you can actually carry across and what you have to rebuild.

9 min read

Migrating an Internal Glossary of Model-Specific Terminology

The dangerous glossary entries are the words two providers share and use differently; here is a table schema that makes those visible and a lint that keeps docs honest.

9 min read

Updating Uptime Monitoring for a New Model Provider

A synthetic check written against the old provider's response shape goes green forever after a cutover; here is how to rebuild it so it fails when inference does.

10 min read

Output Got Longer (or Empty) After the Model Change

Two unrelated causes produce the same complaint after a migration; one is a token-budget definition that changed, the other is trained verbosity, and they are fixed differently.

10 min read

Why the Retry Branch Stopped Firing After the Migration

Error-recovery branches encode a status code and an error type; both are provider vocabulary, and the wrong mapping produces either no retries at all or an infinite one.

10 min read

Locale Handling Moves in Three Places at a Migration

Nothing about your internationalisation lives inside the model; it lives in the tokenizer, the instruction that names the language, and the output format contract, and all three move independently.

10 min read

Retesting a Content Filter After a Fine-Tune Migration

Three filters sit in the request path and a fine-tune migration moves two of them; without attribution you cannot tell which one blocked, and tuning becomes guesswork.

10 min read

Rebuilding an Internal Cost-Per-Token Lookup Table

A table keyed on input and output rates cannot express cache writes, reasoning tokens or per-request tool charges, and the naive multiplication is wrong in opposite directions on different providers.

11 min read

What Changes About On-Call Runbooks After a Provider Migration

How to re-point an incident runbook's diagnostic steps at a new provider's error taxonomy, so the person paged at 3am is not reading instructions for a system that no longer exists.

9 min read

Migrating an Internal Prompt Injection Bug Bounty Scope

What in a prompt-injection bounty scope document stops being true when the underlying model changes, and how to draw the boundary around your trust boundary instead of the model's behaviour.

9 min read

What a Migration Does to Existing Prompt Caching Cost Projections

Re-derives an expected prompt-caching saving from first principles under a new provider's write multiplier, read multiplier, minimum prefix and cache lifetime, because the old percentage does not carry.

10 min read

Migrating a Team's Prompt Review Checklist for a New Model's Quirks

Adds the migration-specific items to a prompt review checklist, starting with the question of whether each few-shot example is anchoring a format or teaching a task.

10 min read

What a Provider's Content Policy Differences Mean for Existing Use Cases

Separates the three layers people collapse into 'content policy' and gives the procedure for re-reading a new provider's usage policy against a use case that was approved under a different one.

9 min read

Migrating an Internal Model Capability Matrix

Rebuilds the internal table of which models support which features as a generated artefact, using a probe suite for the providers whose model listing carries no capability data.

9 min read

What Breaks in a Voice Assistant's Latency Budget After a Migration

Diagnoses the audible pause that appears after moving a voice assistant to a new provider, and shows why time to first token measured at the SSE layer misses the regression entirely.

9 min read

Migrating a Prompt's Refusal-Handling Fallback Logic

Why code that detects a refusal by matching apology phrasing stops working after a model change, and the structural signals to branch on instead.

9 min read

What a Provider Migration Means for an Existing Prompt Cost Ceiling Alert

Rebuilds a per-request or per-session cost alert around a normalized usage shape and a versioned price table, because the old threshold and the field names it reads both stop being valid.

10 min read

Migrating an Internal Model Zoo Reference Doc Across a Provider Swap

Why the internal list of every model in active use rots, and how generating it from a registry the code actually reads turns a migration into one edit instead of tribal knowledge.

9 min read

What a Migration Does to an Existing Synthetic Data Generation Pipeline

Why a synthetic-data generator's output distribution shifts when the generating model changes, and the four distribution checks to run before the new batch reaches anything downstream.

9 min read

Migrating a Prompt's Citation and Source-Attribution Format

Why a downstream citation parser stops matching after a model swap, and the move from regex-over-prose to a structured citation channel that cannot drift.

9 min read

What a Migration Does to an Existing Prompt Compression Ratio

Works the arithmetic for a compression ratio measured on one tokenizer and re-evaluated on another, and shows why the ratio can shrink even though the compressed text is unchanged.

9 min read

Migrating an Internal Model Selection Decision Tree

Rebuilds a hard-coded routing tree so its leaves are capability predicates resolved at startup rather than model names typed into an if-chain.

10 min read

What Happens to a Feature Flag Gating a Model Version When It's Deprecated

Diagnoses the 404 that fires the first time a dormant flag variant is toggled back on, and the audit that catches a retired model id inside flag configuration.

9 min read

Migrating a Prompt's Handling of Multi-Turn Context Truncation

Re-derives a conversation-truncation budget for a target model with a different window, and explains why a bigger window changes where the model looks rather than only how much fits.

10 min read

What a Provider Migration Means for an Existing Prompt Injection Bounty Payout Structure

Why the payout tiers of a prompt-injection bounty need revisiting when the underlying model changes, and how to adjust them without repricing work researchers have already done.

9 min read

Migrating a Client's Exponential Backoff Parameters Between Providers

Re-derives base delay, cap and attempt count from the new provider's own rate-limit signals, and fixes the retry-multiplication bug that a migration usually introduces.

10 min read

What a Migration Does to an Existing Prompt's Persona Consistency

Traces a chatbot's post-migration personality drift to the parts of the persona the old model supplied for free, and gives the prompt changes and countable tests that pin it back down.

9 min read

Migrating an Internal Prompt Injection Severity Classification Scheme

Explains which inputs to an injection severity label a model swap actually changes, and the replay procedure that re-validates the scheme against demonstrated exploitability.

9 min read

What a Provider Migration Does to Your Prompt Caching TTL Assumptions

How long a cached prefix stays reusable is defined differently by each provider, and a request batcher tuned to one definition silently stops paying for itself on another.

10 min read

Migrating a Prompt's Handling of Ambiguous or Underspecified Requests

Why the ask-a-question-versus-guess balance shifts on a new model, and how to move that decision out of the model's defaults and into your output schema.

9 min read

What a Migration Does to a Prompt's Formatting Consistency Score

How to define, sample and size a format-conformance measurement so that a drop after a migration is a result rather than an impression.

10 min read

Migrating an On-Call Escalation Policy for AI Incident Types

Rewrite the severity matrix so on-call classification reflects the failure modes the migration target actually has, including the two that only exist while you are dual-running.

10 min read

What a Migration Does to a Prompt's Multi-Language Consistency

Why a prompt that behaved evenly across languages on one model degrades unevenly on another, and the per-locale checks to run before rollout rather than after.

10 min read

Migrating a Prompt That Depends on the Model Doing Arithmetic

Why a prompt that relied on a model getting sums right needs re-testing after every migration, and why the durable fix is to stop asking it to compute at all.

9 min read

What a Migration Does to Deeply Nested or Conditional Instructions

Why the innermost clause of a nested rule is the one that disappears on a new model, and how to restructure prose rules into a decision table the schema can enforce.

9 min read

Extending an Edge-Case Test Suite With Cases Found on the New Model

Harvest target-specific failures during dual-running, triage them into three buckets, and store them with the provenance that lets you retire them later without guessing.

10 min read

What to Pull From a Migration Target's Model Card, and What to Update

The specific fields worth extracting from a published model card before rollout, which internal documents each one invalidates, and the questions a card cannot answer.

9 min read

Migrating a Prompt Library's Linting Rules Between Model Families

A rule-set storage shape that carries which models each rule applies to, a resolution rule for lint time, and an explicit condition for deleting a rule rather than disabling it.

10 min read

Other topics