tractatus/public/js
TheFlow 4e4401a117 fix(auth): resolve admin login - token sanitization and missing password field
SUMMARY:
Fixed admin login failures caused by two issues:
1. Response sanitization middleware stripping auth tokens
2. Admin users missing password field in database

ROOT CAUSE ANALYSIS:
- sanitizeResponseData middleware removed ALL fields named 'token'
- This included authentication tokens that SHOULD be sent to clients
- Admin user records created without proper password field
- User.authenticate() failed on bcrypt.compare() with undefined password

FIXES:
1. Changed auth response field from 'token' to 'accessToken'
   - Avoids overly aggressive sanitization
   - More semantically correct (it's specifically an access token)
   - Frontend updated to use data.accessToken

2. Created fix-admin-user.js script
   - Properly creates admin user via User.create()
   - Ensures password field is bcrypt hashed
   - Deletes old malformed user records

3. Updated login.js auto-fill for correct dev email
   - Changed from admin@tractatus.local to admin@agenticgovernance.digital

TESTING:
- Local login now returns accessToken (308 char JWT)
- User object returned with proper ID serialization
- Auth flow: POST /api/auth/login → returns accessToken + user
- Ready for production deployment

FILES:
- src/controllers/auth.controller.js: Use accessToken field
- public/js/admin/login.js: Store data.accessToken, update default email
- scripts/fix-admin-user.js: Admin user creation/fix utility

NEXT STEPS:
1. Deploy to production
2. Run: node scripts/fix-admin-user.js admin@agenticgovernance.digital <password>
3. Test admin login at /admin/login.html

🤖 Generated with Claude Code (https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-20 21:13:42 +13:00
..
admin fix(auth): resolve admin login - token sanitization and missing password field 2025-10-20 21:13:42 +13:00
components fix(ui): improve pressure monitor visibility and add timeline synchronization 2025-10-20 17:18:13 +13:00
demos feat(demos): create interactive pluralistic deliberation demo 2025-10-19 22:03:25 +13:00
utils feat: add multi-currency support and privacy policy to Koha system 2025-10-08 15:17:23 +13:00
blog-post.js feat: newsletter modal and deployment script enhancements 2025-10-14 13:11:46 +13:00
blog.js feat: newsletter modal and deployment script enhancements 2025-10-14 13:11:46 +13:00
case-submission.js fix(csp): clean all public-facing pages - 75 violations fixed (66%) 2025-10-19 13:17:50 +13:00
check-version.js fix(csp): clean all public-facing pages - 75 violations fixed (66%) 2025-10-19 13:17:50 +13:00
docs-app.js fix(mobile): implement navigation toggle for document viewer 2025-10-19 12:41:48 +13:00
docs-search-enhanced.js feat: enhance FAQ for Leader audience and improve navigation 2025-10-14 10:53:47 +13:00
docs-viewer-app.js feat: fix CSP violations & implement three audience paths 2025-10-07 12:21:00 +13:00
faq.js refactor: rewrite Copilot Q&A in measured, evidence-based tone 2025-10-14 14:19:46 +13:00
i18n-simple.js feat(i18n): enhance browser language detection with clear priority logging 2025-10-19 15:01:14 +13:00
koha-donation.js feat(koha): implement Stripe Customer Portal integration 2025-10-18 22:19:08 +13:00
koha-success.js fix(csp): clean all public-facing pages - 75 violations fixed (66%) 2025-10-19 13:17:50 +13:00
koha-transparency.js feat: complete Priority 2 - Enhanced Koha Transparency Dashboard 2025-10-11 17:14:34 +13:00
leader-page.js feat: add case submission portal admin interface and i18n support 2025-10-16 14:50:47 +13:00
media-inquiry.js fix(csp): clean all public-facing pages - 75 violations fixed (66%) 2025-10-19 13:17:50 +13:00
media-triage-transparency.js feat: comprehensive accessibility improvements (WCAG 2.1 AA) 2025-10-12 07:08:40 +13:00
page-transitions.js feat(phase3): implement smooth page transitions with fade effect 2025-10-19 20:44:25 +13:00
researcher-page.js feat: add case submission portal admin interface and i18n support 2025-10-16 14:50:47 +13:00
scroll-animations.js feat(phase3): implement scroll animations with Intersection Observer 2025-10-19 15:09:59 +13:00
version-manager.js fix: PWA install button UX improvements and CSP compliance 2025-10-15 08:39:47 +13:00