- Add missing models to all tool parameter documentation
- Update model table in advanced-usage.md with GPT-5 series
- Add Gemini 2.0 Flash and Flash Lite models
- Include detailed capabilities for each model variant
- Fix model parameter consistency across all tool docs
Models added:
- GPT-5 (gpt5): Advanced reasoning with 400K context
- GPT-5 Mini (gpt5-mini): Efficient variant
- GPT-5 Nano (gpt5-nano): Fast, low-cost variant
- Gemini 2.0 Flash (flash-2.0): Audio/video support
- Gemini 2.0 Flash Lite (flashlite): Text-only lightweight
- Only push to registry for internal PRs (same repository)
- Build-only for fork PRs to test Docker compatibility
- Separate comments and summaries for different PR types
- Fixes permission issues with fork contributions
- Fix test_resource_loading_success by removing outdated mock targeting non-existent 'files' import
- Simplify resource loading test to validate registry functionality directly
- Add .zen_venv exclusion to ruff and black in code_quality_checks.sh
- All tests now passing (793/793) with clean linting
- Remove redundant path checks between Path("conf/custom_models.json") and Path.cwd() variants
- Implement proper importlib.resources.files('conf') approach for robust packaging
- Create conf/__init__.py to make conf a proper Python package
- Update pyproject.toml to include conf* in package discovery
- Clean up verbose comments and simplify resource loading logic
- Fix test mocking to use correct importlib.resources.files target
- All tests passing (8/8) with proper resource and fallback functionality
Addresses all gemini-code-assist bot feedback from PR #227
Improvements based on gemini-code-assist bot feedback:
1. **Proper importlib.resources implementation:**
- Use files("providers") / "../conf/custom_models.json" for resource loading
- Prioritize resource loading over file system paths for packaged environments
- Maintain backward compatibility with explicit config paths and env variables
2. **Remove redundant path checks:**
- Eliminated duplicate Path("conf/custom_models.json") and Path.cwd() / "conf/custom_models.json"
- Streamlined fallback logic to development path + working directory only
3. **Enhanced test coverage:**
- Mock-based testing of actual fallback scenarios with Path.exists
- Proper resource loading simulation and failure testing
- Comprehensive coverage of both resource and file system modes
4. **Robust error handling:**
- Graceful fallback from resources to file system when resource loading fails
- Clear logging of which loading method is being used
- Better error messages indicating resource vs file system loading
The implementation now follows Python packaging best practices using importlib.resources
while maintaining full backward compatibility and robust fallback behavior.
Tested: All 8 test cases pass, resource loading works in development,
file system fallback works when resources fail.
Resolves issues #203, #186, #206, #185 where OpenRouter model registry
completely failed to load in uvx installations due to inaccessible
conf/custom_models.json file.
Changes:
- Implement multiple path resolution strategy in OpenRouterModelRegistry
- Development: Path(__file__).parent.parent / "conf" / "custom_models.json"
- UVX working dir: Path("conf/custom_models.json")
- Current working dir: Path.cwd() / "conf" / "custom_models.json"
- Add importlib-resources fallback for Python < 3.9 compatibility
- Add comprehensive test suite for path resolution scenarios
- Ensure graceful handling when config files are missing
The fix restores full OpenRouter functionality (15 models, 62+ aliases)
for users installing via uvx while maintaining backward compatibility
for development and explicit config scenarios.
Tested: All path resolution scenarios pass, OpenRouter models load correctly
- Remove broken test with unused mock parameter
- Replace placeholder test with actual validation of diagnostic messages
- Remove unused imports (MagicMock, patch)
- Fix whitespace and formatting issues
- Ensure all 6 tests pass with meaningful assertions
Addresses high-priority feedback from PR review comments.
Remove 7 empty test methods that contained only 'pass' statements:
- TestPipDetectionPlatformCompatibility (4 methods)
- TestPipDetectionRegression (3 methods)
Keep working tests that have actual logic and assertions.
- Convert virtual environment Python paths to absolute paths to ensure
consistency across different shell environments (Git Bash, WSL, etc.)
- Add enhanced diagnostic information when pip detection fails to help
users troubleshoot path and environment issues
- Improve error messages with specific guidance for different platforms
- Fix black configuration to exclude .zen_venv directory from formatting
- Add comprehensive test suite for pip detection edge cases
Fixes#188
- Add path filters to only trigger Docker builds for Python/Docker-related changes
- Includes: **.py, requirements*.txt, pyproject.toml, Dockerfile, docker-compose.yml, .dockerignore
- Avoids unnecessary builds for documentation-only or workflow-only PRs
- Saves CI resources and avoids permission issues for irrelevant changes
- Validates PR titles against conventional commit standards
- Adds helpful comments when titles don't follow format
- Auto-deletes comments when titles are fixed
- Uses standard GITHUB_TOKEN (no special app setup needed)
- Enforces consistency with semantic-release workflow
- Remove $ anchor from global exclude pattern to properly exclude files within directories
- Remove redundant exclude properties from black and ruff hooks since global exclude now handles it
- Ensures isort hook also excludes test_simulation_files/ consistently
Addresses reviewer feedback on PR #217
- Use o3-pro throughout the codebase instead of o3-pro-2025-06-10
- Update test expectations to match o3-pro model name
- Update cassette to use o3-pro for consistency
- Ensure responses endpoint routing works correctly with o3-pro
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Use new output_text field format for o3-pro responses
- Update test expectations to use resolved model name o3-pro-2025-06-10
- Keep HTTP transport recorder and PII sanitization improvements
- Preserve both bug fix and recent GPT-5 updates
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>