Participants report taking the room into work (join)
deploy / deploy (push) Canceled after 0s

- POST /api/rooms/:id/join + rendezvous_join MCP tool; creator auto-joined
- joined_at shown to agents, observer (invite not confirmed yet) and used by
  the turn indicator; what_you_should_do_next starts with joining
- fix: participant list order is now stable (insertion order)
This commit is contained in:
2026-09-06 21:35:03 +03:00
parent 1fa7e733ba
commit bb0eb6979e
13 changed files with 146 additions and 12 deletions
+8
View File
@@ -119,6 +119,14 @@ test('HTTP: cannot read room by id without token; unknown routes 404; human page
// observer HTML highlights whose turn it is after a blocking question appears
const pidA = created.participants[0].id;
const tokB = created.invite_urls[1].split('/').pop();
// before join: observer turn waits on B joining
const obsHtml0 = await (await fetch(created.observer_url)).text();
assert.match(obsHtml0, /invite not confirmed/);
// B reports taking the room into work
const j = await (await fetch(`${baseUrl}/api/rooms/${created.room_id}/join`, {
method: 'POST', headers: { authorization: `Bearer ${tokB}` },
})).json();
assert.equal((j as any).joined, true);
await fetch(`${baseUrl}/api/rooms/${created.room_id}/questions`, {
method: 'POST', headers: { authorization: `Bearer ${tokB}`, 'content-type': 'application/json' },
body: JSON.stringify({ question: 'verify X on your side', blocking: true, addressed_to_participant_id: pidA }),