Commit Graph

4 Commits

Author SHA1 Message Date
Przemek Smyrdek 846d9b45b3 Fix/lazy yaml import (#29)
* fix: lazy-load yaml so CLI startup stays within budget

The top-level 'yaml' import in bench-kit.ts is pulled in by index.ts,
so every CLI start paid for loading the YAML parser and the binary
smoke test's 50ms startup budget blew on CI (~58ms). Import yaml
dynamically inside registerBaseRepo — the only code path that needs
it.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* test: raise unix startup budget to 60ms

Local measurements show bench-kit added no startup cost (~38ms avg at
pre-bench-kit, merged, and lazy-import refs alike) — the 50ms budget
was simply too tight for shared CI runners, which hover just above it.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-08-13 21:12:44 +02:00
“mkczarkowski” e77b26ca8d fix(smoke): Windows CI — cross-platform tmp path and relaxed startup budget
- auto-version.mjs: use os.tmpdir() instead of hardcoded /tmp/ for
  release-notes.md (Windows has no /tmp)
- binary.test.ts: raise startup budget to 150ms on Windows (CI runners
  have slower process spawn overhead)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-10 15:41:09 +02:00
“mkczarkowski” 1178bc13a8 feat(windows-compatibility): cross-platform test fixes and Windows CI (p3)
Replace macOS-specific patterns in tests (hardcoded /tmp, mktemp -d,
rm -rf, 2>/dev/null) with Node APIs (os.tmpdir, mkdtempSync, rmSync,
stdio pipes). Add platform guards for POSIX mode-bit assertions. Add
check-windows CI job. Document npx zero-install and Node 20+ requirement.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-09 15:10:11 +02:00
“mkczarkowski” 40e5b37b4f feat(ci): add release workflow with npm publish, cross-platform binaries, and GitHub Releases
- Auto-version from conventional commits (auto-version.mjs) with git-diff
  gate: only releases when src/ or package.json actually changed
- 5-platform binary builds (linux x64/arm64, macOS x64/arm64, windows)
- npm publish with auth token wiring
- GitHub Release with auto-generated notes and binary attachments
- Smoke tests for package tarball and auto-version script
- Hardened: top-level permissions: {}, env bindings (no expression injection),
  persist-credentials only where needed for git push

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 20:09:00 +02:00