feat: add collaborative interview scheduling

Add candidate decisions, co-interviewer accounts, scheduled interview inbox and calendar views, candidate-safe meeting links, shared documents, and private live notes backed by RabbitMQ.

Extend the disposable integration environment to validate PostgreSQL migrations, seeded users, interview lifecycle behavior, and RabbitMQ fanout.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
Daniel Noulet 2026-09-19 21:58:24 +02:00
parent fd06fbbb5d
commit 75e3c73a61
35 changed files with 3621 additions and 58 deletions

View file

@ -15,6 +15,17 @@ services:
timeout: 3s
retries: 20
rabbitmq:
image: rabbitmq:4-management-alpine
ports:
- "${RABBITMQ_AMQP_PORT:-5672}:5672"
- "${RABBITMQ_MANAGEMENT_PORT:-15672}:15672"
healthcheck:
test: ["CMD", "rabbitmq-diagnostics", "-q", "ping"]
interval: 5s
timeout: 5s
retries: 20
api:
build: ./backend
environment:
@ -22,11 +33,14 @@ services:
JWT_SECRET: local-development-secret-change-me-12345
FRONTEND_URL: ${FRONTEND_URL:-http://localhost:5173}
APP_ENV: ${APP_ENV:-development}
RABBITMQ_URL: amqp://guest:guest@rabbitmq:5672/
ports:
- "${API_PORT:-8080}:8080"
depends_on:
db:
condition: service_healthy
rabbitmq:
condition: service_healthy
web:
build: ./frontend