feat(federation): grants service CRUD + status transitions (FED-M2-06) #496

Merged
jason.woltje merged 1 commits from feat/federation-m2-grants-service into main 2026-04-22 03:57:13 +00:00
1 Commits
Author SHA1 Message Date
jarvisandClaude Sonnet 4.6 0d9c1ce2e7 feat(federation): grants service CRUD + status transitions (FED-M2-06)
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
- Add 'pending' to grantStatusEnum (pending → active → revoked/expired)
- Update federationGrants default status to 'pending'
- Add migration 0009_federation_grant_pending.sql
- GrantsService: createGrant, getGrant, listGrants, activateGrant, revokeGrant, expireGrant
- Invalid transitions throw ConflictException; missing grants throw NotFoundException
- CreateGrantDto validates scope via parseFederationScope before insert
- Full unit test coverage for all status transitions and edge cases

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-04-21 22:51:05 -05:00