commit cc5f33f01ffb101053ee8333cec5f1e2ea75f74c
parent c563f7840dbc67ee655302d589271d54cc402bff
Author: I Mean I'm Just Saying <imeanimjustsaying@kiwifarms.st>
Date: Fri, 25 Sep 2026 23:12:15 -0400
export: comments — hubSite's wrap, and the e2e sw.js staging sits by its code and no longer cites committed icons (brand S3)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Diffstat:
2 files changed, 10 insertions(+), 8 deletions(-)
diff --git a/export/app/lib/site.ts b/export/app/lib/site.ts
@@ -25,8 +25,9 @@ import { PROJECT_WORDMARK_LEAD } from "yt-dlp-transcript-common/lib/project";
// In hub mode the app has no single Site — its branding is the instance-level
// HomepageConfig ("Archilyzer"). Synthesize a Site from it so layout/manifest/
// Header/Footer keep working unchanged (no channels/groups; the hub ships a PWA
-// by default; its wordmark splits as the project's own). Read INSTANCE_MODE directly here rather than importing mode.ts,
-// which imports currentSite() (would be a cycle).
+// by default; its wordmark splits as the project's own). Read INSTANCE_MODE
+// directly here rather than importing mode.ts, which imports currentSite()
+// (would be a cycle).
function hubSite(): Site {
const cfg = getHomepageConfig();
return parseSite("hub", {
diff --git a/export/playwright.config.ts b/export/playwright.config.ts
@@ -21,12 +21,6 @@ const TEST_SITES_DIR = path.resolve(process.cwd(), "e2e", "fixtures", "sites");
// spec via `installRoutes`.
buildFixtureSettings(TEST_SETTINGS_FILE);
-// `public/sw.js` is a generated, gitignored artifact: `compose:site` copies it
-// from `export/service-worker/site-sw.js` only for a PWA-shipping site (see
-// common/bin/compose-site.ts). The e2e harness runs `next dev` without a compose
-// step, so pwa.spec's `GET /sw.js` would depend on a stale build artifact being
-// left on disk. Stage it here (mirroring compose) so the service-worker test is
-// deterministic on a clean checkout, exactly like the committed public/icons/*.
// transcript-downloads.spec flips `transcriptDownloads: false` into the served
// fixture site for one test and restores it afterwards. A run killed inside that
// test leaves the key behind, and every modal spec before it would then fail on
@@ -41,6 +35,13 @@ const FIXTURE_SITE = path.join(TEST_SITES_DIR, "testsite", "site.json");
}
}
+// `public/sw.js` is a generated, gitignored artifact: `compose:site` copies it
+// from `export/service-worker/site-sw.js` only for a PWA-shipping site (see
+// common/bin/compose-site.ts). The e2e harness runs `next dev` without a compose
+// step, so pwa.spec's `GET /sw.js` would depend on a stale build artifact being
+// left on disk. Stage it here (mirroring compose) so the service-worker test is
+// deterministic on a clean checkout. The icons it caches need no staging: the
+// `app/icons/[file]` and `app/favicon.ico` route handlers render them.
const SW_SRC = path.resolve(process.cwd(), "service-worker", "site-sw.js");
const SW_DEST = path.resolve(process.cwd(), "public", "sw.js");
if (fs.existsSync(SW_SRC)) fs.copyFileSync(SW_SRC, SW_DEST);