Skip to content

Commit 47fbbb4

Browse files
committed
Update CLAUDE.md with eval 395 final results
568/643 succeeded (88.3%). Remaining 75 failures are from 3 root causes: GCC fixincludes (32 windows), Determinate Nix orphaned store paths (32 static-iog-full), hadrian stale cache (8 ghc910-static). Confirmed the orphaned store path bug is reproducible across all darwin builders and affects multiple multi-output packages.
1 parent e80ee40 commit 47fbbb4

1 file changed

Lines changed: 24 additions & 15 deletions

File tree

CLAUDE.md

Lines changed: 24 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -70,21 +70,30 @@ pkgs.runCommand "devx" {} ''
7070

7171
### Latest Update (2026-02-15)
7272

73-
**Eval 392** (commit 02e8a11): 566/643 succeeded, 75 dep-failed, 2 building.
74-
Root causes: postgresql-musl (orphaned store paths on builders), GCC-14.3.0 (infra),
75-
hadrian (stale cache).
76-
77-
**Root cause discovery:** postgresql-musl builds SUCCEED on builders (all phases
78-
complete, output written to store), but outputs are NOT REGISTERED in the Nix
79-
database. This creates "orphaned store paths" — directories exist in /nix/store/
80-
but `nix path-info` says "path is not valid". The queue runner cannot copy
81-
unregistered outputs back to hydra, so the build is recorded as failed.
82-
83-
This is a Determinate Nix bug on the darwin builders. Found 56 lock files on
84-
darwin-6, 869 on darwin-b — all indicating failed output registrations.
85-
Cleaned orphaned paths on all builders. Currently retrying builds.
86-
87-
**Latest commit** 02e8a11 — clears disallowedReferences for postgresql musl cross.
73+
**Eval 395** (commit e80ee40): 568/643 succeeded, 75 failed, 0 building.
74+
This is a significant improvement from eval 370 (507 succeeded, 92 failed).
75+
76+
**Root causes of remaining 75 failures:**
77+
- **32 windows builds**: GCC 14.3.0 `/usr/include` missing (infra fix needed)
78+
- **32 static-iog-full builds**: postgresql musl — Determinate Nix orphaned store paths
79+
- **8 ghc910-static builds**: hadrian — queue runner in-memory failure cache
80+
- **3 required builds**: aggregate failures from above
81+
82+
**Determinate Nix orphaned store path bug (CONFIRMED REPRODUCIBLE):**
83+
postgresql-musl builds SUCCEED on builders (all phases complete, output written
84+
to store), but outputs are NOT REGISTERED in the Nix database. This creates
85+
"orphaned store paths" — directories exist in /nix/store/ but `nix path-info`
86+
says "path is not valid". The queue runner cannot copy unregistered outputs
87+
back to hydra, so the build is recorded as failed. This bug reproduces on
88+
every retry across all darwin builders and both musl architectures. It also
89+
affects other multi-output packages (aeson, pretty-show, ghc-lib-parser, HLS).
90+
91+
**Queue runner failure cache**: The queue runner maintains an in-memory cache
92+
of failed derivations that persists across restarts and survives deletion of
93+
buildstep entries and build logs. The only way to bypass it is to change the
94+
drv hash (e.g., adding a cache-breaking attribute to the derivation).
95+
96+
**Latest commit** e80ee40 — cache breaker for postgresql musl (preBuild no-op).
8897

8998
**Summary of all fixes applied (in overlay order):**
9099
1. **happy disallowGhcReference** (build-fixes): Disable GHC reference check for

0 commit comments

Comments
 (0)