gitaiflow MCP 1.1.3 — Release Checklist
This is the release-facing gate.
On this page ▾
It is intentionally shorter than the verification documents.
1. Test gate
bash
pytest tests/ -vRequired:
text
0 failedMCP-specific tests:
text
tests/mcp-server/test_mcp_config.py
tests/mcp-server/test_mcp_executor.py
tests/mcp-server/test_mcp_middleware.py
tests/mcp-server/test_mcp_workspace.py2. Native gate
Verify:
text
[ ] native server starts
[ ] /health returns 200
[ ] bearer authentication works
[ ] MCP initialize works
[ ] tools/list exposes all six tools
[ ] gitaiflow_usage works
[ ] gitaiflow_last_summary works
[ ] workspace authorization works
[ ] real gitaiflow AOT output is returnedProcedure:
text
MCP-LOCAL-VERIFICATION.md3. Docker gate
Verify in this exact order:
text
[ ] host parent workspace resolved
[ ] image builds
[ ] container starts
[ ] correct AOT binary is mounted
[ ] /app/bin/gitaiflow --version works
[ ] parent multi-repository workspace is mounted at /workspace
[ ] selected repository has its own .git
[ ] selected Git root resolves correctly
[ ] /health returns 200
[ ] direct --last-summary works from the selected repository
[ ] MCP initialize works
[ ] gitaiflow_last_summary works through MCP with repository path selectionProcedure:
text
MCP-DOCKER-VERIFICATION.md4. Inspector gate
Verify:
text
[ ] connection
[ ] authentication
[ ] initialize
[ ] session
[ ] tools/list
[ ] six tools
[ ] schemas
[ ] required arguments
[ ] optional arguments
[ ] valid tool calls
[ ] MCP responsesProcedure:
text
MCP-INSPECTOR-VERIFICATION.md5. Claude gate
Verify:
text
[ ] Docker stdio works outside Claude
[ ] Claude launches Docker MCP
[ ] MCP initialization succeeds
[ ] six tools discovered
[ ] gitaiflow_last_summary invoked
[ ] result returned to Claude
[ ] Developer Binary Path behavior verified
[ ] normal production binary resolution verifiedProcedure:
text
MCP-CLAUDE-DESKTOP.md6. Binary compatibility
For MCP 1.1.3:
text
minimum compatible gitaiflow: 1.0.0
compatibility: same major + >= minimumTherefore a compatible 1.x gitaiflow binary at or above 1.0.0 satisfies the MCP minimum contract.
7. Packaging gate
For the Claude MCPB bundle verify:
text
[ ] bundle exists
[ ] manifest exists
[ ] server launcher exists
[ ] icon.png exists
[ ] manifest references icon.png
[ ] expected platform artifact exists
[ ] bundled/server version is 1.1.38. Release signing gate
text
[ ] SHA256SUMS generated for every AOT asset in this version
[ ] SHA256SUMS.sig present (scripts/release/sign_release.sh, or
scripts/r2/gitai_r2.sh with GITAIFLOW_SIGNING_KEY_FILE set)
[ ] GITAIFLOW_SIGNING_KEY_FILE was set for this sync — no "skipping
release signing" warning printed by gitai_r2.sh
[ ] embedded public key in install.sh and mcp_server/binary.py matches
the key used to sign (unchanged, unless this release rotates it)Procedure:
text
MCP-RELEASE-SIGNING.mdAn unsigned AOT release is not a valid production release: binary.py
rejects it unconditionally on the MCP install path, and install.sh
falls back to checksum-only.
9. Configuration safety
Verify:
text
[ ] .mcp.env is ignored
[ ] real MCP token is not committed
[ ] AI credentials remain in ~/.gitaiflow/config.env
[ ] AI credentials are not baked into Dockerfile
[ ] workspace paths are not stored in ~/.gitaiflow/config.env
[ ] developer binary paths are not stored in ~/.gitaiflow/config.env10. Release decision
The local v1.1.3 MCP release gate is complete when:
text
Automated tests
↓
Native MCP
↓
Docker MCP
↓
Direct Docker AOT
↓
MCP Inspector
↓
Claude Desktop
↓
Packaging
↓
Release signingall pass.
Cloud Run is the next release/deployment phase. It is not a prerequisite for the local v1.1.3 MCP release.
Something wrong or missing on this page?Report a docs issue