2026-09-19

요약 (AI 작성)

zntc v0.1.9 와 편집기 자동완성이 들어온 날입니다. zntc 는 package.json "type":"module" 을 사용자 프로젝트 코드에도 적용하고(#4666), bun.lock 동기화 PR 생성 실패를 조용히 넘기지 않게 CI 를 고쳐 v0.1.9 를 냈습니다. 편집기는 심볼 이름 바꾸기 — F2 → textDocument/rename, WorkspaceEdit 전부를 검증한 뒤 적용·저장·Undo Last Rename — 과 code action(⌘. 로 진단 문맥의 codeAction 을 컨텍스트 메뉴로), 그리고 자동완성 세 조각을 얻었습니다: LSP 완성 팝업(①-a — 식별자·트리거 글자·⌃Space 로 묻고 로컬 필터로 좁혀 고르면 textEdit+additionalTextEdit), 버퍼 단어·LSP 병합·fuzzy·강조 항목 미리 resolve·kind 열(①-b, §8.2g-b), labelDetails 꼬리와 description(①-c).

terminal-core 는 kitty 전송 매체 t=f/t=t/t=s 와 S/O 를 받아 kitten icat 이 maru 에서 memory 를 고르게 했고, 원격 애니메이션은 «로컬 전용» 이 아니라 «돌되 프레임마다 blob 전체를 싣는다» 로 문서를 고쳤습니다. 에이전트 훅은 PostToolUse·PostToolUseFailure(Bash) 로 셸 구간을 닫습니다(AT3b-1). 합자 왼쪽 오버항을 반올림에서 문턱 뺀 올림으로 바꿔 ... 가 .. 로 잘리던 결함을 고쳤고, 복구 세션의 한글 preedit 를 PTY echo 전에도 제자리에 표시합니다. §10.9 폭포 검산은 기대 CTLine 4.2ms 가 실측 4.19ms 와 맞았습니다. hwpjs 는 EMF+ image attributes·clear·string format·region·draw curve·beziers 를 파싱합니다.

커밋

ohah/hwpjs

ohah/maru

ohah/zntc

PR (해당일 생성/머지)

repo#상태제목
ohah/zntc#4668mergedci(release): bun.lock 동기화 PR 생성 실패를 조용히 넘기지 않는다
ohah/zntc#4667mergedchore: release v0.1.9
ohah/zntc#4666mergedfix(bundler): package.json "type":"module" 을 사용자 프로젝트 코드에도 적용
ohah/zntc#4665closedfix(bundler): package.json "type":"module" 을 사용자 프로젝트 코드에도 적용
ohah/maru#3807mergedfeat(editor): 자동완성 ①-c — labelDetails: label 뒤 꼬리(옅게)·오른쪽 description, 넘치면 오른쪽(16 문턱) → 꼬리 → label 순으로 접기 (§8.2g-c)
ohah/maru#3806mergedfeat(agent-hooks): AT3b-1 — PostToolUse·PostToolUseFailure(Bash) 로 셸 구간을 닫는다, 순수 층 shell_bracket + 턴과 함께 봉인
ohah/maru#3805mergedfeat(terminal-core): kitty 전송 매체 t=f/t=t/t=s + S/O — kitten icat 이 maru 에서 memory 를 고른다
ohah/maru#3804mergedfeat(editor): 자동완성 ①-b — 버퍼 단어·LSP 병합·fuzzy·강조 항목 미리 resolve(undo 하나)·kind 열 (§8.2g-b) + fix(lsp): 요청 id 를 i32 안으로(rust-analyzer 실측)
ohah/maru#3803mergedfix(session-host): 구독 무효화의 호출자마다 이름을 준다 — 이름이 있어도 못 갈랐다
ohah/maru#3802mergedfix(font): 합자 왼쪽 오버항을 반올림에서 문턱 뺀 올림으로 — ... 가 .. 로 잘리던 결함
ohah/maru#3801mergeddocs(present): §10.9 폭포 검산 — 기대 CTLine 4.2ms = 실측 4.19ms, 남은 shaping 은 합자·폴백 그대로 (착수 없음)
ohah/maru#3800mergeddocs(kitty): 원격 애니메이션은 «로컬 전용»이 아니라 «돌되 프레임마다 blob 전체를 싣는다»
ohah/maru#3799mergeddiag(app): 「세션 정보를 동기화하지 못했습니다」가 어느 런타임에서·얼마나 기다려 났는지 안 남겼다
ohah/maru#3798mergedfeat(editor): code action — ⌘. 로 진단 문맥의 codeAction 을 컨텍스트 메뉴로, edit(또는 resolve)를 WorkspaceEdit 규칙으로 적용 (LSP 2단 ⑦, §8.2h) + main 의 RemoteRuntime 크기 pin 수정
ohah/maru#3797mergedfeat(editor): 자동완성 ①-a — LSP 완성 팝업: 식별자·트리거 글자·⌃Space 로 묻고 로컬 필터로 좁혀 고르면 textEdit+additionalTextEdits 가 undo 하나 (LSP 2단 ⑥, §8.2g)
ohah/maru#3796mergedfix(session-host): 복구 세션의 한글 preedit를 PTY echo 전에도 제자리에 표시
ohah/maru#3795mergedfeat(editor): 심볼 이름 바꾸기 — F2 → textDocument/rename, WorkspaceEdit 전부 검증 뒤 적용·저장·Undo Last Rename (LSP 2단 ⑤, §8.2f)