Skip to content

[codex] test: add startup smoke coverage#204

Merged
hydro13 merged 2 commits into
mainfrom
codex/windows-support-phase-16-smoke-tests
May 5, 2026
Merged

[codex] test: add startup smoke coverage#204
hydro13 merged 2 commits into
mainfrom
codex/windows-support-phase-16-smoke-tests

Conversation

@hydro13
Copy link
Copy Markdown
Owner

@hydro13 hydro13 commented May 5, 2026

Summary

Adds Windows Support Phase 16 startup smoke coverage.

  • Adds tests/smoke/startup-smoke.js, a Node runner that starts Tandem through scripts/start.js --skip-compile, polls http://127.0.0.1:8765/status, and cleans up the spawned process tree.
  • Adds npm run smoke:startup.
  • Runs the smoke test in the verify GitHub Actions matrix on Windows and macOS only; Linux remains best-effort and skips this phase's smoke step.
  • Updates CHANGELOG.md and TODO.md for the test/CI coverage.

macOS safety

The change is additive for macOS. It does not change shared app runtime behavior, release workflow behavior, signing, updater logic, or platform adapters. The same startup smoke runner now runs on macOS verify so the existing Tier 1 baseline must stay green.

Windows scope

This does not make Windows required yet. The existing workflow-level continue-on-error behavior is unchanged, so Windows remains non-blocking until the later promotion phase.

Validation

  • npm run verify passed locally on Windows.
  • npm run smoke:startup passed locally on Windows and reached http://127.0.0.1:8765/status.
  • Confirmed port 8765 had no listener after smoke cleanup.
  • actionlint .github/workflows/verify.yml passed locally.
  • No new dependencies were added.
  • Private/local Windows planning files remain ignored and were not staged or pushed.

What was built/changed:
- New files: tests/smoke/startup-smoke.js
- Modified files: .github/workflows/verify.yml, package.json, CHANGELOG.md, TODO.md
- New npm scripts: smoke:startup
- New CI coverage: startup smoke step on Windows and macOS verify jobs

Why this approach:
- Uses the existing cross-platform startup helper with --skip-compile after repository verification has compiled the app.
- Polls http://127.0.0.1:8765/status with a clear timeout and cleans up the spawned process tree.
- Keeps Linux best-effort by gating the smoke step to Windows and macOS only.
- Adds no new dependencies and does not change runtime updater, release, or signing behavior.

Tested:
- npm run verify: zero errors
- npm run smoke:startup: reached http://127.0.0.1:8765/status and cleaned up the process
- actionlint .github/workflows/verify.yml: passed
- netstat :8765 after smoke: no listener
@hydro13 hydro13 self-assigned this May 5, 2026
@hydro13 hydro13 marked this pull request as ready for review May 5, 2026 07:30
@hydro13 hydro13 merged commit 1cccc4e into main May 5, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant