2026-09-28

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

요약 (AI 작성)

maru 편집기에 opt-in PCRE2 정규식 찾기·바꾸기 #3988이 들어왔고, 같은 매처를 터미널 스크롤백 찾기에도 연결했습니다(#3993). 새벽에는 IME 재변환·한자 후보·접힌 선택 영역 처리를 다듬은 #3981이 병합돼, IME·한자 후보 창을 줄바꿈된 화면 행과 실제로 그려진 글자 위치에 맞추고 여러 줄 재변환 선택을 미리 보여 주게 했습니다. main의 editor 잡이 NS9 테스트로 두 번 연속 실패했는데도 어느 단언인지 알 수 없던 문제는 세 단언에 각각 오류 이름을 붙여 드러나게 했습니다(#3984). 한글 IME 별칭을 포함한 명령 팔레트 퍼지 검색 #3995는 이날 열려 다음 날 병합됐습니다.

session host 쪽은 main의 session host 잡이 네 번 연속 실패하면서도 무엇이 남았는지 로그에 찍히지 않던 postcommit 잔재 검사를 먼저 고쳐 이름을 남기게 했고(#3985), 원인이던 문제를 #3986에서 고쳤습니다. #3979의 시각 갱신이 승계 루프에서 매니페스트를 경로로 찍어 ctime을 바꾸고, 그 때문에 매니페스트가 지워지지 않던 문제입니다. 미리보기보다 3바이트 커진 상태 때문에 승계 전체가 취소되던 문제는 예약 크기에 여유를 두어 막았습니다(#3994). 에이전트 활동 갤러리는 세션 기록을 찾지 못한 경우와 일부만 읽은 경우의 문구를 나누고(#3990), 원격 SSH 그림 가져오기의 왕복 시간·바이트 계측(#3991), 실패 경로별 이유 이름(#3992), 스캔 취소 사유(#3996)를 로그에 남기게 했습니다. 원격 갤러리가 느리거나 가끔 비는 원인 자체는 아직 고치지 않았고, 다음 발생 때 원인을 가를 진단을 먼저 넣은 단계입니다.

spinon은 하루 동안 PR 여덟 개를 병합했습니다. 새벽에 병합된 V8 언어 연결 PoC #1에는 Android 실기기의 동적 Rust UI 트리 표시, Rust·C++·Zig 트리 커널 비교 벤치마크, Rspress 기반 문서 사이트와 Pages 배포 구성 커밋도 함께 들어갔습니다. 이어서 모노레포 구현 계획 #2, Cargo·Bun 모노레포 기반 #3, Android·iOS V8 초기 빌드 기반 #4, 원자 커밋을 갖춘 Rust UI 트리 코어 #5, GPU 렌더러 구현 계획 #6, Rspress 문서 테마를 문서 패키지로 옮긴 #7, JavaScript API 구현 체크리스트 #8을 병합했습니다. Taffy 레이아웃 R10 적합성 실험 #9는 이날 열려 다음 날 병합됐습니다. 아직 PoC와 명세를 다지는 단계입니다.

hwpjs의 공개 커밋 102개는 대부분 구현 문서의 계약을 현재 코드와 근거 자료에 다시 대조한 검증 기록입니다. 새벽에는 EMF·EMF+ 레코드와 HWP5 차트·OLE, 오전과 낮에는 HWPX 구조·이미지 경로, 공용 XML 파서, JPEG 디코딩, HWP5 양식·변경 기록·필드를 차례로 훑었습니다. 그 과정에서 EMF의 POLYPOLYLINE 하위 선 최소 개수, 그레이디언트 사각형 패딩 배열, 팔레트 없는 TS graphics V 허용, 시작점과 겹치는 FillPolygon 닫힘 선분 생략을 수정했고, 드라이브 문자가 붙은 HWPX ZIP 경로는 거절하게 했습니다. 오후에는 읽기 전용 문단 텍스트 미리보기를 추가하고 디코딩 범위를 필요한 레코드로 좁혔으며, 실제 문서에서 관측된 HWP 메타데이터 편차를 CFB에서 보정했습니다. zntc는 이름 변경 뒤 참조 보존, 생성된 임시 심볼 충돌 방지, 심볼 ID 없이 거부된 클래스 선언 허용, 구조 분해 임시 변수 중복 호이스팅 방지, generator 반복문 심볼 스코프, for-of 임시 결속 수정 등 PR 여덟 개를 병합했습니다.

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

커밋

ohah/hwpjs

ohah/maru

ohah/spinon

ohah/zntc

PR (해당일 생성/머지)

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

저장소PR해당일 활동상태대상 브랜치제목
ohah/maru#3996생성 · 병합mergedmainfeat(agent-image): 스캔이 «취소» 된 것과 «실패» 한 것이 같은 침묵이었다 — 취소에 이름을 붙인다
ohah/maru#3995생성mergedmainfeat(palette): fuzzy search with Korean IME aliases
ohah/maru#3994생성 · 병합mergedmainfix(session-host): 3 바이트 때문에 승계를 통째로 버리던 것 — 예약에 여유를 둔다
ohah/maru#3993생성 · 병합mergedmainfeat(terminal): add opt-in PCRE2 scrollback find
ohah/maru#3992생성 · 병합mergedmainfix(agent-image): 원격 그림이 «안 될 때» 제품이 침묵하던 것 — 열 갈래가 모두 null 이었다
ohah/maru#3991생성 · 병합mergedmainperf(agent-image): 원격 그림 왕복을 잰다 — 무엇이 느린지 숫자가 없었다
ohah/maru#3990생성 · 병합mergedmainfix(agent-activity): 「못 찾았다」와 「다 못 읽었다」를 가른다 — 한 문구가 두 사실을 접고 있었다
ohah/maru#3989생성 · 병합mergedmaintest(session-host): 위험을 발원지에 고정한다 — 경로로 찍으면 withdraw 가 자기 세대를 거부한다
ohah/maru#3988생성 · 병합mergedmainfeat(editor): add opt-in PCRE2 find and replace
ohah/maru#3987생성 · 병합mergedmaintest(session-host): .skip 의 「만」을 안 재던 것 — 갱신을 통째로 건너뛰어도 초록이었다
ohah/maru#3986생성 · 병합mergedmainfix(session-host): 승계 루프가 매니페스트를 경로로 찍어 그 publication 을 영영 못 거두던 것
ohah/maru#3985생성 · 병합mergedmaintest(session-host): postcommit 잔재의 «이름» 을 버리던 것 — 네 런 연속 실패인데 무엇이 남았는지 못 봤다
ohah/maru#3984병합mergedmaintest(editor): NS9 의 익명 실패에 이름을 붙인다 — 어느 단언인지 말하지 않던 것
ohah/maru#3981병합mergedmainfix(editor): preserve IME reconversion, Hanja candidates, and folded selections
ohah/spinon#9생성mergedmainfeat: Taffy R10 적합성 실험과 시뮬레이터 근거
ohah/spinon#8생성 · 병합mergedmaindocs: JavaScript API 구현 체크리스트 추가
ohah/spinon#7생성 · 병합mergedmainrefactor: Rspress 문서 테마를 패키지 내부로 이동
ohah/spinon#6생성 · 병합mergedmaindocs: GPU 렌더러 구현 계획 추가
ohah/spinon#5생성 · 병합mergedmainfeat: Rust UI 트리 코어 구현
ohah/spinon#4생성 · 병합mergedmainchore: Android·iOS V8 초기 빌드 기반 추가
ohah/spinon#3생성 · 병합mergedmainchore: Cargo·Bun 모노레포 기반 구성
ohah/spinon#2생성 · 병합mergedmaindocs: 모노레포 구현 계획과 테스트 경계 정리
ohah/spinon#1병합mergedmainfeat: 스피논 V8 언어 연결 방식 PoC와 iOS 시뮬레이터 실행 기록
ohah/zntc#4886생성 · 병합mergedmainfix(transformer): avoid orphaned for-of temp bindings
ohah/zntc#4885생성 · 병합mergedmainfix(transformer): preserve generator loop symbol scopes
ohah/zntc#4884생성 · 병합mergedmaintest(tsc): refresh symbol-based emit snapshots
ohah/zntc#4883생성 · 병합mergedmainfix(transformer): avoid duplicate destructuring temp hoists
ohah/zntc#4882생성 · 병합mergedmainfix(transformer): validate var origin on lexical scope path
ohah/zntc#4881생성 · 병합mergedmainfix(semantic): tolerate rejected class declarations without symbol IDs
ohah/zntc#4880생성 · 병합mergedmainfix(transformer): prevent generated temp symbol collisions
ohah/zntc#4879생성 · 병합mergedmainfix(transformer): preserve exact references through renames