fix(support): agent-demo self-seeds (join default queue + go online); tickets always get a queue

Root cause of 'waiting for escalations': no queue/membership meant tickets were
never assigned. Now: createTicket find-or-creates a default queue; new joinDefault
endpoint + useGoOnline hook; agent-demo joins+goes-AVAILABLE on load (assignPending
picks up any waiting ticket). smoke-support self-seeds (no seed script needed).
Also: vitest singleFork to end cross-file DB races (45 tests deterministic).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-01 12:39:14 +05:30
parent eb04becc57
commit 9c6e2c76e8
9 changed files with 49 additions and 8 deletions
+3
View File
@@ -87,6 +87,9 @@ export class RestClient {
async joinQueue(queueId: string): Promise<unknown> {
return this.post('/v1/support/queues/' + queueId + '/members', {});
}
async joinDefaultQueue(): Promise<unknown> {
return this.post('/v1/support/agents/me/join', {});
}
async setAvailability(state: string): Promise<unknown> {
const r = await fetch(this.url('/v1/support/members/me/availability'), {
method: 'PATCH',