FabricFabricAirlift
Migration lifecycle

Implement the migration lifecycle

Compose source tools, adapters, governed actions, evidence, and cutover effects into a complete Databricks migration.

Implement the migration lifecycle

Airlift is the system of record and assurance plane around migration tools. Each phase has an executable integration boundary and a governed exit condition.

Start by generating the source-specific version of this lifecycle:

fa source plan <source>
fa source plan <source> --json > .airlift/plan.json
PhaseDeveloper integrationGoverned result
AssessLakebridge Profiler/Analyzer job adapteraccepted estate run and inventory/dependency digests
Inventorynormalizer plus dependency builderscoped objects, exclusions, complexity, residue lane
ConvertMorpheus/BladeBridge job and optional bounded repairimmutable conversion attempt and artifact digest
Transfersource-specific checkpointed driverwatermark, lag, restart, counts, reconciliation
ValidateReconcile, Experiments testkit, or admitted runnerprovider run plus object-profile readiness observations
Cut overTemporal worker plus certified effectorapprovals, checkpoint, apply-once, verify, rollback evidence
Modernizeseparate Runway release or project backlognative Databricks disposition without rewriting parity history
Build an operational applicationDatabricks Apps, Lakebase, Synced Tables, Platform, and family handoffsportable application-kit plan, synthetic BDD, preview/restore, and same-digest evidence

Runtime rule

Workers and server handlers do not write projected state. They invoke the action named in the source plan through runtime.invokeAction(...) with an authenticated tenant and principal. Adapters return immutable references, digests, versions, verdicts, and watermarks; Airlift validates and records those claims.

Definition of done

The success metric is the percentage of in-scope objects deployed and certified against their object-type evidence profile, with provenance and a tested rollback path. “Converted” is an intermediate state, not a cutover claim.

On this page