Archilyzer · Source

archilyzer

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

commit f9fd2272b3840c5a0e7e7a4771c980ae09bf625d
parent ba5ae2347fc02867852ddc27aa079bd6b16db7f5
Author: I Mean I'm Just Saying <imeanimjustsaying@kiwifarms.st>
Date:   Tue, 29 Sep 2026 20:43:30 -0400

plans: release 15's record — storage and build hardening: three slices (IG the index build's hold, DS a stalled drive, UT umtool's trace)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

Diffstat:
Aplans/release-15.md | 29+++++++++++++++++++++++++++++
1 file changed, 29 insertions(+), 0 deletions(-)

diff --git a/plans/release-15.md b/plans/release-15.md @@ -0,0 +1,29 @@ +# Release 15 — storage and build hardening + +`main` at `99d4d76a` (release 14's T1, H1 and H2 merged). No plan file of its own: each slice's +prompt carries its ruling, and this record carries what was built. Rules: +`plans/tools/implementer-rules.md`, with the commit trailer this release's prompts give. + +**The standing choices** (not re-opened): +- **An unmounted drive is not an empty channel,** for any build that walks the pool. The stats + build already holds such a channel ([`stats-cache-key.md`](stats-cache-key.md)); the index + build gets the same hold here. +- **A slice that needs another slice's file stops and says so**; it does not edit it. +- **Nothing is edited in the primary checkout**; each slice has its own worktree, and the parent + merges with `git merge --no-ff` only on a clean tree. + +## The slices + +| Slice | Branch | What | Owns | +|---|---|---|---| +| IG | `r15/index-hold` | The index build holds an unreachable channel instead of emptying it | `common/controller/buildIndex.ts` + new `buildIndex.test.ts`, `common/controller/buildStats.ts` (the hold's words move to a shared module), new `common/lib/channelMediaHold.ts`, `common/bin/build-index.ts`, `common/lib/envVars.ts`, `ENVIRONMENT.md` | +| DS | `r15/drive-stall` | A stalled drive does not stop the editor answering | per its prompt | +| UT | `r15/umtool-trace` | umtool's build stops tracing the whole `umtool/` folder | per its prompt | + +**Order:** IG → DS. DS adds a health gate inside `inspectChannelMedia`, which IG's hold calls +through its public signature. UT is independent. The shared files are `editor/CHANGELOG.md`'s +`[Unreleased]` and this record. + +## Record + +## Rollout