2026-06-12

요약 (AI 작성)

오늘 ohah/maru 프로젝트에서 Stage 8 멀티탭 분할 레이아웃 구현을 대규모로 진행했다. PTY 다중 탭 지원(약 12개 PR), cmux 스타일 세로 사이드바(약 9개 PR), OSC 133 시멘틱 프롬프트 및 옵저버빌리티 기반(약 14개 PR), 그리고 SplitTree 기반 멀티 패널 레이아웃(약 9개 PR)이 포함되었다. ohah/zntc에서는 객체 rest 할당 및 default params 지원 관련 두 가지 트랜스포머 패치를 머지했다.

커밋

ohah/maru

ohah/zntc

PR (해당일 생성/머지)

repo#상태제목
ohah/maru#324mergedrefactor(macos): Tab에서 Pane 추출 (stage 8 split PR3a)
ohah/maru#323mergedfeat(macos): per-cell panel origin 렌더 프리미티브 (stage 8 split PR2b)
ohah/maru#322mergedfeat(macos): Tab을 단일 leaf SplitTree 루트로 (stage 8 split PR2a)
ohah/maru#321mergedfeat(app): SplitTree 모델 + 재귀 레이아웃 (stage 8 split PR1)
ohah/maru#320mergedfeat(macos): 사이드바 탭 드래그 재정렬 (stage 8 PR3d)
ohah/maru#319mergedfeat(config): Cmd+Shift+]/[ 탭 전환 키 (stage 8)
ohah/maru#318mergedfeat(macos): 사이드바 탭 호버 X 닫기 아이콘 (stage 8)
ohah/maru#317mergedfeat(macos): 탭 close + active 재선택 + Cmd+W (stage 8 PR4)
ohah/maru#316mergedfeat(macos): 사이드바 클릭→탭 전환 + 호버 hit-test (stage 8 PR3c)
ohah/maru#315mergedfeat(macos): 사이드바 탭 제목 렌더 — 공유 atlas 두 번째 패스 + 업로드 머지 (stage 8 PR3b-2b)
ohah/maru#314mergedfeat(macos): 사이드바 glyph 파이프라인 seam + 탭 제목 DrawList 합성기 (stage 8 PR3b-2a)
ohah/maru#313mergedfeat(macos): cmux식 큰 탭 슬롯 (~2.5× cell 높이) — 픽셀 슬롯 높이
ohah/maru#312mergedfix(macos): 포인터/IME 좌표 변환에 사이드바 offset 반영 (블록 밀림 수정)
ohah/maru#311mergedfeat(config): 사이드바 색 테마 설정화 (기본은 background 파생)
ohah/maru#310mergedfeat(macos): 사이드바 두 번째 셀 배열 + 활성 탭 하이라이트 밴드 (stage 8 PR3b-1)
ohah/maru#309mergedfeat(macos): vertical sidebar layout via surface-to-rect render mechanism (stage 8 PR3a)
ohah/maru#308mergeddocs(tabs): tabs/split/layout strategy — cmux-style vertical sidebar, model-vs-driver split
ohah/maru#307mergedfeat(macos): Cmd+T opens a new tab through the key path (stage 8 PR2)
ohah/maru#306mergedfeat(macos): multi-tab PTY drain + createTab/switchTab, verified with 2-tab smoke (stage 8 PR1d-2b)
ohah/maru#305mergedrefactor(macos): DevSession tabs as ArrayList(*Tab) dynamic container (stage 8 PR1d-2a)
ohah/maru#304mergedrefactor(macos): extract per-tab state into a Tab struct (stage 8 PR1d-1)
ohah/maru#303mergedrefactor(macos): route DevSession seam through app_window.active() (stage 8 PR1c)
ohah/maru#302mergedrefactor(app): AppWindow.tabs holds *Surface so surfaces never move (stage 8 PR1b)
ohah/maru#301mergedrefactor(macos): route DevSession through activeSurface() seam for multi-tab (stage 8 PR1a)
ohah/maru#300mergedfeat(observability): maru.trace.v1 writer for shell semantic events (B2)
ohah/maru#299mergedfeat(terminal): structured shell semantic-event stream (OSC 133/7 observability foundation)
ohah/maru#298mergeddocs(pr): require Mermaid diagrams to use GitHub-renderable syntax
ohah/maru#297mergedfeat(macos): window title from OSC 0/2 title, falling back to OSC 7 cwd basename
ohah/maru#296mergedfeat(terminal): OSC 7 cwd reporting (VTE de-facto standard, core + ABI + zsh emit)
ohah/maru#295mergeddocs(rules): require documenting the de-facto base + decision for non-standard terminal behavior
ohah/maru#294mergedfix(macos): commit IME composition before special/shortcut keys bypass it
ohah/maru#293mergedfix(config): default input.page-keys to scroll (avoids vi/emacs shell misparse)
ohah/maru#292mergedfix(shell): OSC 133 B marker survives prompt-framework PS1 rebuilds
ohah/maru#291mergedfix(terminal): OSC 133 code-review fixes — gutter exit carry + scroll tags
ohah/zntc#4263mergedfix(transformer): 중첩 object rest assignment-target 을 es2017 에서 lowering — for ([b, {a,...r}] of)
ohah/maru#290mergedfeat(renderer): OSC 133 exit-status gutter marks (green/red bar)
ohah/maru#289mergedfeat(app): OSC 133 prompt jump navigation (Cmd+Up/Down)
ohah/maru#288mergedfeat(terminal): carry OSC 133 tags through reflow and scrollback re-wrap
ohah/maru#287mergedfeat(shell): zsh emits OSC 133 semantic prompt markers + MARU_DEBUG dump