Commit graph

13 commits

Author SHA1 Message Date
Daniel Noulet
ca5765b988 feat: integrate tenant SSO and remote toggle
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-03 00:46:27 +02:00
Daniel Noulet
70396c321a changed deployment 2026-10-02 21:44:26 +02:00
Daniel Noulet
045f0b7cf2 feat: expose runtime OpenAPI contract
Register typed API operations and serve an always-current OpenAPI document without a generation command or committed generated artifact.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-01 18:54:02 +02:00
Daniel Noulet
314c783659 fix: preserve tenant in participant links
Build invitation and meeting URLs from the validated tenant origin and fall back when local HTTP blocks the Clipboard API.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-01 17:54:01 +02:00
Daniel Noulet
98f47df8c1 feat: route API requests by tenant hostname
Derive local API origins and tenant headers from the browser hostname, allow tenant CORS preflights, and document the multi-tenant contract.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-10-01 17:49:42 +02:00
Daniel Noulet
e787359c54 feat: add entity-scoped application events
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-09-20 12:29:11 +02:00
Daniel Noulet
83d14d23a2 feat: add account navigation and footer
Move Inbox into a top-right account area, add a profile page for the authenticated user, and introduce a configurable sitemap and useful-links footer.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-09-20 07:21:10 +02:00
Daniel Noulet
0d8a25e73f fix: redirect expired sessions to login
Invalidate authentication on protected 401 responses and JWT expiration, redirect to the login route, and explain that the session is no longer active.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-09-20 07:16:38 +02:00
Daniel Noulet
c050815900 feat: sync interview content in real time
Publish shared-document and note events through RabbitMQ, stream token-scoped document updates to participants, and update connected interviewer and participant browsers through resilient SSE subscriptions.

Add snapshots, heartbeats, reconnection behavior, proxy streaming configuration, privacy filtering, and end-to-end RabbitMQ coverage.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-09-19 22:22:42 +02:00
Daniel Noulet
afc8f0d5a7 refactor: organize frontend by feature
Move the React application into app, api, feature, component, style, and type boundaries, and rebuild the interview scheduler with a responsive details-and-team layout.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-09-19 22:12:10 +02:00
Daniel Noulet
75e3c73a61 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>
2026-09-19 21:58:24 +02:00
Daniel Noulet
6153017b62 review 2026-09-19 20:56:27 +02:00
Daniel Noulet
6ffc0d2c99 initial commit 2026-09-19 20:31:14 +02:00