Current state
Duckle already has internal run manifests, dataset/artifact lineage, column lineage, run IDs, and a workspace catalog.
An optional standard export would let organizations integrate Duckle with existing lineage/observability tools without replacing Duckle’s own catalog.
Proposed solution
Emit OpenLineage-compatible events for:
START
COMPLETE
FAIL
ABORT/CANCEL, where representable
Run/job identity
Include:
Duckle run ID
pipeline/job ID
release/Git identity
trigger
parent Plan/backfill run
partition
Dataset facets
Map known inputs/outputs:
database/catalog/schema/table
DuckLake table
object-store/file/artifact URI
schema
data-source type
Include column-lineage facets where Duckle can determine them.
Do not invent precise lineage for dynamic/opaque code; mark it unknown or omit it.
Delivery
Configure an HTTP endpoint with:
bounded retries
short timeout
local buffer/queue
redaction
Telemetry delivery must never fail the data run.
Security/policy
- apply URI/query-parameter redaction;
- never emit credentials;
- allow policy to disable or restrict external export;
- optionally hash internal dataset names.
Scope
This is export only. Duckle does not need to import/manage an external OpenLineage catalog.
Acceptance criteria
- successful and failed Duckle runs emit correlated events;
- known input/output datasets and schemas are included;
- column lineage is emitted only when known;
- export failure cannot fail the pipeline;
- sensitive values are redacted.
Current state
Duckle already has internal run manifests, dataset/artifact lineage, column lineage, run IDs, and a workspace catalog.
An optional standard export would let organizations integrate Duckle with existing lineage/observability tools without replacing Duckle’s own catalog.
Proposed solution
Emit OpenLineage-compatible events for:
Run/job identity
Include:
Dataset facets
Map known inputs/outputs:
Include column-lineage facets where Duckle can determine them.
Do not invent precise lineage for dynamic/opaque code; mark it unknown or omit it.
Delivery
Configure an HTTP endpoint with:
Telemetry delivery must never fail the data run.
Security/policy
Scope
This is export only. Duckle does not need to import/manage an external OpenLineage catalog.
Acceptance criteria