Configuration reference
Environment variable names and fail-closed semantics for Airlift console, worker, store, evidence, Lakebridge, and Temporal composition.
Configuration reference
Store and identity
AIRLIFT_STORE=postgres- Lakebase App binding:
DATABRICKS_LAKEBASE_ENDPOINTorENDPOINT_NAME, with injectedPGHOST,PGDATABASE, andPGUSER - Direct Postgres:
AIRLIFT_DATABASE_URLor theAIRLIFT_PG*variables AIRLIFT_AUTHORIZATION_JSON— bootstrap membership snapshot only; after first governed adoption the organization membership registry replaces env rows, tenant admins manage members in the Team access App page, and env changes do not grant accessAIRLIFT_TRUST_DATABRICKS_APP_HEADERS=1andDATABRICKS_APP_NAMEAIRLIFT_PSEUDONYM_KEY— dedicated App secret used to derive stable participant, deployment-principal, and workspace refs without storing raw identities in assurance evidenceAIRLIFT_PROJECTION_REFRESH_MS
Airlift Migration Assistant
AIRLIFT_GENIE_PROVIDER—auto,deterministic,unity-ai-gateway,model-serving,openai-compatible,anthropic, orazure-openaiAIRLIFT_GENIE_MODEL— approved Unity Catalog model service, Model Serving endpoint, or external model nameDATABRICKS_INFERENCE_MODE—auto,ai-gateway, orserving-endpointsAIRLIFT_GENIE_BASE_URL— external-provider or Azure OpenAI URLAIRLIFT_GENIE_DEPLOYMENTand optionalAIRLIFT_GENIE_API_VERSION— Azure OpenAIAIRLIFT_GENIE_API_KEY— external-provider key from a Databricks App secret resource; never a literal configuration valueAIRLIFT_GENIE_AGENT_ID— optional curated Genie Agent for migration analytics
The preferred production path is Unity AI Gateway or Model Serving through the Databricks App service principal. A missing model, permission, secret, timeout, invalid response, or budget failure falls back to deterministic Airlift guidance and cannot weaken a gate. See Airlift Migration Assistant and Engineering remediation.
Development-only workflow exercise
AIRLIFT_DEPLOYMENT_ENV=devAIRLIFT_ALLOW_DEVELOPMENT_SELF_REVIEW=1DATABRICKS_APP_NAMEending in-devAIRLIFT_DEVELOPMENT_OPERATOR_PRINCIPALAIRLIFT_DEVELOPMENT_WORKER_PRINCIPAL
Together these allow one authenticated developer to resolve and review the same residue
while exercising a dev App. The event is marked development_self_review. An admitted
system principal may then mint an explicitly development certificate, which the
production cutover policy always rejects. The flag fails startup outside the complete dev
boundary and must not be configured in staging or production. The Synapse certification
command uses the schema installed by deployment and never requests schema DDL under a
developer identity.
See Development assurance for the complete boundary and inspection commands.
Evidence and certificates
AIRLIFT_EVIDENCE_REGISTRY_JSONAIRLIFT_EVIDENCE_SIGNING_KEY_IDAIRLIFT_EVIDENCE_SIGNING_PRIVATE_KEY_PEMAIRLIFT_EVIDENCE_VERIFY_KEYS_JSON
Each AIRLIFT_EVIDENCE_REGISTRY_JSON entry requires organizationId,
producerPrincipal, provider, providerRunRef, evidenceRef, and evidenceDigest.
It may also carry artifactDigest, verdict, and completedAt.
Any declared field is bound: it must match the submitted run exactly, so a manifest naming one artifact and verdict cannot verify a different result smuggled in under the same evidence identity.
Two of those fields can additionally be attested — reported as established by the
provider rather than merely recorded next to it. Only verdict and completedAt
qualify, because a provider's run document reports them. artifactDigest never does:
provider run documents generally do not name the artifact a run exercised, so Airlift
binds that field without presenting it as provider proof and lets the conversion-hazard
gate corroborate it at certification against the artifact the certificate is effective
for.
How attestation is established depends on the verifier. A provider-backed verifier — such
as the worker's Volume-backed evidence store — re-reads the provider's evidence body,
checks its digest, and re-derives the verdict and completion time from it, reporting a
field as attested only when its derived value equals what was submitted. The two fields
are judged independently: evidence whose recorded outcome contradicts the submitted
verdict, but whose completion time matches, attests completedAt and not verdict —
which still fails a governed conversion, because that requires both. A body that is not a
provider document at all derives nothing and so attests neither.
This static manifest cannot do that: it never sees an evidence body, so it establishes
nothing and reports no attested fields at all. That is deliberate. It is also the verifier
Airlift falls back to whenever no provider-backed one is injected, and an operator writing
outcome fields into configuration is not provider proof — treating it as such would defeat
the gate. (Manifests that once set providerAttested are rejected outright rather than
silently downgraded, so the change is visible.)
The practical consequence: a governed Teradata/Lakebridge conversion fails closed under
the manifest fallback. Its validation runs are refused with a denial naming this variable
and the service to supply, until a provider-backed verifier is injected as the
airliftEvidenceVerifier runtime service — for Experiments, the worker's Volume-backed
evidence store, which reads the published evidence document and derives the outcome from
it. Manifest entries remain fully usable for conversions outside a governed hazard
profile.
Lakebridge
AIRLIFT_CONVERTER=lakebridgeDATABRICKS_HOST,DATABRICKS_CLIENT_ID,DATABRICKS_CLIENT_SECRETAIRLIFT_LAKEBRIDGE_ANALYZER_JOB_IDAIRLIFT_LAKEBRIDGE_CONVERTER_JOB_IDAIRLIFT_LAKEBRIDGE_VOLUME_ROOT- optional certified
AIRLIFT_LAKEBRIDGE_VERSION
Temporal worker
AIRLIFT_TEMPORAL_MODE=temporalTEMPORAL_ADDRESS,TEMPORAL_NAMESPACE, TLS/API-key variables or their supported HarnessFABRIC_TEMPORAL_*equivalentsAIRLIFT_TASK_QUEUEAIRLIFT_APPROVAL_TIMEOUT_MINUTESAIRLIFT_SWEEP_CRON,AIRLIFT_SWEEP_MAX_ATTEMPTS
Runway deployment observation
AIRLIFT_DEPLOYMENT_ADAPTER=runwayAIRLIFT_RUNWAY_API_URLAIRLIFT_RUNWAY_APP_URL(optional console deep link)AIRLIFT_RUNWAY_API_TOKENfrom a deployment secret
This adapter observes a deployment created by fr; it does not deploy, promote, reconcile,
or roll back a release. Before observation, connect the Airlift requirement to a
runway/deployment reference containing the Runway deployment ID and staged artifact digest.
There is no environment-only switch that certifies a cutover effector. It is explicitly injected after client certification. Never store secret values in source, docs, action payloads, workflow inputs, or evidence.