Conversation
* Reorganize generated code into _generated subdirectory * Fix remaining test imports for ValidationError and generated modules * Suppress websockets deprecation warnings from generated code * Refactor client.py using factory patterns and mixins * Fix test failures in refactored client * Fix remaining test failures and add UNSET export for backward compatibility * Update documentation to reflect client refactoring * Fix type annotations and pre-commit issues * Remove client_save.py backup file * Fix all mypy type errors for pre-commit compliance * Fix kwargs passthrough issue in report methods Remove kwargs passthrough to execute() to prevent HTTP client errors. Update convenience methods to only pass expected parameters. Update test to match new behavior where kwargs are not passed through. * Add dev branch to CI/CD workflow triggers * Trigger Claude Code Review [review] * Remove Claude review trigger file * Allow manual triggering of Claude Code Review workflow * Fix Claude review workflow to support reopened PRs [review] Add 'reopened' to PR event types and condition check * Address high-priority reviewer feedback - Add Protocol for type safety with model_validate method - Cache regex patterns for performance improvement - Improve error messages to show available parameters - Add comprehensive documentation for method registration - Fix type annotations to satisfy mypy * Update documentation for refactored architecture - Fix markdown formatting in architecture.md for proper rendering - Update test counts from 278 to 310 tests (105 unit tests) - Update project structure to reflect new modular architecture - Add method_factory.py and param_builders.py to unit test docs - Document new mixins directory structure * fix formatting * Bump version to 0.2.0a3 Update version across all project files: - pyproject.toml - esologs/__init__.py - README.md - CLAUDE.md - docs/index.md - docs/changelog.md (with release notes) - docs/development/architecture.md --------- Co-authored-by: knowlen <knowlen@users.noreply.github.com>
- Add 4 new guild methods: get_guilds(), get_guild(), get_guild_attendance(), get_guild_members() - Create GraphQL queries for guild search, lookup, attendance, and members - Add parameter builder for guild attendance with proper defaults - Implement flexible get_guild() method supporting ID or name/server lookup - Add comprehensive unit tests (12 new tests) - Add integration tests (10 new tests) - Update guild-data.md documentation with examples for all new methods - Update API coverage from ~83% to ~90% (37/41 methods)
|
Claude finished @knowlen's task —— View job Code Review Complete ✅I've thoroughly reviewed this substantial PR that implements the remaining guild data endpoints. Here's my comprehensive feedback: Review Tasks:
Overall Assessment: Excellent ⭐This is a well-architected, thoroughly tested implementation that follows the existing codebase patterns excellently. The code quality is high with strong attention to security, performance, and maintainability. Detailed Review✅ Code Quality & ArchitectureStrengths:
Minor suggestions:
✅ Security ConsiderationsExcellent security practices:
No security concerns identified. ✅ Performance ConsiderationsWell optimized:
Minor optimization opportunity:
✅ Test Coverage - ComprehensiveOutstanding test coverage:
Test quality highlights:
✅ Parameter Validation & Error HandlingRobust implementation:
✅ GraphQL ImplementationWell-structured queries:
|
Summary
Changes
New Methods:
get_guilds()- List guilds with pagination and server filteringget_guild()- Flexible lookup by ID or name/server/regionget_guild_attendance()- Retrieve guild raid attendance dataget_guild_members()- Get guild member rosterImplementation Details:
queries.graphqlget_guild()methodTesting:
Documentation:
guild-data.mdwith examples for all new methodsImpact
Test Plan