Archilyzer · Source

archilyzer

Archilyzer
git clone https://archilyzer.pages.dev/source/archilyzer.git
Log | Files | Refs | README | LICENSE

commit 38bbb79ce673c54bad95c7e9494df6b846ef9532
parent 71e233745fdd3c329532082642ef071de7fca64b
Author: I Mean I'm Just Saying <imeanimjustsaying@kiwifarms.st>
Date:   Fri, 25 Sep 2026 22:22:15 -0400

plans: brand + themes — slice S1 review fixes recorded

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

Diffstat:
Mplans/brand-and-themes.md | 32++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+), 0 deletions(-)

diff --git a/plans/brand-and-themes.md b/plans/brand-and-themes.md @@ -759,6 +759,38 @@ The hex-only `parseAccent` fallback, which S0 flagged at `:19`, is gone. - **`export/.2origin/hubA`** is a hub build (gitignored, about 2.5 GB, because `out/` copies the linked public data). It stays in the worktree for the next 2origin run. +**Review fixes** (review verdict SHIP, `$T/s1-review.md`; review nit 5, the `layout.tsx` import +conflict with S2, is left for the merge). +- `541a46e0`, should-fix 1 + nit 2: + - both service workers serve `/icons/` network-first into shell-v2 (fresh online, cached + offline), so a redeployed accent reaches readers; + - `/_next/static/` stays cache-first; `SHELL` stays `"shell-v2"` and `VERSION` `"v1"`; + - the `SHELL` comment now says the rename also drops the cached HTML and chunks, so the installed + app opens offline again only after one more online visit. + - No test covered the strategy (`contract.test.ts` pins only the URL families). The new + `lib/archive/serviceWorkerRouting.test.ts` runs each worker in `node:vm` with a fake + `self`/`caches`/`fetch` and drives its fetch handler. Reverting site-sw's routing turns its icon + test red. +- `405fccd5`, nits 3 + 7: + - `ICON_FILES`, `iconFile`, `ICON_METADATA`, `FAVICON_SIZES` and `siteIconPalette` moved to the pure + `common/lib/brandIconFiles.ts` (no `next` import); + - `lib/brandIcons.ts` keeps the renderers beside `next/og`, and its only importers are the four + icon/favicon routes; the layouts and `export/app/lib/brand.ts` read the pure module. A test pins + the importer set and the purity. + - The variant test: pixel (0,0) is transparent on the `any` 512 and the opaque ground on the + maskable 512 and the apple 180. A variant-ignoring `renderIconPng` turns it red. +- `951a0ff5`, nit 6: the `accentHex` comment says the published hex is the icon's lit line only for a + named accent. +- `4a7641af`, nit 4: `pwa.spec`'s 404 probe names the dev log line it causes as expected. +- Gates: + - tsc clean before each commit; + - common **1,887** (+6), editor unit **79**; + - export build ok (23 s), homepage build ok (14 s), with the same seven `out/icons` files + favicon + and the same PNG/ICO magic; + - export `pwa.spec.ts brand.spec.ts`: **8 passed**, 15 s; `e2e:hub`: **14 passed**, 24 s; + - the worktree's `sw.js` stayed a copy, and the primary's `sw.js` is unchanged (10,027 B, + 20:47:37). + ## Operator rollout (after merge) 1. Restart the live :3001 editor on the new `main`; it needs S0's form.