diff --git a/turbopack/crates/turbo-tasks-backend/src/backend/mod.rs b/turbopack/crates/turbo-tasks-backend/src/backend/mod.rs index 62b3855ffee82..06d35fca998e3 100644 --- a/turbopack/crates/turbo-tasks-backend/src/backend/mod.rs +++ b/turbopack/crates/turbo-tasks-backend/src/backend/mod.rs @@ -2133,7 +2133,7 @@ impl TurboTasksBackendInner { if let Some(dependencies) = task_dependencies_for_immutable && dependencies .iter() - .all(|&task_id| ctx.task(task_id, TaskDataCategory::Data).is_immutable()) + .all(|&task_id| ctx.task(task_id, TaskDataCategory::Meta).is_immutable()) { is_now_immutable = true; } diff --git a/turbopack/crates/turbo-tasks-backend/src/backend/operation/mod.rs b/turbopack/crates/turbo-tasks-backend/src/backend/operation/mod.rs index 0b1c3e42377fc..961fba638424a 100644 --- a/turbopack/crates/turbo-tasks-backend/src/backend/operation/mod.rs +++ b/turbopack/crates/turbo-tasks-backend/src/backend/operation/mod.rs @@ -662,7 +662,9 @@ pub trait TaskGuard: Debug { /// Only returns Some once per task. /// It returns a set of tasks and which info is needed. fn prefetch(&mut self) -> Option>; - fn is_immutable(&self) -> bool; + fn is_immutable(&self) -> bool { + self.has_key(&CachedDataItemKey::Immutable {}) + } fn is_dirty(&self) -> bool { get!(self, Dirty).is_some_and(|dirtyness| match dirtyness { Dirtyness::Dirty => true, @@ -1007,10 +1009,6 @@ impl TaskGuard for TaskGuardImpl<'_, B> { .collect::>(); (map.len() > 1).then_some(map) } - - fn is_immutable(&self) -> bool { - self.task.contains_key(&CachedDataItemKey::Immutable {}) - } } macro_rules! impl_operation {