Repository navigation
ci: harden test and release maintenance - #104
Conversation
There was a problem hiding this comment.
Code Review
This pull request updates Vitest dependencies, changes the binary entry point in package.json to the built file, introduces a script to determine npm distribution tags, and rewrites the version bumping script to atomically update manifests. It also adds comprehensive unit tests for these changes and updates coverage thresholds. Feedback on these changes includes addressing potential execution failures on Unix-like systems due to a missing shebang in the built binary, fixing a redundant and potentially dangerous file restoration logic in the atomic file replacement utility, and removing unreachable dead code in the npm distribution tag script.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
There was a problem hiding this comment.
Pull request overview
This PR hardens the project’s CI and release process by enforcing reproducible installs, ratcheting coverage baselines, and consolidating/pinning release publishing steps to improve reliability for npm + MCP Registry publishing.
Changes:
- Enforces frozen dependency installs and validates the coverage baseline is committed in CI.
- Reworks the release publishing workflow to validate versions, pack + smoke test the tarball, and gate Registry publishing on npm availability.
- Adds/extends release helper scripts (
versionbump,npm-dist-tag) with new unit coverage, and updates manifest/version alignment.
Reviewed changes
Copilot reviewed 11 out of 12 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
vitest.config.ts |
Raises the coverage ratchet thresholds. |
tests/unit/versionbump.test.ts |
Adds unit coverage for atomic version bumping behavior and git integration scenarios. |
tests/unit/trello-client.test.ts |
Adds unit coverage for activity subscriptions and label search/removal behaviors. |
tests/unit/npm-dist-tag.test.ts |
Adds unit tests for npm dist-tag selection logic. |
server.json |
Updates server/registry manifest version to align with release workflow requirements. |
scripts/versionbump.js |
Refactors version bumping into reusable functions and adds atomic file replacement + CLI flags. |
scripts/npm-dist-tag.js |
Introduces dist-tag selection helper and CLI wrapper for release automation. |
package.json |
Pins Vitest-related devDependencies and switches published bin entry to built output. |
bun.lock |
Updates lockfile to reflect pinned Vitest dependency versions. |
.github/workflows/publish-registry.yml |
Removes the separate registry workflow (publishing is consolidated elsewhere). |
.github/workflows/publish-npm.yml |
Replaces prior publishing flow with a pinned, serialized, smoke-tested release pipeline that includes Registry publishing. |
.github/workflows/ci.yml |
Adds concurrency, frozen installs, coverage-baseline-diff guard, and build enforcement. |
|
@copilot resolve the merge conflicts in this pull request |
* ci: harden test and publish workflows * ci: address release hardening review * ci: enforce release tag and coverage invariants * ci: unify and validate release publication * fix: propagate version bump git failures * fix: resolve release maintenance review findings * fix: restore missing label client methods * test: cover empty label searches * docs: clarify trusted publishing provenance note --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Summary
Validation
Auto-generated by the nightly PR maintenance hardening effort; auto-merge remains disabled.