From 25696ffe038ab00c8afd64d5310ca3112f1f749c Mon Sep 17 00:00:00 2001
From: Johnpaul Chiwetelu <49923152+Myestery@users.noreply.github.com>
Date: Fri, 20 Feb 2026 05:51:21 +0100
Subject: [PATCH] fix: remove false 'invalid directory' errors when asset API
is enabled (#8961)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
## Summary
- When `Comfy.Assets.UseAssetAPI` is enabled, `getAssetModelFolders()`
only discovers folders containing assets. Empty folders (e.g.
`text_encoders`, `vae`) were falsely flagged as invalid, showing
"Invalid directory specified" on every missing model dialog.
- Removes the `directory_invalid` concept entirely — the existing
`!paths` check via `getFolderPaths()` already correctly validates all
registered directories including empty ones, making `directory_invalid`
redundant.
## Before
## After
## Test plan
- [ ] Enable `Comfy.Assets.UseAssetAPI` setting
- [ ] Open a template referencing models in empty folders (e.g. "Image
Editing (New)")
- [ ] Verify the missing models dialog shows download buttons instead of
"Invalid directory specified" error
- [ ] Disable `Comfy.Assets.UseAssetAPI` and verify behavior is
unchanged
Fixes #8583
---
src/components/dialog/content/MissingModelsWarning.vue | 3 +--
src/scripts/app.ts | 4 ----
2 files changed, 1 insertion(+), 6 deletions(-)
diff --git a/src/components/dialog/content/MissingModelsWarning.vue b/src/components/dialog/content/MissingModelsWarning.vue
index da32eb541f..d7403743bd 100644
--- a/src/components/dialog/content/MissingModelsWarning.vue
+++ b/src/components/dialog/content/MissingModelsWarning.vue
@@ -85,7 +85,6 @@ const whiteListedUrls = new Set([
interface ModelInfo {
name: string
directory: string
- directory_invalid?: boolean
url: string
downloading?: boolean
completed?: boolean
@@ -112,7 +111,7 @@ const modelDownloads = ref>({})
const missingModels = computed(() => {
return props.missingModels.map((model) => {
const paths = props.paths[model.directory]
- if (model.directory_invalid || !paths) {
+ if (!paths) {
return {
label: `${model.directory} / ${model.name}`,
url: model.url,
diff --git a/src/scripts/app.ts b/src/scripts/app.ts
index 44db92dbab..a6fe39fdca 100644
--- a/src/scripts/app.ts
+++ b/src/scripts/app.ts
@@ -1215,10 +1215,6 @@ export class ComfyApp {
await modelStore.loadModelFolders()
for (const m of uniqueModels) {
const modelFolder = await modelStore.getLoadedModelFolder(m.directory)
- if (!modelFolder)
- (m as ModelFile & { directory_invalid?: boolean }).directory_invalid =
- true
-
const modelsAvailable = modelFolder?.models
const modelExists =
modelsAvailable &&