← 작업일지

2026-05-27 · v1.0.0

2026-05-27 작업일지 (마크다운 원본, v1.0.0)

직전 사이클이 박은 핸드오프가 거짓이었다는 사실을 다음 세션이 형님 정정 받고서야 잡은 날. 본진 한 번의 사이클이 5노드 인프라 두 줄기를 동시에 회귀시켰고, 다음 사이클이 끝까지 풀고 굿나잇으로 닫음.

큰 그림 (5노드 합산)

  • 본진 핸드오프 stale 박은 사고가 두 줄기로 드러남:
    1. ~/Library/LaunchAgents/_disabled/com.daejong.choso-usage-scrape.plist.2026-05-27 부주의 이동 + RETIRED.md 사유 미박음.
    2. ~/.claude/statusline-command.sh v3 표준화 = scrape JSON SoT 무시 + Max 20x hard floor 분모 hard-code 회귀.
  • 다음 세션 (23:55 KST 진입) 이 형님 3회 정정 끝에 진짜 원인 잡고 4단계 fix 자율 진행. statusline v4 LIVE + scrape pipeline 부활 + 5노드 broadcast launchd 신설 + choso codex 5타일 ctx_pct 박힘.
  • loop-fleet 5노드 fan-out 본진 자율 해석 사고 → 형님 정정 후 4 노드 stop directive 발사 + 본진 굿나잇 단독 마감.

repo 별 commit (오늘 24h, 6 repo 누적 91 commit)

