2026-05-04

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

요약 (AI 작성)

zntc는 전날 열린 core-js 런타임 폴리필 지원(#2517)을 병합하며 하루를 시작했습니다. 폴리필 대상은 rspack 기준에 맞추고 es5 캡처를 정리했으며, 이어 모듈 그래프를 보고 필요한 폴리필을 감지하는 방식(#2521)과 수집기 hot path 자료구조 정리(#2528)가 들어갔습니다. NAPI plan 객체는 TS와 Zig 양쪽 키가 맞는지 검증하도록 캡슐화했고, fallback 옵션과 Node 폴리필 예시, core-js 옵션 문서도 추가했습니다(#2534, #2535). 문서 배포는 docs 변경이 있을 때만 돌도록 CI를 좁혔습니다(#2536).

RN codegen은 RN 버전별 스냅샷 스위트 디렉터리를 만든 뒤(#2519) 0.78부터 0.84까지 버전마다 RN core 스펙 3개씩 매트릭스를 채웠습니다(#2520, #2527, #2533 등). runtime contract의 핵심 값 검증(#2522), paperComponentName 옵션 처리(#2523), 타입 수준 함수 파라미터 이름 보존(#2525), codegenNativeCommands를 dispatchCommand 래퍼로 내보내는 기능(#2526)도 추가했습니다. 같은 제목의 앞선 PR #2524는 닫고 다시 올렸습니다. dev 서버에는 브라우저 오류 overlay가 들어왔고(#2537), 로드맵 문서에 dev server 통일 트랙과 TLS 라이브러리로 BoringSSL을 쓰기로 한 결정을 적었습니다.

오후부터 밤까지는 tree-shaking 성능을 다뤘습니다. 하위 단계, const 사전 패스, fixpoint BFS 시간을 따로 재는 프로파일 계측을 넣고(#2541, #2542, #2546), 숫자 상수 전파 큐 중복 제거와 배치화, namespace re-export 소비자 인덱스와 소스 조회 캐시, opaque namespace seed 확산 회피, post-link rename 재계산 생략, import record 문장 조회와 const fact export 조회 캐시, fixpoint seed 유지와 re-export 스캔 후보 축소, require 레코드가 없을 때 스캔 생략, numeric postpass 재동기화 축소를 차례로 병합했습니다(#2543부터 #2558까지). 벤치마크는 CI에서 다른 도구와 번들 성능을 비교하도록 바꿨습니다(#2550).

블로그 저장소 ohah.github.io의 커밋 16개는 크론의 CRON_CRD_WRITE.md 점검 기록 15개와 요약 갱신 1개입니다.

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

커밋

ohah/ohah.github.io

ohah/zntc

PR (해당일 생성/머지)

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

저장소PR해당일 활동상태대상 브랜치제목
ohah/zntc#2558생성 · 병합mergedmainperf(tree-shake): numeric postpass resync 좁히기
ohah/zntc#2557생성 · 병합mergedmainperf(tree-shake): require scan no-op 경로 건너뛰기
ohah/zntc#2556생성 · 병합mergedmainperf(tree-shake): re-export fixpoint scan 후보 축소
ohah/zntc#2555생성 · 병합mergedmainperf(tree-shake): seed export fixpoint 캐시 유지
ohah/zntc#2554생성 · 병합mergedmainperf(tree-shake): const fact export lookup 최적화
ohah/zntc#2553생성 · 병합mergedmainperf(tree-shake): import record stmt lookup 캐시화
ohah/zntc#2552생성 · 병합mergedmainperf(tree-shake): numeric const 전파 배치화
ohah/zntc#2551생성 · 병합mergedmainperf(tree-shake): post-link rename 재계산 회피
ohah/zntc#2550생성 · 병합mergedmainchore(benchmark): compare bundle perf against tools in CI
ohah/zntc#2549생성 · 병합mergedmainrefactor(profile): consolidate beginMaybe + benchmark helpers
ohah/zntc#2548생성 · 병합mergedmainchore(benchmark): clarify CI baseline comparison
ohah/zntc#2547생성 · 병합mergedmainperf(tree-shake): avoid opaque namespace seed fanout
ohah/zntc#2546생성 · 병합mergedmainfeat(profile): split fixpoint bfs timings
ohah/zntc#2545생성 · 병합mergedmainperf(tree-shake): cache namespace re-export source lookups
ohah/zntc#2544생성 · 병합mergedmainperf(tree-shake): index re-export namespace consumers
ohah/zntc#2543생성 · 병합mergedmainperf(tree-shake): dedupe numeric const propagation queue
ohah/zntc#2542생성 · 병합mergedmainfeat(profile): split const prepass timings
ohah/zntc#2541생성 · 병합mergedmainfeat(profile): add tree-shaking sub-phase timings
ohah/zntc#2537생성 · 병합mergedmainfeat(dev): add browser error overlay
ohah/zntc#2536생성 · 병합mergedmainci: 문서 배포 제한 및 DX 도구 최신화
ohah/zntc#2535생성 · 병합mergedmaindocs: core-js runtime polyfill 옵션 문서화
ohah/zntc#2534생성 · 병합mergedmaindocs(config): fallback 옵션 + Node 폴리필 예시 추가
ohah/zntc#2533생성 · 병합mergedmainfeat(snapshot): rn-0.84 matrix — 0.78~0.85 매트릭스 완성 (#2462 follow-up)
ohah/zntc#2532생성 · 병합mergedmainfeat(snapshot): rn-0.83 matrix (#2462 follow-up)
ohah/zntc#2531생성 · 병합mergedmainfeat(snapshot): rn-0.82 matrix (#2462 follow-up)
ohah/zntc#2530생성 · 병합mergedmainfeat(snapshot): rn-0.81 matrix (#2462 follow-up)
ohah/zntc#2529생성 · 병합mergedmainfeat(snapshot): rn-0.80 matrix (#2462 follow-up)
ohah/zntc#2528생성 · 병합mergedmainperf(core): runtime polyfill collector hot path 자료구조 정리
ohah/zntc#2527생성 · 병합mergedmainfeat(snapshot): rn-0.79 matrix — RN core spec 3개 (#2462 follow-up)
ohah/zntc#2526생성 · 병합mergedmainfeat(codegen): codegenNativeCommands → dispatchCommand wrapper emit (#2462)
ohah/zntc#2525생성 · 병합mergedmainfeat(parser): TS / Flow type-level function param name 보존 (D103, #2462)
ohah/zntc#2524생성closedmainfeat(codegen): codegenNativeCommands → dispatchCommand wrapper emit (#2462)
ohah/zntc#2523생성 · 병합mergedmainfeat(codegen): paperComponentName 옵션 처리 — uiViewClassName/nativeComponentName paper 이름 우선 (#2462)
ohah/zntc#2522생성 · 병합mergedmaintest(snapshot): codegen runtime contract 의 핵심 value 검증 추가 (#2462)
ohah/zntc#2521생성 · 병합mergedmainfeat(core): 그래프 기반 런타임 폴리필 감지
ohah/zntc#2520생성 · 병합mergedmainfeat(snapshot): rn-0.78 matrix — RN core spec 3개 + .gitattributes (#2462)
ohah/zntc#2519생성 · 병합mergedmainfeat(snapshot): codegen suite directory by RN version (#2462)
ohah/zntc#2517병합mergedmainfeat(core): core-js 런타임 폴리필 지원