From c3fc2bdb27bd0cbe696e8eb5b0576e47a696b781 Mon Sep 17 00:00:00 2001 From: Hojun-Cho Date: Sat, 8 Aug 2026 15:51:19 +0900 Subject: [PATCH] docs: carrier fleet at its terminal floor; suite roster --- docs/test-system-v2.md | 56 +++++++++++++++++++++++------------------- 1 file changed, 31 insertions(+), 25 deletions(-) diff --git a/docs/test-system-v2.md b/docs/test-system-v2.md index 9fef75fd..54b32bce 100644 --- a/docs/test-system-v2.md +++ b/docs/test-system-v2.md @@ -32,32 +32,38 @@ categories out of the ordinary developer target. | Fixed point and self-host | `test-bootstrap` | | Host linker/platform behavior | `test-platform` | -The live declarative compiler corpus has 1,495 fixtures and 2,990 C/WW cells: -338 expected rejections (314 shared and 24 stage-specific), 17 compile-only -successes, 198 exit-zero programs, and 942 explicit-exit programs. +The live declarative compiler corpus has 1,726 fixtures and 3,452 C/WW cells: +343 expected rejections, 19 compile-only successes, 209 exit-zero +programs, and 1,155 explicit-exit programs. -123 native C carriers remain. They are partitioned exactly once as five -in-process units, six bootstrap gates, one platform gate, and 111 -residual compiler, package-layout, ABI, diagnostic-observer, driver, -linker, or FFI gates. The byte/artifact partition is EMPTY: its last -eleven observers are ww-native under `test/byteid/` on the -`test/testenv` helper package (`libbyteid`, `wwi`, `asmwindow`, -`freenoop`, `structabi`, `mangle`), each retired with its port in the -same commit. Rows migrated to fixtures or native `@test` -owners were removed from those carriers; there is no compatibility execution -path for retired rows. 74 former byte/artifact carriers whose only assertion -was a cstage-vs-wwstage `.s` byte-compare of sources now living in the -corpus were retired into the blanket `test-data-byteid` comparator (the -last 13 had their remaining inline sources added as fixtures first); the -observations the blanket cannot subsume — assembly-pattern windows, -symbol tables, `.wwi` round-trips, the wwstage-driver leg — are -ww-native tests under `test/byteid/`. Wwstage-driver-leg byte identity -(`ww_ww` versus `ww` over the emitted `.s` set) has one owner, -`test/byteid/libbyteid_test.ww`, whose unit sweep spans the 44-entry lib -roster (test fixtures, sentinel-guarded import probes, a zero-dep -root-only build) plus the lib/ completeness scan; the former 815/940/951 -driver-parity carriers were folded into it, their content identity -already owned by their corpus twins. +16 native C carriers remain. They are partitioned exactly once as five +in-process units, six bootstrap gates, one platform gate +(`996_dyn_ww`), and four residual survivors, each held by a named +terminal reason: `738_module_decl` (in-process parsefile calls — a +C-bootstrap observer misfiled among the residuals; freezes with the +units at the selfhost flip), `810_dyn` and `989_dynentry_run` (host +loader/glibc claims — platform class), and `794_xmod_ident_prefer` +(pins the OPEN wwstage bare-leaf fn-shadow cgen bug, a #55 sibling; +its cstage-run + wwstage-build-accept assertion set is not +fixture-expressible while the bug lives — it retires with the fix). + +The 2026-08-08 residual drain retired the other 107: 5 deleted against +verified owners, 196 rows migrated into corpus fixtures (700_e2e's 136, +the fixture-class 46, the 926/929/671 run legs), and the rest ported to +ww-native observer suites on `test/testenv`, each carrier retired in +the same commit as its replacement: `test/sep/` (sep-layout/driver), +`test/xmod/` (module-tree collisions, mangle, typecheck, direnum), +`test/asm/` (positional asm-window needle observers), `test/object/` +(w6a/w6l ELF, archive, and link facts), `test/misc/` (divergence pins, +stamp probes, wwi round-trips), `test/tool/` (driver CLI, wwdump +gates, FFI, the c6 soak), and `test/libenv/` (the lib/os + lib/dirs +env-arranger legs; those lib suites now pass bare with loud SKIPs). +All suites run under `test-compiler`. The byte/artifact partition +stays EMPTY under `test/byteid/` exactly as before; wwstage-driver-leg +byte identity keeps its one owner, `test/byteid/libbyteid_test.ww` +(44-entry roster plus the lib/ completeness scan). Known cs≠ww +divergences exposed by row migration are pinned in +`DATABYTEID_DIVERGED` (3 entries) on the graduation discipline. ## Carrier endgame