Skip to content

test(config): add extend-exclude integration tests and docs - #133

Merged
Alberto-Codes merged 6 commits into
mainfrom
feat/config-16-2-extend-exclude-integration
Feb 25, 2026
Merged

test(config): add extend-exclude integration tests and docs#133
Alberto-Codes merged 6 commits into
mainfrom
feat/config-16-2-extend-exclude-integration

Conversation

@Alberto-Codes

Copy link
Copy Markdown
Owner

Story 16.1 added the extend-exclude config key with merge logic in load_config(). This PR verifies that merged patterns work correctly across all discovery modes and documents the feature in the configuration reference.

  • Add 8 integration tests covering DIFF, ALL, and STAGED modes with extend-exclude patterns
  • Add component-level (*.generated) and path-level (vendor/legacy/*.py) fnmatch tests
  • Add extend-exclude to config reference table, usage section, and Complete Example
  • Clarify docs on exclude/extend-exclude interaction when both keys are set

Test: uv run pytest tests/integration/test_discovery.py -v

Closes #18

docs(config): add extend-exclude to configuration reference


PR Review

Checklist

  • Self-reviewed my code
  • Tests pass (uv run pytest)
  • Lint passes (uv run ruff check .)
  • Types pass (uv run ty check)
  • Breaking changes use ! in title and BREAKING CHANGE: in body

Review Focus

  • Integration tests construct DocvetConfig directly with pre-merged exclude lists (simulating load_config() output) — this is by design, config merge is tested in unit tests from story 16.1
  • Doc changes: verify the extend-exclude section and Complete Example annotations read clearly

Related

…modes

Verify that extend-exclude patterns (merged into config.exclude by
load_config) work correctly in DIFF, ALL, and STAGED discovery modes.
Includes component-level and path-level fnmatch pattern tests.
Add extend-exclude to top-level options table, add usage section with
example, and update the Complete Example tab with extend-exclude.
…de test

Add assert "lib.py" not in names for consistency with ALL mode tests.
Drop misleading "defaults preserved" from table description. Add
sentence explaining behavior when both exclude and extend-exclude
are configured. Fix annotation #3 wording.
@Alberto-Codes
Alberto-Codes marked this pull request as ready for review February 25, 2026 19:27
Copilot AI review requested due to automatic review settings February 25, 2026 19:27

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds integration tests and documentation for the extend-exclude configuration feature that was implemented in PR #131. The feature allows users to add exclude patterns on top of defaults without replacing them, following conventions from tools like ruff and black.

Changes:

  • Added 8 integration tests covering extend-exclude behavior across DIFF, ALL, and STAGED discovery modes
  • Added documentation for extend-exclude in the configuration reference, including usage examples and the Complete Example
  • Updated story status and implementation artifact documentation

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.

File Description
tests/integration/test_discovery.py Added 8 integration tests verifying extend-exclude patterns work correctly in all discovery modes (DIFF, ALL, STAGED) and with both component-level and path-level fnmatch patterns
docs/site/configuration.md Added extend-exclude to options table, added usage section with example, updated Complete Example with extend-exclude and re-numbered annotations
_bmad-output/implementation-artifacts/sprint-status.yaml Updated story 16-2 status from backlog to review
_bmad-output/implementation-artifacts/16-2-integration-verification-and-documentation.md Added complete story documentation including ACs, test mapping, dev notes, and quality gate results

@Alberto-Codes
Alberto-Codes merged commit 6711525 into main Feb 25, 2026
12 checks passed
@Alberto-Codes
Alberto-Codes deleted the feat/config-16-2-extend-exclude-integration branch February 25, 2026 19:34
@codecov-commenter

Copy link
Copy Markdown

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Feature: Add extend-exclude config key

3 participants