2026-10-07

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

요약 (AI 작성)

maru는 편집기 프로젝트 검색의 기반을 올렸습니다. VS Code 방식(디스크는 ripgrep, 열린 문서는 편집 모델 우선) 구성과 ripgrep 15.2.0을 앱 번들의 Contents/Helpers/rg로 싣는 작업을 #4196으로 병합했습니다. 이어서 백그라운드 worker가 rg 출력을 점진적으로 해석하고 열린 문서의 불변 사본을 먼저 검색하는 백엔드를 #4208로 병합했습니다. PR 본문 기준으로 검색 도크 연결은 아직이며, AppSession·IME 연결 #4218은 이날 열려 다음 날 병합됐습니다. 언어 서버 쪽에서는 서버를 프로세스 그룹째, 메인 스레드를 막지 않고 내리도록 했습니다(#4213). 서버만 SIGKILL해 rust-analyzer가 띄운 cargo check·build-script가 고아로 남던 문제와, initialize에 답이 없으면 「시작 중」에 영원히 머물던 문제 등을 함께 고쳤습니다. 워크스페이스 신뢰 계획 문서(#4217)를 두고, 신뢰 확인을 사용자 권한·격리 없음 같은 대가를 밝히는 신뢰 시트로 바꿨습니다(WT1, #4221).

테스트 러너의 HOME 격리 후속도 이어졌습니다. HOME이 /일 때 경로 비교가 루트를 빈 문자열로 읽어 러너가 자기 자신을 끝없이 다시 실행하던 문제를 #4209에서 막았고, 임시 홈·XDG 처리와 환경 변수 복원도 손봤습니다(#4207·#4214·#4215·#4216). 설정 파일을 읽지 못하는 상태(권한, 1 MiB 초과 등)에서 메뉴 Reload를 누르면 그 창만 설정이 통째로 기본값이 되던 문제는 지금 설정을 지키도록 고쳤습니다(#4194). 설정 로그의 중복 억제와 토큰 가리기도 다듬었습니다(#4200·#4211). 문구 보간이 버퍼를 넘으면 표시 없이 잘리고 한국어 글자 중간에서 끊기던 문제는 「…」로 잘림을 보이게 했고, 진단 호버에 기대 토큰 대신 빠짐: {s}가 그대로 뜨던 문제도 고쳤습니다(#4193). 그 밖에 이름 자르기·이름 바꾸기 상자의 UTF-8 경계와 패널 위치(#4199·#4210), Lab 오버레이와 팝업 경계 여백(#4204), 실제 IME 전환·후보창 상태에서 공유 뷰를 닫는 검증(#4203·#4223)이 들어갔습니다. 10월 6일에 열린 확인 모달 좁은 창 대응 #4190과 공유 뷰 닫기·백업 보존 검증 #4185도 이날 병합됐습니다. 잠자기 뒤 재접속 #4222와 정체 관측 #4219는 이날 열려 다음 날 병합됐습니다.

