commit 3317f8a4a05eddc587cf3b2635d8b63f1d983fa4
parent 23c01dcc6d2539e2f95d611e82a6b4320bbca0a2
Author: I Mean I'm Just Saying <imeanimjustsaying@kiwifarms.st>
Date: Fri, 25 Sep 2026 20:17:51 -0400
plans: FACTS — worktree export e2e writes the primary's sw.js through the public symlink; homepage worktree data must be copied
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Diffstat:
1 file changed, 10 insertions(+), 0 deletions(-)
diff --git a/plans/FACTS.md b/plans/FACTS.md
@@ -6443,3 +6443,13 @@ Line numbers are `plans/FACTS.md` lines at `e172749b`, before this record's in-p
green (light `#5a9e3a`, dark `#86c86a`), no longer `--state-gone`'s hex.
- **Port blocks follow the sorted worktree list** (`pnpm wt list`): adding or removing a worktree
shifts every later block. Tell a running implementer.
+- **Worktree e2e can write INTO the primary through `export/public` symlinks** (2026-09-25, slice
+ C1b): `export/playwright.config.ts` copies `service-worker/site-sw.js` to `public/sw.js` when the
+ config loads, and in a worktree that path is a link to the primary's generated hub `sw.js`. A
+ site-mode export e2e in a worktree therefore overwrites the primary's hub service worker (10,027 →
+ 10,043 B). Replace `export/public/sw.js` with a copy before any export e2e in a worktree; the
+ proper fix (unlink before copy in the config) is a release-10 low. `build-hub` regenerates the
+ file, so a deploy is never wrong, only a worktree run in between.
+- **The homepage build refuses symlinks that point outside the project**, so a worktree's
+ `homepage/public` data (~60 MB, `homepage-summary.json` + stats pages) must be COPIED from the
+ primary, not linked.