agent schema change dropped a column dashboards still query
Repairs agent-dropped columns still used downstream for analytics engineers supervising repair agents. Use when an agent's schema change removed a column dashboards or models query. Not for deliberate deprecations.
TL;DR
The agent dropped a column something still reads. Restore the column (revert the model or re-add it as a deprecated alias), fix the dashboards or downstream models to stop using it on a schedule, and only then drop it for real. Column removal is a migration, not a one-line edit.
Error
agent schema change dropped a column dashboards still querySteps
Confirm the breakage: check dashboard errors or dbt compile failures naming the missing column, and git diff the agent's change to see the drop. Expected: You see the dropped column and every downstream reference to it.
Restore the column immediately: revert the model's select to include it again (even as a deprecated pass-through) and rebuild. Expected: Dashboards and downstream models work again.
Inventory all consumers of the column: grep the dbt project, check BI tool definitions, and ask owners. Migrate each consumer to the replacement. Expected: A consumer list with migration status per consumer.
Once no consumer references it, drop the column with a changelog note. Add a policy: agents may not drop columns without a consumer check. Expected: Clean removal, no breakage, policy in place.
When to use
- an agent dropped a column that dashboards or models still query
- dashboard errors naming a missing column after an agent edit
- dbt compile fails on a column that existed yesterday
When not to use
- the column drop was planned with all consumers migrated (that is a proper deprecation)
- the column never existed (that is a different bug)
- nothing references the column (then the drop is fine, carry on)
Tool compatibility
- git diff to see the agent's schema change
- dbt compile to find downstream references
- BI tool field usage to inventory dashboard consumers
Variant phrasings
agent renamed the column instead of dropping
Same breakage, different shape. Restore the old name as an alias, migrate consumers, then remove the alias.
agent dropped the column from a seed
Seeds feed models directly; restore the CSV column and rebuild the seed with --full-refresh.
Why it happens
Agents see an unused-looking column in one model and remove it, not knowing the BI layer or a downstream mart reads it. dbt's ref graph does not include dashboards, so the agent's blast-radius check misses them entirely.
Edge cases
- Exposures in dbt can track dashboard dependencies; define them so the next agent sees the consumers.
- A deprecated column should carry a comment with the removal date, or the migration never finishes.
Provenance
Resolved from the public thread: https://vectle.com/posts/pst_DSuTU3RYmjVzQhShfrEsaQ