Chromium 웹 패널은 링크·그림을 탭 막대와 본문에 놓는 W6l①·W6l②(#4191·#4195), 안내 토스트 중 hover 전달 W6n #4198, 제안 목록(datalist) W6m①·W6m②·W6m③(#4206·#4212·#4224), 화면 실측 문서 #4202가 기능 브랜치 docs/web-panel-osr-backend에 병합됐습니다. main 반영이 아니며, main 통합 PR은 여전히 열려 있습니다.

zntc는 이날 PR 60개(#5151부터 #5210까지)를 모두 병합했습니다. 새벽에는 ES5로 내리는 생성자의 switch·try·labeled·for-each와 이름 있는 클래스 표현식까지 의미 그래프 유지 범위를 넓혔습니다. 오전에는 CJS 래퍼 매개변수와 runtime factory 이름을 SymbolId로 묶었습니다(#5170부터 #5176까지). 오후에는 __extends를 시작으로 generator·rest·async·private·super·데코레이터 등 runtime helper를 이름 문자열 재작성이 아니라 심볼 ID로 출력하도록 하나씩 옮겼습니다(#5177부터 #5203까지). 밤에는 ESM factory·interop, JSX, styled CSS helper와 번들러 helper import도 같은 방식으로 바꿨습니다. 새 릴리스는 없습니다(최신 v0.1.10).

spinon은 10월 5일에 연 #56을 병합해 호스트가 V8에 메모리 압박 단계를 전달하는 경로와, Android 긴 JS 진단 화면에서 취소 결과를 구분해 보이는 수정을 넣었습니다. actor 응답 handoff 추적 #59에서는 Android 에뮬레이터 10회 반복으로, 이전에 한 번 관측된 63.009ms handoff가 재현되지 않음을 확인했습니다(PR 본문 기준). S04 GPU fixture에는 비대칭 y 좌표 비교(#60)와 Android·iOS 입력의 hit-test 연결(#61)을 더했고, Android 실기기에서 프레임 제출과 readback을 확인했습니다(#63). S05 입력 이벤트 계약 문서(#62)와 벤치마크 근거 문서(#57·#58)도 병합했습니다. 여전히 PoC·명세 단계의 내부 시제품입니다. 블로그 저장소에는 10월 6일 기록 추가와 2차 전수조사 반영 커밋이 올라갔습니다.

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

커밋

ohah/maru

ohah/ohah.github.io

ohah/spinon

ohah/zntc

PR (해당일 생성/머지)

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

저장소PR해당일 활동상태대상 브랜치제목
ohah/maru#4224생성 · 병합merged기능 브랜치: docs/web-panel-osr-backendfeat(web-osr): W6m③ 열린 shadow DOM·iframe(같은·다른 출처) 안의 칸에도 제안 목록을 띄운다
ohah/maru#4223생성 · 병합mergedmaintest(input): 실제 한자 후보창 공유 pane 전환·닫기 검증
ohah/maru#4222생성mergedmainfix(session-host): 잠자기 뒤 재접속을 포기하지 않는다 — deadline_exceeded 도 새 데드라인·대기로 다시 넣는다
ohah/maru#4221생성 · 병합mergedmainfeat(lsp): 신뢰 확인을 정직한 신뢰 시트로 — 허락 범위와 대가(사용자 권한·격리 없음·저장소 밖·빌드·툴체인·shim)를 줄바꿈 안내로 밝힌다 (WT1)
ohah/maru#4220생성 · 병합mergedmaindocs(chrome): 팝업 패딩 결함의 조건을 바로 적는다 — 셀 폭 12px 미만에서만 오른쪽 테두리가 먹혔다
ohah/maru#4219생성mergedmainfeat(observability): host 쓰기 정체 끊김이 어느 기한인지와 앱 메인 tick 정체를 시각과 함께 남긴다
ohah/maru#4218생성mergedmainfeat(editor): 프로젝트 검색 AppSession owner와 IME 사본 연결
ohah/maru#4217생성 · 병합mergedmaindocs(editor): 워크스페이스 신뢰와 도구 환경 — §8.1 을 저장소 단위 신뢰 하나·사용자 셸 환경으로 고치고 WT1~WT5 계획을 둔다
ohah/maru#4216생성 · 병합mergedmaindocs(tests): 러너 HOME 격리 주석·문서를 실제 동작에 맞춘다
ohah/maru#4215생성 · 병합mergedmainfix(tests): 빈·루트 HOME 에서 러너가 실제 캐시로 새지 않게 새 임시 홈을 세우고, 격리 실패 사유를 가른다
ohah/maru#4214생성 · 병합mergedmainfix(tests): 테스트가 환경 변수를 getenv 포인터가 아니라 복사한 값으로 되돌린다
ohah/maru#4213생성 · 병합mergedmainfix(lsp): 서버를 그룹째·메인 스레드를 막지 않고 내리고, 답 없는 initialize·안 읽는 stdin·꺼진 설정·없는 root 에서도 서버가 매달리거나 쌓이지 않게 한다
ohah/maru#4212생성 · 병합merged기능 브랜치: docs/web-panel-osr-backendfeat(web-osr): W6m② Chromium 탭 제안 목록(datalist)을 칸 아래 macOS 네이티브 창으로 띄우고 ↑↓·Enter·Esc·행 누르기로 고른다 (ABI 213)
ohah/maru#4211생성 · 병합mergedmainfix(config): 점 없는 키와 그 오타는 진단에 키를 찍고, 숫자·대문자가 섞인 토큰은 계속 가린다
ohah/maru#4210생성 · 병합mergedmainfix(chrome): 이름 바꾸기 상자와 선택 헬퍼도 보이는 패널로 자리를 잡고, 짧은 버퍼·손상 바이트 뒤에서 결합 부호를 떼지 않는다
ohah/maru#4209생성 · 병합mergedmainfix(tests): HOME=/ 에서 러너가 끝없이 자기 자신을 exec 하던 것을 막고, 빈 XDG 도 격리 홈 아래로 채운다
ohah/maru#4208생성 · 병합mergedmainfeat(editor): 프로젝트 검색 worker와 불변 문서 검색 도입
ohah/maru#4207생성 · 병합mergedmainfix(tests): 러너 임시 홈을 실행마다 새로 만들고, 가짜 HOME 에서도 XDG 를 옮기며, login 셸 예외를 적는다
ohah/maru#4206생성 · 병합merged기능 브랜치: docs/web-panel-osr-backendfeat(web-osr): W6m① 제안 목록(datalist)을 sidecar 가 maru 로 보낸다 — Chrome 154 처럼 거른 항목과 칸 자리, 고른 값 넣기 (wire 14)
ohah/maru#4205생성 · 병합mergedmainrefactor(i18n): LSP 문구도 보간 진입점 하나(format)로 채우고, 「신뢰 확인이 갇힌다」는 틀린 서술을 바로잡는다
ohah/maru#4204생성 · 병합mergedmainfix(chrome): Lab 오버레이를 제품 모양·lowering 그대로 그리고, 팝업 경계 여백을 보이는 테두리에서 센다
ohah/maru#4203생성 · 병합mergedmaintest(input): 실제 IME 전환과 조합 중 공유 뷰 닫기 검증
ohah/maru#4202생성 · 병합merged기능 브랜치: docs/web-panel-osr-backenddocs(web-osr): 화면 실측 넷 — 날짜 선택 창은 앱에서 열리고, datalist 는 Chrome 동작을 쟀고, Finder 같은 이름·파일 약속은 Chrome 도 같다
ohah/maru#4201생성 · 병합mergedmainchore(docs): 검증 이미지를 PR 첨부로 이동
ohah/maru#4200생성 · 병합mergedmainfix(config): 로그 중복 억제가 다른 사건을 지우지 않고, 붙여 넣은 토큰을 키로 찍지 않는다
ohah/maru#4199생성 · 병합mergedmainfix(chrome): 이름 자르기가 깨진 바이트에서 비지 않고 글자 묶음을 가르지 않는다
ohah/maru#4198생성 · 병합merged기능 브랜치: docs/web-panel-osr-backendfix(web-osr): 안내 토스트가 떠 있는 동안에도 hover 가 페이지로 간다 — 툴팁·링크 강조가 사라지던 것 (W6n)
ohah/maru#4197생성 · 병합mergedmaintest(editor): 괄호 픽스처가 파싱과 괄호 목록을 끝까지 만든 뒤에 돌려준다 — BPP2 CI 실패
ohah/maru#4196생성 · 병합mergedmainfeat(editor): VS Code 프로젝트 검색 구성과 ripgrep 번들 기반 도입
ohah/maru#4195생성 · 병합merged기능 브랜치: docs/web-panel-osr-backendfeat(web-osr): W6l② 그림 데이터를 파일로 놓기 — 본문에 들어올 때 image.png 로, 글이 함께면 붙이지 않는다 (ABI 212)
ohah/maru#4194생성 · 병합mergedmainfix(config): 못 읽는 config 로 reload 하면 지금 설정을 지킨다
ohah/maru#4193생성 · 병합mergedmainfix(i18n): 보간이 넘치면 「…」로 잘렸음을 보이고 글자를 반으로 가르지 않으며, 호버의 「빠짐: {s}」를 고친다
ohah/maru#4192생성 · 병합mergedmaintest: 조용 시계 판정과 resolver 복구 루프가 부하에서 빨개지지 않게 한다
ohah/maru#4191생성 · 병합merged기능 브랜치: docs/web-panel-osr-backendfeat(web-osr): W6l① 링크를 탭 막대·주소 띠에 놓기 — 웹 탭 머리는 그 탭, 빈 탭 막대는 새 웹 탭, 주소 띠는 그 탭 (ABI 211)
ohah/maru#4190병합mergedmainfix(chrome): 확인 모달이 좁고 낮은 창에서도 버튼 행과 글자를 패널 안에 둔다
ohah/maru#4185병합mergedmaintest(editor): 공유 뷰 닫기와 백업 보존을 AppKit에서 검증
ohah/spinon#63생성 · 병합mergedmainspike(s04): Android 실기기 프레임 제출과 readback 검증
ohah/spinon#62생성 · 병합mergedmaindocs: S05 이벤트 전달 계약과 프레임 선행 조건 정리
ohah/spinon#61생성 · 병합mergedmainfeat(s04): GPU fixture hit-test를 Android·iOS 입력에 연결
ohah/spinon#60생성 · 병합mergedmainfeat(s04): 비대칭 y 좌표 GPU fixture 비교
ohah/spinon#59생성 · 병합mergedmainfeat(benchmark): 응답 handoff 귀속 계측
ohah/spinon#58생성 · 병합mergedmaindocs(benchmark): Android 지연과 xctrace 계측 근거 갱신
ohah/spinon#57생성 · 병합mergedmaindocs(benchmark): Perfetto gfx 설정 오류 원인 기록
ohah/spinon#56병합mergedmainfeat(runtime): 실행기·프레임 지연 진단 계측 보강
ohah/zntc#5210생성 · 병합mergedmainfix(transformer): bind bundler helper imports by SymbolId
ohah/zntc#5209생성 · 병합mergedmainfix(transformer): carry styled CSS helper symbols
ohah/zntc#5208생성 · 병합mergedmainfix(transformer): preserve exact JSX helper symbols
ohah/zntc#5207생성 · 병합mergedmainfix(symbols): include source owner kinds in exact gate
ohah/zntc#5206생성 · 병합mergedmainfix(bundler): keep ESM interop helpers as symbols
ohah/zntc#5205생성 · 병합mergedmainfix(bundler): keep ESM factory identity as a symbol
ohah/zntc#5204생성 · 병합mergedmainfix(bundler): keep binary helper identity as a symbol
ohah/zntc#5203생성 · 병합mergedmainfix(transformer): emit Stage 3 decorator helpers by symbol identity
ohah/zntc#5202생성 · 병합mergedmainfix(transformer): emit legacy decorator helpers by symbol identity
ohah/zntc#5201생성 · 병합mergedmainfix(transformer): emit derived constructor helpers by symbol identity
ohah/zntc#5200생성 · 병합mergedmainfix(transformer): emit array spread helpers by symbol identity
ohah/zntc#5199생성 · 병합mergedmainfix(transformer): emit static private helpers by symbol identity
ohah/zntc#5198생성 · 병합mergedmainfix(transformer): emit using helpers by symbol identity
ohah/zntc#5197생성 · 병합mergedmainfix(transformer): emit metadata helper by symbol identity
ohah/zntc#5196생성 · 병합mergedmainfix(transformer): emit async generator helpers by symbol identity
ohah/zntc#5195생성 · 병합mergedmainfix(transformer): emit wrap regexp helper by symbol identity
ohah/zntc#5194생성 · 병합mergedmainfix(transformer): emit keep names helper by symbol identity
ohah/zntc#5193생성 · 병합mergedmainfix(transformer): emit private field set helper by symbol identity
ohah/zntc#5192생성 · 병합mergedmainfix(transformer): emit super set helper by symbol identity
ohah/zntc#5191생성 · 병합mergedmainfix(transformer): emit super get helper by symbol identity
ohah/zntc#5190생성 · 병합mergedmainfix(transformer): emit call super helper by symbol identity
ohah/zntc#5189생성 · 병합mergedmainfix(transformer): emit private method get helper by symbol identity
ohah/zntc#5188생성 · 병합mergedmainfix(transformer): emit private method init helper by symbol identity
ohah/zntc#5187생성 · 병합mergedmainfix(transformer): emit class check helper by symbol identity
ohah/zntc#5186생성 · 병합mergedmainfix(transformer): emit tdz helper by symbol identity
ohah/zntc#5185생성 · 병합mergedmainfix(transformer): emit public field helper by symbol identity
ohah/zntc#5184생성 · 병합mergedmainfix(transformer): emit read helper by symbol identity
ohah/zntc#5183생성 · 병합mergedmainfix(transformer): emit async-values helper by symbol identity
ohah/zntc#5182생성 · 병합mergedmainfix(transformer): emit values helper by symbol identity
ohah/zntc#5181생성 · 병합mergedmainfix(transformer): emit async helper by symbol identity
ohah/zntc#5180생성 · 병합mergedmainfix(transformer): emit tagged template helper by symbol identity
ohah/zntc#5179생성 · 병합mergedmainfix(transformer): emit rest helper by symbol identity
ohah/zntc#5178생성 · 병합mergedmainfix(transformer): emit generator helper by symbol identity
ohah/zntc#5177생성 · 병합mergedmainfix(transformer): emit standalone extends helper by symbol identity
ohah/zntc#5176생성 · 병합mergedmainrefactor(bundler): symbolize CJS runtime helper locals
ohah/zntc#5175생성 · 병합mergedmainfix(bundler): anchor semantic-less CJS runtime to SymbolID
ohah/zntc#5174생성 · 병합mergedmainfix(bundler): split CJS runtime alias selection by SymbolID
ohah/zntc#5173생성 · 병합mergedmainfix(bundler): 단일 번들 CJS factory 이름을 rename pass에서 결정
ohah/zntc#5172생성 · 병합mergedmainfix(bundler): bind CJS runtime factory to SymbolId (#4819)
ohah/zntc#5171생성 · 병합mergedmaindocs: #4819 CJS wrapper 심볼 이관 범위 기록
ohah/zntc#5170생성 · 병합mergedmainfix(bundler): CJS 래퍼 매개변수 심볼 ID 연결
ohah/zntc#5169생성 · 병합mergedmainfix(codegen): reject mismatched namespace declaration symbols
ohah/zntc#5168생성 · 병합mergedmainfix(codegen): require namespace declaration symbols for renames
ohah/zntc#5167생성 · 병합mergedmainfix(codegen): reject invalid namespace prefix symbols
ohah/zntc#5166생성 · 병합mergedmainfix(transformer): bind runtime helper calls by exact identity
ohah/zntc#5165생성 · 병합mergedmainfix(transformer): bind hoisted temps by exact identity
ohah/zntc#5164생성 · 병합mergedmainfix(transformer): bind callback temp identities exactly
ohah/zntc#5163생성 · 병합mergedmainfix(transformer): retain generator state binding identity
ohah/zntc#5162생성 · 병합mergedmaintest(transformer): verify extracted generator loop identity
ohah/zntc#5161생성 · 병합mergedmainrefactor(transformer): fail closed for generator wrapper temps
ohah/zntc#5160생성 · 병합mergedmainfix(transformer): bind deferred using temp identities
ohah/zntc#5159생성 · 병합mergedmainfix(transformer): bind generated class super symbols
ohah/zntc#5158생성 · 병합mergedmainfix(bundler): retain safe named class expression graphs
ohah/zntc#5157생성 · 병합mergedmainfix(symbols): scope audit boundary to retained graphs
ohah/zntc#5156생성 · 병합mergedmaintest(symbols): lock exact identity report fields
ohah/zntc#5155생성 · 병합mergedmainfix(bundler): retain safe constructor for-each graphs
ohah/zntc#5154생성 · 병합mergedmainfix(bundler): retain exact constructor labeled control
ohah/zntc#5153생성 · 병합mergedmainfix(bundler): retain constructor debugger statements
ohah/zntc#5152생성 · 병합mergedmainfix(bundler): retain exact constructor try graphs
ohah/zntc#5151생성 · 병합mergedmainfix(bundler): retain exact constructor switch graphs