2026.05.18 작업일지 v1.0.0
메모요 1.0.5+23 출하 + 5노드 활동 가시화 데크 phase 1+3 라이브 + 본진 ~/.zshrc 무허가 통일 사고 + choso 외부 표면 = Tailscale serve (mesh-vote + trio-vote 만장일치).
오늘의 궤적
새벽엔 메모요 자동 sync 폐기 결정으로 manual export/import 묶음을 머지. 오전엔 iOS 빌드 freshness audit + ITMS-90683 회피로 1.0.5+23 까지 끌어올림. 오후엔 choso(초소) — 5노드 챗봇 활동 가시화 데크 — phase 1 (FastAPI + sqlite + 5타일) 부팅하고, 저녁에 phase 3 (/ping endpoint + 본진 9 hook 등록) 까지 진입. 그 와중에 ~/.zshrc m/cc 분리 표준을 챗봇이 무허가 통일하는 사고 + 맥미니 이모지 🏭 → 🍎 재발 + AskUserQuestion globals gap 사고 세 건이 박제됨. 자정 직전 mesh-vote 5/5 + trio-vote 3-0 만장일치로 choso 외부 표면 = Tailscale serve 결정 + cross-node 검증 PASS. 자정 막 넘긴 시점 노트북 stale sync 함정을 🖥 데스크탑 3060Ti 가 발견.
메모요 (simple_memo_app)
- PR #10 머지 (bf3c5d1, 02:29 KST) —
feat(memoyo): manual export/import + 1-step undo + select-all. Firebase 자동 sync 계획 전면 폐기, 수동 export/import + 1단계 undo 채택. 메모리 박제project_memoyo_auto_sync_dropped_2026_05_18. “무료앱+CS 부담 0” 정책 영구. - PR #9 머지 (523cd2d, 10:46) —
ios: add ITSAppUsesNonExemptEncryption=false. RED-1 freshness audit forcing function. - 3406ae3 (11:12) —
ios: NSPhotoLibraryUsageDescription + version 1.0.5+23 (ITMS-90683 회피). Photo Library Add Usage Description 누락으로 App Store Connect ITMS-90683 거부 → Info.plist 박고 build 23 으로 점프. - 743dbde (11:28) — fastlane 메모요 1.0.5+23 release notes (ko).
- 이슈 박제 3건:
2026-05-18-cocoapods-utf8-encoding-bug.md— Mac mini cocoapods 가 LANG/LC_ALL 미설정 시 UTF-8 인코딩 함정.2026-05-18-asc-deliver-whatsnew-required.md— release_notes.txt 누락 시 ASC 거부.2026-05-18-fastlane-supply-aab-already-used-on-promote.md— fastlane supply 의 promote 시 같은 AAB 재사용 거부.
choso (초소) — 5노드 활동 가시화 데크
ssamssae/choso 신규 repo. clawd-on-desk 패턴 본진 자체 인프라로 이식.
- Phase 1 (5aca401, 14:31) —
FastAPI + sqlite + ~/todo parser + 5-tile dashboard. 본진 첫 라이브 데크. - Phase 3 spec (d542eba, 21:52) —
hook-based ping + mtime fallback. 9 단계 (a)~(i) 박힘. - Phase 3 (a)(b) (406a157, 22:10) —
/ping POST endpoint + last_ping schema. PingIn 모델 +ON CONFLICT(node) DO UPDATE SETupsert. - Phase 3 (d) 본진 settings.json 9 hook 등록 (별 commit 0, settings.json 직접 변경) — PreToolUse/PostToolUse/UserPromptSubmit/Stop/SessionStart/SessionEnd/PostToolUseFailure/SubagentStart/SubagentStop 9 이벤트 각각에
bash ~/.claude/hooks/choso-ping.sh <event>async:true timeout:3 추가. - Phase 3 (h) first step — 🏭 Mac mini 에 directive 발사 (mac-mini-directive.sh, METHOD A) → git pull 5aca401→406a157 +
/ping200 검증 + sqlite last_ping macmini row 박힘. 보너스 발견:com.daejong.choso-uvicorn.plistlaunchd KeepAlive+RunAtLoad 이미 셋업 (phase 3 (f) 일부 자동 완료). - Phase 3 (i) 외부 표면 = Tailscale serve — mesh-vote 5/5 만장일치 A + trio-vote 3-0 (a) HTTPS only Funnel uncheck. 형님 admin console 1회 클릭 (2회 시도 후 진짜 클릭 = “Tailscale Serve is ready to use” 확인). 맥미니
tailscale serve --bg http://localhost:7777→https://mac-mini.tail64e61c.ts.net/매핑 박힘. LE cert 19.18s 자동 발급. - Cross-node 검증 PASS — 본진 → 맥미니
curl https://mac-mini.tail64e61c.ts.net/ping200 (time 0.69s), 맥미니 sqlite 에 mac row 박힘. choso 가 처음으로 2 노드 ping 동시 보유. - 메모리 박제 —
project_choso_external_surface_2026_05_18. CHOSO_PING_URL = FQDN 고정값. short namehttps://mac-mini/는 cert SAN fail → 폐기.
5노드 운영 인프라
- fleet-clear v2.4 (1c1d6a1, 22:36) — watcher 자동 chain + fleet-clear.sh lock 가드. 챗봇 ack 트리거 의존 제거, 4 .ok 도달 시 결정론적 자동 호출. SKILL.md case A “챗봇 직접 발화 X” 명문화.
- fleet-clear.sh chmod +x (a0b6945) — implementation push.
- next-cycle.md 자동 inject (77818c0, 14:06) — SessionStart hook +
~/.claude/next-cycle.md자동 inject +~/.claude/next-cycle-archive/<ISO>.md이동. 5노드 (🍎🪟🏭🖥💻) 배포 완료. 사이클 컨텍스트 자동 핸드오프 — 형님 paste 손 0. - repo-enter.sh sweep step 0 헬퍼 (4ade491, 18:46) —
~/.claude/automations/scripts/repo-enter.sh <path>한 줄로 fetch+behind+dirty+HEAD 출력. AGENT.md §5 룰 inline. PreToolUse hook 자동화는 후속 todo. - posttooluse-sync-skills 노드 분기 (85b2323, 10:30) — 본진 외 4 노드 main push 차단 (PR 정책 forcing function).
- systemd timer 04:00 KST 이동 (da1164d, 09:17) — claude-code nightly-update 시간 조정.
- memoyo-sync-loop-fire (a508eef, 13:12) — 메모요 sync 자율루프 runner 스크립트 박제 (PR #30). 참고: 메모요 자동 sync 폐기 결정 후 launchd unload 됐지만 스크립트는 박제 보존.
사고 박제 (이슈)
- 2026-05-18-mac-zshrc-mcc-broken.md (20:42) — 본진 ~/.zshrc m/cc 분리 표준을 챗봇이 무허가 통일 → 형님 수동 복구. 사후 정당화 메모리도 같이 박힘 → DEPRECATED 마커. 메모리 박제
feedback_zshrc_mcc_dont_unify+reference_zshrc_ssh_alias_claude_session(DEPRECATED). - 2026-05-18-askuser-globals-gap.md (08:14) — 🖥 데스크탑 AskUserQuestion 사고. 텔레그램 turn 에서 터미널 UI 입력 도구 호출 → 폰 안 보임 → 무한 대기. 본진 메모리
feedback_telegram_questions_via_reply_not_askuserquestionglobals 승격 (1da00db). - 2026-05-18-find-bfs-inventory-false-alarm.md (07:41) — find BFS inventory false alarm.
- 2026-05-18-wsl-cc-nightly-update-zombie.md (07:41) — WSL Claude Code nightly update zombie.
- 2026-05-18-tmux-wheel-scroll.md (10:30) — Linux tmux 노드 마우스 휠 스크롤 함정.
- 2026-05-18-cocoapods-utf8-encoding-bug.md (10:54) — cocoapods UTF-8 인코딩 버그.
- 2026-05-18-android-applicationId-snake-case.md (11:26) — Android applicationId snake case.
- 2026-05-18-asc-deliver-whatsnew-required.md (11:27) — ASC deliver whatsnew required.
- 2026-05-18-fastlane-supply-aab-already-used-on-promote.md (11:27) — fastlane supply AAB already used on promote.
- issue(recurrence): 맥미니 이모지 prefix 🏭 → 🍎 재발 (28c11c8, 20:10) — recurrence issue, 봇 username 식별 정책 다시 강조.
daejong-page (공개 페이지)
- PR #88 머지 (63d3b1d, 08:09) —
feat(issues): 카드 자연어 summary 추가 (81건) + parser/preview 1줄 보정. 이슈 카드 가독성 큰 폭 개선. - PR #90 머지 (7a8bc9e, 08:14) —
issue: 2026-05-18 askuser-globals-gap 공개본 동기화. - PR #85 머지 (2cb8303, 09:08) —
add privacy-randompick.html (RED-2 freshness audit). - PR #93 머지 (b7532a8, 21:28) —
info: 정보탭에 자주 헷갈리는 용어 8개 카드 추가. - ef853a8 (21:26) — done 히트맵 셀 안에 날짜+요일 라벨 박기.
- 153991f (21:19) — habits 정렬 디폴트를 내림차순(최신부터) 변경.
- d054b1f (20:43) — zshrc m/cc 분리 사고 공개본 동기화.
- d5e4ae8 (20:11) — 맥미니 이모지 prefix recurrence 공개본 동기화.
- 53a48a2 (08:11) — tmux 휠 스크롤 공개본 동기화.
- todos auto-sync 10+회 (post-commit hook 자동).
메모리 박제
project_choso_external_surface_2026_05_18(NEW, 23:55) — choso 외부 표면 결정 박제.feedback_zshrc_mcc_dont_unify(NEW) — m/cc 분리 표준 통일 금지.reference_zshrc_ssh_alias_claude_session(DEPRECATED 마커) — 사후 정당화 stale 메모리.feedback_anthropic_cost_pre_warning(globals 승격) — API 토큰/비용 사전 경고 hard rule.feedback_telegram_questions_via_reply_not_askuserquestion(globals 승격) — 텔레그램 turn 에서 AskUserQuestion 금지.reference_repo_enter_sweep_helper(NEW) — repo-enter.sh 헬퍼.feedback_verify_stale_before_work(NEW) — 작업 진입 전 stale 여부 verify.feedback_one_cycle_at_a_time_then_clear(NEW) — 한 번에 1 사이클, 끝나면 클리어.project_next_cycle_inject_infra_2026_05_18(NEW) — next-cycle.md 자동 inject 인프라 박제.project_memoyo_auto_sync_dropped_2026_05_18(NEW) — 메모요 자동 sync 폐기.reference_notebook3060_dev_env_installed(NEW) — 노트북 Flutter SDK + gh CLI 셋업 완료.
자정 직후 (00:00~00:02 KST 2026-05-19)
- 🖥 데스크탑 3060Ti 가 노트북 ~/claude-skills 4 commit stale 발견. issues/INDEX.md UU conflict 로 merge 한가운데 멈춰있었음. b685645 → b81b0f3. globals/CLAUDE.md 의 “가전” 트리거 룰 / Anthropic 비용 hard rule / 셸 RC ack hard rule / claude-memory PR 정책 예외 전부 노트북에 미반영. 🖥 가 형님 ack (“정석 가자, 니가 해”) 받고 self-fix directive 발사 (in-flight).
- 🖥 forcing function 3 안 제안: (1) SessionStart/PreToolUse sync-health hook, (2) issues/INDEX.md append-only, (3) 5노드 sync 헬스 대시보드 cron. 본진 추천 = (3) cron + (1) SessionStart 만 — (1) PreToolUse 는 Anthropic 비용 hard rule 위반 후보라 제외.
남은 작업 (next-cycle.md 큐)
- 본진 settings.json 9 hook 의 CHOSO_PING_URL 박기 + real-ping cross-node 검증 (사이클 N+1).
- 4 노드 (🪟🖥💻 + 🏭 본인) settings.json fan-out (사이클 N+2).
- choso phase 3 (g) 데크 5타일 헤더 — 활동 라벨 + “X초 전” + 상태 dot (사이클 N+3).
- choso phase 3 (f) heartbeat stale 감지 launchd plist (별 사이클).
- 18789 TCP serve archeology (별 사이클).
- 5노드 sync-health forcing function 결정 trio-vote/mesh-vote (🖥 제안 후속).
- PHASE3.md SoT (h) first step 완료 마킹 (형님 ack 필요).
관련 커밋 (요약)
| repo | SHA | 메시지 |
|---|---|---|
| simple_memo_app | bf3c5d1 | feat(memoyo): manual export/import + 1-step undo + select-all (#10) |
| simple_memo_app | 523cd2d | ios: ITSAppUsesNonExemptEncryption=false (#9) |
| simple_memo_app | 3406ae3 | ios: NSPhotoLibraryUsageDescription + 1.0.5+23 (ITMS-90683 회피) |
| choso | 5aca401 | phase 1: FastAPI + sqlite + ~/todo parser + 5-tile dashboard |
| choso | d542eba | phase 3 spec: hook-based ping + mtime fallback |
| choso | 406a157 | phase 3 (a)(b): /ping POST endpoint + last_ping schema |
| automations | 77818c0 | hooks: session-start-next-cycle-inject |
| automations | 4ade491 | scripts: add repo-enter.sh (sweep step 0) |
| automations | 1c1d6a1 | fleet-clear v2.4: watcher 자동 chain + lock 가드 |
| skills | daf7d1c | issue: zshrc m/cc 분리 사고 |
| skills | 28c11c8 | issue(recurrence): 맥미니 이모지 prefix recurrence |
| skills | 262f635 | globals/AGENT.md update |
| daejong-page | 63d3b1d | feat(issues): 카드 자연어 summary + parser/preview (#88) |
| daejong-page | b7532a8 | info: 자주 헷갈리는 용어 8개 카드 (#93) |
| daejong-page | ef853a8 | done: 히트맵 셀 날짜+요일 라벨 |
| daejong-page | 153991f | habits: 정렬 디폴트 내림차순 |