dbt-labs/dbt-core · error
DbtSeed does not support setting detected_unsafe
Error message
DbtSeed does not support setting detected_unsafe
What it means
DbtSeed's set_detected_introspection implementation is an intentional hard panic: seeds are plain CSV files and never carry introspection/unsafe metadata, so the trait method is unimplemented. Hitting it means generic node-handling code invoked an introspection setter on a node kind that cannot hold that state.
Solutions
- Match on the concrete node type before calling set_detected_introspection and skip DbtSeed
- Move the introspection flag to a wrapper/trait only model-like nodes implement
- Return a no-op or Err instead of panicking if the trait contract allows
Defensive patterns
Strategy: type-guard
When it happens
Trigger: Thrown at crates/dbt-schemas/src/schemas/nodes.rs:1869 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of dbt-labs/dbt-core@0267ce9170 (2026-09-07).
Data as JSON: /api/errors/01ecc1247e5f645a.
Report an issue: GitHub.
Appendix: source
Thrown at crates/dbt-schemas/src/schemas/nodes.rs:1869
"same_fqn",
same_fqn_result,
Some((
format!("{:?}", &self.common().fqn),
format!("{:?}", &other_seed.common().fqn),
)),
),
("same_database_representation", same_db_repr_result, None),
],
);
}
result
} else {
false
}
}
fn set_detected_introspection(&mut self, _introspection: IntrospectionKind) {
panic!("DbtSeed does not support setting detected_unsafe");
}
}
impl InternalDbtNodeAttributes for DbtSeed {
fn search_name(&self) -> String {
self.__common_attr__.name.clone()
}
fn selector_string(&self) -> String {
self.__common_attr__.fqn.join(".")
}
fn serialized_config(&self) -> YmlValue {
dbt_yaml::to_value(&self.deprecated_config).expect("Failed to serialize to YAML")
}
}
impl InternalDbtNode for DbtTest {View on GitHub (pinned to 0267ce9170)