Description
This is a backend issue for the GrantFox campaign. Read flags from a flags table at startup; cache in-process and refresh every 30s.
Requirements and Context
- GET /api/admin/flags
- Per-flag boolean + variant
- Cache TTL
- 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 feature/feature-flags
- Implement changes
src/services/featureFlags.ts (new)
drizzle/migrations/0014_flags.sql (new)
src/routes/admin/flags.ts (new)
- Test and commit
- Run the repo's standard test suite and lint
- Cover edge cases; include output in the PR
Example commit message
feat: feature flag service
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. Read flags from a flags table at startup; cache in-process and refresh every 30s.
Requirements and Context
Suggested Execution
src/services/featureFlags.ts (new)drizzle/migrations/0014_flags.sql (new)src/routes/admin/flags.ts (new)Example commit message
Acceptance Criteria
Guidelines