virtual-insanity
← 리포트 목록

batch_AD_real

2026-04-14 hermes

Hermes migration batch AD real — 2026-04-14

결론

  • batch AD 실제 이전: 2/5 완료.
  • 완료 2개는 Hermes enabled=true/scheduled, OpenClaw enabled=false.
  • 실패 2개는 Hermes enabled=false/paused, OpenClaw enabled=true 유지.
  • 남은 1개는 안전 기준상 추가 선정하지 않았다. 현재 미선점 후보는 대부분 외부 발송·OAuth·장시간 LLM·vault 변조·batch B/C 제외 대상이라 강제 이전하지 않았다.
  • LaunchAgents 변경 없음. shared/llm.py, shared/cycle_base.py 변경 없음. Gateway PID 63520 유지 확인.

코드 수정

  • /Users/ron/.openclaw/workspace/scripts/pipeline/research_intelligence_aggregator.py
  • save_json_atomic(result, OUTPUT)save_json_atomic(OUTPUT, result)
  • 이유: 기존 스크립트가 dict를 path로 넘겨 원본 OpenClaw 실행부터 실패하던 버그 수정.
  • 검증: python3 -m py_compile 통과, --dry-run 통과.

백업

  • Hermes: /Users/ron/.hermes/cron/jobs.json.bak-batchAD-real-20260414161115
  • OpenClaw: /Users/ron/.openclaw/cron/jobs.json.bak-batchAD-real-20260414161115

최종 이전 2개

OpenClaw id Hermes id 변환 dual-run 최종 상태 evidence
research_intelligence_aggregator ocAD-AD000-research-intel shell-job 3회 PASS, strict diff 0, watch changed Hermes scheduled / OpenClaw disabled /Users/ron/.openclaw/workspace/verification/hermes-batch-AD-real/ocAD-AD000-research-intel/retry-schema-cycle-1/20260414_161826_research_intelligence_aggregator_ocAD-AD000-research-intel.json
/Users/ron/.openclaw/workspace/verification/hermes-batch-AD-real/ocAD-AD000-research-intel/retry-schema-cycle-2/20260414_161838_research_intelligence_aggregator_ocAD-AD000-research-intel.json
energy-data-collector ocAD-AD001-energy-data prompt-wrapped command → shell-job 3회 PASS, strict diff 0 Hermes scheduled / OpenClaw disabled /Users/ron/.openclaw/workspace/verification/hermes-batch-AD-real/ocAD-AD001-energy-data/final-cycle-1/20260414_161923_energy-data-collector_ocAD-AD001-energy-data.json
/Users/ron/.openclaw/workspace/verification/hermes-batch-AD-real/ocAD-AD001-energy-data/final-cycle-2/20260414_161930_energy-data-collector_ocAD-AD001-energy-data.json
/Users/ron/.openclaw/workspace/verification/hermes-batch-AD-real/ocAD-AD001-energy-data/final-cycle-3/20260414_161938_energy-data-collector_ocAD-AD001-energy-data.json

정정: research_intelligence_aggregator 3회차 evidence는 아래가 맞다.

  • /Users/ron/.openclaw/workspace/verification/hermes-batch-AD-real/ocAD-AD000-research-intel/final-cycle-3/20260414_161921_research_intelligence_aggregator_ocAD-AD000-research-intel.json

Rollback / 미이전

OpenClaw id Hermes id 결과 최종 조치 evidence
commodity-spike-morning ocAD-AD002-commodity-spike FAIL: strict diff mismatch. 실제 급변 3개가 감지되어 LLM/알림/alert log 경로가 실행됨. Hermes paused / OpenClaw enabled 유지 /Users/ron/.openclaw/workspace/verification/hermes-batch-AD-real/ocAD-AD002-commodity-spike/cycle-1/20260414_161127_commodity-spike-morning_ocAD-AD002-commodity-spike.json
gitnexus-reindex ocAD-AD003-gitnexus-reindex FAIL: OpenClaw/Hermes 양쪽 300초 timeout Hermes paused / OpenClaw enabled 유지 /Users/ron/.openclaw/workspace/verification/hermes-batch-AD-real/ocAD-AD003-gitnexus-reindex/cycle-1/20260414_161155_gitnexus-reindex_ocAD-AD003-gitnexus-reindex.json

