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 Screenshot 2026-02-18 at 21 09 55 ## After Screenshot 2026-02-18 at 21 23 29 ## 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 &&