2026-08-22
날짜는 UTC 기준으로 나눴습니다(9월 22일부터는 한국 시간 기준). 커밋은 커미터 시각(committer date), PR은 생성·병합 시각으로 분류했습니다. 목록은 2026-10-06 KST에 GitHub에서 다시 조회해 보강했습니다. 공개 저장소의 기본 브랜치 활동만 포함합니다.
요약 (AI 작성)
maru의 에이전트 훅 모드가 기본값으로 켜진 날입니다. 전날 열린 #2530이 병합돼 Notification으로 「입력 대기」를 판정하고 AH6 비용을 다시 쟀으며, 적대적 검증이 잡은 상태 기계 결함 셋을 고쳤습니다. 게이트를 켜도 실제로는 훅 모드에 들어갈 수 없던 문제를 고치고 그 진입 순서를 테스트로 재현한 뒤, codex 대화형까지 실측해 선결 조건 셋이 닫혔다며 기본값을 켰습니다. 사이드바는 라벨 규칙 변경이 깬 회귀 가드 둘을 새 계약으로 갱신했습니다.
Windows는 셰이핑 다리를 제품 경로에 붙여 크롬 글자가 실제로 나오게 하고(#2545), 셰이퍼의 임의 상한이 긴 줄을 통째로 지우던 것을 걷었습니다(#2548). 이어 편집기 본문이 화면에 뜨고(W8.3⒜, #2551), 쿼드가 파이프라인이 아니라 셰이더 문제였음을 확인하며 배경과 스크롤바를 그렸고(#2555), 스크롤이 굴러가게 했습니다(W8.3⒞1, #2558). 표면 스모크는 그리기 호스트를 공유하며 지문으로 등가를 증명하게 바꿨습니다(#2550). 클릭 히트테스트를 중립으로 빼는 W8.3⒞2 #2561은 이날 PR이 열렸습니다.
탐색기는 행 렌더를 chrome/ui 컴포넌트로 옮기는 단계 계획을 열고(#2554) 행을 typed component로 그렸으며(FT1, #2556), 행 아이콘을 사이드바·뷰 바와 같은 2칸으로 맞췄습니다(#2552). 히트테스트·호버를 발행된 tree로 옮기는 FT2 #2562는 이날 열렸습니다. 편집기는 gutter 접기 화살표를 누르면 접히게 하고(#2543) 그 클릭을 적대적으로 두들겨 판정 공백 넷을 메웠으며(#2547), 성능 게이트가 시간이 아니라 횟수를 세게 했습니다(#2553). 전날 열린 비교 뷰 CRLF 복사 수정 #2541도 병합됐습니다.
session-host는 복구된 세션을 launch 때 투영하고(#2542) 채택하며(#2544), 실제 AppKit 복구와 IME·클립보드 연속성을 검증하고(#2559), CR6e 복구 예산과 soak를 게이트로 걸었습니다(#2563). 모바일은 새 연결이면 컨트롤 축을 처음부터 잡게 고쳤습니다(#2546). 터미널 코어를 wasm으로 내고 @maru/* 라이브러리를 만드는 #2560은 이날 열렸고 병합은 다음 날입니다.
공개 커밋 39개, 해당일 생성 또는 병합된 PR 24개를 정리했습니다. PR 생성 22개·병합 21개는 같은 PR이 양쪽에 포함될 수 있습니다.
커밋
ohah/maru
- feat(session-host): gate CR6e recovery budgets and soak
- feat(session-host): verify recovered IME and clipboard continuity
- fix(windows): 적대적 검증 3 라운드 — 보고가 "실패" 와 "판정 불가" 를 뭉갰다
- fix(windows): 적대적 검증 2 라운드 — 두 번째 출처 둘
- feat(windows): 편집기가 굴러간다 — 스크롤 (W8.3⒞1)
- fix(file-tree): 적대적 검증이 찾은 넷을 고친다 — 밝기·행 축소·죽은 경로·사라진 상태
- docs(file-tree): FT1 결과를 계획에 되먹인다 — 예산 충돌은 없었고 축이 둘 더 있었다
- feat(file-tree): 탐색기 행을 typed component 로 그린다 (FT1)
- docs(file-tree): 새 typography role 을 이름·값·규율까지 적는다
- docs(file-tree): 탐색기 행 렌더를 컴포넌트로 옮기는 단계 계획을 연다
- fix(file-tree): 행 아이콘을 사이드바·뷰 바와 같은 2칸으로 그린다
- fix(windows): 적대적 검증 2 라운드 — 배경이 안 덮던 자리 둘, 그리고 그 구멍을 영구히 드러낸다
- fix(windows): 적대적 검증 — solid 판정이 잉크 없는 글리프와 겹쳤다
- feat(windows): 편집기 배경과 스크롤바 — 쿼드는 파이프라인이 아니라 셰이더였다
- perf(editor): 성능 게이트가 시간이 아니라 횟수를 센다 — 부하에 안 흔들리게 (§perf)
- fix(windows): 적대적 검증 — 편집기 판정이 속 비어 있었다
- feat(windows): 편집기 본문이 Windows 화면에 뜬다 — W8.3⒜
- fix(windows): 적대적 검증 — 갈린 grid, 진단 손실, 지문 대조군
- refactor(windows): 표면 스모크가 그리기 호스트를 공유한다 — 지문으로 등가를 증명한다
- fix(editor): 비교 뷰 복사가 CRLF를 LF로 뭉갰다 — 줄 끝을 뗄 때 함께 굳힌다 (§4.1g)
- feat(session-host): verify actual AppKit recovery
- fix(windows): 셰이퍼에서 임의의 상한을 걷는다 — 긴 줄이 통째로 사라지던 자리
- test(editor): 접기 화살표 클릭을 적대적으로 두들긴다 — 판정 공백 넷을 메우고 죽은 가드를 걷어낸다
- fix(mobile): 새 연결이면 컨트롤 축을 처음부터 — 두 host 가 안 부르고 있었다
- fix(windows): 크롬 폰트를 잘못 "미결" 로 적은 것을 바로잡는다 — 계약은 이미 있었다
- feat(windows): 셰이핑 다리를 제품 경로에 붙인다 — 크롬 글자가 실제로 나온다
- test(agent-hooks): 훅 모드로 «들어가는» 진짜 순서를 재현한다
- fix(sidebar): 라벨 규칙 변경이 깬 회귀 가드 둘을 새 계약으로 갱신한다
- feat(agent-hooks): 기본값을 켠다 — 선결 조건 셋이 다 닫혔다
- docs(agent-hooks): codex 대화형도 확인했다 — 소스가 하나뿐인 배지가 실제로 선다
- docs(agent-hooks): 대화형 실측을 적고, 근거를 공개 자료로 올린다
- fix(agent-hooks): 훅 모드에 «들어갈» 수가 없었다 — 게이트를 켜도 화면 관측이었다
- fix(agent-hooks): 적대적 검증이 잡은 상태 기계 결함 셋 — 알림은 lead 처럼 생겼지만 lead 가 아니다
- docs(agent-hooks): 끝난 일을 「아직」 이라 적어 둔 자리를 전수로 맞춘다
- feat(agent-hooks): Notification 으로 «입력 대기» 를 판정한다 — 그 배지에 소스가 없었다
- docs(agent-hooks): AH6 비용을 다시 재고, 「샌드박스라 상한」 단서를 지운다
- feat(session-host): adopt recovered sessions
- feat(editor): gutter 접기 화살표를 누르면 접힌다 — 그리고 숫자에 붙어 있던 자리를 뗀다
- feat(session-host): project recovered sessions at launch
PR (해당일 생성/머지)
상태는 조회 시점 기준입니다. merged는 아래 대상 브랜치에 병합됐다는 뜻이며, 기능 브랜치 병합과 main 반영을 구분합니다. 같은 PR이 생성일과 병합일 양쪽 기록에 나타날 수 있습니다.