2026-08-13

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

요약 (AI 작성)

maru의 편집기를 하나의 Term 종류로 승격한 날입니다. 프레임 조립을 chrome 컴포넌트로 올린 뒤(#2144), SurfaceKind에 editor를 더해 타입 자리를 만들고 kind == .web으로 뭉뚱그려 있던 8곳을 분류했으며, 편집기 Term을 만들어 파일을 붙이고 훅이 파일을 편집기 Term으로 열어 렌더 블록까지 잇게 했습니다. 사이드바 아이콘에서 편집기가 빠져 있던 것도 채웠습니다. 렌더 쪽에서는 배경 quad가 자기 본문을 덮고 있던 것을 layer 3에서 2로 고치면서 합성 층에 이름을 줘 Lab과 제품이 갈리던 자리를 없앴고, 배경이 텍스트를 덮는 것을 Lab 게이트가 잡게 했습니다(#2158). 편집기 배경은 terminal_bg 토큰으로 터미널과 같은 색을 쓰되 창 투명도는 그 역할에만 걸고, 본문에는 창 padding을 적용하지 않게 정리했습니다.

터미널에서는 wrap 이음의 유령 공백 문제를 뿌리부터 팠습니다. 안 쓴 칸과 쓴 공백을 구분하는 것에서 시작해 soft-wrap 이음이 wrap 채움을 내용으로 삼지 않게 하고, BCE로 칠한 화면에서도 같은 규칙이 서게 했으며, 중립 렌더 계층도 안 쓴 칸을 빈 칸으로 보게 맞췄습니다(#2156). 화면을 지워도 스크롤백에서 줄이 계속 이어지던 문제도 잡아, 홈에서의 ED 0·ED 1과 0행을 비우거나 덮는 연산도 스크롤백 wrap을 끊게 했습니다(#2153). 넓힌 뒤 커서 줄 복사의 패딩 공백을 다루던 #2155는 병합 없이 닫혔습니다. 폰트는 셰이핑을 run 단위로 묶고 합자를 설정으로 뺐습니다(#2151). 사이드바는 토글 행의 파형 중복 그리기, 에이전트 행 상태 마커 위치, 카드 호버 밴드가 상태바를 덮던 문제를 고쳤습니다(#2157).

모바일 작업은 deploy/mobile 브랜치에서 이어졌고 main 반영은 아닙니다. 전날 열린 iOS UITextInput 전환 #2131, 커서 #2133, 렌더 루프 수정 #2138이 그 브랜치에 병합됐고, 스크롤(#2142), 길게 눌러 잡는 선택(#2148), 복사(#2152), 보조 키바(#2146), 이모지 컬러 아틀라스(#2159)와 셸 따옴표·-- 플래그 입력, 선택 중 화면 흐름 수정이 같은 브랜치에 들어갔습니다. 번들 폰트에 없는 기호를 채우는 #2165는 이날 열렸습니다.

session-host는 전날 열린 CR0b incident artifact 영속화 #2140을 병합하고, incident writer를 부트스트랩했으며(#2143), incident process 권위를 격리하고 크로스플랫폼 경계를 맞췄습니다. managed client publication도 봉인했습니다(#2149). 앱 종료 단계를 계측하고 정리 전에 창을 내리는 #2139도 병합됐습니다. 로컬 셸이 OSC 7 authority를 비워 자기 세션을 원격으로 오판하던 SSH 문제 #2163과 CR0b incident publication 기반 #2164는 이날 PR이 열렸습니다.

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

커밋

ohah/maru

PR (해당일 생성/머지)

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

저장소PR해당일 활동상태대상 브랜치제목
ohah/maru#2165생성merged기능 브랜치: deploy/mobilefix(mobile): 번들 폰트에 없는 기호가 영구 공백이던 것을 채운다
ohah/maru#2164생성mergedmainfeat(session-host): CR0b incident publication 기반 구축
ohah/maru#2163생성mergedmainfix(ssh): 로컬 셸이 OSC 7 authority를 비워 자기 세션을 원격으로 오판하지 않는다
ohah/maru#2162생성 · 병합merged기능 브랜치: deploy/mobiledocs(mobile): 계약 문서가 구현보다 뒤처진 두 자리를 맞춘다
ohah/maru#2161생성 · 병합mergedmaintest(chrome): 헤더 고정 quad 가 scissor 를 견디는지 골든이 본다
ohah/maru#2160생성 · 병합mergedmainfix(session-host): 테스트 임시 디렉터리를 열 때 잔여물을 걷는다
ohah/maru#2159생성 · 병합merged기능 브랜치: deploy/mobilefeat(mobile): 이모지를 컬러 아틀라스로 굽고 그린다 (M4a6)
ohah/maru#2158생성 · 병합mergedmainfix(editor): 배경 quad가 자기 본문을 덮고 있었다 — 합성 층을 잡고 Lab 게이트를 세운다
ohah/maru#2157생성 · 병합mergedmainfix(sidebar): 카드 호버 밴드가 상태바를 덮지 않게 뷰포트 바닥에서 자른다
ohah/maru#2156생성 · 병합mergedmainfix(terminal): 안 쓴 칸과 쓴 공백을 구분해 wrap 이음의 유령 공백을 없앤다
ohah/maru#2155생성closedmainfix(terminal): 넓힌 뒤 커서 줄을 복사할 때 패딩 공백이 안 끼게 한다
ohah/maru#2154생성 · 병합mergedmainfix(sidebar): 에이전트 행의 상태 마커를 두 형태 모두 선두에 둔다
ohah/maru#2153생성 · 병합mergedmainfix(terminal): 화면을 지워도 스크롤백에서 이어지던 줄이 안 끊겼다
ohah/maru#2152생성 · 병합merged기능 브랜치: deploy/mobilefeat(mobile): 복사 — 키바 옆 copy 로 잡은 것을 꺼낸다 (M4b3)
ohah/maru#2151생성 · 병합mergedmainperf(font): 셰이핑을 run 단위로 묶고 합자를 설정으로 뺀다
ohah/maru#2150생성 · 병합merged기능 브랜치: deploy/mobilefix(mobile): 선택 중에 화면이 흐르던 것 + 여러 줄 확인 + iOS 포인터
ohah/maru#2149생성 · 병합mergedmainfeat(session-host): seal managed client publication
ohah/maru#2148생성 · 병합merged기능 브랜치: deploy/mobilefeat(mobile): 선택 — 길게 누르면 잡고 끌면 스크롤이다 (M4a + M4b2)
ohah/maru#2147생성 · 병합mergedmainfix(sidebar): 토글 행에서 같은 파형을 두 번 그리지 않는다
ohah/maru#2146생성 · 병합merged기능 브랜치: deploy/mobilefeat(mobile): 보조 키바 — 소프트 키보드에 없는 키를 만든다 (M4b4)
ohah/maru#2145생성 · 병합merged기능 브랜치: deploy/mobilefix(mobile): iOS 에서 셸 따옴표도 -- 플래그도 못 치고 있었다
ohah/maru#2144생성 · 병합mergedmainrefactor(editor): 프레임 조립을 chrome 컴포넌트로 올린다
ohah/maru#2143생성 · 병합mergedmainfeat(session-host): bootstrap CR0b incident writer
ohah/maru#2142생성 · 병합merged기능 브랜치: deploy/mobilefeat(mobile): 스크롤 — 화면 밖으로 나간 출력을 볼 수 있게 한다 (M4b1)
ohah/maru#2141생성 · 병합mergedmaindocs(trace-replay): 셸 이벤트 스트림의 드레인 제약을 단일 출처에 적는다
ohah/maru#2140병합mergedmainfeat: persist CR0b incident artifacts securely
ohah/maru#2139병합mergedmainfeat(app-host): 종료 단계를 계측하고 정리 전에 창을 내린다
ohah/maru#2138병합merged기능 브랜치: deploy/mobilefix(mobile): 파이프라인 실패 뒤에도 렌더 루프를 걸고 있었다
ohah/maru#2133병합merged기능 브랜치: deploy/mobilefeat(mobile): 커서를 그린다 (M4a5)
ohah/maru#2131병합merged기능 브랜치: deploy/mobilefeat(mobile): iOS 를 UITextInput 으로 올린다 — 한글이 왜 그래도 안 되는지 실측 (M2b 1/2)