Commit Graph

6 Commits

Author SHA1 Message Date
Chinesezjc 0580bc9068 fix(ci): reject partially parsed concurrency limits
Number.parseInt accepts a numeric prefix, so values like 1.5 or 8junk
silently ran an unintended worker count. Require the full string to
round-trip (same pattern as run-gates' positiveIntArg).
2026-07-22 15:30:53 +08:00
Chinesezjc e23c201da8 perf(ci): parallelize packed-companion probes
verify-built-package-invariants ran 100+ npm-pack + plain-Node probes
serially, dominating the CI artifacts lane (~4min of a ~5min job; ~7.5min
on Windows). Each probe stages its packed view inside its own package and
spawns its own processes, so the probes are independent — run them through
the same bounded worker pool shape as publint-all, capped by
DSH_BUILT_INVARIANTS_CONCURRENCY (default availableParallelism), failures
kept in manifest order.

Measured on the gate alone: 2m07s serial -> 17s at concurrency 8.
CI lanes pin the cap to 8, matching DSH_PUBLINT_CONCURRENCY.
2026-07-22 13:21:18 +08:00
Tianyi Cui d4b126862e fix(ci): preserve pnpm links in packed probes 2026-07-21 18:11:24 +08:00
Tianyi Cui 4e021b4686 fix(ci): invoke npm portably on Windows 2026-07-21 17:56:15 +08:00
Tianyi Cui 504fbf59f3 fix(invariants): replay histories and pack companions 2026-07-21 17:46:43 +08:00
Tianyi Cui 0c08e34a4a fix(invariants): harden runtime contracts and gates 2026-07-21 00:25:38 +08:00