## Summary

<!-- What does this PR do? Link to related issues with "Closes #123". -->

## Changes

-

## Checklist

- [ ] Tests pass (`pytest`)
- [ ] Lint clean (`ruff check src/ tests/`)
- [ ] Format clean (`black --check src/ tests/`)
- [ ] Documentation updated (if user-facing changes)
- [ ] CHANGELOG.md updated under `[Unreleased]`
- [ ] No hardcoded secrets or credentials
- [ ] Tool counts accurate in docs (if tools added/removed)
