-
Notifications
You must be signed in to change notification settings - Fork 0
Develop #27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
johnsosoka
wants to merge
6
commits into
main
Choose a base branch
from
develop
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Develop #27
Conversation
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
Set up develop branch workflow with branch protection: - Added develop branch to CI workflow triggers - Updated CONTRIBUTING.md to document develop workflow - Created branch protection setup guide (llm_memory/) - Created async support implementation plan (llm_memory/) Changes: - Feature branches now created from develop - PRs target develop (not main) - main receives periodic releases from develop - CI runs on both main and develop branches
The badge was referencing 'workflows/CI' which doesn't match the actual workflow name "Lint, Type Check & Tests". Updated to use the workflow file name (ci.yml) which is more stable and specified branch=main to show the stable release branch status. Changes: - Use actions/workflows/ci.yml/badge.svg instead of workflows/CI - Add ?branch=main parameter to show main branch status
* feat: add stats API resource with 10 endpoints Implements comprehensive stats resource providing analytical insights: - Geographic stats (country_players, state_players, state_tournaments) - Historical trends (events_by_year, players_by_year) - Tournament rankings (largest_tournaments, lucrative_tournaments) - Period analytics (points_given_period, events_attended_period) - System metrics (overall) Includes 22 Pydantic models for stats requests/responses. API coverage increased from 36 to 46 endpoints (7 resources total). * test: add comprehensive stats resource tests Adds 1333 lines of unit tests and 642 lines of integration tests for the Stats API resource. Tests cover all 10 endpoints with inline mock data for unit tests and real API calls for integration. Includes stats-specific test fixtures and helpers in conftest.py: - Date range fixtures (90 days, 180 days, full year) - Stats threshold fixtures for validation - Rank type fixtures for parameterized testing - Helper functions for field validation and ranking assertions * docs: add stats mkdocs page * docs: update docs index and navigation for stats resource Updates MkDocs documentation to include Stats resource: - Update API coverage count: 36 → 46 endpoints - Add Stats row to resources table with description - Add Stats to resource navigation links - Update mkdocs.yml navigation to include stats.md * docs: add stats section to README Updates README with Stats resource documentation: - Update API coverage: 36 → 46 endpoints, 6 → 7 resources - Add Stats section with usage examples showing: - Overall IFPA statistics - Top point earners by period - Largest tournaments by country - Player counts by country - Most active players by period * docs: add v0.4.0 changelog entry for stats resource Adds comprehensive v0.4.0 release notes documenting: - 10 new Stats API endpoints (geographic, historical, rankings, period-based) - 22 new Pydantic models for stats responses - 1333 lines of unit tests, 642 lines of integration tests - Stats-specific test fixtures and helpers - Known API issue with WOMEN parameter in overall() endpoint Updates version links for 0.4.0 and 0.3.0 releases. --------- Co-authored-by: John Sosoka <john@sosoka.com>
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
* feat: add type-safe enums for stats parameters Add three new enums for improved type safety and IDE autocomplete: - StatsRankType (OPEN, WOMEN) - used in 8 stats endpoints - SystemCode (OPEN, WOMEN) - used in overall() endpoint - MajorTournament (YES, NO) - used in lucrative_tournaments() All enums maintain full backwards compatibility with string parameters via union types (Enum | str). Changes: - Add enum definitions to models/common.py - Update stats client signatures to accept enums - Export enums from main package - Add 21 new tests (15 enum tests + 6 quality improvements) - Update documentation with enum usage examples Benefits: - Type safety: catch typos at development time - IDE autocomplete: discover available values - Self-documenting: clear what values are valid - No breaking changes: strings still work * feat: finalize v0.4.0 with verified response sizes and improved test coverage Update version references from 0.3.0 to 0.4.0 across all documentation and source files. Add 6 high-value edge case tests for stats resource and verify response size documentation against live API. Version Updates: - Update pyproject.toml and __init__.py version to 0.4.0 - Update README "What's New" section to reference 0.4.0 - Update installation docs example output to show 0.4.0 Test Improvements: - Add empty response handling test - Add malformed API response validation (2 tests) - Add invalid date format handling test - Add enum/string equivalence test - Add period endpoints smoke test (integration) - Fix overly permissive assertion in validation test Documentation: - Verify response sizes via live API calls (2025-11-22) - Update stats.md with accurate counts for all endpoints - Add verification date and performance tips - Document default 25-result limit for period queries All 84 tests passing, 98% coverage on stats client maintained. --------- Co-authored-by: John Sosoka <john@sosoka.com>
- Configure ReadTheDocs with Poetry dependency management - Add RankingDivision enum for Rankings resource - Add TournamentSearchType enum for Tournament searches - Update test to handle intermittent API behavior - Reorganize docs dependencies into dedicated Poetry group
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.
Description
Type of Change
Related Issues
Fixes #
Relates to #
Changes Made
Testing
Test Coverage
Manual Testing
# Example code showing how you tested this changeDocumentation
Code Quality
Breaking Changes
Before:
# Old usage exampleAfter:
# New usage exampleMigration Guide
N/A or:
Screenshots
N/A
Checklist
Additional Context
For Reviewers
Areas needing special review:
Note to maintainers: Please ensure code quality and documentation meet professional standards.