2026-05-06

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

요약 (AI 작성)

zntc는 전날 시작한 @zts/react-native dev server를 실제 앱에 붙여 보며 다듬었습니다. 전날 열린 oxfmt 0.48 업그레이드(#2628)와 zts.config.ts의 transformer·serializer·server 영역 매핑(#2630)이 병합됐고, serializer.prelude·transformer.babel 매핑(#2634), RN CLI 플래그 매트릭스와 sourcemap 옵션 매핑(#2638, #2645), production asset 복사(#2639), HMR 클라이언트 로그 색상(#2646)이 더해졌습니다. 사용자 보고를 바탕으로 babel 플러그인 이름 접두사 처리, JSC에서 안전한 URL 정규화, iOS 26.4 Hermes에 맞춘 preset 배너의 globalThis 할당 제거, Bun stdin Buffer를 받지 못하던 터미널 단축키, 기본으로 켜지 않던 dev server sourcemap, broadcast가 조용히 실패하던 문제, withExpo와 EXPO_ROUTER_APP_ROOT 절대 경로, DevTools sourcemap ignore 목록을 고쳤습니다(#2631, #2633, #2635, #2642, #2643, #2656, #2671). Reanimated에서 드러난 회귀로 __extends가 열거되지 않는 static 메서드를 상속하지 않던 문제와 for-of 임시 변수 참조 span 문제도 수정했습니다(#2632, #2641).

번들러 sourcemap은 래퍼 닫는 괄호와 region·wrap·endregion 영역까지 원본에 매핑하고 본문 안쪽 빈 줄을 채워 모든 줄을 덮게 했습니다(#2649, #2650, #2653). 이어 chunk별 sourcemap을 지연 생성해 디스크에 쓰고 sourceMappingURL 주석을 붙이는 작업이 세 단계로 들어갔고(#2655, #2657, #2658), 주석 추가 분기 정리(#2662)와 hash 치환 뒤로 emit을 미뤄 file 필드를 정확히 맞추는 수정(#2664)이 뒤따랐습니다. sideEffects: false barrel의 lazy load(#2640), watch json ready 이벤트 race 수정(#2636), export getter에 minify_whitespace가 적용되지 않던 문제 수정(#2673)도 있었습니다.

저녁에는 RN 정책을 정리했습니다. Hermes의 ES2015와 async/await 호환 매트릭스를 보강한 뒤(#2674) RN preset이 class·블록 스코프·generator·async 등만 내리고 arrow·구조 분해·optional chaining 같은 문법은 그대로 두는 Metro 수준 다운레벨링으로 바꿨고(#2675), RN production 빌드에서 부수 효과가 없고 순환·TLA·require.context가 없는 모듈은 lazy wrap 대신 scope-hoist하도록 했습니다(#2676). bungae가 archive되고 RN 기능이 @zts/react-native로 흡수됨에 따라 문서와 지침에 남은 bungae 참조도 지웠습니다(#2672). 그 밖에 pnpm·bun 심볼릭 링크 farm의 scoped 패키지와 다단계 transitive 의존성 회귀 테스트(#2666부터 #2670까지), CI 병렬화와 E2E app builder 그룹 병렬 실행(#2665, #2667), 문서 사이트의 벤치마크 차트·Mermaid 개선(#2652, #2659, #2663)이 병합됐습니다.

블로그 저장소 ohah.github.io의 커밋 19개는 크론의 CRON_CRD_WRITE.md 점검 기록 18개와 요약 추가 1개입니다.

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

커밋

ohah/ohah.github.io

ohah/zntc

PR (해당일 생성/머지)

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

저장소PR해당일 활동상태대상 브랜치제목
ohah/zntc#2676생성 · 병합mergedmainfeat(graph): RN production 의 side-effect-free 모듈 selective scope-hoist (A)
ohah/zntc#2675생성 · 병합mergedmainfeat(compat): RN preset 명확한 정책 — Metro 동급 다운레벨링
ohah/zntc#2674생성 · 병합mergedmainfeat(compat): Hermes ES2015 + async/await 매트릭스 entries 보강
ohah/zntc#2673생성 · 병합mergedmainfix(emitter): minify_whitespace 가 export getter 에 적용되지 않던 문제
ohah/zntc#2672생성 · 병합mergedmainchore(docs): 번개(bungae) 참조 정리 — archive 후 deprecated
ohah/zntc#2671생성 · 병합mergedmainfix(react-native): align DevTools sourcemap ignore
ohah/zntc#2670생성 · 병합mergedmaintest(bundler): pnpm/bun farm 다중 hop transitive 검증 (#1924)
ohah/zntc#2669생성 · 병합mergedmaintest(bundler): pnpm/bun farm transitive dep + helper 통합 (#1924)
ohah/zntc#2668생성 · 병합mergedmaintest(bundler): pnpm/bun farm scoped 패키지 (@scope/x) 지원 (#1924)
ohah/zntc#2667생성 · 병합mergedmaintest(e2e): app builder 그룹 병렬 실행
ohah/zntc#2666생성 · 병합mergedmaintest(bundler): pnpm/bun farm symlink 통합 회귀 가드 (#1924)
ohah/zntc#2665생성 · 병합mergedmainci: 병렬화와 stale run 대기 줄이기
ohah/zntc#2664생성 · 병합mergedmainperf(bundler): chunk sourcemap emit 을 hash 치환 후로 미뤄 file 필드 정확 (#2661)
ohah/zntc#2663생성 · 병합mergedmaindocs(site): 벤치마크와 분석 페이지 표시 개선
ohah/zntc#2662생성 · 병합mergedmainrefactor(sourcemap): mode 분기 helper 통합 — appendSourceMappingURLComment (#2660)
ohah/zntc#2659생성 · 병합mergedmaindocs(site): 벤치마크 차트와 Mermaid 개선
ohah/zntc#2658생성 · 병합mergedmainfeat(bundler): chunk sourcemap 디스크 emit + sourceMappingURL 주석 + getSourceMapJSON helper (#2654 B3)
ohah/zntc#2657생성 · 병합mergedmainfeat(bundler): chunk 별 lazy sourcemap + SourceMapBuilder.moveToHeap helper (#2654 B2)
ohah/zntc#2656생성 · 병합mergedmainfix(react-native): port withExpo + EXPO_ROUTER_APP_ROOT 절대경로 (#2605)
ohah/zntc#2655생성 · 병합mergedmainfeat(bundler): emitChunks 에 per-chunk sourcemap 인프라 + generateJSONOwned helper (#2654)
ohah/zntc#2653생성 · 병합mergedmainfeat(bundler): sourcemap mapping 의 내부 gap fill — body 의 모든 줄 cover (#2651)
ohah/zntc#2652생성 · 병합mergedmaindocs(site): 문서 기능 보강
ohah/zntc#2650생성 · 병합mergedmainfeat(bundler): module mapping 영역 확장 — region/wrap/endregion 모두 source 매핑 (#2648)
ohah/zntc#2649생성 · 병합mergedmainfeat(bundler): wrapper closing brace 영역 sourcemap mapping 추가 (#2648)
ohah/zntc#2647생성 · 병합mergedmaindebug(react-native): symbolicate 진단 로그 + 매핑 실패 원인 분석 (#2605 사용자 보고)
ohah/zntc#2646생성 · 병합mergedmainfeat(react-native): HMR client log color/badge formatting (#2605 audit P2)
ohah/zntc#2645생성 · 병합mergedmainfeat(react-native): RN bundle 의 sourcemap path 옵션 매핑 + 후처리 통합 (#2605 audit P2)
ohah/zntc#2644생성 · 병합mergedmainchore(react-native): /simplify finding 반영 — dead code / 잘못된 guard / round-trip 정리
ohah/zntc#2643생성 · 병합mergedmainfix(react-native): sourcemap x_google_ignoreList 가 zts:runtime/* 도 포함 (#2605 사용자 보고)
ohah/zntc#2642생성 · 병합mergedmainfix(react-native): broadcast silent fail 알림 (#2605 사용자 보고)
ohah/zntc#2641생성 · 병합mergedmainfix(transformer): for-of temp 변수 reference span 을 name_span 으로 (Reanimated 회귀)
ohah/zntc#2640생성 · 병합mergedmainperf(bundler): sideEffects:false barrel lazy load
ohah/zntc#2639생성 · 병합mergedmainfeat(react-native): production asset 복사 + terminal actions 진단 (#2605 audit P0+UX)
ohah/zntc#2638생성 · 병합mergedmainfeat(react-native): RN CLI flag 매트릭스 + sourcemap option 매핑 (#2605 audit P0+P1)
ohah/zntc#2637생성 · 병합mergedmainfeat(react-native): bungae parity cleanup — dev-middleware boundary + HMR BuildError + asset ext (#2605 audit)
ohah/zntc#2636생성 · 병합mergedmainfix(cli): watch-json ready 이벤트 race 수정
ohah/zntc#2635생성 · 병합mergedmainfix(react-native): preset banner 에 top-level globalThis 할당 제거 (iOS 26.4 Hermes parity)
ohah/zntc#2634생성 · 병합mergedmainfeat(react-native): zts.config.ts 의 serializer.prelude / transformer.babel 매핑 (#2605 audit)
ohah/zntc#2633생성 · 병합mergedmainfix(react-native): jsc-safe URL request normalize (Metro 호환, #2605 audit)
ohah/zntc#2632생성 · 병합mergedmainfix(core): __extends 가 non-enumerable static method 도 상속 (Reanimated 회귀)
ohah/zntc#2631생성 · 병합mergedmainfix(react-native): apply babel plugin name prefix before resolve
ohah/zntc#2630병합mergedmainfeat(react-native): zts.config.ts 의 transformer/serializer/server 영역 매핑 (#2605 audit)
ohah/zntc#2628병합mergedmainchore: upgrade oxfmt 0.47 → 0.48 + enable singleQuote