commit b568edb817b2a4c2fa658dd624cb0786cbb5dda8
parent 908e37b4e6e46fbb11ce5a15f9f64d539c6f6ad3
Author: I Mean I'm Just Saying <imeanimjustsaying@kiwifarms.st>
Date: Mon, 28 Sep 2026 01:23:54 -0400
plans: release 10 rolled out as 0.9.4 (sites, hub 10d6946f, homepage 7ca70923; the editor restart owed); the 14 merged worktrees removed (55 GiB); release 11 stub — the overnight of 2026-09-28
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Diffstat:
2 files changed, 56 insertions(+), 0 deletions(-)
diff --git a/plans/STATE.md b/plans/STATE.md
@@ -3,6 +3,20 @@
The working memory for the local-AI derived-corpus work. Rewritten at the end of every
session, before context is cleared. See [`README.md`](README.md) for the protocol.
+**Release 10 is fully rolled out as 0.9.4 (2026-09-28, 00:53).** The blocks below this one are
+the history, newest first from "Accent swap and mark contrast rolled out".
+- **Slice MR** (the mark ring on dark) merged `2b10f31b`; **0.9.4** cut as editor `2a6f6884` +
+ export `ee9d41fa` (record: `release-10.md`, "Slice MR, as shipped").
+- **Deployed from `ee9d41fa`** (`~/reports/release-10/tmp/r10-*.log`): the five sites by name
+ (jeralyzer `df279ac1`, anilyzer `e367536d`, bonnellyzer `41e9b1aa`, hasanalyzer `a48342b6`,
+ rekietalyzer `05444c21`), then the hub `10d6946f`, then the homepage `7ca70923`.
+- **Verified live:** `--mark-ring` on every surface; `/changelog` shows 0.9.4.
+- **Owed by the operator:**
+ - the :3001 editor restart (the favicon and the sidebar mark's ring; :3001 still runs the
+ post-brand build of 2026-09-26 21:47, `BUILD_ID` `S07zTu3MKTjHJa9eDM1GF`);
+ - re-uploading the YouTube picture, watermark and banner (`~/reports/archilyzer-media/brand/`).
+- **Next:** release 11, the overnight of 2026-09-28 ([`release-11.md`](release-11.md)).
+
**Now (2026-09-26, afternoon): release 10 is merged to `main` in full and NOT rolled out.** It is
the brand (S0–S3: the Found-line mark and base × accent reader themes; its own final commit
`bb6f378f`, then cut as editor + export 0.9.0 at 01:37, `0e0d8f59` + `31798769`), plus brand S4 and
diff --git a/plans/release-11.md b/plans/release-11.md
@@ -0,0 +1,42 @@
+# Release 11 — release 10's follow-ups, the homepage deploy from `/sites`, umtool's brand fonts, one-core Phase 4 slice 3
+
+`main` at `ee9d41fa` (release 10 fully rolled out as 0.9.4 on 2026-09-28 at 00:53: the five sites,
+the hub `10d6946f` and the homepage `7ca70923`; the :3001 editor restart is still owed). Release 11
+is the overnight session of 2026-09-28, which the operator asked for with all four candidate
+bundles: the lows left by release 10, the homepage deploy from `/sites`
+([`homepage-deploy-from-ui.md`](homepage-deploy-from-ui.md)), umtool's brand fonts, and one-core
+Phase 4 slice 3 ([`one-core.md`](one-core.md), "Phase 4"). Rules:
+`plans/tools/implementer-rules.md`, with the commit trailer this release's prompts give.
+
+**The operator's standing choices for the night:**
+- **Copy:** the three items that need words ship with **draft lines**, one marked `DRAFT`
+ constant each in `export/app/ask/hubScopeCopy.ts`, for a morning ruling.
+- **Merging:** each slice merges to `main` after its review. **No cut and no deploy**; an
+ unattended build-deploy would publish the merged code with its `[Unreleased]` notes, and the
+ operator accepts that.
+- **Cleanup:** the 14 merged worktrees of releases 9–10 were removed first (55 GiB freed;
+ `diet-series` kept).
+
+## The slices
+
+| Slice | Branch | What | Owns |
+|---|---|---|---|
+| O3 | `r11/runner-lows` | `resolveMaybeMissingState` reads a newer `error` probe as `maybe_missing` (+ an export check of the presence badge); a failed forced download keeps the subtitle pass's status; the `cookies-mode.spec:241` flake (keep the run log mounted); cut-release review lows L3 + L4 | `common/lib/availability*.ts`, the maybe-missing part of `buildIndex.ts`, `downloadOneManaged.ts`, `DownloadStage.tsx`, `common/controller/cutRelease.ts`, `api/ops/cut-release` |
+| O4 | `r11/homepage-deploy-ui` | The homepage's build and deploy from `/sites`: three job kinds, the refusals, a Homepage section, `pnpm ops build-homepage` / `deploy-homepage` | `editor/app/sites/**`, the two new ops routes, the job-kind entries, `scripts/archilyzer-ops.mjs` verbs, `builtHomepageProblem` |
+| O1 | `r11/hub-lows` | A "built-ins loaded" flag; three DRAFT copy lines (a zero-archive `/ask`, a member's missing live chat with a subs-only Retry, "Searching N of M archives"); `normalizeSocialSvg` fills children; `mcp/README.md`'s `fetch_clip` env lines | `export/app/ask/**`, `export/app/components/hub/**`, `SearchDataContext.tsx`, `siteRegistry.ts`, `normalizeSocialSvg`, `mcp/README.md` |
+| O2 | `r11/homepage-lows` | A custom hex fitted per base on the homepage cards; a 6th validated chart slot; a forced-colours fallback for the mark ring; the homepage e2e fixture copy | `homepage/app/components/*`, `common/lib/siteColor.ts` / `homepageChart.ts` / `homepageChartData.ts`, `BrandMark.tsx`, the homepage e2e setup |
+| O5 | `r11/umtool-fonts` | The rail, ledger and chart text in Plex Sans under the brand preset; a vendored bold IBM Plex Mono; an unbranded render byte-identical | `umtool/report-to-video/**` |
+| O6 | `r11/phase-4-s3` | `archilyzer doctor`, `run <operation>`, `mcp`; `PUBLISH.md` absorbing `DEPLOY_DOCKER.md` + `DEPLOY_CLOUDFLARE.md`; the env-var docs; the `E2E_` prefix cleanup LAST | `common/bin/archilyzer.ts`, the docs, then the playwright configs + helpers |
+
+**Waves:** O3 ‖ O4 ‖ O6 (the marathon) first; O1 ‖ O2 as the first two merge; O5 last. O6
+merges `main` once O1–O5 have landed, then does its `E2E_` rename. Then one integration gate on
+`main`, and the morning runbook (`~/reports/overnight-2026-09-28/MORNING.html`).
+
+**Priority if the night runs short:** O3 > O4 > O1 > O2 > O5 > O6's remainder.
+
+## Record
+
+## Rollout
+
+Nothing is rolled out tonight. The morning runbook lists what is owed: the :3001 editor restart,
+a release cut and then the deploys, and the YouTube asset re-upload.