From 9ad04e2dda58a8df7214d8eb2a12115f99584288 Mon Sep 17 00:00:00 2001 From: agra Date: Sun, 14 Jun 2026 16:17:26 +0300 Subject: [PATCH] docs(ffi-linkage): note -Dupdate-goldens churn resolved (1-byte conform) --- current/CHECKPOINT-EXTERN-EXPORT.md | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/current/CHECKPOINT-EXTERN-EXPORT.md b/current/CHECKPOINT-EXTERN-EXPORT.md index 5da2106..5fc8a0b 100644 --- a/current/CHECKPOINT-EXTERN-EXPORT.md +++ b/current/CHECKPOINT-EXTERN-EXPORT.md @@ -202,10 +202,14 @@ Part A ratified (bare / postfix / `⇒ callconv(.c)` / lib-separate). Part B: - (4.diag2) Added `examples/1175-diagnostics-extern-export-conflict.sx` — `extern export` on one fn decl previously gave bare "expected ';'". `xfail` (golden = clean message) → `green`: `parseFnDecl` rejects a second linkage keyword after `parseOptionalExternExport`. Suite - green (643/444). **PHASE 4 COMPLETE → PART A DONE.** (Workflow note: `-Dupdate-goldens` - keeps newline-normalizing the 5 empty-stderr files [1226/1227/1348/1349/1426] — revert - that churn after each regen; a flaky `0712-sha256-streaming` timeout appears only under - concurrent `zig build` load, not a real failure.) + green (643/444). **PHASE 4 COMPLETE → PART A DONE.** +- (golden-fix) **`-Dupdate-goldens` churn RESOLVED.** Root cause was NOT a code bug: + `writeGolden` always writes `content + "\n"` (empty → canonical 1-byte `\n`, used by 484 + of 489 empty goldens). The 5 churning stderr files [1226/1227/1348/1349/1426] were 0-byte + *outliers* (verify trims trailing `\n` so both forms passed, but regen always rewrote them + to 1-byte). Conformed all 5 to the 1-byte form → `-Dupdate-goldens` is now idempotent, no + more churn. (Separately: a flaky `0712-sha256-streaming` >10s timeout appears only under + concurrent `zig build` load — not a real failure; re-run serially.) ## Known issues - **Workflow hazard (1.2):** an editor format-on-save (or `zig fmt`) clobbered the