From 3b2fecb03c61ae115b230726336f184de36cfe3c Mon Sep 17 00:00:00 2001 From: Daniel Chalef <131175+danielchalef@users.noreply.github.com> Date: Mon, 27 Oct 2025 11:56:57 -0700 Subject: [PATCH] Add semantic version validation to MCP server release MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Validate tag follows X.Y.Z format before processing. Rejects malformed tags like mcp-v1.0 or mcp-v1.0.0.0. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .github/workflows/release-mcp-server.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/release-mcp-server.yml b/.github/workflows/release-mcp-server.yml index 6584fd39..7790d66f 100644 --- a/.github/workflows/release-mcp-server.yml +++ b/.github/workflows/release-mcp-server.yml @@ -29,6 +29,12 @@ jobs: id: version run: | TAG_VERSION=${GITHUB_REF#refs/tags/mcp-v} + + if ! [[ $TAG_VERSION =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then + echo "Tag must follow semantic versioning: mcp-vX.Y.Z" + exit 1 + fi + PROJECT_VERSION=$(python -c "import tomllib; print(tomllib.load(open('mcp_server/pyproject.toml', 'rb'))['project']['version'])") if [ "$TAG_VERSION" != "$PROJECT_VERSION" ]; then