2026-08-25
요약 (AI 작성)
Windows 가 앱 모양을 갖추고 접근성 축이 열린 날입니다. 사이드바 카드와 헤더 아이콘이 눌리고, + 가 세션을 만들고 카드가 전환하며, 도크와 사이드바가 굴러가고(앞부분이 아니라 창이다), 하단 상태표시줄이 섰습니다(W8.9). 헤더 아이콘 줄은 창 버튼과 같은 띠에 놓았습니다. 접근성은 서술자 계약을 먼저 열고(생산자까지, 읽는 쪽은 아직 없다) 스냅숏·ABI v172·Swift 어댑터로 host 에 연결했습니다.
에이전트 쪽은 턴이 만진 파일을 직접 캡처해 ✎ 가 내 것과 남의 것을 가르게 했고(AT3), 「턴이 끝나는 그 순간」을 지키지 않아 사본·세션·셸 수가 어긋나던 것을 잡았습니다. codex 훅이 하나도 안 돌고 있던 것(낡은 신뢰 값)과 방금 승인한 사람에게 「승인하라」고 말하던 것을 고쳤고, codex 오류 턴은 세트를 늘려도 못 닫는다는 실측을 박았습니다. session-host 는 checkpoint coordinator 를 넣고 incremental checkpoint 구동 계약을 적었으며, host 를 못 띄웠는데 4초를 기다리던 자리를 닫았습니다.
Lab 은 pane 합성 축을 열어 도크가 상태바를 덮지 않는지 골든이 보게 했고, 픽스처가 /tmp 에 남긴 2만 개를 거뒀습니다. 모바일은 긴 안내가 잘리는 대신 접히고, 글자 폭을 한 함수로 모았습니다.
커밋
ohah/maru
- fix(chrome): 브랜치 이름이 오른쪽 묶음을 침범하고 뷰 바 아이콘이 아래로 쏠렸다
- feat(windows): 에이전트 세션 도크가 뜬다 — 셋째 칸이 빈 도크였다
- feat(mobile): 긴 안내는 잘리는 대신 접힌다
- fix(agent): 캡처가 FIFO 에 UI 를 붙잡히고, 경로 이스케이프를 안 풀고, symlink 차단을 «없음» 으로 적었다
- fix(agent): 캡처가 회전 로그를 지금으로 읽고 Codex 상대경로를 잃었다
- feat(agent): 턴이 만진 파일을 직접 캡처한다 (AT3) — ✎ 가 내 것과 남의 것을 가른다
- fix(mobile): 영어 문구도 같은 말투로 맞춘다
- feat(windows): 트리 폴더가 펼쳐진다 — 셰브런이 죽은 컨트롤이었다
- test(agent-hooks): 차단기의 전제를 실측하고, 끄기 경로의 빈자리를 메운다
- fix(agent-hooks): 적대적 검증 — 쓰기 전에 «고쳤다» 고 말하고 있었다
- feat(agent-hooks): 낡은 codex 신뢰 값을 고친다 — 값 하나당 한 번만
- docs(agent-hooks): codex 오류 턴을 실측으로 박는다 — 세트를 늘려도 못 닫는다
- feat(windows): 사이드바도 굴러간다 — 앞부분이 아니라 창이다
- fix(session-host): override 의 빈 값과 socket 예외를 적는다
- fix(session-host): CLI 가 앱이 띄운 host 를 못 찾던 것 (S11-0)
- feat(session-host): add atomic checkpoint file adapter
- feat(session-host): runtime list 가 window title 을 낸다 (S11-1)
- fix(chrome): 도크 목록의 글자가 아무 데서도 안 잘리고 있었다
- fix(golden): 도크 합성 골든이 clip 을 못 봤다 — 무는 crop 을 세운다
- refactor(mobile): 글자 폭을 한 함수로 모으고 접기를 누적으로 바꾼다
- feat(windows): 도크가 굴러간다
- refactor(agent): 도달할 수 없는 턴 비교 가지를 걷어낸다
- feat(session-dock): 카드 여백·간격을 한 단 줄인다 — 배치는 그대로, 밀도만
- fix(file-tree): 라벨 바닥을 "보장"이 아니라 "목표"로 적고, 판정자가 제품 폭을 재게 한다
- feat(file-tree): 좁은 폭의 열화 규칙 — 이름은 마지막까지 남는다
- test(windows): 세션 목록에서 결함 넷 — 적대적 검증
- feat(windows): 세션이 여럿이다 — + 가 만들고 카드가 전환한다
- fix(session): 배치 안에서 다음 턴이 시작되면 옛 스냅샷에 새 턴 키가 붙었다
- docs(session): 적대적 검증 — 제목의 암묵 의존과 앞서 나간 상태 표기
- docs(plans): AT2 를 완료로 맞추고 두 규율을 적는다
- fix(session): base 에 직전 턴의 키가 붙었다 — 그리고 턴 제목을 싣는다 (AT2)
- docs(agent-hooks): 미래를 현재형으로 적어 없는 배관을 있다고 읽히던 다섯
- fix(file-tree): 열린 파일의 밴드를 없앤다 — 그 색이 곧 호버 색이라 포인터 자리를 거짓으로 말했다
- feat(windows): 사이드바 카드와 헤더 아이콘이 눌린다
- feat(session-host): add checkpoint coordinator
- test(windows): 판정 다섯이 속 비었다 — 적대적 검증 3 회
- fix(mobile): 화면 문구를 데스크톱과 같은 말투로
- fix(dock): 사다리를 두 층이 나눠 갖던 구멍 둘을 막는다 — 적대적 검증
- docs(dock): 두 도크의 열화 규칙을 계약으로 적는다
- feat(dock): SCM·AI 세션에도 같은 사다리 — 이름과 제목은 마지막까지 남는다
- fix(test): pid 를 뒤에서 읽어 «-0» 접미를 pid 로 착각했다
- fix(test): 픽스처가
/tmp에 남기던 자리를 거둔다 — 2 만 개가 쌓여 있었다 - fix(scm): 이름을 자기 예약만큼으로 잘라 꼬리와 겹치지 않게 한다
- feat(windows): 헤더 아이콘을 1.7× 로 굽는다 — 헤더가 세 줄이 된다
- fix(agent-hooks): 어긋난 수가 latch 로 남아 멀쩡해진 뒤에도 거짓 알림이 됐다
- fix(agent-hooks): 적대적 검증 — 이웃 키를 우리 값으로 읽었고, tick 배선이 안 물렸다
- fix(agent-hooks): codex 훅이 하나도 안 돌고 있었다 — 낡은 신뢰 값을 알린다
- feat(lab): pane 합성 축을 연다 — 도크가 상태바를 덮지 않는지 골든이 본다
- fix(session-host): --stream 이 help 원장과 파싱 규칙을 지키게 한다
- feat(session-host): attach 가 화면 wire 를 그대로 흘린다 — --stream (S11-2)
- docs(windows): 하단 상태표시줄이 계획에 없다 — 세 번째 공백
- test(editor): 뮤턴트를 안 돌린 판정자를 전수로 훑었다 — 둘이 판정하지 않았다
- fix(editor): 저장이 사용자의 끝 개행 편집을 되돌렸다 (§3.5)
- fix(editor): 확정 텍스트가 조합을 시작한 곳으로 간다 — IME 고정을 편집기도 지킨다
- feat(editor): 편집기가 편집기가 됐다 — caret·타이핑·undo·저장 (§3.2·§3.3·§3.5)
- fix(editor): 단언은 출하 빌드에서 사라진다 — 전제를 진짜 검사로 (§3.0·§9.1)
- feat(editor): 커서가 여럿이 된다 — 다음 일치 추가와 편집 가능한 문서 (§9.1·§3.0)
- feat(editor): 다음 일치를 찾아 커서를 하나 더 놓는다 — L2 계산 (§9.1)
- docs: 참고 도구의 이름을 문서에서 뺀다 — 논거는 그대로 둔다
- feat(agent): 펼친 턴의 파일마다 누가 바꿨는지 말한다 (AT3 §4.2) — 그리고 AT2 를 닫는다
- fix(agent-hooks): 방금 승인한 사람에게 「승인하라」고 말하고 있었다
- test(session): consume core command effects
- fix(session-host): route clear through authoritative reader
- test(session-host): gate observation cache artifact
- feat(session-host): wire background workspace checkpoints
- feat(session-host): share runtime observation cache
- fix(session-host): forward word separators to host
- feat(chrome): 접근성 서술자 계약을 연다 — 생산자까지, 읽는 쪽은 아직 없다
- fix(session-host): select full host scrollback
- docs: 중립 백엔드 이동은 "순수 이동" 이 아니다 — 실제로 해 보고 적는다
- feat(agent): 턴의 셸 명령 수를 고지한다 (AT4 §5) —
·가 왜 붙었는지 말한다 - fix(session-host): host 를 못 띄웠는데 4 초를 기다리고 있었다
- feat(session-host): add runtime observation cache core
- docs(session-host): checkpoint 쓰기 소유자를 Zig 로 확정한다
- feat(session-host): 배치가 바뀌면 checkpoint 가 그것을 안다 (P4 C3-1)
- docs(windows): 크롬 테마 부채를 다시 쟀다 — 계획 행이 낡아 있었다
- docs(mobile): 새
ssh.*키를 모바일이 안 가져오는 이유와 함께 적는다 - feat(ssh): maru ssh 가 끊김을 45초 안에 알고 스스로 다시 붙는다 — 죽음을 앞당기는 쪽과 되살리는 쪽을 함께 넣는다
- fix(windows): 판정용 앞부분이 안 잘린 문자열의 끝 글자를 벗겼다
- docs(windows): 어느 값이 맞는지는 std 자신이 정해 뒀다
- docs(windows): 같은 읽기 함정이 하나 더 있다 — 재지 못해 안 고쳤다
- test(windows): 목록이 빈 이유를 정확히 말한다
- test(windows): 이력이 없는 기계는 실패가 아니다
- test(windows): 굽기 실패를 따로 센다 — 셰이핑 판정은 그것을 못 본다
- docs(windows): §2m.57 — 목록이 들어오고 한글이 두부였던 길
- feat(windows): 에이전트 도크에 진짜 세션 목록이 뜬다
- fix(windows): 크롬의 한글이 두부였다 — 두 font id 체계의 값 범위가 겹친다
- fix(windows): 이력 파일을 처음 읽자 프로세스가 죽었다
- docs: 어제 머지분이 안 닿은 문서 두 곳을 맞춘다
- test(chrome): 글자 뷰포트를 잊을 수 없게 만든다 — 판정자 둘
- feat(windows): 헤더 아이콘 줄을 창 버튼과 같은 띠에 놓는다
- feat(session-host): gate quit on final checkpoint
- perf(session-host): skip unchanged observation sources