## Summary
- Refactored BetterAuth from NestJS controller to Fastify onRequest hook to avoid body parser conflicts
- Extracted AUTH and BRAIN injection tokens to separate *.tokens.ts files to break circular imports
- Verified all Phase 1 API endpoints: auth signup/signin/session, CRUD for projects/missions/tasks/conversations/messages
## Test plan
- [x] Auth signup returns user + token
- [x] Auth signin returns session cookie
- [x] Session endpoint returns user data with valid cookie
- [x] Protected routes return 401 without auth
- [x] Project/Mission/Task/Conversation CRUD all functional
- [x] Message creation on conversation sub-route works
- [x] typecheck, lint, format:check all pass
Closes #18
Refactor BetterAuth integration from NestJS controller to Fastify
onRequest hook to avoid body parser conflicts. Extract injection
tokens to separate files to break circular import cycles.
- Auth handler: use onRequest hook to intercept /api/auth/* before
Fastify body parser runs, passing raw IncomingMessage to BetterAuth
- Extract AUTH and BRAIN injection tokens to *.tokens.ts files
- Update all controllers to import from tokens files
- Verified: signup, signin, session, CRUD for projects/missions/tasks/
conversations/messages all functional
Co-Authored-By: Claude Opus 4.6 <[email protected]>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
Test plan
Closes #18