commit d6cf8734ba8702dbfdef81847d99ff8fb88f0525
parent 44109436af680716625067efa9fa84aeab0b6a7c
Author: I Mean I'm Just Saying <imeanimjustsaying@kiwifarms.st>
Date: Wed, 30 Sep 2026 20:39:50 -0400
plans: slice W1 brought to main — the merge of bbf1daf8 (one conflict, the editor changelog's [Unreleased] above [0.11.0]; doctor, HomepageBuildButtons, package.json and FACTS kept both sides); re-gates (tsc, common 2,387, editor unit 101 three ways, test:scripts 194+2, mcp 271, the capped editor build, e2e 73+1 then 72/72)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Diffstat:
1 file changed, 67 insertions(+), 0 deletions(-)
diff --git a/plans/release-13.md b/plans/release-13.md
@@ -304,4 +304,71 @@ recorded above. `main` was not merged.
- No e2e and no build: the changed spec's diff is a comment, and the rest is common code under unit
tests, plus docs.
+#### Brought to main (2026-09-30)
+
+Release 13 was reviewed SHIP on 2026-09-28 and never merged: `main` went on through releases 14, 15
+and 16 and the 0.11.0 cut, to `7a77536b`, 253 commits past this branch's fork (`441bdbb2`). The
+branch merged `main` (a merge, not a rebase, so the reviewed shas stand) at **`fd1b5a52`**. Nothing
+of W1's was deleted or superseded on `main`, so nothing yielded; every W1 change is in the merged
+tree as reviewed.
+
+**Conflicts and how each was resolved:**
+- **`editor/CHANGELOG.md`, the one conflict.** The cut renamed the old `[Unreleased]` to
+ `[0.11.0] - 2026-09-30`, and `main` has no `[Unreleased]`. W1's four bullets now sit under a new
+ `## [Unreleased]` above `## [0.11.0]`, and `[0.11.0]` is `main`'s, byte for byte. Checked by eye:
+ none of W1's bullets is inside a released section, and each appears once.
+- **Merged without a conflict, both sides kept** (each re-read on the merged tree):
+ - `common/bin/doctor.ts`. `main` added the source block (release 12 R), the stored-icon line
+ (release 14 HP), the out-of-process stall check (DS), stagit and its render cache (SG) and the
+ drive-health line (DT). None of these touches the worker loop, where L7's one change (the
+ default engine from `paths.whisperBin` / `paths.parakeetBin`) sits unchanged.
+ - `common/bin/doctor.test.ts`: `main`'s new Paths fields and tests, and W1's `whisperBin` and
+ `parakeetBin` in the test Paths and its L7 test.
+ - `editor/app/sites/components/HomepageBuildButtons.tsx`: `main` added one paragraph (release 12's
+ source-mirror note under the buttons). W1's `useRouter`, `settled()` and `onSettled` prop are
+ as reviewed. `JobLane.tsx` is unchanged on `main`; the `listed` checkbox (HS) lives in
+ `SiteForm.tsx`, which W1 does not touch.
+ - `editor/package.json`: DS's `start` (`UV_THREADPOOL_SIZE=${UV_THREADPOOL_SIZE:-16}`) and W1's
+ `test` beside it.
+ - `plans/FACTS.md`: W1's two paragraphs (the Diagnostics cards closed, a queued cancel's sidecar)
+ land where they did; `main`'s additions are elsewhere and about nothing W1 changed.
+- **Checked, nothing to reconcile:** `common/jobs/**` (`jobKinds`, `registry`, `streamCommand`,
+ `shutdownCancel`) is unchanged on `main` since the fork. DS's `needsMedia` work is in
+ `buildStats.ts` and the records, not in `jobKinds.ts`. `DiagnosticsStage.tsx` and W1's three
+ specs are unchanged on `main`; `editor/e2e/helpers.ts` gained HS's `listed`, which no W1 spec uses.
+
+**Re-gates on the merged tree** (logs `$T/w1-*.log` in the job's `tmp/`):
+- **tsc** (all workspaces) clean, 113 s. The first pass failed in `export` only, on a generated
+ `export/.next/dev/types/validator.ts` naming `app/use-with-ai/page.js`, the page DX removed. The
+ gitignored `.next/dev/types` of `export` and `editor` were deleted; neither is a source file.
+
+ | Suite | Result |
+ |---|---|
+ | common | **2,387/2,387**, 95 s: `main`'s 2,381 plus W1's 6 (registry +1, streamCommand +4, doctor +1) |
+ | editor unit | **101/101** three ways: the rules' `pnpm exec tsx --test "app/**/*.test.ts"` in `editor/`, W1's `pnpm --filter editor test` from the root, and `pnpm test` in `editor/`. The script runs the rules' glob, so it runs the same files. |
+ | `test:scripts` | **194 passed, 2 skipped (196)**, as at DS: the `LIVE=1` archive check, and UT's post-build check skipping this worktree's older umtool build |
+ | mcp | **271/271** |
+
+- **Build:** the editor's `next build`, with the primary's `transcripts/` linked in and capped at
+ 5 GB with no swap: 139 s wall (compiled in 44 s, TypeScript 85 s, under a load average of about
+ 15), max RSS 1,626,484 KB, exit 0; 79 traces, 0 entries under `transcripts/`. The link was
+ removed after the build, and nothing ran through it. No export, homepage or umtool file changed.
+- **e2e** (editor, detached and queued; `export/public` relinked per path first, the three dangling
+ links `main` no longer makes removed):
+
+ | Run | Specs | Result |
+ |---|---|---|
+ | 1 | W1's three (`transcript-source`, `diagnostics-retry-log`, `sites-homepage`); the two grids' (`availability`, `exclude-from-counts`, `retry-bucket`); `/sites` (`sites-crud`, HS's); the `/jobs` list and kind chips (`jobs`, `jobs-filters`); the cancel path (`queues`, `cancel`); `ops-api` (the homepage kinds as verbs) — `$T/w1-specs.txt` | **73 passed, 1 failed, 7.7 min**, no wait for the queue. The failure: `sites-crud.spec.ts:25`, "Saved" not visible in 5 s after **Create site**, the run's first `/sites/new` save. |
+ | 2 | `transcript-source`, `diagnostics-retry-log`, `sites-homepage`, `sites-crud`, `--repeat-each=3` — `$T/w1-specs-repeat.txt` | **72 passed, 0 failed, 4.6 min**, after 2.6 min in the queue behind W3's suite: `sites-crud.spec.ts:25` passed in each of the three repetitions, and `transcript-source` 9/9. |
+
+ Run 1's failure is the load-timeout class `release-7.md` recorded for `sites-crud.spec.ts:148`
+ ("Saved" not visible in 5 s, under load), on a spec and a form W1 does not touch; it passed 3 of 3
+ in run 2.
+- **Numbers tool:** none.
+
+| sha | what |
+|---|---|
+| `fd1b5a52` | the merge of `main` `7a77536b`; `editor/CHANGELOG.md` resolved as above |
+| _this_ | `plans:` this subsection |
+
## Rollout