2026-04-22

요약 (AI 작성)

오늘은 ZTS #1727 HMR 및 빌드 성능 개선 작업이 주축이었습니다. ZTS와 bungae에서 HMR breakdown을 세부 sub-phase로 분해하고, lazy sourcemap 인프라를 구축하여 HMR 업데이트 성능을 개선했습니다. 또한 profile 시스템에 Scan, Resolve, graph discover/finalize, emit_output 내부 단계별 타이머를 추가하여 내부 동작의 성능 병목 지점을 명확히 했습니다. Linker와 graph 모듈에서는 cache 구조를 정리하고 watcher-driven mtime cache를 구현해 기존 빌드 비용을 대폭 개선했습니다. ohah.github.io에서는 CRON_CRD_WRITE.md 기반으로 60개 .mdx 파일의 맞춤법 교정 작업을 완료했습니다.

커밋

ohah/bungae

ohah/ohah.github.io

ohah/zts

PR (해당일 생성/머지)

repo#상태제목
ohah/zts#1750openperf(bundler): #1621 runtime helper 축약 확장 (29 helpers)
ohah/zts#1746mergedci(windows): skip Debug build + tests — LLVM OOM on GitHub runner
ohah/zts#1745mergedperf(graph): unify side_effects_cache + pkg_type_cache into pkg_info_cache
ohah/zts#1743mergedperf(graph): cache package.json type field — date-fns 13x → 4x
ohah/zts#1741mergedperf(graph): add sub-profile scopes for discover parallel/serial split
ohah/zts#1740mergedperf(linker): share NamespaceAccessIndex across namespace imports
ohah/zts#1739mergedperf(linker): promote ns_export_cache to Linker field (thread-safe)
ohah/zts#1738mergedperf(linker): add profile scopes for link/metadata subpasses
ohah/zts#1732mergedperf(graph): watcher-driven mtime cache (Issue #1727 §3)
ohah/zts#1731mergedperf(emitter): emit_concat module_output 버퍼 pre-size
ohah/bungae#69mergedfeat(zts-bundler): HMR update 에 sourceMappingURL 만 부착 — ZTS 가 sourceURL 담당
ohah/zts#1730mergedfeat(emitter): HMR per-module code 에 //# sourceURL=<mod_id> 주석 (#1727 follow-up)
ohah/bungae#68mergedfeat(zts-bundler): lazy sourcemap 라우트 + build 단위 cache (ZTS #1727 Phase B)
ohah/zts#1729mergedfeat(core): NAPI lazy sourcemap getters + handle cache (#1727 Phase B)
ohah/zts#1728mergedfeat(bundler): lazy sourcemap 인프라 + SourceMapOptions (#1727 Phase B)
ohah/bungae#67mergedfeat(zts-bundler): HMR breakdown 에 graph/emit_output 내부 sub-phase 추가
ohah/zts#1726mergedfeat(profile): emit_output 내부 분해 — emitter.zig 4단계 sub-phase
ohah/zts#1725mergedfeat(profile): graph 내부 분해 — discover / finalize sub-phase
ohah/bungae#66mergedrefactor(zts-bundler): extract formatHmrBreakdown + SUB_KEYS 단일 소스
ohah/bungae#65mergedfeat(zts-bundler): HMR breakdown 멀티라인 + graph/emit sub-phase 출력
ohah/zts#1724mergedfeat(profile): graph / emit 내부 sub-phase 7개 삽입
ohah/bungae#64mergedfix(zts-bundler): remove (event as any) casts — use WatchRebuildEvent type
ohah/bungae#63mergedchore(zts-bundler): ZTS profile sync + HMR breakdown 새 필드 반영
ohah/zts#1723mergedfix(core): lightningcss optional dep 을 any 로 선언 — tsc 빌드 회복
ohah/zts#1722mergedrefactor(profile): /simplify follow-up — 주석 정리 + workaround 헬퍼
ohah/zts#1721mergedrefactor(test): drainTokensToEof 헬퍼 추출 (scanner_test 6곳 통합)
ohah/zts#1720mergeddocs(claude): bungae submodule sync 체크리스트
ohah/zts#1719mergedrefactor(profile)!: phaseDurations 레거시 이름 정리 (BREAKING)
ohah/zts#1718mergedfeat(profile): ResolveCache .resolve timer 삽입
ohah/zts#1717mergedfix(wasm): add clock_time_get WASI stub (LinkError 해소)
ohah/zts#1716mergedfeat(profile): Scanner .scan timer 삽입 (lex 시간 분리 측정)
ohah/zts#1715mergedfix(profile): workaround Zig 0.15.2 x86_64 @memset encoder bug
ohah/zts#1714mergedrefactor(profile): /simplify 리뷰 반영 — 중복 제거 + napi_entry 정리 (#1672 D2 post-epic)