versioning-policy

Enforces strict semver versioning rules for npm workspace packages in a monorepo.

2|Updated Jul 24, 2026
One-click install
npx skills add https://github.com/elbruno/ElBruno.MagenticUI --skill versioning-policy-elbruno
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: versioning-policy
Source: https://github.com/elbruno/ElBruno.MagenticUI/tree/main/.squad/templates/skills/versioning-policy
Command: npx skills add https://github.com/elbruno/ElBruno.MagenticUI --skill versioning-policy-elbruno

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Prerelease version leaks and version mismatches between npm workspace packages silently break dependency resolution, causing builds to run against stale registry code instead of local workspace links. ## Core Features & Use Cases - Strict Semver Enforcement: Mandates MAJOR.MINOR.PATCH format with no prerelease suffixes on dev or main branches. - Version Sync Rules: Requires the SDK, CLI, and root package.json files to share identical versions at all times. - Ownership Model: Centralizes version bumps under a single release manager role, with an escape hatch allowing any agent to revert prerelease leaks. - Use Case: When a PR contains a version like 0.9.1-build.4, the prerelease-version-guard CI gate blocks the merge, preventing the workspace resolution failure that caused the PR #640 incident. ## Quick Start Review the versioning rules before modifying any package.json version field and confirm the change complies with the semver policy.

Frequently Asked Questions about versioning-policy

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I prevent prerelease versions from being committed to main?

Use a CI gate that scans all package.json files for a hyphen in the version field and blocks PRs containing prerelease strings. The prerelease-version-guard gate prevents merges until versions are cleaned, with a skip-version-check label for rare exceptions.

Why does npm workspace resolution fail with prerelease versions?

Per the semver specification, a range like >=0.9.0 does not match prerelease versions such as 0.9.1-build.4. npm then silently installs a stale published version from the registry instead of linking the local workspace package.

Should SDK and CLI packages in a monorepo share the same version?

Yes, keeping the SDK, CLI, and root package.json versions identical prevents workspace resolution mismatches. A lockstep bump script that updates all three files together enforces this synchronization automatically.

Who should be allowed to bump package versions in a team repo?

Centralize version ownership under a single release manager role to avoid conflicting bumps. Other contributors should not modify version fields, except to revert an accidental prerelease leak back to the clean release version.

Can I use prerelease versions for local development testing?

Yes, prerelease versions like 0.9.1-build.4 are acceptable for local testing only if they are never committed or pushed. Automate this with a bump script that skips itself in CI environments.