Every section banner dies (103 -> 0) across test/lang, the observer
suites, the C carriers, and the five comment-heavy corpus fixtures;
banner provenance (#N cites, carrier numbers, repair-cluster labels)
folded into headers or adjacent WHY comments. Narration deleted; row
provenance, ref cites, divergence pins, and layout contracts kept
(fwd-ref decl-order guards and bootstrap-gate corpus rationale
restored where the sweep over-cut). Comment-only proven: all 3742
wwbuild workdir .s byte-identical before/after; test-commit and
test-byteid (161 lang + 1399 data, 0 pinned-divergent) green.
Strengthens the pre-symmetry-era cstage-only stdout scrape to both
frontends with gated exits and the rule-10 cs==ww byte-id; the libc
binding smoke likewise runs both stages.
One commit for both carriers: the asserttyped manifest and the -c/-r
parse-error gate are the same wwstage-only wwdump_ww subprocess
surface. The 901_*.ww raw gap companions stay in test/wcc, fed via
testenv.repo().
One commit for both carriers: flag-misuse parity and the
missing-package fatal are the same driver-CLI subprocess surface. The
-V oracle parses WW_VERSION out of cmd/wcc/ww.h at run time; the
missingpkg ww_ww twin stays owned by bootstrap carrier 993_ww_ww.c.
Ports 708_param_shadow_mod, 712_redecl and 961_opaque_guards into
test/tool/rejects_test.ww on testenv, one commit because the three
carriers share the single asymmetric-polarity claim (cstage rejects,
wwstage accepts) that a both-stage //ww:error fixture cannot carry.
The neg_selfimp leg drops: test/wcc/data/r948_selfimport/case.ww owns
the identical both-frontend claim.