omo는 senpi 2026.10.13에서 동작합니다: 바쁜 호스트는 세션이 끝나면 메모리를 반환합니다. 여러 세션을 처리하는 RPC 호스트는 종료될 때까지 실행했던 모든 세션의 힙을 유지했기 때문에, 터미널 작업이 많은 긴 하루 동안 최대 메모리 사용량이 계속 높게 유지되었습니다. 이제는 세션이 종료될 때 해제된 힙을 반환합니다(senpi#3240, senpi#3221). DeepSeek 공식 API를 통한 도구 호출과 이를 전달하는 게이트웨이에서 400 Invalid schema ... got 'type: null' 오류가 더 이상 발생하지 않습니다. 모든 도구 스키마가 루트 type: "object"를 선언하도록 변경되었기 때문입니다(senpi#3250). Claude 구독 경로는 이제 Claude Code 2.1.296을 실행하며(senpi#3258), 모델 카탈로그는 실시간 제공자로부터 새로 고쳐집니다(senpi#3248). 대용량 평가 데이터 셀이 공유 호스트를 멈추게 하던 문제도 해결되었고(senpi#3206), RPC 클라이언트는 예약된 목표 연속 작업을 확인하고 지금 바로 실행할 수 있습니다(senpi#3208). 전체 노트: senpi 2026.10.13.
데몬에서 호스팅되는 백그라운드 작업은 부모가 종료하거나 새 세션을 시작해도 계속 실행됩니다. 부모는 턴을 중단하지 않고 분리(detach)됩니다. /new를 실행하거나 종료하면, 이전 세션을 명시하고 결과를 수집하기 위한 omo --resume 명령을 안내하는 알림이 하나 표시됩니다. 자식 작업은 계속 해당 세션이 소유합니다. 로컬 인프로세스 및 stdio 자식 작업은 기존 종료 동작을 유지합니다. (#8517, #10018)
응답하지 않는 자식 프로세스 때문에 작업이 무기한 멈추던 문제가 해결되었습니다. stdio RPC 요청에는 기한(deadline)이 설정되었고, 두 프로세스 러너 모두 하트비트를 하나씩 진행 중 상태로 유지합니다. 10초 간격의 하트비트가 세 번 연속 응답하지 않으면 실행 중인 자식은 child-unresponsive로 종료되며, 트랜스크립트가 보존되고, task_output에서 확인 및 재실행 방법이 안내됩니다. 마지막으로 성공한 하트비트는 실시간 작업 스냅샷에 last_seen_at으로 표시됩니다. (#10017)
백그라운드 작업을 재개할 때 더 이상 빈 슬롯을 기다리지 않습니다. 동시성 그룹이 가득 찬 경우, 완료된 백그라운드 작업을 재개하면 호출을 블로킹하는 대신 즉시 보류(pending) 상태로 반환되고, 슬롯이 비면 후속 프롬프트를 전송합니다. 대기 중인 재개 요청이 있는 동일 작업을 다시 재개하려 하면 거부되며, 대기 중인 재개를 취소해도 해당 요청이 보유하지 않은 것은 해제되지 않습니다. 또한 폴백 재시도는 가장 최근의 후속 프롬프트를 유지합니다. @imadal1n님께 감사드립니다. (#9985)
별도 프로세스로 시작된 작업 자식이 첫 프롬프트 이후 폴백 체인을 전혀 받지 못하던 문제가 해결되었습니다. 엔진이 체인 기한이 지난 뒤에야 기능 확인에 응답하면, 러너는 첫 프롬프트가 이미 전송된 후에도 set_retry_fallback을 보냈습니다. 이제 기한 시점에 체인을 폐기하며, 자식은 "응답 없음" 경고와 함께 관리자의 폴백을 유지합니다. 이는 간헐적으로 발생하던 windows-latest 테스트 실패의 원인이었습니다. (#9582, #10087)
ulw-execute는 며칠 동안 재시도를 반복하던 실패 체크포인트를 이제 중단합니다. 같은 실패가 연속 두 번 발생하거나, 세 번째 시도가 실패하거나, 네 시간 동안 열려 있으면 해당 체크포인트와 이에 의존하는 모든 체크포인트가 누락 상태를 남긴 채 차단([~])으로 표시됩니다. 이 내용은 원장과 최종 보고서에 기록되며, 실행은 계획의 나머지 부분으로 넘어갑니다. 깨진 테스트 하네스는 한 번만 수리를 시도하며, 체크포인트가 열려 있는 동안 발견된 작업은 해당 체크포인트를 차단하지 않는 한 그 뒤에 대기열로 들어갑니다. (#10051)
대규모 리서치는 한 번에 한 웨이브씩이 아니라 시작 전에 전체 수집 계획을 세웁니다. mass ulw research는 이제 모든 관점을 수확(harvest), 확장(expand), 검증(verify)으로 이어지는 체인으로 정의하며, 각 단계의 결과를 파일을 통해 다음 단계로 전달합니다. 이에 따라 빠른 관점은 느린 관점이 아직 수확 중이어도 검증 단계에 도달하며, 아직 열려 있는 리드(leads)는 해당 관점 클러스터가 안정되는 즉시 각 클러스터에 합류합니다. mass-ulw 및 ulw-execute 스킬은 더 이상 단일 노드의 완료가 세션을 깨운다고 설명하지 않으며, 완료되었거나 일시 중지된 실행만 그렇게 됩니다. (#10049)
- 1d130db 풀 리퀘스트 #10086 병합 (code-yeongyu/rpc-seam/7-detach-daemon-children 브랜치에서)
- 8fe840f 원격 추적 브랜치 'origin/dev'를 rpc-seam/7-detach-daemon-children에 병합
- dc373d2 풀 리퀘스트 #10084 병합 (code-yeongyu/rpc-seam/6-stdio-deadlines 브랜치에서)
- 1b011f6 원격 추적 브랜치 'origin/dev'를 rpc-seam/7-detach-daemon-children에 병합
- 6d2cfa2 origin/dev를 rpc-seam/6-stdio-deadlines에 병합
- b78527c 풀 리퀘스트 #9985 병합 (imadal1n/fix/queued-resume-admission 브랜치에서)
- 0b182a4 origin/dev를 rpc-seam/6-stdio-deadlines에 병합
- 0f88bcf 원격 추적 브랜치 'origin/dev'를 HEAD에 병합
- 835e63e 풀 리퀘스트 #10087 병합 (code-yeongyu/fix/9582-late-fallback-chain 브랜치에서)
- a2f92fe 풀 리퀘스트 #10050 병합 (code-yeongyu/fix/mass-ulw-multistage-graph-10049 브랜치에서)
- c9971a5 원격 추적 브랜치 'origin/dev'를 HEAD에 병합
- 347b706 원격 추적 브랜치 'origin/dev'를 fix/9582-late-fallback-chain에 병합
- 6e00a77 원격 추적 브랜치 'origin/dev'를 fix/mass-ulw-multistage-graph-10049에 병합
- 24b46cb 풀 리퀘스트 #10053 병합 (code-yeongyu/fix/ulw-execute-checkpoint-stop-10051 브랜치에서)
- 779ab40 docs(skills): #10050 리뷰 반영 (#10049)
- 94e2311 docs(changelog): 늦은 폴백 체인 수정 사항 추가 (#9582)
- d58d7ca docs(skills): #10053 리뷰 반영 (#10051)
- 04be51e docs(changelog): 5.1.32 컷 이후 #10051 항목을 Unreleased로 이동
- a60246b 원격 추적 브랜치 'origin/dev'를 fix/ulw-execute-checkpoint-stop-10051에 병합
- 4502b72 docs(changelog): 5.1.32 컷 이후 #10049 항목을 Unreleased로 이동
- aa1d420 원격 추적 브랜치 'imadal1n/fix-queued-resume-admission'을 HEAD에 병합
- f01a59c 원격 추적 브랜치 'origin/dev'를 HEAD에 병합
- 01971b0 원격 추적 브랜치 'origin/dev'를 fix/mass-ulw-multistage-graph-10049에 병합
- 0c6b999 풀 리퀘스트 #10085 병합 (code-yeongyu/release/v5.1.32-source-state 브랜치에서)
- 5f38a9c fix(background): 재개된 프롬프트가 실패할 때 터미널 이력 기록
- ecceb18 원격 추적 브랜치 'upstream/dev'를 fix/queued-resume-admission에 병합
- 1828a28 refactor(background): 대기열 재개 허용 로직에 리뷰 개선 사항 반영
- 54f9c5d 원격 추적 브랜치 'upstream/dev'를 fix/queued-resume-admission에 병합
- a6ce655 원격 추적 브랜치 'origin/dev'를 HEAD에 병합
- 5242c7a docs(changelog): 대기열 백그라운드 작업 재개 추가 (#9985)
- c841522 원격 추적 브랜치 'origin/dev'를 fix/ulw-execute-checkpoint-stop-10051에 병합
- 5c7ff7f 원격 추적 브랜치 'origin/dev'를 fix/mass-ulw-multistage-graph-10049에 병합
- e25c72c docs(skills): 실패 체인 확인 리뷰 반영 (#10049)
- 6afaff3 docs(skills): 실패 체인 복구를 실패 플레이북으로 이동 (#10049)
- 48a9488 docs(skills): 실패한 체인을 다시 실행할 때 첫 실행에서 리듀서 유지 (#10049)
- 0370948 docs(skills): 실패한 체인 노드를 즉시 독립 실행으로 시작 (#10049)
- 16f213a docs(skills): #10053 리뷰 4차 반영 (#10051)
- 3ebe767 docs(skills): #10053 리뷰 3차 반영 (#10051)
- bdd2e70 docs(skills): #10053 리뷰 2차 반영 (#10051)
- ba11ea3 docs(skills): #10050 리뷰 3차 사소한 수정 반영 (#10049)
- 5cb47d4 docs(skills): #10053 리뷰 1차 반영 (#10051)
- aaaa09d docs(skills): #10050 리뷰 2차 반영 (#10049)
- f16cf8c docs(skills): #10050 리뷰 1차 반영 (#10049)
- ffd8e48 docs(changelog): 대규모 리서치가 전체 수집 계획을 미리 세우는 내용 추가 (#10049)
- 02b5ed2 docs(skills): mass-ulw 단계별 스테이지를 미리 계획하고 파일로 데이터 전달 (#10049)
- 8a13b37 docs(skills): ulw-execute 체크포인트 검증 루프 제한 (#10051)
- 76e6d7f fix(background): 첫 번째 재개가 즉시 허용을 기다리는 동안 동시 재개 거부
- 71f8d13 fix(background): 같은 호출에서 지워지는 종료 상태 기록 중단
- 940a980 test(background): 대기열 연속 작업 가드, 취소, 부모 삭제 테스트 추가
- 2e42938 fix(background): 대기열 재개 허용 실패를 주입된 로거로 기록
- 50bc219 fix(background): 롤백 및 종료 시 대기열 재개 전환 정리
- 9b29701 fix(background): 폴백 재시도에서 원래 작업 컨텍스트 유지
- c0c348c fix(background): 개별 작업 이력 항목 복원
- 9d17274 fix(background): 재개된 작업을 허용 로직을 막지 않고 대기열에 추가
커뮤니티 기여자 1명에게 감사드립니다:
- @imadal1n:
- fix(background): 재개된 작업을 허용 로직을 막지 않고 대기열에 추가
- fix(background): 개별 작업 이력 항목 복원
- fix(background): 폴백 재시도에서 원래 작업 컨텍스트 유지
- fix(background): 롤백 및 종료 시 대기열 재개 전환 정리
- fix(background): 재개 대기열 허용 실패를 주입된 로거로 기록
- test(background): 대기열 연속 작업 가드, 취소, 부모 삭제 테스트 추가
- fix(background): 같은 호출에서 지워지는 종료 상태 기록 중단
- fix(background): 첫 번째 재개가 즉시 허용을 기다리는 동안 동시 재개 거부
- Merge remote-tracking branch 'upstream/dev' into fix/queued-resume-admission
- refactor(background): 대기열 재개 허용 로직에 리뷰 개선 사항 반영
- Merge remote-tracking branch 'upstream/dev' into fix/queued-resume-admission
- fix(background): 재개된 프롬프트가 실패할 때 터미널 이력 기록
bun add -g omo-ai