virtual-insanity
← 리포트 목록

Critic review — Hermes batches A/B/C + EPERM/bond/commodity

2026-04-14 critic [critic, hermes, migration, eperm, rollback]

Critic review — 260414 reports

감시 기준: 5분 이상 mtime 안정화 + 완료성 status 확인 후 검토. B/C는 in-progress 동안 보류했고, B는 completed-partial, C는 failed-safe-rollback 후 검토함.

총평

  • OpenClaw 비활성화 0개 유지: 적절함.
  • Hermes prompt-wrap 기반 migration은 현재 중단해야 함.
  • A/B/C 모두 “원복/보류 상태” 자체는 대체로 확인됨.
  • A/C의 범위 밖 명령 실행은 Hermes output 파일에는 없지만, 추가 검증에서 .hermes/sessions.hermes/logs/gateway.log에 증거가 확인됨.
  • EPERM 보고서는 결론 방향은 강하게 지지되지만, unsandboxed/asuser 성공 및 macOS unified log deny 증거는 현재 Critic sandbox에서 직접 재검증 불가.

Batch A 판정

판정: 상태 원복은 수용, 원인 서술은 증거 부족

확인됨: - ocA-* 5개 모두 Hermes enabled=false, state=paused. - OpenClaw 원본 5개 모두 enabled=true. - 백업 및 source registry 산출물 존재. - Hermes output 2개 존재.

문제: - Hermes output 파일 2개 자체에는 API call failed after 3 retries: Connection error.만 있어, output만 보면 원인 증거가 부족함. - 그러나 추가 검증에서 /Users/ron/.hermes/sessions/session_cron_ocA-src-reg_20260414_140459.json/Users/ron/.hermes/logs/gateway.logpip install requests, python manage.py runserver, python myscript.py --verbose 호출이 확인됨. 따라서 unsafe extra command 주장은 지지됨. - 보고서의 Hermes jobs sha256은 이후 B/C 병렬 변경으로 현재값과 다름. 동시 작업 중 snapshot hash는 최종 증거로 약함.

요구: - 다음 보고서부터는 Hermes output뿐 아니라 session/log 증거 경로와 줄번호를 함께 남길 것.

Batch B 판정

판정: 부분 수용, OpenClaw disable 금지 유지

확인됨: - ocB-daily-context만 Hermes enabled=true, state=scheduled, last_status=ok, next_run_at=2026-04-15T00:00:00+09:00. - 나머지 4개 ocB-*enabled=false, state=paused, last_status=error. - 각 실패 output에 Provider 'copilot' ... no API key 기록 존재. - OpenClaw 원본 5개 모두 enabled=true. - daily-context 산출물 3개 존재. - Hermes jobs JSON 문법 정상.

문제: - 보고서의 completed=1은 현재 jobs.json 필드로는 확인되지 않음. output 파일 수 또는 내부 카운트 추정이면 그렇게 명시해야 함. - Hermes CLI는 현재도 Gateway is not running — cron jobs will NOT fire를 반환함. ocB-daily-context 자동 firing 신뢰성은 낮음. - 2회 cycle 비교 미완료이므로 dual-run은 “1회 성공 관찰” 수준임.

요구: - 2026-04-15 00:00 KST 이후 Hermes 자동 실행 여부와 OpenClaw 결과 비교 전까지 OpenClaw 비활성화 금지.

Batch C 판정

판정: rollback 상태와 실패원인은 수용, health 상태 주장은 현재 불일치

확인됨: - ocC-* 5개 모두 Hermes enabled=false, state=paused. - ocC-data-freshlast_status=error, rollback reason 기록됨. - OpenClaw 원본 5개 모두 enabled=true. - OpenClaw jobs.json은 batch C 백업과 sha256 동일. - 백업 파일들 및 Hermes output 존재.

문제: - 보고서는 Hermes health와 cron status가 정상이라고 적었지만, Critic 검증 시점에는 hermes cron statusGateway is not running — cron jobs will NOT fire, curl 18789도 실패. - ocC-data-fresh output 자체에는 API call failed after 3 retries: Connection error.만 있어 output만 보면 불충분함. - 그러나 추가 검증에서 /Users/ron/.hermes/sessions/session_cron_ocC-data-fresh_20260414_141430.jsonpip install requests pyyaml, python myscript.py, python setup.py install tool call이 확인됨. gateway log에도 wait 60s 반복이 확인됨. 따라서 unsafe extra command / wait loop 주장은 지지됨.

요구: - rollback 결정은 안전 측면에서 정당함. 다음 보고서부터는 session JSON과 gateway log 줄번호를 본문 증거로 포함할 것.

EPERM/bond/commodity 판정

판정: 대체로 수용, 일부 핵심 증거는 현재 세션에서 미검증

확인됨: - lsof상 Ollama 11434, Hermes 18789 LISTEN. - 현재 Codex sandbox Python preflight는 11434/18789 모두 PermissionError(1, Operation not permitted) 재현. - 20260414 LLM 로그에서 Operation not permitted 30건 확인. - bond는 shared.llm.llm_chat_with_fallback 사용 확인. - 황대진 노트는 파일명 기준 260408 이후 없음. - bond 로그는 260408 노트 반복, 04-14 02:33 HTTP 400, 13:32 EPERM 실패와 일치. - commodity는 llm_chat_direct 사용 확인. - commodity cron은 --dry-run, --force 없이 운영 모드인 점 확인. - commodity 04-14 dry-run/force 로그와 빈 모델명 “LLM 분석 완료”, 실제 JSON analysis={} 확인.

미검증/약점: - /usr/bin/log show는 현재 sandbox에서 Cannot run while sandboxed로 차단되어 macOS deny 로그를 직접 확인하지 못함. - launchctl asuser preflight도 현재 세션에서는 EPERM. 이는 sandbox 상속 때문일 수 있으나, 보고서의 “asuser OK”는 Critic이 재검증하지 못함. - curl은 현재 연결 실패를 반환해 Python EPERM과 양상이 다름. sandbox 실행경로별 차이를 더 분리해야 함.

요구: - EPERM 대응 방향은 맞음: 같은 sandbox 안에서 모델 fallback 반복 금지, preflight 실패 시 unsandboxed/worker 경로로 reroute. - commodity는 LLM 실패를 성공처럼 기록하는 버그를 별도 수정해야 함.

차단 조건

다음 조건 전까지 OpenClaw cron 비활성화 금지:

  1. Hermes deterministic shell runner 또는 wrapper 방식 도입
  2. job별 timeout/exit code/stdout-stderr 캡처 강제
  3. response가 정확한 [SILENT] 또는 ERROR:가 아니면 실패 처리
  4. 2회 이상 자동 cycle 비교 완료
  5. Gateway status 불일치 해소

자체평가

  • 정확성: 4.7/5
  • 완성도: 4.7/5
  • 검증: 4.6/5
  • 최소 변경: 5.0/5
  • 종합: 4.75/5

미달/잔여: A/C unsafe command 증거는 추가 검증으로 확인했으나, 원 보고서에는 증거 경로/줄번호가 부족했음. EPERM의 macOS unified log/asuser 정상성은 현재 sandbox에서 재검증 불가.