You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ci(release): add prepared-not-fired release.yml + close D-541/542/543
ADR-0167. Release-artifact + version-staging + dep-pin coherence:
- .github/workflows/release.yml (D-542): native matrix (macos-15 aarch64 +
ubuntu-22.04 x86_64) builds `cljw` with -Dwasm -Doptimize=ReleaseSafe
-Dcpu=baseline, tar.gz + sha256, attaches to the GitHub Release. Fires ONLY on
a user-pushed `v*` tag (the loop never tags). actionlint clean.
- D-541 version staging: convention set + honoured (.version stays 1.0.0-alpha.1;
all rc.1 strings staged under CHANGELOG `## [Unreleased]`); user owns the bump.
- D-543 dep-pin: THIRD_PARTY records exact pins; the eager zlinter fetch is
confirmed structural (build.zig:5 top-level @import, cf. zwasm D-274) and
documented as a named pre-1.0 limitation. zwasm-pin bump = user-owned CODEV.
D-541/542/543 discharged; D-538 narrowed (settings.json = user action). rc.1
readiness gate: only D-536 (debt code-truth reconcile) remains loop-ownable.
rc.1 readiness gate (finite). (a) is partly user-owned (zwasm tag = CODEV);
96
-
the doc half is loop-ownable. (b) zlinter lazy-fetch is a known Zig
97
-
build-graph limit (cf. zwasm D-274) — may resolve to the documented-wart form.
56
+
rc.1 readiness gate (finite) — but the residual (settings.json move) is
57
+
the `.claude/`-edit-blocked non-autonomous remainder; a USER action, not a
58
+
loop blocker. The finite gate treats D-538's loop-ownable half as done.
98
59
last_reviewed: "2026-07-01"
99
60
- id: "D-522"
100
61
status: |-
@@ -2608,6 +2569,21 @@ standing:
2608
2569
barrier: "open after the D-440 arc completes (R4 + R5 must first rewrite the bulk of 'Phase N' citations to gap-area terms). Premature adoption = ~70 dangling citations with no 1:1 redirect. Trigger: D-440 R4/R5 done + a user nod to re-architect the planning axis (it is depth-4, the project's organizing metaphor)."
2609
2570
last_reviewed: "2026-06-15"
2610
2571
discharged:
2572
+
- id: "D-543"
2573
+
status: "DISCHARGED 2026-07-01 (ADR-0167; loop-ownable part). (a) Dep pins recorded exactly in THIRD_PARTY.md (zwasm Apache-2.0 @fc7ff0b3b/v2.0.0-alpha.3, -Dwasm-only; zlinter MIT @9b4d67b9). Resolving the '1.0.0-rc.1 embeds zwasm v2.0.0-alpha.3' stability story by BUMPING the pin to a coherent zwasm release is USER-OWNED CODEV (needs zwasm to cut one — tracked via handover north-star + .dev/zwasm_capabilities.md), not a loop task. (b) Confirmed the eager zlinter fetch is STRUCTURAL: build.zig:5 has a top-level comptime `@import(\"zlinter\")`, which the Zig build graph resolves eagerly (matches zwasm's ratified D-274 — lazy needs an upstream b.lazyDependency-able builder). Recorded as a NAMED pre-1.0 limitation in THIRD_PARTY.md (accepted development-time fetch, not a runtime dep). Both parts resolved to the loop's extent; the zwasm-bump residual is user/upstream-gated."
2574
+
category: "infra"
2575
+
barrier: "none — DISCHARGED (zwasm-pin bump residual is user-owned CODEV)."
2576
+
last_reviewed: "2026-07-01"
2577
+
- id: "D-542"
2578
+
status: "DISCHARGED 2026-07-01 (ADR-0167). Release-artifact workflow .github/workflows/release.yml (PREPARED-not-fired): native matrix (macos-15 aarch64 + ubuntu-22.04 x86_64 — native, not cross-compile, to keep the embedded zwasm JIT's arch-specific codegen honest) builds cljw with `-Dwasm -Doptimize=ReleaseSafe -Dcpu=baseline` (baseline CPU = shipped/deploy config, avoids SIGILL on shared hosts per memory fly_deploy_zig_binary_gotchas), verifies `cljw --version`, tar.gz + .sha256, attaches to the GitHub Release (idempotent create + upload --clobber). Triggers ONLY on a user-pushed `v*` tag or manual dispatch (the loop never tags). permissions contents:write; TAG_NAME via env (no injection). actionlint clean. First-tag validation (each artifact runs, reports ReleaseSafe) noted in the workflow header."
2579
+
category: "infra"
2580
+
barrier: "none — DISCHARGED (fires on the user's tag; first-tag validation noted)."
2581
+
last_reviewed: "2026-07-01"
2582
+
- id: "D-541"
2583
+
status: "DISCHARGED 2026-07-01 (ADR-0167). Version-staging convention established + honoured: build.zig.zon .version stays `1.0.0-alpha.1` (verified — no premature rc.1 bump); every `1.0.0-rc.1` string in CHANGELOG/THIRD_PARTY/docs is STAGED text under `## [Unreleased]` (+ a CHANGELOG STAGING NOTE spelling out the maintainer's bump+tag step). This avoids the transient SSOT contradiction zwasm hit (their dedicated fix-CHANGELOG-version commit). The final `.version` bump + `git tag`/publish is USER-OWNED — the loop prepares everything and never tags. Nothing left for the loop to do here until the user cuts the tag."
2584
+
category: "infra"
2585
+
barrier: "none — DISCHARGED (convention set; the bump/tag is the user's action)."
2586
+
last_reviewed: "2026-07-01"
2611
2587
- id: "D-540"
2612
2588
status: "DISCHARGED 2026-07-01 (ADR-0167). CHANGELOG.md (Keep-a-Changelog; the rc.1 entry sits under `## [Unreleased]` per the D-541 staging convention + a STAGING NOTE explaining the maintainer's tag/bump step). THIRD_PARTY.md naming exact license + pinned commit per fetched dep (zwasm Apache-2.0 @fc7ff0b3b/v2.0.0-alpha.3, -Dwasm-only; zlinter MIT @9b4d67b9, dev-only) — an EPL-2.0 project building against non-EPL deps (none vendored in-tree; fetched by the Zig pkg mgr) + the EPL clj lineage cross-ref to NOTICE. .gitattributes (LF normalize + .wasm/.png binary + docs/ja/archive linguist-documentation) + .editorconfig. build.zig.zon .paths now ships LICENSE + NOTICE + THIRD_PARTY.md + CHANGELOG.md + README + src (NOTICE was absent despite EPL src/lang/clj/** shipping inside src). zlinter MIT verified against the fetched LICENSE."
0 commit comments