Quality gates: coverage, pre-commit, markers, e2e tests#16
Merged
Conversation
…oke test - Add pytest-cov with 85% coverage threshold enforced in `make test` - Add .pre-commit-config.yaml (ruff, black, trailing whitespace, AST check, debug statements, private key detection, YAML/TOML validation) - Add pytest markers: unit (core+templates), integration (CLI), e2e (scaffold) - Add e2e smoke test validating full project scaffold output - Makefile: add venv, install-dev, update, test-unit, test-integration, test-e2e, test-fast, coverage, pre-commit, clean-all targets Closes #10, #11, #12, #13 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Test job now enforces 85% coverage threshold and uploads coverage.xml - Add pre-commit job using pre-commit/action (caches hook envs) - Cache Poetry dependencies across all jobs - Skip draft PRs, cancel stale runs - Python matrix ready to expand to 3.13 Closes #15 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Makefile: adopt ContextForge help system with section headers and emoji-prefixed categories (🌱 Installation, 🧪 Testing, 🔍 Quality, 🧹 Cleanup) - Makefile: add strict shell flags (-eu -o pipefail), project variables, author attribution - CI: add proper file headers with author and job descriptions - CI: add shared env block, section comments for each job - Dependency review: match documentation style Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add file-level doc blocks explaining what each workflow does - Add references section with links to tools - Add author attribution (Manav Gupta) - Add emoji-prefixed step names matching ContextForge conventions - Add inline section comments (Setup, Checks, Build & Validate) - Add principle-of-least-privilege permission comments - Extract PYTHON_VERSION to shared env block - Dependency review: add comment-summary-in-pr on failure Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…-review - lint.yml: ruff + black + mypy (path-filtered to **.py and pyproject.toml) - pre-commit.yml: all pre-commit hooks on PRs only - ci.yml → tests & package only (renamed to "Tests & Package") - dependency-review.yml: unchanged (already separate) Each workflow appears as an independent check on PRs, matching the ContextForge pattern of modular workflow files. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This was referenced Apr 6, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
make testvia pytest-covunit,integration,e2e,slow) withmake test-unit,make test-integration,make test-e2etargetsvenv,install-dev,update,coverage,clean-alltargetsBorrowed best practices from IBM/mcp-context-forge.
Closes #10, #11, #12, #13
Test plan
make install-dev— creates venv, installs deps, installs hooksmake check— lint + typecheck + 343 tests at 89% coveragemake test-unit— 175 testsmake test-integration— 162 testsmake test-e2e— 6 testsmake pre-commit— all 12 hooks passmake help— shows all targets🤖 Generated with Claude Code