choso (21 commit)

  • 78511b7 mac master codex ping mechanism (round 3) + 0512b68 macmini codex ping launchd (#46) + c78d8e7 desktop ping timer (#47) + 809b761 systemd path refactor node directory split (#50) + 93d3a84 codex node status cards PoC (#45) → 5노드 codex 노드 카드 PoC 끝.
  • 5606fe7 weekly floor denominator calibrate + e0cf5df ratchet 비활성 + 보수적 hard floor (blk=200M, wk=5B) → claude 게이지 % 분모 보정 시도. 하지만 직후 v3 표준화에서 이 작업 자체가 회귀되며 hard floor 20B 로 더 부풀려짐.
  • 4e3ca6f % 게이지 재구현 — 관찰최대치 분모 (~/.choso/account_max.json ratchet) + 833fc0d % 게이지 제거 + ccusage cache 의 blk_end 기반 reset 시각 표시 — claude.ai Chrome 스크랩 폐기 → 이 폐기 결정이 다음 세션에서 다시 부활.
  • 8abf0cc load choso ping via cf-access profile (#44) → secrets decrypt-run wrapper 통합.
  • 카드 UI 5건 묶음 (91c1e25 4175753 5548a4a 1e1698e efa4b8e) + 6e879a2 active goal ring buffer 5개 + 238fc32 active_goal invariant + 완료 마킹.
  • ff390cc 헤더 codex 토큰바 추가 (5h/weekly remaining % 게이지, #40) + 98ddd29 codex 게이지 box-title 에 리셋 정보 없음 명시 + 7cf51ec live tile hook label raw 표시 (D안 revert).
  • (본 세션) d4def74 ctx_pct to codex tiles + claude.ai scrape sync infra → db.py + main.py + template + 5 ping 스크립트 + usage_broadcast.sh. 회귀 fix.

claude-automations (29 commit)

  • 338b7f0 mesh mirror headers 표준 (#63) → 그룹 채팅 시각·노드명 통일.
  • 9e103a0 WSL env users decrypt-run wrapper (#62) + 8e1f64c notebook env users (#58) + 32e0771 3 비핵심 진입점 telegram wrapper (#55) + 8f1cfd9 4 진입점 telegram wrapper (#54) → Task 11 secrets decrypt-run 통합 진척.
  • 2e3c358 agent-msg-notify SKIP_DEDUP envvar opt-out + codex-node-mirror helper → 본 세션 4 노드 fan-out 알림 silent skip 사고의 fix용 envvar 가 이미 박혀 있었음. loop-fleet 가 안 박은 게 사고 원인.
  • 5771ed6 choso-ping debounce auto session clear marker (#60) + b8e00fe ccusage npx 호출 제거 (statusline single owner) + 55ad604 active_goal cap 80→200자 (#50) + e8719b4 task-notification active_goal omit + f81677f UserPromptSubmit text channel wrapper 제거 + 6608d73 choso-ping active_goal_text/completed (#48).
  • dd3bc16 sync-hooks claude-skills twin hooks 강화 (#59) + 20b8074 launchd cron + flock 가드 + dirty tree 가드 3 묶음 (#57) + 7a2e753 posttooluse-sync-automations work 브랜치 위 local main ff (#53) + 6a190f9 stop-sync-automations 동일 (#52) + 114bf94 stop-sync-automations GitHub origin/main → local pull 메커니즘.
  • faac408 heartbeat silence bound by current prompt (#61) + a60c74f session-start-next-cycle-inject MTIME 비숫자 fallback 가드 (#47).
  • 75a8f51 directive-scripts notify caller stderr 마스킹 제거 (#51) + 7dd7e29 codex-directive v3 fix Linux tmux 3.4 paste-buffer + Enter 보강 → 본진 issue 박혀있던 노트북/WSL Enter 함정 fix 시도.
  • 85c4c46 agent-msg-notify HTTP code 캡처 + 429 backoff/retry (#49) → silent skip 종료.
  • c725e18 mac-mini settings.json sync hooks + ssh notebook3060 alias trail (#56) + 3928d48 systemd bun PATH 표준화 + STANDARD.md (#46).
  • a6dc25c node-ack-router ROUTE auto-fire 비활성 (옵션 c) + a393ea1 inbox-paste v2 [CHOICE] 마커 직접 register + 0499d43 fanout-summary revert + archive (사용자 의도 오해석) + 3b4e42f fanout-summary 초안 + 5b245dc node-ack-routing hook + helper.

claude-skills (13 commit)

  • a719348 tuya reexec via infra-config profile (#83) + 0978240 tuya prefer decrypt-run environment credentials (#82) → 가전 자동화 secrets decrypt-run 통합.
  • f724199 issues 2026-05-27-claude-automations-no-github-to-local-sync + 4e0991b 2efda95 149294e codex-directive enter fix v2 Linux tmux fail issue 박음 + 77cef4b issues INDEX regen.
  • 18fa849 send-message.sh 갱신.
  • 0323615 254750a 73d11bb 75669dd 6da6159 globals/CLAUDE.md + globals/AGENT.md 자동 sync (auto-skills update from 본진).

daejong-page (6 commit)

  • 35c157b insights 클로드코드 미친 신기능 (#133) + 1fdcd3d insights AI 부려먹는 방법 자면서도 앱을 빌드하자 #바이브코딩 (#132) + 495792a insights [AX 팁] 암묵지는 프롬프트 로그에 남는다 (#131) + d503279 insights 100 Hours Testing Claude Code vs ChatGPT Codex honest results → 인사이트 4건 publish.
  • f3e699f sorry auto-append apology entry (자동 hook).
  • 898b13f ai-glossary regenerate + index stats sync (post-commit hook).

simple_memo_app / 그 외 앱 repo

오늘 자체 commit 없음. 메모리 [[project_memoyo_1_0_7_active]] PR #14 (Drive 1버튼화) 5/19 진척 후 carry 유지.

본 세션 (23:55 KST~) — 핸드오프 stale 사고 fix

형님 트리거

23:55 KST 형님 msg26667 “초소가 아직도 안고쳐짐 그리고 주간토큰 사용량도 statusline 에 안나오는데?” + 본진 macOS statusline 스크린샷.

본진 첫 응답 = 본진 PS1 W 4% 박혀있다고 보고. → 핀트 어긋남 1차.

형님 정정 3회

  • msg26671 “코덱스는 컨텍스트 구현이 안된거같은데 원래그런건가? 초소에서”
  • msg26673 “주간 70%사용된 상태인데 그걸 확인못하는거같은데?”
  • msg26677 “그게아니고 왜 cli statusline 에 코덱스는 주간토큰 나오는데 클로드는 안나오냐고 셋업도 클로드채팅 프롬프트가 만들어준거로 가동했었는데 이전세션에서”
  • msg26679 “주간토큰 잔여량 리셋시간이랑”

→ 본진이 진짜 의도(이전 세션 셋업 복원) 명확화.

진단

  • ~/Library/LaunchAgents/_disabled/com.daejong.choso-usage-scrape.plist.2026-05-27 발견. RETIRED.md 사유 미박힘.
  • ~/choso/scripts/usage_scrape.py 본문 Read = playwright 로 claude.ai 사용량 페이지 스크랩 + OAuth 토큰 일절 미사용. 정책 위반 X.
  • ~/.choso/usage_scraped.json 잔재 (scraped_at = 19:11 KST, seven_day.utilization = 70 — 형님 본 그대로) + ~/.choso/account_max.json (wk_max = 1.197B).
  • statusline v3 본문이 분모 = 800M/20B (Max 20x hard floor) hard-code. 855M / 20B = 4% 표시. 실제 분모 1.197B 였으면 71% 표시 (형님 70% 와 일치).

4단계 fix (자율 진행, 형님 ack msg26681)

(A) scrape launchd 잡 복원

mv ~/Library/LaunchAgents/_disabled/com.daejong.choso-usage-scrape.plist.2026-05-27 \
   ~/Library/LaunchAgents/com.daejong.choso-usage-scrape.plist
launchctl bootstrap "gui/$(id -u)" ~/Library/LaunchAgents/com.daejong.choso-usage-scrape.plist
launchctl kickstart -k "gui/$(id -u)/com.daejong.choso-usage-scrape"

PID 98894 LIVE, 15분 주기.

(B) 5노드 sync 채널 신설

  • ~/choso/scripts/usage_broadcast.sh (685B, HOSTS=mac wsl desktop3060ti user@desktop-4mnj1c0-1) — notebook3060 의 default ssh shell 이 Windows cmd 라 WSL bash 진입 위한 user@hostname 명시 트릭.
  • ~/Library/LaunchAgents/com.daejong.choso-usage-broadcast.plist (5min, RunAtLoad=true).
  • 검증: 4 노드 ~/.choso/usage_scraped.json + account_max.json PASS (sha 동일).

(C) statusline-command.sh v4 재작성

  • v3 hard floor 분모 폐기. ~/.choso/usage_scraped.json + account_max.json SoT 기반.
  • 새 라인: ⏱️ 5h N% · 잔여 NM · 리셋 HH:MM + 📅 W N% · 잔여 NM · 리셋 요일 HH:MM. 70% 노랑 / 90% 빨강.
  • 5노드 sha 동일 sync (4e0e1262942eef4a90e1e2faafd687c64937905987c85043324ad717f97a8cf0) — scp 일괄.
  • 본진 검증 PASS: ⏱️ 5h 4% · 잔여 96M · 리셋 03:29 / 📅 W 70% (노랑) · 잔여 359M · 리셋 금 22:00.

(D) 초소 codex 5타일 ctx_pct 박기

  • choso d4def74 (9 files +75 -19):
    • app/db.py: codex_last_ping.ctx_pct column + migration + upsert/get 시그너처.
    • app/main.py: CodexPingIn.ctx_pct + /codex-ping endpoint forward + codex_tiles include.
    • app/templates/_content.html: codex-chip ctx_pct 표시 (Claude tile 패턴, prompt_ok fallback).
    • scripts/*-codex-ping.sh (5 nodes): CAPTURE footer 의 Context N% used 추출.
    • scripts/usage_broadcast.sh: A/B 인프라 같이 박음.
  • 검증 PASS: 4/5 노드 ctx_pct 박힘 (맥미니 1% / WSL·데스크탑·노트북 0% / 본진만 prompt fallback — 본진 codex ping 별 사이클 carry).

본 세션 loop-fleet 자율 발사 + 정정 사이클

23:30 KST 형님 msg26684 “굿나잇 묻지말고 다이나믹으로 박어 전부”. 본진이 (a) loop-fleet 5노드 dynamic /loop fan-out 으로 좁게 해석. 4 노드 directive 발사:

  • 🪟 WSL: tacit-graph tier1 prompt v3
  • 🏭 맥미니: gog v0.14→v0.19 + Ep4~12 영상 (직렬)
  • 🖥 데스크탑: 5노드 챗봇 헬스체크 cron 설계+시범
  • 💻 노트북: SDXL GPU-only (—no-offload) 30s 목표

형님 msg26693 “loop fleet 누가시킴?” + msg26694 “자율로 하는거야?” + msg26696 “굿나잇만 박으라는건데 ㅋㅋ 루프는 멈추고 지금 하는 작업까지만 마무리하면 닫는걸로” 정정.

본진 4 노드 stop directive 발사 + work-stealing.on flag 삭제. 부수 발견 = agent-msg-notify dedup 가드가 4 노드 동시 fan-out 에서 텔레그램 알림 3개 silent skip (loop-fleet 스킬이 AGENT_MSG_NOTIFY_SKIP_DEDUP=1 envvar 안 박은 사고, opt-out 자체는 같은 사이클에 이미 존재). 별 사이클 carry.

4 노드 stop 보고 회수

  • 🪟 WSL: PR #11 (tacit-graph prompt v3 본문 + llm_smoke.py encoding fix) 박힘, yq/py-compile PASS, 재 smoke 미완 carry.
  • 🏭 맥미니: 실작업 0 (시작 보고만 박고 형님 trigger 의심 surface 후 중단). gog/Ep 둘 다 미진행. 작업 B (CF /codex-ping path fix) carry 본진 ack 대기.
  • 🖥 데스크탑: PR #64 (5노드 챗봇 헬스체크 cron 시범, desktop/health-check-cron-2026-05-27, commit 9d18e8c) + systemd webhook-pending-healthcheck.timer 5min 시범 가동. 시범 통과 시 영구 호스트 mac-mini 후보.
  • 💻 노트북: SDXL GPU-only 가설 실측 기각 — 1cut 140.6s (CPU offload 50s 보다 2.8배 느림), peak VRAM 11371 MiB ≫ 6144 MiB → unified-memory paging fallback. 6GB 환경 30s 목표 불가. PR #65 (docs only). 후속 = 해상도 다운 / 모델 교체 / 8GB 노드 라우팅 중 하나 (별 사이클 형님 픽).

이슈 박은 거

  • ~/.claude/skills/issues/2026-05-27-stale-handoff-scrape-disable-statusline-regression.md (본 세션 박음) — 직전 사이클 stale handoff + scrape 부주의 비활성화 + statusline v3 회귀 사고 본문 + 회피 룰 5건.
  • (오늘 다른 사이클 박힌 거)
    • 2026-05-27-claude-automations-no-github-to-local-sync.md
    • 2026-05-27-codex-directive-enter-fix-v2-fails-on-linux-tmux.md

다음 사이클 carry

  • 본진 codex 자체 카드 ctx_pct 박기 (round 3 본진 ping mechanism 78511b7 LIVE 하지만 본 세션 검증 시 본진만 prompt fallback — ping 발사 안 됐을 가능성 확인 필요).
  • 작업 B (choso CF Access /codex-ping path fix) — 맥미니 carry, 본진 ack 대기 상태.
  • PR #11 (tacit-graph prompt v3) 재 smoke 실행 → valid claims > 0 검증.
  • PR #64 (5노드 챗봇 헬스체크 cron) 24h 운영 후 false-positive 검토 + 영구 호스트 mac-mini 이전.
  • PR #65 (SDXL GPU-only 가설 기각 문서) — 형님 후속 픽 (해상도 다운 / 모델 교체 / 8GB 노드 라우팅).
  • loop-fleet 스킬에 AGENT_MSG_NOTIFY_SKIP_DEDUP=1 envvar 명시 박기.
  • claude-skills repo statusline-command.sh mirror 박기 (carry #2 그대로).
  • Ep4~12 영상 추가 렌더링 (carry #3).
  • 🏭 맥미니 gog v0.14 → v0.19 (carry #4, 본 사이클 미진행).
  • 🍎 daejong-page insights/index.json slug entry 2개 누락 publish flow regen.
  • 🍎📡 IG 자동 발행 5/24 5/25 backfill.
  • 🍎 본진→mac-mini SSH self-heal 7일 경고 fix.

메타

  • 5 노드 가동 패턴 24/7 — 본진/맥미니/WSL/데스크탑/노트북.
  • 메모리 박힘 (이슈만, project/feedback 추가 박은 거 없음 — 단 룰은 본진 이슈 본문에 5건 박힘).