hasura/graphql-engine · error · CompatibilityError
no compatibility config found
Error message
no compatibility config found
What it means
The compatibility configuration lookup found no entry applicable to the requested compatibility date/version. The engine needs at least one compatibility config to resolve feature behavior.
Source
Thrown at v3/crates/compatibility/src/config.rs:27
/// Any backwards incompatible changes made to Hasura DDN after this date won't impact the metadata.
pub date: CompatibilityDate,
// TODO: add flags.
}
#[derive(Clone, Debug, PartialEq, serde::Serialize, opendds_derive::OpenDd)]
#[serde(rename_all = "camelCase")]
#[serde(deny_unknown_fields)]
#[opendd(json_schema(id = "v2/CompatibilityConfig"))]
/// The compatibility configuration of the Hasura metadata.
pub struct CompatibilityConfigV2 {
/// Any backwards incompatible changes made to Hasura DDN after this date won't impact the metadata.
pub date: CompatibilityDate,
// TODO: add flags.
}
#[derive(Debug, PartialEq, thiserror::Error)]
pub enum CompatibilityError {
#[error("no compatibility config found")]
NoCompatibilityConfigFound,
#[error("duplicate compatibility config found")]
DuplicateCompatibilityConfig,
#[error("compatibility date {specified} is too old, oldest supported date is {oldest}")]
DateTooOld {
specified: CompatibilityDate,
oldest: CompatibilityDate,
},
#[error("compatibility date {0} is in the future")]
DateInTheFuture(CompatibilityDate),
}
View on GitHub (pinned to 724551b9ae)
Solutions
- Ensure the built-in compatibility config entries are loaded/registered before resolving a date
- If loading from a file, verify the file exists and parses into at least one entry
- Upgrade to a version whose bundled configs cover your date
- Report/package bug if configs should have been embedded but are missing
Defensive patterns
Strategy: validation
Validate before calling
assert(compatibilityConfigs.length > 0, 'no compatibility config found');
Prevention
- Verify compatibility config file is bundled in deployment artifacts
- Run config validation at startup
When it happens
Trigger: Loading/validating compatibility configuration when the collection of compatibility configs is empty or none matches the requested project compatibility date.
Common situations: Fresh or corrupted install missing built-in compatibility configs; config file stripped during packaging; embedding the library without registering default compatibility entries.
Related errors
- duplicate compatibility config found
- compatibility date {specified} is too old, oldest supported
- compatibility date {0} is in the future
- cannot create migrations directory: %w
- cannot create seeds directory: %w
AI-assisted analysis of hasura/graphql-engine@724551b9ae (2026-08-28).
Data as JSON: /api/errors/d6f4e88d5e056ab4.
Report an issue: GitHub.