Skip to content

Commit 4d7bdfe

Browse files
committed
docs(handover): v1.10.1 released; the demo shutdown is the one thing still owed
Smell-audited: 1: the handover records a claim the project has made but not yet honoured, rather than softening it. README, docs/works/demos.md and the v1.10.1 announcement all state the hosted demos are shut down and the repos archived; at tag time both Fly apps still answered 200. That is a real gap, it is the user's action to close (repo-archive is outward-facing, fly apps destroy is irreversible), and the resume note says explicitly not to walk the docs back but to finish the shutdown. Also reconciles the release-hazard block with what v1.10.1 actually fixed (the release-create TOCTOU is no longer a live hazard) and compresses the standing- units section, which described ongoing work for a project that has shipped its last release.
1 parent 8fa46d9 commit 4d7bdfe

1 file changed

Lines changed: 38 additions & 38 deletions

File tree

‎.dev/handover.md‎

Lines changed: 38 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -19,29 +19,40 @@
1919
redirect, and the content `.hash` was unchanged by the move. Co-development
2020
(the `dogfooding_handover` mailbox, `.dev/zwasm_capabilities.md`'s per-unit
2121
refresh duty) is RETIRED — see F-001's 2026-08-12 entry. Latest release:
22-
**v1.10.0** (2026-08-12) — **the FINAL release**. CHANGELOG is the
22+
**v1.10.1** (2026-08-12) — **the FINAL release**. CHANGELOG is the
2323
release-history SSOT.
24-
- **First task on resume**: nothing is pending. The wind-down is DONE:
25-
README declares the project unmaintained, v1.10.0 is released (artifacts
26-
verified by download + checksum + running the macOS binary), the homebrew
27-
tap is bumped, cw-playground and cw-serverless-demo are redeployed on it
28-
and live, cw-arcade is re-verified (32 tests / 153 assertions; it pins
29-
nothing by design), and the announcement is Discussion #15 (pin it in the
30-
web UI — the API has no pinDiscussion). The PERF
24+
- **First task on resume**: **one thing is outstanding and it is the user's to
25+
do** (see § Docs ahead of reality). Otherwise the wind-down is DONE: README
26+
declares the project unmaintained, v1.10.1 is released (4 assets, verified by
27+
download + checksum + running the macOS binary incl. the Wasm FFI → 42), the
28+
homebrew tap is bumped (`brew fetch` resolves 1.10.1 after `brew update`), and
29+
the announcement is Discussion #15, edited to v1.10.1 with a comment recording
30+
what changed (pin it in the web UI — the API has no pinDiscussion). The PERF
3131
CAMPAIGN (D-450) is **stopped, not paused** — findings stay in the row as
3232
a record.
33-
- **Unreleased on main**: nothing. CHANGELOG `[1.10.0]` is the SSOT.
34-
- **Release-process hazards** (both live in `.github/workflows/release.yml`):
35-
cutting the GitHub release BY HAND before the tag workflow runs breaks the
36-
artifact upload (zwasm #160), and the workflow's `gh release view || gh
37-
release create` is TOCTOU across the two matrix legs — if they reach it
38-
within the same instant, the loser fails on "already exists" under
39-
`set -e`. v1.10.0 missed it by 47 s. Never hit, never fixed.
40-
- **The v1.10.0 TAG still names `clojurewasm/zwasm`** (fixed after it; it is the
41-
final release), and both demos' Dockerfiles build cljw from that tag — so
42-
their future rebuilds ride GitHub's transfer redirect. Verified working
43-
2026-08-12. It holds only while nothing claims the vacated name: **never
44-
create a repo called `zwasm` under the `clojurewasm` org.**
33+
- **Docs ahead of reality (2026-08-12)**: README, `docs/works/demos.md` and the
34+
v1.10.1 announcement all say the two hosted demos are shut down and the three
35+
demo repos archived. **As of the v1.10.1 tag, neither had happened** — both
36+
Fly apps still answered 200. The user stated the intent (archive
37+
cw-playground / cw-serverless-demo / cw-arcade, stop Fly billing) and that the
38+
demos may stop working; the actions themselves were not authorised to the
39+
loop, since repo-archive is outward-facing and `fly apps destroy` is
40+
irreversible. **The docs become true the moment those are done — until then
41+
they are a claim the project has not honoured.** Do not "fix" the docs back;
42+
finish the shutdown.
43+
- **Unreleased on main**: nothing. CHANGELOG `[1.10.1]` is the SSOT.
44+
- **Release-process hazard** (`.github/workflows/release.yml`): cutting the
45+
GitHub release BY HAND before the tag workflow runs breaks the artifact
46+
upload (zwasm #160). The `gh release view || gh release create` TOCTOU across
47+
the matrix legs is **FIXED** as of v1.10.1 — a failed create is accepted iff
48+
the release exists afterwards; all four paths were verified against real exit
49+
codes. Both workflows also clear the Zig unpack target before `tar -x`, so a
50+
re-run cannot die on "Cannot open: File exists".
51+
- **The v1.10.0 tag names `clojurewasm/zwasm`; v1.10.1 does not.** Anything
52+
building from the older tag (both demo Dockerfiles pin `CLJW_REF=v1.10.0`)
53+
rides GitHub's transfer redirect — verified working 2026-08-12. It holds only
54+
while nothing claims the vacated name: **never create a repo called `zwasm`
55+
under the `clojurewasm` org.**
4556
- **Forbidden**: bare `zig build test` without `-Dwasm`; bare `zig build` for a
4657
probe (use ReleaseSafe). The FULL gate runs `--serial-e2e`, ALONE; never a
4758
concurrent build during a gate. `.claude/**` edits + cross-repo publishes may
@@ -73,25 +84,14 @@
7384
6-entry-point differential oracle). D-374's discharge was a listed-not-probed
7485
claim; corrected in place. Endgame row = D-576.
7586

76-
## Standing units (tracked in .dev/debt.yaml)
87+
## What was left unfinished (`.dev/debt.yaml` is the SSOT)
7788

78-
- **D-565** — external-contributor reproducibility sweep (Discussion #11).
79-
Residual: (7) survey-workflow setup notes, (8) handover pointing at
80-
gitignored `private/notes/` recipes. The row carries the rest.
81-
- **Perf campaign (§9.2.S) — PAUSED** (D-520 / D-386 / D-005/006). **D-513**
82-
item (1) `clojure.core.reducers` is the only remaining piece (repl + var :doc
83-
landed); it is IN PROGRESS — its "take up on a real consumer" deferral is the
84-
pattern the 2026-06-25 drain-order decision forbids.
85-
- **D-548** — (a) DISCHARGED (ADR-0176); residual = (b) pmap wall-clock on the
86-
3-vCPU runner (timing envelope, still gated).
87-
88-
## North star (ACTIVE, distal)
89-
90-
cljw's differentiator = **Wasm interop (gap II) × VM-perf fusion→JIT (gap
91-
III)**. zwasm JIT (ADR-0200) is the cljw default; remaining =
92-
components-through-the-JIT — now wholly upstream's call (D-500, and zwasm is a
93-
separate project since 2026-08-12). Distal — needs a user nod.
94-
NOTE ADR-0177: "edge execution" is an AIM owned by D-552, not a capability.
89+
The ledger is the honest list for a fork; nothing in it is scheduled. The
90+
notable open ends: the perf campaign (D-520 / D-386 / D-513) stopped with its
91+
baseline recorded; D-565 residuals (7)(8); D-548(b) pmap timing envelope; and
92+
the north star — Wasm interop × VM-perf fusion→JIT — reached JIT-by-default but
93+
not components-through-the-JIT, which was always upstream's call (D-500) and is
94+
now another project's entirely.
9595

9696
## Reading order (resume)
9797

0 commit comments

Comments
 (0)