Overview
Mage Pro can notify Autopilot when project code and pipeline configuration change. Autopilot owns graph indexing, graph storage, and lineage display data. Mage Pro’s responsibility is limited to:- project opt-in through
metadata.yaml; - metadata-only change events after successful project mutations;
- OpenLineage-compatible event envelopes for Autopilot ingestion; and
- short-lived source snapshots when Autopilot needs source context.
Enable lineage
Lineage requires both cluster-level service configuration and project-level metadata opt-in. Set these values in the Mage Pro cluster environment. Keep credentials in the cluster secret manager instead of project files.
Then enable lineage for a project:
/apps/lineage/dashboard provides the same opt-in
by writing lineage.enabled: true to the active project’s metadata.yaml.
Lineage events are sent only when:
AUTOPILOT_LINEAGE_ENABLED=1;- the active project has
lineage.enabled: true; - either direct Autopilot delivery or Mage Pro API gateway delivery is configured;
- tenant ID, customer cluster UUID, workspace UUID, and project UUID are all available; and
- the optional
AUTOPILOT_LINEAGE_FEATURE_FLAGgate passes, when configured.
MAGE_PRO_API_ENDPOINT over any agent-development service link so lineage
traffic continues through the intended Mage Pro API environment. For direct
delivery, set both AUTOPILOT_LINEAGE_API_URL and
AUTOPILOT_LINEAGE_API_TOKEN.
MAGE_CLUSTER_UUID must be explicitly configured, nonblank, durable, and unique
for the customer cluster. Mage Pro does not use Mage’s implicit mage fallback
for lineage scope.
Optional feature gate
lineage.enabled is the project opt-in. AUTOPILOT_LINEAGE_FEATURE_FLAG is an
additional rollout gate.
If AUTOPILOT_LINEAGE_FEATURE_FLAG is unset, any project with
lineage.enabled: true is eligible. Its values also support cluster-wide or
feature-flag behavior:
1,true,yes, oronallows all opted-in projects.0,false,no, oroffdisables lineage for every project.- Any other value is treated as a
featureskey in projectmetadata.yaml.
AUTOPILOT_LINEAGE_FEATURE_FLAG=data_lineage, both keys must be true.
What sends events
Mage Pro logs and schedules a non-blocking lineage event delivery attempt after these successful changes:- project files and block contents;
- pipelines, blocks, and execution-framework resources;
- triggers and schedules;
- successful deployment application.
{customer_cluster_uuid, workspace_uuid, project_uuid}. Mage Pro does not store
lineage events locally. Autopilot owns durable ingestion, queueing, graph
processing, and graph storage. A failed lineage delivery does not change the
result of the original Mage Pro mutation.
Event payloads
Mage Pro sends its internal metadata-only event plus anopenlineage envelope
for Autopilot. The OpenLineage envelope uses the same durable namespace for the
project scope and represents pipeline or block mutations as job metadata
updates. File mutations are represented as dataset metadata updates. A
Mage-specific facet carries the event ID, mutation type, object identity, safe
payload hashes, and scope.
The OpenLineage payload intentionally excludes source code, credentials, config
secrets, and data values. Autopilot can request a source snapshot separately
when it needs code context for graph rebuilds.
Source snapshots
Source snapshots are a service-to-service API for Autopilot. Browser sessions cannot call these endpoints. Every request requires an HS256 Bearer grant signed withAUTOPILOT_LINEAGE_SNAPSHOT_GRANT_SECRET.
Grants must contain
iss, aud, sub, iat, and exp claims, an actions
or permissions claim, and a lineage_scope equal to the target customer
cluster, workspace, and project. A read grant must also contain the exact
snapshot_id in the request path. Mage Pro rejects a token whose lifetime is
longer than twice the configured snapshot TTL.
Mage Pro applies these source controls:
- file and total-source byte limits;
- a cap on filesystem entries inspected while discovering project source files;
- only files under the project root;
- an explicit project-file allowlist;
- redaction of common secrets, authorization values, and bearer tokens;
- stable owner keys based on project UUID and object identity; and
source_changedorcontent_changedmarkers instead of stale content when a file changes after the manifest was created.
AUTOPILOT_LINEAGE_SNAPSHOT_TTL_SECONDS (15 minutes by default). If Mage Pro
restarts, Autopilot must request a new snapshot.