- Place Category and Priority side by side in create ticket dialogs
- Fix pagination showing literal {1} instead of actual values
- Fix double-brace interpolation in en.json (tickets, companies)
- Replace Add Job modal on dashboard with link to /dashboard/jobs/new
- Add BACKEND_SECURITY.md with security analysis and hardening guide
- Add FRONTEND_TESTING_STRATEGY.md with test coverage strategy
- Update API.md with new endpoints (candidates, tickets, credentials)
- Update AGENTS.md documentation index
Migration 010 creates 'superadmin' with placeholder hash
'$invalid-placeholder-run-seeder$', leaving it unable to log in.
The seeder now upserts 'superadmin' with the same bcrypt(pass+pepper)
hash as 'lol', ensuring both identifiers work after every seed.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- 009: status column was VARCHAR(20), causing 'force_change_password' (21 chars)
to fail on INSERT — changed to VARCHAR(30)
- 010: changed initial status from 'force_change_password' to 'pending' (fits
any column size ≥7 chars, avoids future truncation)
- 046: ALTER TABLE for existing deployments where 009 already applied with VARCHAR(20)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add test coverage strategy for Next.js 15 App Router
- Document Server vs Client Components testing approach
- Include MSW mock strategy for API testing
- Add edge cases often forgotten (auth, forms, pagination, uploads)
- Provide templates for unit, integration, and E2E tests
- Include Zustand store testing patterns
- fix(seeder): add PASSWORD_PEPPER to all bcrypt hashes (admin + candidates/recruiters)
- fix(seeder): add created_by field to jobs INSERT (was causing NOT NULL violation)
- feat(backend): add custom job questions support in applications
- feat(backend): add payment handler and Stripe routes
- feat(frontend): add navbar and footer to /register and /register/user pages
- feat(frontend): add custom question answers to job apply page
- feat(frontend): update home page hero section and navbar buttons
- feat(frontend): update auth/api lib with new endpoints
- chore(db): add migration 045 for application answers
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Update ListConfiguredServices to use correct service names
- Add fcm_service_account, appwrite, smtp to BootstrapCredentials
- Remove unused payment_gateway from frontend schema
- Rename firebase to fcm_service_account in frontend
- Remove duplicate setLoading calls in loadBackoffice
- Add proper error handling with catch for all API calls
- Wrap useEffect initialization in try/catch/finally