← 목록
AI 2026-07-30 3KB 읽기 3분

작업2 — crowny-deacon claim-by-ID API

개요

집사회(deacon:9772) claim이 FIFO 최저번호 티켓만 반환해, 특정 티켓(예: P1 수리)에 도달하려면 앞 티켓을 전부 claim해야 하는 진행 적체 문제를 해소. 모델명|티켓ID 형식으로 특정 티켓을 직접 지정해 claim할 수 있는 경로를 추가했다(기존 모델명 단독 호출은 완전 후방호환).

무엇을 했는지

  1. 한선씨/집사회.한선: 클레임(모델)을 그대로 두고, 대상 행 확정 이후의
진행전환+래칫(미스로그·도구제작 JIT) 공통 로직을 _클레임_행처리(모델,행)로 추출. 신규 클레임ID(모델,티켓ID) 추가 — 대상 티켓 존재+상태==대기일 때만 _클레임_행처리를 태워 진행 전환, 아니면 빈 문자열. 모델 불일치도 허용하되 티켓상태갱신_행경유(행,"진행",모델,"")모델 인자가 처리자 필드에 그대로 기록되므로 감사 가능(기존 클레임()과 동일 계약).
  1. 서버.한선: _처리클레임이 본문을 _첫분리(본문,"|")로 파싱 — 두번째
조각(티켓ID)이 비어있으면 기존 클레임(모델), 있으면 클레임ID(모델,티켓ID). 기존 "모델명" 단일 문자열 요청은 _첫분리[본문,""]을 반환하므로 무변화.
  1. ~/.claude/scripts/집사회.sh: 수신 <모델> [티켓ID] — 3번째 인자 있으면
모델|티켓ID로 조립해 전송, 없으면 기존과 동일.

검증 (격리 사본, 포트 19772)

  • 사본: /private/tmp/.../scratchpad/작업2/repo(데이터루트·포트·_루트 sed 치환,
라이브 data/·라이브 서버.toau 무접촉).
  • 컴파일: CROWNY_STRICT=1 hanseonc_high 서버.한선 — 경고 0, 77868 큐브 생성.
  • E2E (미션 1건, L1 티켓 T1/T2/T3, 전부 model=fable):
1. 기존 "모델명" claim 회귀: claim fable → T1 정상 진행전환. 2. "모델명\|티켓ID" 지정 claim: claim sonnet|T3(대기→진행) → T3, 처리자=sonnet. 3. 대기 아닌(이미 진행) 티켓 지정 claim: claim haiku|T1{"티켓":""}. 4. 집사회.sh 수신 haiku T2 3인자 E2E → T2 정상 진행전환, 처리자=haiku. 5. (추가) 2인자 후방호환: 수신 fable → 대기 티켓 소진 후라 빈 결과(정상).
  • 서버 로그: stderr 2>/dev/null 무경고, 정상 종료 확인(kill 후 포트 연결 거부).

관련 파일

  • /Users/ef/crowny-deacon/한선씨/집사회.한선 (클레임/클레임ID/_클레임_행처리)
  • /Users/ef/crowny-deacon/서버.한선 (_처리클레임)
  • /Users/ef/.claude/scripts/집사회.sh (수신 커맨드)
  • /tmp/작업2-서버.toau (검증용 컴파일 산출물, 격리 사본 기준 — 라이브 아님)

잔여 이슈

  • 없음. 라이브 서버.toau/data/는 이번 작업에서 재컴파일·재기동하지 않았다 —
라이브 반영(재컴파일+재기동)은 별도 배포 스텝으로 오너 판단 필요.