From 21aa026319b36d8fb7a7445c584ef1fa96ee1b5d Mon Sep 17 00:00:00 2001 From: 3dtours Date: Thu, 8 Oct 2026 18:14:48 +0700 Subject: [PATCH] fix(library): guarantee trailing slash in rollWalk relative paths so active scan spinner highlights all ancestor folders --- docker/frontend/src/engine/rollWalk.ts | 5 +++-- docker/recipescam-images.tar.gz.sha256 | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/docker/frontend/src/engine/rollWalk.ts b/docker/frontend/src/engine/rollWalk.ts index fdcf3af..867be5d 100644 --- a/docker/frontend/src/engine/rollWalk.ts +++ b/docker/frontend/src/engine/rollWalk.ts @@ -97,14 +97,15 @@ export async function walkPass( if (walk.walked.has(here.rel)) continue; walk.walked.add(here.rel); try { + const baseRel = here.rel ? (here.rel.endsWith('/') ? here.rel : `${here.rel}/`) : ''; for await (const entry of here.dir.values()) { if (SYSTEM_DIR.test(entry.name)) continue; if (entry.kind === 'directory') { - const rel = `${here.rel}${entry.name}/`; + const rel = `${baseRel}${entry.name}/`; walk.pending.push({ dir: entry as FileSystemDirectoryHandle, rel }); seen.push(rel); } else if (keep(entry.name)) { - out.push({ handle: entry as FileSystemFileHandle, rel: `${here.rel}${entry.name}` }); + out.push({ handle: entry as FileSystemFileHandle, rel: `${baseRel}${entry.name}` }); } } } catch { diff --git a/docker/recipescam-images.tar.gz.sha256 b/docker/recipescam-images.tar.gz.sha256 index ffa2fae..d4863d4 100644 --- a/docker/recipescam-images.tar.gz.sha256 +++ b/docker/recipescam-images.tar.gz.sha256 @@ -1 +1 @@ -22618dd3b376178df4c414d7317213af917c936d5195b69d46fe9731356a0da4 recipescam-images.tar.gz +0caf45eeac00f191bcd4abd2567721a569fef928eea0d963fe115641f917c908 recipescam-images.tar.gz