2026-08-24

날짜는 UTC 기준으로 나눴습니다(9월 22일부터는 한국 시간 기준). 커밋은 커미터 시각(committer date), PR은 생성·병합 시각으로 분류했습니다. 목록은 2026-10-06 KST에 GitHub에서 다시 조회해 보강했습니다. 공개 저장소의 기본 브랜치 활동만 포함합니다.

요약 (AI 작성)

maru의 편집 버퍼를 persistent rope와 delta로 세우고, selection을 같은 연산에서 밀게 한 날입니다(§3.0·§3.3, #2634). 전날 열린 ⌘F 편집기 문서 검색 #2586도 적대적 검증을 여섯 라운드 거쳐 병합됐습니다. @maru/*는 마커와 장식으로 여러 매치를 동시에 칠하고(#2618), 앱이 자기 패턴을 주입하는 링크 규칙(#2624)과 캔버스가 못 하는 접근성·터치를 DOM이 맡는 구조(#2625)를 얻었습니다. 장식이 무한 렌더 루프를 만들어 유휴 1638fps였던 것을 2fps로 내리고(#2637), 워커 모드에서 open() 직후 22ms 흐리던 것과 IME 회귀 둘을 고쳤습니다.

에이전트 훅은 신원에 host 소유 자리를 만들고(#2617), host가 자기 신원으로 훅 경로를 채우며(#2621) 훅 로그 칸을 만들고 치우고(#2635), GUI가 그것을 읽게 해 host-backed 터미널이 훅 모드로 살게 됐습니다(#2641). maru를 두 개 띄우면 같은 훅 로그를 물던 것(#2608)과 업그레이드 뒤 뜬 자식만 신원을 못 받던 것(#2623)도 고쳤습니다. 턴 쪽은 전날 열린 AT0 #2601로 턴 링의 주인을 세션으로 옮기고, 훅을 턴 경계 트리거로 삼아 신원·base·턴 키를 싣게 했습니다(AT1, #2643). 턴 제목을 링에 싣는 AT2 #2649는 이날 PR이 열렸습니다. 밀려난 세션이 조용히 사라지던 것에는 신원 자취를 남겼습니다(#2620).

Windows는 전날 열린 #2599로 창이 터미널과 도크로 갈렸고, 도크에 파일 트리가 뜨고(#2607) 입력이 사각형별로 갈리며(#2612) 디바이더로 도크 폭이 바뀌고(#2614) 도크가 파일 트리와 소스 컨트롤을 갈아 끼우게 했습니다(#2628). 이어 창이 사이드바 띠까지 셋으로 갈리고(#2638), 프레임리스 창·테마 색·아이콘(#2639)과 사이드바 헤더 아이콘 줄(#2650)이 섰습니다. 탐색기는 CIM §9 조건을 항목별로 닫고(#2619) Chrome Lab 시나리오와 시각 골든을 얻었으며(#2622), resize 뒤 클릭이 죽던 발행 신선도 문제를 고쳤습니다. 소스 컨트롤 파일 행은 목록 타이포·전경 위계로 옮겼습니다(#2602).

session-host는 공개 attach 루프를 실제 TTY에 연결하고(#2609), P5c3d 호환성 게이트를 완성했으며(#2630), P5d SSH 릴리스 게이트를 정의하고 localhost SSH로 번들 attach를 검증했습니다(#2646). 모바일은 한글이 완성되는 대로 나가고 지우면 실제로 지워지게 했고(#2640), 글자 크기와 줄 높이를 갈랐습니다. advance의 소수까지 ABI로 받아 근사를 없앤 #2652도 들어갔습니다.

공개 커밋 104개, 해당일 생성 또는 병합된 PR 54개를 정리했습니다. PR 생성 50개·병합 50개는 같은 PR이 양쪽에 포함될 수 있습니다.

커밋

ohah/maru

PR (해당일 생성/머지)

상태는 조회 시점 기준입니다. merged는 아래 대상 브랜치에 병합됐다는 뜻이며, 기능 브랜치 병합과 main 반영을 구분합니다. 같은 PR이 생성일과 병합일 양쪽 기록에 나타날 수 있습니다.

저장소PR해당일 활동상태대상 브랜치제목
ohah/maru#2654생성mergedmainfeat(windows): 헤더 아이콘을 1.7× 로 굽는다 — 헤더가 세 줄이 된다
ohah/maru#2653생성mergedmainfix(scm): 이름을 자기 예약만큼으로 잘라 꼬리와 겹치지 않게 한다 — 이모지 이름이 붙었다
ohah/maru#2652생성 · 병합mergedmainfeat(metrics): advance 의 소수까지 ABI 로 받아 근사를 없앤다
ohah/maru#2651생성 · 병합mergedmainfix(session-host): reuse strict CR6e validators
ohah/maru#2650생성 · 병합mergedmainfeat(windows): 사이드바 헤더에 아이콘 줄이 뜬다
ohah/maru#2649생성mergedmainfeat(session): 턴 제목을 링에 싣는다 (AT2) — 그리고 미래를 현재형으로 적던 문서 다섯
ohah/maru#2648생성 · 병합mergedmaintest(agent-hooks): 「수동 검증」 두 항목을 자동으로 만든다
ohah/maru#2647생성mergedmainfix(mobile): 화면 문구를 데스크톱과 같은 말투로
ohah/maru#2646생성 · 병합mergedmainfeat(session-host): verify bundled attach over localhost SSH
ohah/maru#2645생성 · 병합mergedmainfix(file-tree): 발행 신선도가 기하도 보게 한다 — resize 뒤의 클릭이 죽었다
ohah/maru#2644생성 · 병합mergedmainfix(mobile): 글자 크기와 줄 높이를 갈라 놓는다
ohah/maru#2643생성 · 병합mergedmainfeat(agent-hooks): 훅을 턴 경계 트리거로 — 신원·base·턴 키 (AT1)
ohah/maru#2642생성 · 병합mergedmainfix(scm): 이어 그리는 글자의 자리를 role 크기로 잡는다 — 어제의 상한이 작은 폰트를 못 덮었다
ohah/maru#2641생성 · 병합mergedmainfeat(agent-hooks): GUI 가 host 칸을 읽는다 — host-backed 터미널이 훅 모드로 산다
ohah/maru#2640생성 · 병합mergedmainfix(mobile): 한글이 완성되는 대로 나가고, 지우면 실제로 지워진다
ohah/maru#2639생성 · 병합mergedmainfeat(windows): 프레임리스 창·테마 색·아이콘 — 사이드바 카드에 글자가 뜬다
ohah/maru#2638생성 · 병합mergedmainfeat(windows): 창이 셋으로 갈린다 — 사이드바 띠
ohah/maru#2637생성 · 병합mergedmainfix(packages): 장식이 무한 렌더 루프를 만들고 있었다 — 유휴 1638fps → 2fps
ohah/maru#2636생성 · 병합mergedmaindocs(windows): 왼쪽 사이드바를 계획에 넣는다 — 두 번째 공백
ohah/maru#2635생성 · 병합mergedmainfeat(agent-hooks): host 가 자기 훅 로그 칸을 만들고 치운다
ohah/maru#2634생성 · 병합mergedmainfeat(editor): 편집 버퍼와 delta — persistent rope, 그리고 selection을 같은 연산에서 민다 (§3.0·§3.3)
ohah/maru#2633생성 · 병합mergedmaintest(runner): 「골라졌는가」와 「돌았는가」는 다른 질문이다 — 통과 수도 센다
ohah/maru#2632생성 · 병합mergedmainfeat(chrome): 밀려난 턴 기록 고지를 캡처로 찍는다
ohah/maru#2631생성 · 병합mergedmainfix(packages): IME 회귀 둘 — 조합이 두 번 보이고, Cmd 조합이 글자를 뒤집었다
ohah/maru#2630생성 · 병합mergedmainfeat(session-host): complete P5c3d compatibility gate
ohah/maru#2629생성 · 병합mergedmainfix(lab): 도크 골든을 제품 폰트로 찍는다 — 지키지 못하던 축이 결함을 드러냈다
ohah/maru#2628생성 · 병합mergedmainfeat(windows): 도크가 뷰를 갈아 끼운다 — 파일 트리 ↔ 소스 컨트롤
ohah/maru#2627생성 · 병합mergedmainfix(packages): 데모가 안 뜨던 것 — 구독을 마운트 뒤로 옮기고 스모크를 세운다
ohah/maru#2626생성 · 병합mergedmaindocs(plans): 이미 끝난 일을 «남았다» 고 적은 줄 셋을 고친다
ohah/maru#2625생성 · 병합mergedmainfeat(packages): 접근성과 터치 — 캔버스가 못 하는 일을 DOM 이 한다
ohah/maru#2624생성 · 병합mergedmainfeat(packages): 링크 규칙 — 앱이 자기 패턴을 주입한다
ohah/maru#2623생성 · 병합mergedmainfix(agent-hooks): 업그레이드 뒤 뜬 자식만 훅 신원을 못 받고 있었다
ohah/maru#2622생성 · 병합mergedmainfeat(file-tree): Chrome Lab 탐색기 시나리오와 시각 골든 — 호버가 선택보다 밝던 것을 바로잡는다
ohah/maru#2621생성 · 병합mergedmainfeat(agent-hooks): host 가 자기 신원으로 훅 경로를 채운다 — 발급 순서를 당겨서
ohah/maru#2620생성 · 병합mergedmainfix(session): 밀려난 세션이 조용히 사라졌다 — 신원 자취를 남긴다
ohah/maru#2619생성 · 병합mergedmainfeat(file-tree): CIM §9 조건을 항목별로 닫는다 — 창 비활성 capture 해제와 발행 세대 게이트
ohah/maru#2618생성 · 병합mergedmainfeat(packages): 마커와 장식 — 여러 매치를 동시에 칠한다
ohah/maru#2617생성 · 병합mergedmainfeat(agent-hooks): 훅 신원에 host 소유 자리를 만든다 — 계약이 GUI 만 알고 있었다
ohah/maru#2616생성 · 병합mergedmaindocs(file-tree): 셀 투영의 소비자 서술을 사실에 맞춘다 — 삭제 대상이 아니다
ohah/maru#2615생성 · 병합mergedmaindocs(session-host): 백로그 목록이 이미 구현된 셋을 붙들고 있었다
ohah/maru#2614생성 · 병합mergedmainfeat(windows): 디바이더를 끌면 도크 폭이 바뀐다
ohah/maru#2613생성 · 병합mergedmainrefactor(chrome): 상태바 캡처 게이트 넷을 제품 tick 에서 걷어낸다
ohah/maru#2612생성 · 병합mergedmainfeat(windows): 입력이 갈린다 — 포인터는 사각형으로
ohah/maru#2611생성 · 병합mergedmaindocs(agent-hooks): codex 오류 턴을 «미검증»에서 «확정된 한계»로 종결한다
ohah/maru#2610생성 · 병합mergedmainfix(packages): 워커 모드에서 open() 직후 화면이 22ms 흐렸다
ohah/maru#2609생성 · 병합mergedmainfeat(session-host): 공개 attach 루프를 실제 TTY에 연결한다
ohah/maru#2608생성 · 병합mergedmainfix(agent-hooks): maru 를 두 개 띄우면 두 인스턴스가 같은 훅 로그를 물던 것
ohah/maru#2607생성 · 병합mergedmainfeat(windows): 도크에 파일 트리가 뜬다 — 아틀라스를 나눠 쓴다
ohah/maru#2606생성 · 병합mergedmaintest(scm): 캡처 하니스가 진짜 tree 와 놓친 턴을 심는다
ohah/maru#2605생성 · 병합mergedmainfix(mobile): 설정 화면의 숫자 입력과 키보드 자리
ohah/maru#2602병합mergedmainfeat(scm): 소스 컨트롤 파일 행을 목록 타이포·전경 위계로 옮긴다
ohah/maru#2601병합mergedmainfeat(scm): 턴 링의 주인을 세션으로 옮긴다 (AT0)
ohah/maru#2599병합mergedmainfeat(windows): 창이 터미널과 도크로 갈린다
ohah/maru#2586병합mergedmainfeat(editor): ⌘F가 편집기 문서를 검색한다 — 있던 기능이 아니라 조용히 틀린 것이었다 (§5.1)