Delivers the property coverage promised in #1511's test scope but not landed (follow-up #1676, epic #1507 / ADR-1508). Adds tests/enh-1676-path-prefix-collapse-idempotency.property.test.cjs covering: (A) $HOME-collapse invariant for _computePathPrefix — global-under-home projects to $HOME/<suffix>/ (exact equality, not substring, so short homes like /root or /a do not false-positive); opencode is the documented exception (absolute form, never $HOME). (B) backslash->posix invariance (#1615 Windows path-leak fix). (C) path-rewrite idempotency for _applyRuntimeRewrites across the path-rewriting runtimes (f(f(c)) === f(c); attribution held at undefined to isolate the path axis). Non-vacuous: a sanity assertion proves the first pass actually rewrites the seed ~/.claude/ refs. Pure test addition — no production code changed. Uses the shared fast-check-setup (seed=42, numRuns=200). Closes #1676
7.3 KiB
7.3 KiB