Skip to content

[Bug]: native Windows lane never runs the control-plane suites the project hardened and fixed for Windows, so Windows-only regressions ship qualified #6638

Closed

Description

@JasonBuildAI

What happens

LoopX ships native Windows support, and the native Windows qualification lane (windows-powershell in .github/workflows/python-tests.yml) is a required merge-gate job. That lane runs a curated list of TypeScript suites (6 of the 266 files in tests/control_plane_ts/). Every control-plane suite that carries behavior written or fixed specifically for native Windows is currently outside that list, so its Windows behavior is never exercised in CI:

Suite Native Windows fix that made it host-qualified In the Windows lane
tests/control_plane_ts/checkpoint_artifacts.test.ts #6562 / #6566: copied-file durability flush through a read-only handle no
tests/control_plane_ts/sqlite_backup.test.ts #6258: state-backup archive flush through a writable handle no
tests/control_plane_ts/agent_preferences.test.ts #6356: host-independent assertions no
tests/control_plane_ts/authority_archive.test.ts #6356, and it asserts the win32 directory-sync boundary no
tests/control_plane_ts/canonical_task_lease_renew.test.ts #6356 no
tests/control_plane_ts/cold_source_import.test.ts #6356 no
tests/control_plane_ts/coordination_runtime_shadow.test.ts #6356 no
tests/control_plane_ts/effect_runtime_snapshot.test.ts #6356 no
tests/control_plane_ts/goal_acceptance_authority.test.ts #6356: CRLF-aware configuration fence no
tests/control_plane_ts/quota_void_commit.test.ts #6356 no
tests/control_plane_ts/shadow_entry_delivery.test.ts #6356 no

The lane also installs no repository-root dependencies, so any suite that imports a package (for example the PostgreSQL provider's pg) cannot run there at all.

Impact

Windows-only runtime regressions keep shipping with green qualification:

Root cause: the lane list is hand-curated and no contract keeps it aligned with the suites that encode native Windows behavior, so each Windows-only fix can land without adding the coverage that would catch the next one. #6562 is the demonstrated cost of that drift.

Expected

The windows-powershell lane qualifies every control-plane suite that carries native Windows behavior, and a contract test keeps it that way so the coverage cannot silently drop out again.

Environment

  • Repository revision: dda6f7ef7 (main), verified on a native Windows 11 host with node v22.22.3 (the version the lane pins for its SQLite steps).
  • The 11 listed suites run green on that host: 271 tests, 246 pass, 0 fail, 25 skipped (20 PostgreSQL-provider, 3 symlink-privilege, 2 POSIX-only), 48.1s (node --no-warnings --experimental-sqlite --experimental-strip-types --test <suites>).

Drafted with AI assistance at my request, under my direction and review.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions