← 작업일지

2026-05-28 · v1.0.0

2026-05-28 작업일지 (원본)

핵심 사건

  • 뉴스레터 Ep22~25 발행 (T-260528-23 끝)
  • 초소 대시보드 5건 fix + 작전보드 안 채택 + 맥미니 codex 위임 구현 + 라이브 deploy
  • ~/todo 단일 SoT 마이그레이션 — 4-file legacy → tasks.md (+ done.md 분리 271 entry archive) + next-cycle.md 인프라 폐기
  • 듀얼 오케스트레이터 룰 (본진+맥미니 main 직접 push)
  • T-260528-24 M5 Max vs Ultra 재투표 — codex-mesh-vote 5/5 (B) Ultra 만장 (Claude 5/5 Max 와 정반대 반전)
  • self-pattern 메타인지 weight 룰 globals 승격 (5노드 적용)
  • Telegram plugin ENOENT 1시간 silent fail 사고 + HTTP fallback wrapper

타임라인 (KST)

  • 새벽오전: 뉴스레터 Ep2225 발행 사이클. draft 포맷 inverted reorder (commit 40c5cb5, T-260528-23 (1)), prepare_body.py fallback regex (codex-mesh-vote SESSION 1779973799 5/5 A → PR #84 머지), CONVENTION.md 신설 (PR #85 머지). 4 ep substack + cache + index.json + draft → final rename.
  • 11:27 KST: insta-host carousel 2건 (20260528-112758, 20260528-113048, 각 5 cards).
  • 13:21~14:30 KST: 데스크탑이 mac-report 로 초소 게이지바 미충전 + 코덱스 라벨 오기재 surface. 본진 직접 fix.
    • choso commit daffbe9 — 게이지바 visibility (min-width 6px + codex ctx-hi transparent 제거), 코덱스 칩 라벨 ” codex” dedup, 빈 큐 “작업큐없음” 라벨, ACTIVE_GOAL_RING 5→10.
    • choso commit 1c3d447 — TASK 박스 빈 케이스 박스 통째 사라지던 사고 fix (group-empty 라벨 박스 안에).
  • 14:20 KST 부근: 형님 “TASK.md 에서 꺼내서 보여줘야지 … codex mesh vote 날려” → codex-mesh-vote SESSION 1779978144 fan-out (백로그 시각화 안 5개 결정).
    • 5/5 노드 결과: 액션 레이더 (🍎) / 백로그 레이더 (🪟) / 작전판 3축 (🏭) / 작전보드 (🖥) / 액션 큐 보드 (💻)
    • 투표: 🍎→🖥, 🪟→🖥, 🏭→🍎, 🖥→💻, 💻→🖥. 다수결 3/5 = 🖥 작전보드.
  • 14:27~14:40 KST: 작전보드 구현 🏭 맥미니 codex 위임 발사. 4파일 변경 (app/parser.py + main.py + _content.html + style.css), commit ca227d2, main 직접 push + uvicorn kickstart, /partial 라이브 verify (KPI 2/11/138, kind-bar 8 세그먼트, 3탭 액션 19/결정 23/프로젝트 109, 빈 상태 박스 + “없음” 라벨 PASS).
  • 14:35 KST: 노트북 codex mac-report — T-260528-24 ack 해제 + 마킹 갱신 요청. 본진 처리: tasks.md L746 [?]→[x] (commit 79c81f2), 노트북 reverse ack.
  • 14:38 KST: 형님 “굿나잇 한번하자” → /goodnight 진입.
  • 14:48 KST: globals 승격 codex-mesh-vote SESSION 1779979735 — 5/5 (A) self_pattern_metadata_weight 만 globals 승격, bundled-round 본진 한정 유지. claude-skills/globals/CLAUDE.md commit 565b61c.
  • 그 외 사이클 흐름 (시각 미지정):
    • 코덱스 6/6 EOL sunset 표시 (vibecoding 스택, commit 87b57ba + cd03f45)
    • 메모요 (memoyo) Drive import picker (commit eaf95b1) + iOS GIDClientID (8f28507) + Flutter 3.44 analysis fix (00f3a3d)
    • session-clear v2.6 → v2.7 must-process queue (claude-skills 6a2f479 / claude-automations PR #67 f32fda7)
    • mac-directive forward-to-group mirror restore (claude-automations PR #66 ed939b5)
    • Telegram plugin ENOENT 사고 16:08~17:14 KST → HTTP fallback wrapper + plist PATH 의 ~/.bun/bin prepend + cold restart (commit 383d9f6, issue 2026-05-28-mac-telegram-plugin-enoent)
    • todo 마이그: 271 entry done.md archive 분리 (commit 1906eca) + tasks.md 단일 (12fc31b)
    • choso usage scrape dark + headed fallback 복원 (commit 6e532c4, 57a6842)
    • choso-node-broadcast 빈도 0/15/30/45 → 0/30 (시간당 2회, automations 1aa1a47)

막힌 지점

  • Telegram plugin ENOENT 1시간 silent fail (16:08~17:14 KST): 본진 reply tool 부재 (ToolSearch zero / /mcp ENOENT) → 1시간 silent fail. 원인 = com.user.tmux-claude.plist PATH 에 /Users/user/.bun/bin 누락. fix = plist PATH prepend + bootout/pkill/bootstrap cold restart + HTTP API curl fallback wrapper. issue 박힘.
  • TASK 박스 빈 상태에서 박스 통째 사라짐: {% if task_items %} 가드가 박스 self 를 hide. 형님이 스크린샷으로 surface (“지금작업중이랑 파킹랏 사이에 타일 없음 표시 안 나옴”). 가드 안쪽으로 옮기고 else 분기에 “작업큐없음” 라벨 박음. 백로그 박스 (파킹랏/딥워크) 와 동일 동작 통일.
  • CSS 캐시 의심 (“머지안된거 아니야? 안보이는데”): 4건 fix 머지·배포는 정상이었으나 형님 브라우저 옛 index.html (옛 CSS hash) 잡혀있던 캐시 사고. 강제 새로고침 가이드 surface 후 해결.

반전

  • codex mesh-vote vs Claude mesh-vote 정반대: 어제(2026-05-27) Claude 백엔드 SESSION 1779883650 = 5/5 (A) M5 Max 만장 (“차액 ₩270만 보관 후 M6 갈아타기 합리”) → 오늘 codex 백엔드 SESSION 1779934700 = 5/5 (B) M5 Ultra 만장 (self-pattern “기함 아니면 결국 이중지출” weight 효과). 같은 주제 정반대 결과. self-pattern weight forcing function 의 위력 검증.
  • 작전보드 단일 박스 통합: 옛 파킹랏·딥워크 두 박스 구조에서 통합 단일 작전보드(KPI + kind 막대 + 3탭)로 정리. ~/todo/tasks.md 의 status/kind/node/T-ID/등록일 메타가 디테일해서 옛 2박스로는 표현 한계, mesh-vote 5안 모두 status 1차 + kind 2차 + node 필터 동일 골격이라 작전보드의 KPI 막대 시각 압축이 결정 요인.

배운 것

  • self-pattern 메타인지 weight forcing function — 일반론·시장 best practice·외부 mesh 추천이 본인 행동 패턴과 충돌할 때, 본인 메타인지 쪽으로 weight. 3축 driver: 후회 회피(가장 강함) / 만족 최대화 / 이중지출 회피. globals 5노드 룰로 승격.
  • mesh-vote 백엔드별 결과 정반대 가능 — 같은 주제에서 Claude(5/5 Max) ↔ codex(5/5 Ultra) 만장 반전. 한 백엔드 결과에 weight 100% 두지 말 것, 컨텍스트 따라 둘 다 호출 검토.
  • 빈 케이스 박스 통째 숨김 절대 X — “없음” 라벨로 — TASK 박스 사고 후 hard rule. 시각적으로 “있을 자리는 있고, 비어있다”가 명시되어야 형님 UX 일관.
  • next-cycle.md 류 carry 인프라가 SoT 단일화 위협 — 작업 항목 박지 마 vs 인프라 유지 두 문장 모순으로 본진이 next-cycle.md 에 carry 박는 사고 재발. 인프라 자체 폐기로 forcing function 박는 게 정답 (msg27300).

학습·상담

  • 형님 “active_goal_ring 이게뭔데” 질문 → 노드별 prompt ring buffer 최대 개수 상수 설명.
  • 형님 “굿나잇 스킬 어떻게 되지 설명해줘” → /goodnight 9단계 흐름 자연어 풀어 설명.

메타

  • 오늘 commit 분포: daejong-page 15 / todo 16 / skills 9 / claude-skills 9 / choso 6 / automations 3 / simple_memo_app 3 (총 ≈ 61)
  • 호출된 스킬: codex-mesh-vote × 3 (Ultra 재투표 + 작전보드 + globals 승격), goodnight, worklog (본 일지)
  • 위임 발사: 맥미니 codex (작전보드 구현, 데스크탑 (mac-report ack), 노트북 (reverse ack), WSL (codex-mesh-vote)
  • 형님 발화 시점 기준 즉발 흐름이 많아 tasks.md 미등록 신규 작업 다수 (텔레그램 즉발 → 본진 처리 → 끝나면 자연 폐기)