Placeholder article. Real content to follow. The structure below is real — it's the shape every migration-intelligence piece will take — but the words are scaffolding.
Most cloud migrations burn effort at the wrong end of the pipeline. Teams deploy a lift-and-shift machine before they've answered the question the migration exists to answer: what should the target look like? Not the servers — the shape. Services, boundaries, data ownership, failure domains.
LLMs are unreasonably good at reading a legacy codebase and proposing a cloud shape, if you constrain the task. The pipeline below is the pattern I've used across three regulated migrations.
A three-stage pipeline. A legacy monolith feeds a structured ingest layer, which forwards to an LLM reasoning stage; the reasoning stage produces a target architecture and runbook for the cloud stage to execute.
Read the legacy. Reason about the shape. Emit a plan.
Ingest — structure first
Before any reasoning, you need the legacy code in a structured form. Classify every module: domain, dependency, IO surface. The output is a graph, not a summary.
Reason — with patterns, not vibes
The LLM's job is to map the graph onto known patterns (strangler, anti-corruption layer, read-side projection) with evidence. Every decision ends up with a citation to the legacy code it came from.
Plan — runbooks, not slide decks
The output is an incremental plan the migration team can actually execute: IaC scaffolding, service boundaries, migration waves, the data-gravity calls. Runbooks, not slide decks.
The interesting part is not the move. The interesting part is the decision about what to move into. This pipeline makes that decision defensible.