5개를 채우지 않은 이유

  • 이미 다른 batch가 active 소유권을 가진 항목은 제외했다.
  • batch B/C 시도 항목은 제외했다. 특히 vault-lint-daily, gics-sector-tracker, etf-data-collect-domestic-index, copper-market-collector, urea-price-tracker, data-freshness-watcher는 재선정하지 않았다.
  • 남은 command 후보는 안전 기준에 맞지 않았다.
  • 외부 발송/OAuth: gmail-credit-monitor, bond-morning-poll, gmail-newsletter-collector
  • vault 변조/승격: jisik-promote-dkzkyq, vault_linker, domain-wiki-compiler
  • 장시간 LLM/비결정 출력: sector_news_scorer, claude-practice-monitor, bond-daily-report, daily-code-review
  • 운영 발송 중복 위험: task-briefing-morning, morning-review, oil-supply-monitor, ETF 리포트 계열
  • commodity-spike-morning은 no-op일 것으로 예상했으나 실제 급변 감지로 알림 경로까지 실행되어 rollback했다. 이 분류 실수 때문에 추가 위험 후보를 더 밀지 않았다.

최종 상태 확인

  • research_intelligence_aggregator: OpenClaw disabled / Hermes ocAD-AD000-research-intel scheduled
  • energy-data-collector: OpenClaw disabled / Hermes ocAD-AD001-energy-data scheduled
  • commodity-spike-morning: OpenClaw enabled / Hermes ocAD-AD002-commodity-spike paused
  • gitnexus-reindex: OpenClaw enabled / Hermes ocAD-AD003-gitnexus-reindex paused

최종 검증

  • python3 -m json.tool ~/.hermes/cron/jobs.json 통과
  • python3 -m json.tool ~/.openclaw/cron/jobs.json 통과
  • hermes cron status: gateway/API/scheduler healthy, active jobs 136, next run 2026-04-14T16:30:00+09:00
  • lsof -nP -iTCP:18789 -sTCP:LISTEN: Python PID 63520 listen 확인
  • python3 /Users/ron/.openclaw/workspace/scripts/knowledge_os.py mcp-check: 4/4 healthy

Remaining Risks

  • energy-data-collector는 현 네트워크/DNS 상태에서 EIA/FRED 데이터 수집이 모두 실패하지만, OpenClaw와 Hermes 출력이 3회 동일해 이전했다. 네트워크 복구 후 실제 저장 경로 생성을 추가 관찰해야 한다.
  • commodity-spike-morning 검증 중 실제 알림/alert log 경로가 실행됐다. rollback은 완료했지만, 검증 1회 자체의 side effect는 발생했다.
  • Hermes shell job은 silent=false, prompt=""가 없으면 출력이 [SILENT]로 저장되어 false diff가 난다. 이후 shell-job 변환 스크립트에는 이 필드를 기본 포함해야 한다.
  • gitnexus-reindex timeout이 반복된다. 현재 별도 15:09대 npx gitnexus analyze 프로세스가 남아 있으나 AD가 생성한 프로세스는 verifier timeout으로 종료됐다.

자체평가

  • 자체평가: 3.9/5 — 요청 기준 4.7 미달
  • 정확성 4.4: strict dual-run 3회 통과한 2개만 cutover, 실패 항목 rollback 완료.
  • 완성도 2.8: 5개 목표 미달.
  • 검증 4.5: JSON, Hermes status, PID, MCP health, py_compile 확인.
  • 최소 변경 4.0: 공유 파일/LaunchAgents 미수정. 단, research aggregator 버그 수정과 commodity 검증 side effect 때문에 감점.