MIKE-05: User Administration - admin-only user management (#13)

↗ view on GitHub · EduardoCarone · 2026-07-12 · b107b864

* feat(db): add user administration schema - role, status, audit log

* feat(api): add admin endpoints for user management

* feat(ui): add user administration page and disable public signup

* test(admin): cover requireAdmin middleware - role, status, error cases

* docs(sprint): document MIKE-05 user administration checkpoint

* fix(admin): POST endpoints, last-admin protection, disabled user check, audit fields, confirmations, docs

* feat(infra): dedicated db-migrate image with psql for ECS migrations

- postgres:17-alpine base with psql
- run-migrations.sh uses DATABASE_URL via Secrets Manager
- PGSSLMODE=require for RDS SSL enforcement
- ON_ERROR_STOP=1 for non-zero exit on SQL error
- Schema validation built into the script
- Fixes: SSL_ERROR (RDS force_ssl=1), ARCHITECTURE_MISMATCH (wrong image)

---------

Co-authored-by: Januário <januario@Januarios-Mac-mini.local>
Repository Edu-Carone-SA/mike
Author EduardoCarone <educarone@gmail.com>
Authored
Parents 5359c00e
Stats 22 files changed , +2709 , -275
Part of MIKE-05: admin-only user management

Capture this commit into my fork

Download a Markdown prompt that tells Claude how to port this exact commit into your working tree. Run it via claude -p < capture-commit-b107b864.md from inside the repo you want the change in.

⬇ Download capture-commit-b107b864.md