CI only: make main's CI green (mutation rows and Windows templates)

Draft
BA
5d ago
+117-49

CI-only draft for a worker's Windows proof. Not for merging; the change reaches main through the gated push.


Summary by cubic

CI-only change to make main's CI green; it reaches main through the gated push rather than being merged directly. Fixes Windows template path canonicalization and updates mutation rows whose expected failures had drifted.

Windows paths

  • Resolve template roots and path/repo values to the drive-path spelling the Windows fs and git built-ins accept, since canonicalize returns \\?\ extended-length paths they refuse.
  • On Windows, ~ now expands to the process token's profile folder, matching the Windows fs built-in, instead of HOME.
  • Windows tests spell roots as drive paths and use a shared plain real-path helper.

Mutation rows

  • Later tests asserting the same property join expect_red.
  • The canonical-path-bounds and expiry-never-shortens mutations narrow to their intended checks; the dry-run bounds mutation runs only dry-run tests.
  • Lockfile edits follow subc-protocol 0.31.0.