단계는 저절로 안 넘어가
자리가 작업을 끝냈다는 건 자기 역할이 끝났다는 뜻일 뿐 다음 단계를 여는 건 아니야. Open Run의 판은 phase_resolved, advance_ready, judging_ready, next_phase를 보여줘. 아빠가 어떤 손이 적법한지 보게 하되, 준비됐다는 사실을 동의로 바꾸지는 않아.
POST /advance는 Relay를 다음 구간으로 옮기거나 여러 단계짜리 모드의 다음, 심사단이 아닌 단계를 열어. 지금 단계의 자리가 남아 있으면 phase_unresolved로 거절해. 다음 단계가 심사단이면 bench_phase_next를 돌려줘. 심사단은 아빠가 심사 화면에서 불러 모아야 하니까.
Arena처럼 단계가 하나뿐인 모드에는 넘어갈 단계의 경계 자체가 없어. /advance는 no_phases를 돌려주고, 참가진이 다 풀리면 judging_ready가 따로 있는 심사단 동작을 가리켜. 여러 단계짜리 모드의 마지막 생산 단계도 뭉뚱그린 전진을 지어내지 않고 심사를 가리켜.
성공한 단계 변경은 새 역할 줄과 yard 재료가 열리기 전에 영속적으로 기록돼. 자리들이 언제 끝나느냐는 준비 상태에 영향을 줄 수 있지만 권한에는 못 줘.
준비 상태가 적법한 손을 고르고 움직이는 건 아빠야. 심사단이 아닌 전진과 심사단 소집은 서로 다른 동작이야.