HappyHackingSpace / HappyHackingSpace/CommunityHub
fix(security): Register a global ValidationPipe
- Dominant language
- TypeScript
- Stars
- 3
- Forks
- 6
- PR merge metrics
- No merged PRs in 30d
Description
No global `ValidationPipe` is registered (missing in main.ts, no `APP_PIPE`). Only 4 controllers validate input via `@UsePipes` (`meetings`, `tasks`, `subtasks`, `tags`). The other 10 - `auth`, `users`, `api-keys`, `communities`, `clubs`, `activity-feed`, `notifications`, `notification-preferences`, `moderation`, `gamification` - accept unvalidated bodies (no `whitelist`, DTO decorators ignored).
**To do**
- Register `app.useGlobalPipes(new ValidationPipe({ whitelist: true, transform: true }))` in main.ts.
- Remove now-redundant per-controller `@UsePipes`.
Contributor guide
Research direction
Start in main.ts, then inspect the listed controllers and their existing @UsePipes declarations. Register the global ValidationPipe with whitelist and transform, remove redundant per-controller pipes, and verify that all listed controllers validate and transform request bodies consistently.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- backend, security
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 62/100