2026-05-08

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

요약 (AI 작성)

zntc는 전날 열린 RN의 기본 Babel 변환 패스 회피 수정(#2700)을 병합하고, init 오버레이 병합 때 의도치 않게 되돌려진 parse_arena heap 포인터 전환과 dev_mode 증분 재빌드 최적화를 다시 적용했습니다(#2701). 이어 unwrapNapi 제네릭 헬퍼로 NAPI 언랩 반복 코드를 합치고(#2702), playground에서 codeSplitting·preserveModules를 켜면 형식을 ESM으로 자동 전환하게 했으며(#2703), import scanner의 호출식 처리를 callee 태그별 분기로 바꿨습니다(#2704).

플러그인 쪽은 실패를 diagnostic으로 드러내고(#2705), 플러그인 transform이 낸 sourcemap을 최종 sourcemap에 합성하며(#2706), buildSync에서 동기 JS 플러그인을 지원하게 했습니다(#2708). 그 뒤 TLS 채널을 HookContext out-param으로 바꾸고, async·sync dispatcher를 generator로 합쳐 lifecycle 채널을 하나로 줄였으며, NapiPlugin·NapiSyncPlugin의 hook별 어댑터를 comptime 제네릭으로 통합했습니다(#2709, #2710, #2712). RN dev server 터미널은 bungae와 같은 로고 배너·단축키 표·핫키 피드백을 갖추고 v 키로 콘솔 로그를 켜고 끌 수 있게 됐고(#2707), RN HMR 로딩 토스트도 고쳤습니다(#2711).

semantic에서는 catch 블록 안 함수 재선언 검사(#2714)를 main에 병합했습니다. 그 위에 쌓은 계산된 constructor 키 제외, 계산된 중복 __proto__ 키 무시, test262 실패 시 CI를 실패시키는 PR(#2715, #2716, #2717)은 각각 아래 PR의 브랜치로 병합됐습니다. 이 과정에서 중첩 블록 함수 선언이 rename과 어긋나 ReferenceError가 나던 회귀를 var_scope 심볼을 블록 스코프에 alias로 등록해 고쳤고, 중첩 블록 함수를 올바른 종류로 미리 선언하도록 했습니다(#2719).

오후부터 밤까지는 거대한 테스트 파일을 쪼개는 작업이 이어졌습니다. core와 CLI 테스트 스위트를 나눈 #2718을 시작으로 app builder, watch, HMR, 플러그인, sourcemap, browserslist, 옵션 조합, vite 플러그인, 공통 헬퍼 등과 CLI의 bundle·tsconfig·config·dev server·transpile·serve 테스트를 주제별 파일로 옮기는 PR을 한 시간에 몇 개씩 병합했습니다(#2720부터 #2772까지). 그 사이에 연 test262의 OS별 차이 추적용 #2724는 닫았고, 마지막 #2773은 이날 열려 5월 9일에 병합됐습니다. 블로그 저장소 ohah.github.io의 커밋 16개는 크론의 CRON_CRD_WRITE.md 점검 기록 15개와 요약 추가 1개입니다.

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

커밋

ohah/ohah.github.io

ohah/zntc

PR (해당일 생성/머지)

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

저장소PR해당일 활동상태대상 브랜치제목
ohah/zntc#2773생성mergedmaintest(cli): bundle 옵션 테스트 추가 분리
ohah/zntc#2772생성 · 병합mergedmaintest(cli): app builder 스타일 테스트 분리
ohah/zntc#2771생성 · 병합mergedmaintest(core): hmr perf 테스트 분리
ohah/zntc#2770생성 · 병합mergedmaintest(core): watch sourcemap 테스트 분리
ohah/zntc#2769생성 · 병합mergedmaintest(core): option combination 테스트 분리
ohah/zntc#2768생성 · 병합mergedmaintest(core): runtime shadowing 테스트 분리
ohah/zntc#2767생성 · 병합mergedmaintest(core): watch plugin order 테스트 분리
ohah/zntc#2766생성 · 병합mergedmaintest(core): react refresh 테스트 분리
ohah/zntc#2765생성 · 병합mergedmaintest(cli): preview basic 테스트 분리
ohah/zntc#2764생성 · 병합mergedmaintest(core): build result module code 테스트 분리
ohah/zntc#2763생성 · 병합mergedmaintest(core): HMR incremental graph 테스트 분리
ohah/zntc#2762생성 · 병합mergedmaintest(core): build plugin lifecycle 테스트 분리
ohah/zntc#2761생성 · 병합mergedmaintest(core): browserslist build 테스트 분리
ohah/zntc#2760생성 · 병합mergedmaintest(cli): app build HTML asset 테스트 분리
ohah/zntc#2759생성 · 병합mergedmaintest(core): real libraries 테스트 분리
ohah/zntc#2758생성 · 병합mergedmaintest(core): vite plugin 로더 테스트 분리
ohah/zntc#2757생성 · 병합mergedmaintest(cli): serve 테스트 분리
ohah/zntc#2756생성 · 병합mergedmaintest(cli): format 테스트 분리
ohah/zntc#2755생성 · 병합mergedmaintest(cli): 함수형 config 테스트 분리
ohah/zntc#2754생성 · 병합mergedmaintest(cli): env 테스트 분리
ohah/zntc#2753생성 · 병합mergedmaintest(cli): watch 테스트 분리
ohah/zntc#2752생성 · 병합mergedmaintest(cli): transpile 테스트 분리
ohah/zntc#2751생성 · 병합mergedmaintest(cli): app dev server 테스트 분리
ohah/zntc#2750생성 · 병합mergedmaintest(cli): app dev HMR 테스트 분리
ohah/zntc#2749생성 · 병합mergedmaintest(cli): config 테스트 분리
ohah/zntc#2748생성 · 병합mergedmaintest(cli): RN dev input 테스트 분리
ohah/zntc#2747생성 · 병합mergedmaintest(cli): app builder styles 테스트 분리
ohah/zntc#2746생성 · 병합mergedmaintest(cli): tsconfig 테스트 분리
ohah/zntc#2745생성 · 병합mergedmaintest(cli): bundle 테스트 분리
ohah/zntc#2744생성 · 병합mergedmaintest(core): output hooks 테스트 분리
ohah/zntc#2743생성 · 병합mergedmaintest(core): build options batch E 테스트 분리
ohah/zntc#2742생성 · 병합mergedmaintest(core): plugin advanced 테스트 분리
ohah/zntc#2741생성 · 병합mergedmaintest(core): 공통 테스트 helper 분리
ohah/zntc#2740생성 · 병합mergedmaintest(core): edge combination 테스트 분리
ohah/zntc#2739생성 · 병합mergedmaintest(core): core API 테스트 분리
ohah/zntc#2738생성 · 병합mergedmaintest(core): vite hook 반환값 테스트 분리
ohah/zntc#2737생성 · 병합mergedmaintest(core): edge case 테스트 분리
ohah/zntc#2736생성 · 병합mergedmaintest(core): build options exposure 테스트 분리
ohah/zntc#2735생성 · 병합mergedmaintest(core): plugin sourcemap 테스트 분리
ohah/zntc#2734생성 · 병합mergedmaintest(core): plugin onLoad loader 테스트 분리
ohah/zntc#2733생성 · 병합mergedmaintest(core): watch sourcemap basic 테스트 분리
ohah/zntc#2732생성 · 병합mergedmaintest(core): define alias 테스트 분리
ohah/zntc#2731생성 · 병합mergedmaintest(core): watch sourcemap rebuild 테스트 분리
ohah/zntc#2730생성 · 병합mergedmaintest(core): split watch update tests
ohah/zntc#2729생성 · 병합mergedmaintest(core): split option combination tests
ohah/zntc#2728생성 · 병합mergedmaintest(core): split runtime auto polyfill tests
ohah/zntc#2727생성 · 병합mergedmaintest(core): split build sync tests
ohah/zntc#2726생성 · 병합mergedmaintest(core): split watch lifecycle tests
ohah/zntc#2725생성 · 병합mergedmaintest(core): split hmr perf tests
ohah/zntc#2724생성closedmaindebug(test262): trace await-expr-regexp.js OS discrepancy
ohah/zntc#2723생성 · 병합mergedmaintest(core): split build plugin tests
ohah/zntc#2722생성 · 병합mergedmaintest(core): split vite plugin adapter tests
ohah/zntc#2721생성 · 병합mergedmaintest(core): split browserslist runtime polyfill tests
ohah/zntc#2720생성 · 병합mergedmaintest(core): split large app builder and watch tests
ohah/zntc#2719생성 · 병합mergedmainfix(semantic): predeclare nested-block function with correct kind
ohah/zntc#2718생성 · 병합mergedmaintest(core): split core and CLI test suites
ohah/zntc#2717생성 · 병합merged기능 브랜치: fix/test262-object-proto-computedci(test262): fail when conformance cases fail
ohah/zntc#2716생성 · 병합merged기능 브랜치: fix/test262-class-constructor-keysfix(semantic): ignore computed duplicate proto keys
ohah/zntc#2715생성 · 병합merged기능 브랜치: fix/test262-block-scope-redeclarationfix(semantic): exclude computed constructor keys
ohah/zntc#2714생성 · 병합mergedmainfix(semantic): catch block function redeclarations
ohah/zntc#2713생성 · 병합mergedmainrefactor(emitter): addModuleMappings traced/identity 통합 + struct args
ohah/zntc#2712생성 · 병합mergedmainrefactor(plugin): NapiPlugin/NapiSyncPlugin per-hook adapter 를 comptime generic 으로 통합
ohah/zntc#2711생성 · 병합mergedmainFix RN HMR loading toast
ohah/zntc#2710생성 · 병합mergedmainrefactor(plugin): async/sync dispatcher 를 generator 로 통합 + lifecycle 단일 채널
ohah/zntc#2709생성 · 병합mergedmainrefactor(plugin): TLS 채널을 HookContext out-param 으로 대체
ohah/zntc#2708생성 · 병합mergedmainfix(buildSync): sync JS 플러그인 지원
ohah/zntc#2707생성 · 병합mergedmainfeat(rn): dev-server 터미널 UI bungae 정합 + 콘솔 로그 v 토글
ohah/zntc#2706생성 · 병합mergedmainfix(sourcemap): 플러그인 transform map을 최종 sourcemap에 합성
ohah/zntc#2705생성 · 병합mergedmainfix(plugin): 플러그인 실패를 diagnostic으로 노출
ohah/zntc#2704생성 · 병합mergedmainperf(import-scanner): call expression callee tag dispatch
ohah/zntc#2703생성 · 병합mergedmainfix(playground): bundler codeSplitting/preserveModules 토글 시 format 자동 ESM (#1964)
ohah/zntc#2702생성 · 병합mergedmainrefactor(napi): generic unwrapNapi(T, env, value) helper — napi_unwrap boilerplate 통합
ohah/zntc#2701생성 · 병합mergedmainrestore: PR #2696/#2697 변경 재적용 — init overlay merge 시 의도치 않게 revert 됨
ohah/zntc#2700병합mergedmainfix(react-native): avoid default Babel transform pass