gatsbyjs/gatsby · error
Plugin ${pluginName} called unstable_createNodeManifest with
Error message
Plugin ${pluginName} called unstable_createNodeManifest with an updatedAtUTC that isn't a proper value to instantiate a Date. What it means
Validation inside the nodeManifestReducer when handling CREATE_NODE_MANIFEST: a source plugin called unstable_createNodeManifest with an updatedAtUTC value that cannot instantiate a valid Date (NaN). The manifest is discarded (state returned unchanged) and the plugin is warned, protecting the reducer from bad timestamps.
Source
Thrown at packages/gatsby/src/redux/reducers/node-manifest.ts:29
export const nodeManifestReducer = (
state: IGatsbyState["nodeManifests"] = [],
action: ICreateNodeManifest | IDeleteNodeManifests
): IGatsbyState["nodeManifests"] => {
switch (action.type) {
case `CREATE_NODE_MANIFEST`: {
const { manifestId, pluginName, node, updatedAtUTC } = action.payload
const maxDaysOld =
Number(process.env.NODE_MANIFEST_MAX_DAYS_OLD) || DEFAULT_MAX_DAYS_OLD
if (updatedAtUTC) {
const nodeLastUpdatedAtUTC: number = new Date(updatedAtUTC).getTime()
if (
(nodeLastUpdatedAtUTC as any) instanceof Date &&
!isNaN(nodeLastUpdatedAtUTC)
) {
reporter.warn(
`Plugin ${pluginName} called unstable_createNodeManifest with an updatedAtUTC that isn't a proper value to instantiate a Date.`
)
return state
}
const shouldCreateNodeManifest =
Date.now() - nodeLastUpdatedAtUTC <= maxDaysOld * ONE_DAY
if (!shouldCreateNodeManifest) {
return state
}
}
if (typeof manifestId !== `string`) {
reporter.warn(
`Plugin ${pluginName} called unstable_createNodeManifest with a manifestId that isn't a string.`
)View on GitHub (pinned to e85d62f177)
Solutions
- Fix the plugin to pass a valid ISO date string or epoch-ms number for updatedAtUTC
- Omit updatedAtUTC entirely if the source has no update timestamps
- Verify the remote CMS field mapped to updatedAtUTC isn't null/garbage
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at packages/gatsby/src/redux/reducers/node-manifest.ts:29 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of gatsbyjs/gatsby@e85d62f177 (2026-08-26).
Data as JSON: /api/errors/61a87f7727a02d40.
Report an issue: GitHub.