2026-10-03

한국 시간(KST) 기준으로 하루를 나눴습니다. 커밋은 커미터 시각(committer date), PR은 생성·병합 시각으로 분류했습니다. 조회: 2026-10-06 KST. 공개 저장소에서 조회한 활동만 포함합니다.

요약 (AI 작성)

maru 터미널은 앱이 CSI ? 2048 h로 구독하면 크기가 바뀔 때 행·열·픽셀 크기를 바이트로 알려 주는 in-band resize 통지(DECSET 2048)를 지원합니다(#4085). 글꼴 크기를 바꿀 때 격자와 셀 픽셀이 따로 도착해 통지가 두 번, 그중 하나는 실재하지 않는 크기로 가던 문제를 resize 한 번에 셀 픽셀을 실어 보내는 방식으로 고쳤고(#4088), 재연결 강제 resize의 셀 픽셀과 명령 순서·PTY winsize까지 후속 보완했습니다(#4091, #4098). 전날 열린 kitty 이미지 수정 #4074가 병합돼 이미지가 reflow와 스크롤백 재배치 뒤에도 자기 셀을 따라가게 됐고, 화면별 배치 목록 분리와 맨 윗줄을 저장할 수 없는 줄바꿈 스크롤 처리 #4108도 들어갔습니다. reflow 임시 버퍼의 할당 실패가 이중 해제로 이어지던 문제 #4100과, 스크롤백 예산으로 잘린 세션 handoff의 좌표 상태 #4101도 고쳤습니다.

maru 편집기는 공유 pane·복원 codec과 checkpoint 보호 #4080을 병합하고, 백업 읽기에서 부재·손상·실패를 구분했습니다(#4090). 복원 직후 백업 유실과 같은 경로를 따로 연 문서들이 백업 하나를 덮어쓰는 문제를 재현한 뒤(#4093, #4095), 새 보호가 성공할 때까지 이전 백업을 지키는 수정 #4094과 문서 복구 ID·신원 codec #4103을 넣었습니다. 복구 예약 후보의 장애 경계와 비용을 재는 #4107은 이날 밤 열려 자정 직후 병합됐습니다. 에이전트 쪽은 큰 훅 이벤트의 식별자와 pane별 질문 알림을 보존하고(#4083), 원격 훅 설치 시한 초과를 영구 차단 대신 백오프 재시도로 바꾸며(#4087), 훅 기록 디렉터리와 최초 사이드바 행을 유지하게 했습니다(#4092). 알림 클릭이 현재 surface 소유자에게 가도록 고쳤고(#4105), 코드와 어긋난 계획 문서 상태도 두 차례 정리했습니다(#4082, #4102). Windows 편집기·파일 처리 개선 PR #4084는 집계 시점에도 열려 있어 미병합입니다. Chromium 탭 우클릭 메뉴 #4081·#4089와 밖에서 탭으로 끌어 놓기 #4104는 기능 브랜치 docs/web-panel-osr-backend에 병합된 것으로 main 반영은 아닙니다.

spinon은 새벽에 JavaScript·CSS 자원 그래프 결합 #33, 고정 fixture 기본 cascade 경로 #34, HostDocument 요소 입력과 계산된 스타일을 Taffy 입력으로 연결하는 #35·#36을 병합했습니다. 이어 V8에서 Rust HostDocument까지 동기 변경 묶음을 전달하는 S03.1 #38을 넣고, S04 단계로 CSS·레이아웃·GPU를 잇는 첫 경로를 만들었습니다. 연결 계약과 첫 GPU 화면 정책을 문서로 정한 뒤(#39, #40), 고정 CSS fixture를 플랫폼 중립 정적 렌더 스냅샷으로 바꾸는 #41과 그 스냅샷을 Android·iOS의 wgpu surface에 그려 readback으로 확인하는 내부 fixture #42·#43·#44를 병합했습니다. 제품 renderer나 API 지원 완료가 아닌 PoC 단계이며, Android·iOS 캡처 대조 문서 #45는 이날 열려 다음 날 병합됐습니다.

zntc는 #4819 작업으로 PR 44개를 병합했습니다. #4972는 병합 없이 닫혔고 같은 제목의 #4973으로 다시 올려 병합했습니다. 새벽에는 codegen이 namespace 접두와 IIFE 매개변수를 SymbolId로 해석하게 하고, 번들러가 enum·namespace 심볼, type-only import, classic·automatic JSX helper를 유지된 그래프에서 보존하게 했으며, 익명 클래스 자기 참조를 심볼로 묶었습니다. 낮 이후에는 ES5 화살표 함수·객체 리터럴·템플릿 낮추기, 정규식·BigInt 리터럴, 네이티브 spread·계산된 키·객체 메서드, Flow enum·component, import-equals·export-equals·export-star·re-export 경로에서 semantic graph를 버리지 않고 유지하도록 바꿨습니다. CJS 래퍼 매개변수와 런타임 factory 이름 충돌, new.target 매개변수 화살표 캡처도 고쳤습니다. CI는 Ubuntu 중심으로 검사를 통합하고 네이티브 빌드와 NAPI 캐시를 공유하도록 정리했습니다(#5004, #5007).

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

커밋

ohah/maru

ohah/spinon

ohah/zntc

PR (해당일 생성/머지)

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

저장소PR해당일 활동상태대상 브랜치제목
ohah/maru#4108생성 · 병합mergedmainrefactor(terminal): per-screen kitty placements, and fix placements on unstored line feed scroll
ohah/maru#4107생성mergedmaintest(editor): 복구 예약 후보의 장애 경계와 비용 검증
ohah/maru#4105생성 · 병합mergedmainfix(notifications): route clicks to the current surface owner
ohah/maru#4104생성 · 병합merged기능 브랜치: docs/web-panel-osr-backendfeat(web-osr): W6d① 밖에서 Chromium 탭으로 끌어 놓기 — 파일·폴더·글·링크, 페이지가 정한 동작(ABI 205·wire 6)
ohah/maru#4103생성 · 병합mergedmainfeat(editor): 문서 복구 ID와 필수 신원 codec 구현
ohah/maru#4102생성 · 병합mergedmaindocs(plans): 코드와 어긋난 계획 문서 상태를 다시 바로잡는다
ohah/maru#4101생성 · 병합mergedmainfix(session-host): move coordinate state with a budget-trimmed handoff scrollback
ohah/maru#4100생성 · 병합mergedmainfix(terminal): clear the reflow scratch before regrowing it so an OOM cannot double free
ohah/maru#4098생성 · 병합mergedmainfix(terminal): 셀 픽셀 명령의 순서를 지키고 PTY winsize 도 한 번에 바꾼다
ohah/maru#4097생성 · 병합mergedmaintest(editor): 복구 실패 경로 실행 검증과 신원 설계 보완
ohah/maru#4096생성 · 병합mergedmaintest(macos): wait for real PTY startup in cursor fixtures
ohah/maru#4095생성 · 병합mergedmaintest(editor): 같은 경로 독립 문서의 백업 충돌 재현
ohah/maru#4094생성 · 병합mergedmainfix(editor): 복구 백업을 새 보호가 성공할 때까지 보존
ohah/maru#4093생성 · 병합mergedmaintest(editor): 복원 직후 백업 유실 재현과 개수 강제 보완
ohah/maru#4092생성 · 병합mergedmainfix(agent): 훅 기록 디렉터리와 최초 사이드바 행을 유지한다
ohah/maru#4091생성 · 병합mergedmainfix: 적대적 재검증이 찾은 것 셋 — 고아 도우미 · 설치 성공 뒤 재시도 예산 · 재연결 resize 의 셀 픽셀
ohah/maru#4090생성 · 병합mergedmainrefactor(editor): 백업 읽기의 부재·손상·실패 구분
ohah/maru#4089생성 · 병합merged기능 브랜치: docs/web-panel-osr-backendfeat(web-osr): W6c② Chromium 탭 우클릭 메뉴를 macOS 메뉴로 — Chrome 154 항목·문구, 찾기·음성·서비스·이모티콘(ABI 204)
ohah/maru#4088생성 · 병합mergedmainfeat(terminal): resize 가 셀 픽셀을 함께 실어 글꼴 크기 변경의 2048 통지를 한 번으로
ohah/maru#4087생성 · 병합mergedmainfix(agent): 원격 훅 설치 시한 초과는 굳히지 않고 백오프로 다시 띄운다
ohah/maru#4086생성 · 병합mergedmainchore(chrome): 제품이 안 쓰는 옛 도크 셀 그리드 투영 둘을 지운다
ohah/maru#4085생성 · 병합mergedmainfeat(terminal): in-band resize 통지(DECSET 2048)를 지원한다
ohah/maru#4084생성openmainfeat(windows): improve editor, chrome paint and native file handling
ohah/maru#4083생성 · 병합mergedmainfix(agent): preserve oversized hook identity and pane question notices
ohah/maru#4082생성 · 병합mergedmaindocs(plans): 코드와 어긋난 계획 문서 상태를 바로잡는다
ohah/maru#4081생성 · 병합merged기능 브랜치: docs/web-panel-osr-backendfeat(web-osr): W6c① Chromium 탭 우클릭 메뉴 — sidecar 가 자리 정보를 알리고 고른 명령을 실행·복사한다(wire 5)
ohah/maru#4080생성 · 병합mergedmainfeat(editor): 공유 pane·복원 codec과 checkpoint 보호
ohah/maru#4074병합mergedmainfix(terminal): kitty placements follow their cell through reflow and scrollback rewrap
ohah/spinon#45생성mergedmaindocs: S04 Android·iOS 캡처 대조
ohah/spinon#44생성 · 병합mergedmainfix: Android readback 완료 상태 표시
ohah/spinon#43생성 · 병합mergedmainfeat: iOS S04 GPU fixture 연결
ohah/spinon#42생성 · 병합mergedmainfeat: Android S04 GPU 픽스처 연결
ohah/spinon#41생성 · 병합mergedmainfeat: S04 CSS를 정적 렌더 스냅샷으로 연결
ohah/spinon#40생성 · 병합mergedmaindocs: S04 첫 GPU 화면 정책 확정
ohah/spinon#39생성 · 병합mergedmaindocs: S04 첫 CSS·레이아웃·GPU 연결 계약 초안
ohah/spinon#38생성 · 병합mergedmainfeat: S03.1 V8 HostDocument 변경 묶음 연결
ohah/spinon#37생성 · 병합mergedmainrefactor: 스타일-레이아웃 크레이트 이름 변경
ohah/spinon#36생성 · 병합mergedmainfeat: C04.2 계산 스타일을 Taffy 입력으로 연결
ohah/spinon#35생성 · 병합mergedmainfeat(layout): HostDocument 요소 입력을 Taffy에 연결
ohah/spinon#34생성 · 병합mergedmainfeat(css): 고정 fixture 기본 cascade 경로 추가
ohah/spinon#33병합mergedmainfeat: C02.3 JavaScript·CSS 자원 그래프 결합
ohah/zntc#5008생성 · 병합mergedmainrefactor(bundler): retain static named re-export graph
ohah/zntc#5007생성 · 병합mergedmainci(workflows): 빌드 공유와 NAPI 캐시 누락 수정
ohah/zntc#5006생성 · 병합mergedmainrefactor(bundler): retain plain export-star graph
ohah/zntc#5005생성 · 병합mergedmainrefactor(bundler): retain static external import-equals graph (#4819)
ohah/zntc#5004생성 · 병합mergedmainci(workflows): Ubuntu 중심으로 CI 통합 및 중복 실행 정리
ohah/zntc#5003생성 · 병합mergedmainrefactor(bundler): retain TypeScript export-equals graph (#4819)
ohah/zntc#5002생성 · 병합mergedmainrefactor(bundler): retain local import-equals graph (#4819)
ohah/zntc#5001생성 · 병합mergedmainrefactor(bundler): retain Flow component graph (#4819)
ohah/zntc#5000생성 · 병합mergedmainfix(bundler): retain Flow enum semantic graph (#4819)
ohah/zntc#4999생성 · 병합mergedmainfix(transformer): bind styled cssProp imports to symbols (#4819)
ohah/zntc#4998생성 · 병합mergedmainfix(bundler): keep runtime factory aliases aligned
ohah/zntc#4997생성 · 병합mergedmainfix(bundler): deconflict CJS runtime factory name
ohah/zntc#4996생성 · 병합mergedmainfix(transformer): track new.target parameter arrow captures
ohah/zntc#4995생성 · 병합mergedmainrefactor(bundler): retain native object method scopes
ohah/zntc#4994생성 · 병합mergedmainrefactor(bundler): retain native computed keys in prepass
ohah/zntc#4993생성 · 병합mergedmainrefactor(bundler): retain graph for native spread elements
ohah/zntc#4992생성 · 병합mergedmainrefactor(bundler): retain BigInt literal symbol graph
ohah/zntc#4991생성 · 병합mergedmainrefactor(bundler): retain graph for regex literals
ohah/zntc#4990생성 · 병합mergedmainrefactor(bundler): retain graph for untagged ES5 templates
ohah/zntc#4989생성 · 병합mergedmainrefactor(bundler): retain graph for plain ES5 object literals
ohah/zntc#4988생성 · 병합mergedmainrefactor(bundler): retain graph for target-native arrow expressions
ohah/zntc#4987생성 · 병합mergedmainrefactor(bundler): retain graph for safe arrow operators
ohah/zntc#4986생성 · 병합mergedmainrefactor(bundler): retain graph through TS arrow erasure
ohah/zntc#4985생성 · 병합mergedmainrefactor(bundler): retain graph for ES5 arrow lowering
ohah/zntc#4984생성 · 병합mergedmainfix(bundler): avoid CJS wrapper parameter collisions
ohah/zntc#4983생성 · 병합mergedmainrefactor(transformer): bind deferred state symbols by node identity
ohah/zntc#4982생성 · 병합mergedmainfix(transformer): register anonymous class symbol before static blocks
ohah/zntc#4981생성 · 병합mergedmainfix(transformer): bind anonymous class self references to symbols
ohah/zntc#4980생성 · 병합mergedmainfix(transformer): preserve runtime helper identity through reanalysis
ohah/zntc#4979생성 · 병합mergedmainfix(bundler): retain automatic-dev JSX semantic graph
ohah/zntc#4978생성 · 병합mergedmainfix(bundler): preserve automatic JSX helper imports in retained graph
ohah/zntc#4977생성 · 병합mergedmainrefactor(symbols): retain stable runtime imports
ohah/zntc#4976생성 · 병합mergedmainrefactor(symbols): retain classic JSX semantic graph
ohah/zntc#4975생성 · 병합mergedmainfix(symbols): gate bundler prepass identities
ohah/zntc#4974생성 · 병합mergedmainfix(bundler): elide inferred type-only export aliases
ohah/zntc#4973생성 · 병합mergedmainfix(bundler): retain exact local export aliases
ohah/zntc#4972생성closedmainfix(bundler): retain exact local export aliases
ohah/zntc#4971생성 · 병합mergedmainfix(bundler): retain type-only import semantic graphs
ohah/zntc#4970생성 · 병합mergedmainfix(bundler): retain merged namespace symbol owners
ohah/zntc#4969생성 · 병합mergedmainfix(bundler): retain exact TypeScript namespace graphs
ohah/zntc#4968생성 · 병합mergedmainfix(bundler): retain exported enum symbols
ohah/zntc#4967생성 · 병합mergedmainperf(bundler): reuse semantic graph for local TypeScript enums
ohah/zntc#4966생성 · 병합mergedmainfix(codegen): emit namespace properties from SymbolIds
ohah/zntc#4965생성 · 병합mergedmainfix(codegen): resolve namespace prefixes by SymbolId
ohah/zntc#4964생성 · 병합mergedmainfix(codegen): mangle namespace IIFE parameters by SymbolId