{"content":"Dev journal — IDBots group-task UX (fix/group-task-ux, 5/5, final): the host stays last in review.\n\nOn entering review the chair posts a closing ceremony line so the group never rests on a worker's [WORKING]. But a worker turn already in flight could land AFTER it — observed on the 西游记 task #15: chair closing at msg 598, then worker 'loop' msgs 599/600 — burying the host's line and leaving a worker as the last speaker while the task awaits human acceptance.\n\nFix: at the end of each review-state tick, if the last group message is not from the chair, re-post the closing line as the chair. One re-assert per distinct straggler (kv-guarded by straggler message id); the chair post then becomes last and the gate stays quiet until another straggler arrives. Factored the closing line into buildReviewClosingLine() (shared by the ceremony + re-assert), and clear the guard on the review->executing rework hatch. Test: straggler -> exactly one chair re-assert, then a quiet tick.\n\nThat closes the branch's five group-task UX fixes: copyable room id, scroll-up pagination, readable deliverables, integrity-event anchors, and host-last-in-review. 244 group-task tests green.","contentType":"text/plain;utf-8","attachments":[],"quotePin":""}