2026-08-26

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

요약 (AI 작성)

maru의 편집기 커서가 움직이기 시작한 날입니다. 이동 일습·랩 시각 행·스크롤 앵커를 넣고(§3.2·§4.1c·§4.1g, #2718), 저장 안 한 편집을 dirty 표시와 닫기 보호로 알리며(#2725), 복사·붙여넣기·잘라내기가 멀티 커서를 알고(#2731) 삭제가 낱말·줄 단위를 알게 했습니다(#2739). 판정자를 뮤턴트로 전수 훑어 도구가 열한 번 거짓말한 것도 고쳤습니다(#2714). 전날 열린 접근성 서술자의 host 연결 #2703(스냅숏·ABI v173·Swift 어댑터)과 「턴이 끝나는 그 순간」을 지키게 한 #2707도 병합됐고, 넓힌 봉인 조건 때문에 셸 전용 턴이 사라지던 후속 문제도 고쳤습니다.

session-host는 알림 축을 세웠습니다. bounded notification journal(#2722), stable OSC 알림 admit(#2726), 알림 메타데이터 전달, macOS 알림 전달(#2733), GUI 히스토리 투영(#2734), cold notification 응답 라우팅까지 이어졌습니다. 회복 가능한 spawn 실패가 앱 abort로 승격되던 것, P5d 게이트가 정상 서명을 "runtime 없음"으로 읽던 것, 쓰기만 되던 incident 진단을 고쳤고(#2727), poison이 어느 불변식에서 났는지 남기게 했습니다(#2730). GUI 앱의 진단을 /dev/null 대신 파일로 남기고(#2729), 화면 코덱을 OS 중립 자리로 옮겼으며(S11-3), session host 기본값의 출처와 override를 reset에서도 보존했습니다. G3 release 계약을 닫고(#2740), 버전 단일 출처를 macOS 산출물에 잇고(#2741) 검증된 draft를 덮어쓰지 않고 게시하는 CI를 넣었습니다(#2743). 성공한 upgrade를 실패로 읽던 자리를 닫는 #2742와 서명을 고정 태그 워크플로로 제한하는 #2745는 이날 열렸습니다.

Windows는 전날 열린 하단 상태표시줄 #2705(W8.9)를 병합하고, 스크롤바를 띄웠으며(W8.10, #2723), maru install-cli가 돌게 했습니다(W10, #2720). 판정 각본이 제품에서도 돌고 있던 것을 고치면서 에이전트 카드·그룹(#2732)과 정렬 토글(#2738)이 눌리게 했습니다. 훑는 동안 창이 멈추던 것을 제출과 수령을 갈라 고치는 #2746은 이날 열렸습니다. 파일 트리는 발행 비교가 두 좌표계를 견주고 있어 좌클릭이 영영 안 열리던 문제를 고쳤습니다(#2744). AT3b를 짜기 전에 FSEvents를 재 보고 가정 둘이 갈린 것을 문서로 남겼고(#2721), FSEvents가 설계상 손실이 있다는 점에서 tree 제거의 전제를 다시 보는 #2724는 이날 열렸습니다.

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

커밋

ohah/maru

PR (해당일 생성/머지)

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

저장소PR해당일 활동상태대상 브랜치제목
ohah/maru#2746생성mergedmainfeat(windows): 훑는 동안 창이 멈추던 것 — 제출과 수령을 가른다
ohah/maru#2745생성mergedmainci(release): restrict signing to pinned tag workflow
ohah/maru#2744생성 · 병합mergedmainfix(file-tree): 좌클릭이 영영 안 열렸다 — 발행 비교가 두 좌표계를 견주고 있었다
ohah/maru#2743생성 · 병합mergedmainci(release): publish verified drafts without clobber
ohah/maru#2742생성mergedmainfix(session-host): 성공한 upgrade 를 실패로 읽던 자리를 닫고, 테스트 격리와 진단을 세운다
ohah/maru#2741생성 · 병합mergedmainbuild(release): wire version SSOT into macOS artifacts
ohah/maru#2740생성 · 병합mergedmaindocs(session-host): close G3 release contract
ohah/maru#2739생성 · 병합mergedmainfeat(editor): 삭제가 낱말·줄 단위를 안다 — 이동 일습의 거울 (§3.2)
ohah/maru#2738생성 · 병합mergedmainfeat(windows): 에이전트 정렬 토글이 눌린다
ohah/maru#2737생성 · 병합mergedmainfeat(config): retain session host overrides across reset
ohah/maru#2736생성 · 병합mergedmainfeat(config): preserve session host default provenance
ohah/maru#2735생성 · 병합mergedmainfeat(session-host): route cold notification responses
ohah/maru#2734생성 · 병합mergedmainfeat(session-host): project stable notifications into GUI history
ohah/maru#2733생성 · 병합mergedmainfeat(session-host): deliver macOS notifications
ohah/maru#2732생성 · 병합mergedmainfix(windows): 판정 각본이 제품에서도 돌고 있었다 + 에이전트 카드·그룹이 눌린다
ohah/maru#2731생성 · 병합mergedmainfeat(editor): 복사·붙여넣기·잘라내기가 멀티 커서를 안다 (§3.4)
ohah/maru#2730생성 · 병합mergedmainfeat(session-host): poison 이 어느 불변식에서 났는지 남긴다 — 결론만 있고 이유가 없었다
ohah/maru#2729생성 · 병합mergedmainfeat(platform): GUI 앱의 진단을 파일로 남긴다 — /dev/null 로 사라지던 자리
ohah/maru#2728생성 · 병합mergedmainfeat(session-host): deliver stable notification metadata
ohah/maru#2727생성 · 병합mergedmainfix(session-host): 앱을 죽이던 spawn 롤백, 릴리스를 막던 P5d 게이트, 읽을 수 없던 진단
ohah/maru#2726생성 · 병합mergedmainfeat(session-host): admit stable OSC notifications
ohah/maru#2725생성 · 병합mergedmainfeat(editor): 저장 안 한 편집을 알린다 — dirty 표시와 닫기 보호 (file-panel.md §1)
ohah/maru#2724생성mergedmaindocs(plans): FSEvents 는 설계상 손실이 있다 — tree 제거의 전제를 다시 본다
ohah/maru#2723생성 · 병합mergedmainfeat(windows): 스크롤바가 뜬다 (W8.10)
ohah/maru#2722생성 · 병합mergedmainfeat(session-host): add bounded notification journal
ohah/maru#2721생성 · 병합mergedmaindocs(plans): AT3b 를 코드 전에 재 본다 — FSEvents 가정 둘이 갈렸다
ohah/maru#2720생성 · 병합mergedmainfeat(cli): maru install-cli 가 Windows 에서 돈다 (W10)
ohah/maru#2719생성 · 병합mergedmaindocs(session-host): 기본값 전환의 선결은 «검증 수단» 이다
ohah/maru#2718생성 · 병합mergedmainfeat(editor): 커서가 움직인다 — 이동 일습·랩 시각 행·스크롤 앵커 (§3.2·§4.1c·§4.1g)
ohah/maru#2717생성 · 병합mergedmainrefactor(session-host): 화면 코덱을 OS 중립 자리로 옮긴다 (S11-3)
ohah/maru#2716생성 · 병합mergedmaintest(session-host): gate host-backed input parity
ohah/maru#2715생성 · 병합mergedmainfix(session-host): report daemon startup readiness
ohah/maru#2714생성 · 병합mergedmaintest(editor): 판정자를 뮤턴트로 전수 훑고, 도구가 열한 번 거짓말한 것을 고쳤다
ohah/maru#2713병합mergedmainfix(session-host): 선택 자동스크롤 범위를 host에 보존
ohah/maru#2707병합mergedmainfix(agent): 「턴이 끝나는 그 순간」을 지키지 않아 사본·세션·셸 수가 어긋났다
ohah/maru#2705병합mergedmainfeat(windows): 하단 상태표시줄이 선다 (W8.9)
ohah/maru#2703병합mergedmainfeat(platform): 접근성 서술자를 host 로 연다 — 스냅숏·ABI v172·Swift 어댑터
ohah/maru#2697병합mergedmaindocs(session-host): incremental checkpoint 구동 계약을 먼저 적는다