Description
This is a backend issue for the GrantFox campaign. Extend the existing /api/leaderboard to accept a period and use the right materialized view.
Requirements and Context
- Three periods
- Validated by zod
- Caches per period
- Tests cover
- Must be secure, tested, and documented
- Should be efficient and easy to review
Suggested Execution
- Fork the repo and create a branch
git checkout -b task/leaderboard-period
- Implement changes
src/routes/leaderboard.ts
src/repositories/leaderboardRepo.ts
- Test and commit
- Run the repo's standard test suite and lint
- Cover edge cases; include output in the PR
Example commit message
feat: /api/leaderboard period filter
Acceptance Criteria
Guidelines
- Minimum 90% test coverage on changed lines
- Input validation at the boundary; standardized error envelope
- Structured logging with correlation IDs
- Clear documentation and inline comments
- Timeframe: 96 hours
Description
This is a backend issue for the GrantFox campaign. Extend the existing /api/leaderboard to accept a period and use the right materialized view.
Requirements and Context
Suggested Execution
src/routes/leaderboard.tssrc/repositories/leaderboardRepo.tsExample commit message
Acceptance Criteria
Guidelines