fb9606b6aa5ea598c04f860af0f1d59713f76b89
Extends PATCH /admin/agents/:agentId with an optional userId to finally wire Agent.userId (added in 010-identity-auth as schema-only, never consumed by any workflow), with proactive role/duplicate-link checks mirroring UsersService.create's own pre-check style. Adds GET /agents/me/tickets and GET /admin/agents/:agentId/tickets, sharing one TicketsService.listAssignedTo method, returning a dashboard- ready summary (product, customer, priority, severity, status, SLA state) of every ticket currently assigned to an agent — no such query existed anywhere in the ticketing or orchestration modules before this. Backed by a new Assignment @@index([agentId, isCurrent]). Discovered while starting supporthub-web's 001-agent-admin-ui: its agent- dashboard user story had no backend data source without this. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
SupportHub API
Development (Docker)
- Start all services:
docker compose --env-file .env.development -f docker-compose.development.yml up -d --build - Start only database & cache (for local app development):
docker compose --env-file .env.development -f docker-compose.development.yml up -d postgres redis
Test (Docker)
docker compose --env-file .env.test -f docker-compose.test.yml up --build
Production (Docker)
docker compose --env-file .env.prod -f docker-compose.prod.yml up --build -d
Stop / Down
- Stop production:
docker compose -f docker-compose.prod.yml down - Stop development:
docker compose -f docker-compose.development.yml down - Stop development & wipe volumes:
docker compose --env-file .env.development -f docker-compose.development.yml down -v
List Containers & Logs
- List containers:
docker compose --env-file .env.development -f docker-compose.development.yml ps - Follow logs:
docker compose --env-file .env.development -f docker-compose.development.yml logs -f
Local Development (Host)
- Start database & cache in Docker:
docker compose --env-file .env.development -f docker-compose.development.yml up -d postgres redis - Start API server in watch mode:
npm run dev
Database Migrations & Prisma
-
Generate Prisma Client:
npm run prisma:generate -
Run / Apply Dev Migrations:
npx dotenv-cli -e .env.development -- npm run prisma:migrate -
Deploy Migrations (Production/CI):
npx dotenv-cli -e .env.development -- npm run prisma:deploy -
Push Schema directly (Sync schema without migration files):
npx dotenv-cli -e .env.development -- npx prisma db push
Database Seeding
- Seed Database (Roles, Products, Categories, Hierarchy & Demo data):
npx dotenv-cli -e .env.development -- npm run prisma:seed
Languages
TypeScript
93.2%
PowerShell
6.5%
JavaScript
0.2%