Skip to content

fix(win): tests run on native Windows + diagnosable probe → 1.29.1 (#43) - #114

Merged
sandstream merged 4 commits into
mainfrom
windows-ci/diag
Jun 24, 2026
Merged

fix(win): tests run on native Windows + diagnosable probe → 1.29.1 (#43)#114
sandstream merged 4 commits into
mainfrom
windows-ci/diag

Conversation

@sandstream

Copy link
Copy Markdown
Owner

Verify-driven #43 progress using the windows-latest probe.

Fixes (cross-platform, no new deps):

  • scripts/test.mjs — no-dep test runner (sets env in-process + collects dist/**/*.test.js itself). The old test script's POSIX inline env-vars (KIT_NON_INTERACTIVE=1 … node) failed on Windows cmd/pwsh, so the suite never started.
  • secrets-sync: literal /dev/nullos.devNull (was D:\dev\null ENOENT — 7 failures).
  • Windows probe tees test output to a downloadable artifact (pipefail + continue-on-error) — gh's CI logs truncate it.

Real windows-latest result now: Install ✓, Build ✓, 1526/1542 unit tests pass (up from: tests couldn't even start → then 1519 → 1526). The remaining 15 failures are characterized on #43: POSIX-path / startsWith("/") test assumptions + chmod/0o600 permission semantics (needs a Windows-ACL decision).

macOS verified (144 test files, suite runs); avoided cross-env (single-maintainer per kit triage) in favor of the node script.

🤖 Generated with Claude Code

sandstream and others added 4 commits June 24, 2026 17:01
gh's CI logs truncate the node --test output (~12KB, no TAP), so the real
Windows test failures aren't readable. Tee npm test to win-tests.log (pipefail +
continue-on-error) and upload it as an artifact — so the specific runtime
blockers become diagnosable to fix verify-driven.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The test script set env via POSIX inline vars (KIT_NON_INTERACTIVE=1 … node) —
Windows cmd/pwsh parse that as a command → 'not recognized', tests never start
(found via the windows probe artifact). Replace with scripts/test.mjs: sets env
in-process, collects dist/**/*.test.js itself (no shell-glob), runs node --test.
No new dep (avoided cross-env — single-maintainer per kit triage). macOS verified
(144 files, suite runs).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
A literal '/dev/null' becomes 'D:\dev\null' on Windows → ENOENT (7 test
failures in the windows probe). os.devNull is the cross-platform null device.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
… probe diagnostics) (#43)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

✅ Docker image built successfully

  • CLI image: docker.io/sandstream/kit:test

@sandstream
sandstream merged commit 5a31d7b into main Jun 24, 2026
17 checks passed
@sandstream
sandstream deleted the windows-ci/diag branch June 24, 2026 15:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant