tracing-downstream-lineage

Trace downstream data lineage and impact analysis. Use when the user asks what depends on this data, what breaks if something changes, downstream dependencies, or needs to assess change risk before modifying a table or DAG.

By astronomer · 961 installs

npx skills add astronomer/agents --skill tracing-downstream-lineage

Source repository · Upstream listing

Downstream Lineage: Impacts Answer the critical question: "What breaks if I change this?" Use this BEFORE making changes to understand the blast radius. Impact Analysis Step 1: Identify Direct Consumers Find everything that reads from this target: For Tables: 1. Search DAG source code : Look for DAGs that SELECT from this table Use af dags list to get all DAGs Use af dags source <dag id to search for table references Look for: FROM target table , JOIN target table 2. Check for dependent views : 3. Look for BI tool connections : Dashboards often query tables directly Check for common BI patterns in table naming (rpt , dashboard ) On Astro If you're running on Astro, the Lineage tab in the Astro UI provides visual dependency graphs across DAGs and datasets, making downstream impact analysis faster. It shows which DAGs consume a given dataset and their current status, reducing the need for manual source code searches. For DAGs: 1. Check what the DAG produces : Use af dags source <dag id to find output tables 2. Then trace those tables' consumers (recursive) Step 2: Build Dependency Tree Map the full downstream impact: Step 3: Categorize by Criticality Critical (breaks production): Production dashboards Customer facing applications Automated reports to executives ML models in production Regulatory/compliance reports High (causes significant issues): Internal operational dashboards Analyst workflows Data science experiments Downstream ETL jobs Medium (inconvenient): Ad hoc analysis tables Development/staging copies Historical archives Low (minimal impact): Deprecated tables Unused datasets Test data Step 4: Assess Change Risk For the proposed change, evaluate: Schema Changes (adding/removing/renaming columns): Which downstream queries will break? Are there SELECT patterns that will pick up new columns? Which transformations reference the changing columns? Data Changes (values, volumes, timing): Will downstream aggregations still be valid? Are there NULL handling assumptions that will break? Will timing changes affect SLAs? Deletion/Deprecation : Full dependency tree must be migrated first Communication needed for all stakeholders Step 5: Find Stakeholders Identify who owns downstream assets: 1. DAG owners : Check owners field in DAG definitions 2. Dashboard owners : Usually in BI tool metadata 3. Team ownership : Look for team naming patterns or documentation Output: Impact Report Summary "Changing fct.orders will impact X tables, Y DAGs, and Z dashboards" Impact Diagram Detailed Impacts Downstream Type Criticality Owner Notes agg.daily sales Table Critical data eng Updated hourly Executive Dashboard Dashboard Critical analytics CEO views daily ml.order features Table High ml team Retraining weekly Risk Assessment Change Type Risk Level Mitigation Add column Low No action needed Rename column High Update 3 DAGs, 2 dashboards Delete column Critical Full migration plan required Change data type Medium Test downstream aggregations Recommended Actions Before making changes: 1. [ ] Notify owners: @data eng, @analytics, @ml team 2. [ ] Update downstream DAG: transform daily sales 3. [ ] Test dashboard: Executive KPIs 4. [ ] Schedule change during low impact window Related Skills Trace where data comes from: tracing upstream lineage skill Check downstream freshness: checking freshness skill Debug any broken DAGs: debugging dags skill Add manual lineage annotations: annotating task lineage skill Build custom lineage extractors: creating openlineage extractors skill