2026-08-23

요약 (AI 작성)

@maru/* 를 쓸 만하게 만든 날입니다. 진짜 PTY 로 TUI 를 검증하며 IME 결함을 고치고, 화면·스크롤 제어와 상태 이벤트, 검색과 OSC 사건(정책은 소비자가 정한다), 직렬화·키 가로채기·선택 조회까지 API 표면을 마무리했습니다. 렌더 비용을 재 보니 WebGL 렌더러(F7.5)는 필요 없어 계획에서 지웠습니다.

Windows 는 드래그 선택과 caret(W8.3⒞3), 폰트 id 다리와 자유 위치 셀로 measured 텍스트, 소스 컨트롤이 눌리고(접기와 고르기) 스테이지·언스테이지가 진짜 git 을 움직이며, 창이 터미널과 도크로 갈렸습니다. 굵기 0 이 run 을 조용히 지우던 것은 이음매 굵기를 타입으로 막았습니다. 편집기는 ⌘F 가 문서를 검색하고(있던 기능이 아니라 조용히 틀린 것이었다, §5.1) 탭 폭을 설정에서 받습니다 — 완성된 세터에 호출자가 없었습니다.

에이전트 턴은 write-tree 를 재보고 턴 캡처를 git 에서 떼어냈으며, 링의 주인을 저장소에서 세션으로 옮겼습니다(AT0). 모바일은 친 글자가 두 번 나가고 소켓으로 나가려 최대 2초 기다리던 것, 엔터·탭이 원격에 안 가던 것, tmux prefix 다음 키·시스템 바 겹침을 고쳤습니다. session-host 는 raw TTY 진입 전 출력 프리미티브와 진입 장벽을 고정하고 hostile pump 증거를 닫았으며, 편집기 N2 버퍼 게이트를 걷고 "뒤집힐 조건" 으로 바꿨습니다.

커밋

ohah/maru

PR (해당일 생성/머지)

repo#상태제목
ohah/maru#2604mergedfeat(session-host): raw TTY 진입 장벽을 고정한다
ohah/maru#2603mergedfeat(session-host): raw TTY 진입 전 출력 프리미티브를 고정한다
ohah/maru#2602mergedfeat(scm): 소스 컨트롤 파일 행을 목록 타이포·전경 위계로 옮긴다
ohah/maru#2601mergedfeat(scm): 턴 링의 주인을 세션으로 옮긴다 (AT0)
ohah/maru#2600mergedfix(mobile): 끊으면 목록으로 나가고, 연결이 없으면 축의 잔해를 말하지 않는다
ohah/maru#2599mergedfeat(windows): 창이 터미널과 도크로 갈린다
ohah/maru#2598mergedfix(mobile): tmux prefix 다음 키·시스템 바 겹침·본문 경계와 끊는 자리
ohah/maru#2597mergedfeat(session-host): bind stable external pump owner
ohah/maru#2596mergedfeat(windows): 스테이지·언스테이지가 진짜 git 을 움직인다
ohah/maru#2595mergeddocs(agent-turn): 링의 주인을 저장소에서 세션으로 옮긴다
ohah/maru#2594mergedfeat(windows): 소스 컨트롤이 눌린다 — 접기와 고르기
ohah/maru#2593mergedfix(agent-hooks): 훅 모드에서 사라지던 대화 줄과 알림을 되살린다
ohah/maru#2592mergedfix(scm): 진행 중 이 에이전트 상태가 아님을 이름으로 말한다
ohah/maru#2591mergedfeat(session-host): close F3e hostile pump evidence
ohah/maru#2590mergedfix(android): 엔터·탭이 원격에 안 가던 것 — 막는 기준이 너무 넓었다
ohah/maru#2589mergeddocs: 공용 코드에 새 폴더를 만들지 않는다 — 자리는 이미 있다
ohah/maru#2588mergedfix(scm): 턴 목록이 시각과 세션을 말하게 한다
ohah/maru#2587mergedfix(windows): 굵기 0 이 run 을 조용히 지웠다 — 이음매 굵기를 타입으로 막는다
ohah/maru#2586mergedfeat(editor): ⌘F가 편집기 문서를 검색한다 — 있던 기능이 아니라 조용히 틀린 것이었다 (§5.1)
ohah/maru#2585mergedfeat(windows): measured 텍스트가 Windows 화면에 나온다 — 폰트 id 다리와 자유 위치 셀
ohah/maru#2584mergedfix(mobile): 원격 명령이 그냥 끝난 것을 시한과 갈라 말한다
ohah/maru#2583mergeddocs(agent-turn): write-tree 를 재보고 턴 캡처를 git 에서 떼어낸다
ohah/maru#2582mergedfix(mobile): 친 글자가 소켓으로 나가려고 최대 2초 기다리던 것
ohah/maru#2581mergedrefactor(scm): 행 모델 → 컴포넌트 항목 변환을 중립으로 뺀다
ohah/maru#2580mergedfix(mobile): 컨트롤 축의 실패가 터미널 배너로 새던 것
ohah/maru#2579mergedfix(mobile): 친 글자가 두 번 나가고, 조합이 격자에서 떠 있던 것
ohah/maru#2578mergedfeat(file-tree): 셀 경로를 Windows 하나로 격리하고 게이트로 잠근다 (FT3)
ohah/maru#2577mergeddocs(plan): 모바일 계획 M/U 전수 점검 후 동기화
ohah/maru#2576mergeddocs(plan): 모바일 진행 표기를 실제 상태에 맞춘다
ohah/maru#2575mergedperf(packages): 렌더 비용을 재서 WebGL 렌더러(F7.5)를 계획에서 지운다
ohah/maru#2574closedfeat(windows): 소스 컨트롤 표면이 Windows 화면에 뜬다 (W8.4⒝)
ohah/maru#2573mergedfeat(packages): API 표면 마무리 — 직렬화·키 가로채기·선택 조회
ohah/maru#2572mergedfeat(session-host): orchestrate control responses in turn
ohah/maru#2571mergedfeat(editor): 탭 폭을 설정에서 받는다 — 완성된 세터에 호출자가 없었다 (§9)
ohah/maru#2570mergedfeat(windows): 드래그 선택과 caret (W8.3⒞3)
ohah/maru#2569mergedfeat(packages): 검색과 OSC 사건 — 정책은 소비자가 정한다
ohah/maru#2568mergedfeat(packages): 화면·스크롤 제어와 상태 이벤트 — 그 과정에 드러난 결함 둘
ohah/maru#2567mergedfeat(packages): 진짜 PTY 로 TUI 를 검증하고, 거기서 나온 IME 결함을 고친다
ohah/maru#2566mergedfix(file-tree): 낡은 발행 인덱스가 배열 범위를 넘어 죽던 것 (FT2 후속)
ohah/maru#2565mergedfeat(session-host): add CR6f output wake
ohah/maru#2564mergeddocs(editor): N2 버퍼 게이트를 걷고 "뒤집힐 조건"으로 바꾼다 (§3.0·§10)