By: syd <syd@kronor.io>
Rewrite the verdict: Nix alone, and turn PLAN.md into the adoption plan The verdict was architecture C, the Nx project graph becoming the Nix graph. It is architecture A, Nix alone. The earlier draft dismissed A as "correct, and coarser" on two assumptions that measurement disproved: that Nix could not find the import edges, and that directory-granularity filesets were a cost. The edges are in the manifests, and for the test derivation the whole project directory is the *correct* input because a Vitest config is a program. Retracted explicitly, because it was this document first claim: "which package a TypeScript import resolves to" as the thing Nx knows and Nix cannot get. Nx does not resolve it either in a pnpm workspace; it reads the manifest. The only entry left on that list is the per-test-file split. Added: the scaling table, and a preconditions section giving the conditions the recommendation depends on, each with a one-command check and what to do when it fails. That is what makes this transferable to a repository nobody here has seen. PLAN.md was a plan to measure scaling, which is now done. It is now the plan the original request actually asked for: how to produce a good flake for the real repository, in the order the pieces bite, with what not to bother with. Also corrects a stale number caught by the audit: the headline table gave the README row as 0 invalidated where the committed matrix says 1, and the assertion count was 128 where a real run counts 129.
Total
4m15s
Created Started Finished
| Time to Start | Worker time | Duration | Time to finish | Idle | |
|---|---|---|---|---|---|
| Config | 0s | 1s | 1s | 1s | 0s |
| Eval | 1s | 4m13s | 4m13s | 4m15s | 0s |
| Build | 3s | 9s | 4m08s | 4m11s | 0s |
| Suite | 0s | 4m24s | 4m15s | 4m15s | 0s |