2026-04-09

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

요약 (AI 작성)

zntc는 HMR과 소스맵을 RN DevTools에서 제대로 보이게 하는 데 집중했습니다. dev 모드의 모듈 간 참조를 __zts_modules 레지스트리 조회로 바꾸고 업데이트 때 팩토리를 실제로 실행하게 했으며(#937, #938), react-refresh는 Bun symlink 경로 해석과 require 노출을 거쳐 $RefreshReg$ 첫 호출 때 lazy하게 찾는 방식으로 정리했습니다(#941~#943). 이어 HMR을 롤리팝 패턴으로 재설계해 eval 기반 실행, 모듈별 $RefreshReg$ 저장·복원, 50ms debounce 갱신을 도입했고(#944, #947), WS 프로토콜에 update-start/update-done 메시지를 더했으며(#946), 두 번째 변경부터 full reload가 나던 그래프 변경 감지를 경로 집합 비교로 고쳤습니다(#952).

소스맵은 가상 모듈 ID의 null byte가 JSON을 깨던 문제(#948), __esm 래핑 모듈의 매핑 누락(#949), 파서 lookahead 복원 때 줄 오프셋이 남아 줄 번호가 밀리던 문제(#955)를 고쳤습니다. sources 경로는 상대 경로로 바꾼 뒤 RN용 절대 경로 출력을 넣었다 되돌리는 과정을 거쳤고(#950, #958, #959, #960), 들여쓰기된 줄의 column 0 매핑(#957)과 banner·폴리필·런타임 prologue 전체를 하나의 가상 소스로 매핑하고 x_google_ignoreList에 올리는 처리(#961, #962)로 콘솔이 폴리필 줄을 가리키던 문제를 없앴습니다.

그 밖에 진단에 에러 코드 120개를 등록하고(#934) 문서 사이트에 에러 코드 125개 페이지와 Playground 재현 링크를 붙였습니다(#935, #936). 플러그인 transform 훅은 Rolldown처럼 codegen 뒤가 아니라 파싱 전 그래프 단계에서 돌게 옮기고 응답의 code 필드도 받도록 했습니다(#965~#968). ROADMAP과 벤치마크 데이터도 새 실측값으로 갱신했습니다(#963).

bungae는 ZTS dev 서버를 Metro에 가깝게 다듬었습니다. multipart/mixed 응답과 진행률로 "Loading from Metro" 표시와 사라지지 않던 Downloading 100% 바를 정리했고(#44, #50, #51), Metro 호환 sourceMappingURL·sourceURL과 jscSafeUrl 인코딩, /symbolicate 라우트 우선 처리(#46, #53), node_modules 에셋 경로와 AssetRegistry 이중 specifier로 이미지가 안 보이던 문제(#47~#49)를 고쳤습니다. Metro 스타일 터미널 출력(#55), 빌드 시간 표시, 에러 오버레이와 앱 콘솔의 터미널 전달, bundle 명령 별칭, dev 서버 네트워크 통합 테스트(#52)도 추가했습니다.

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

커밋

ohah/bungae

ohah/zntc

PR (해당일 생성/머지)

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

저장소PR해당일 활동상태대상 브랜치제목
ohah/bungae#55생성 · 병합mergedmainrefactor: Metro-style terminal output and network test app
ohah/bungae#53생성 · 병합mergedmainfix(zts-server): symbolicate 라우트를 dev middleware보다 먼저 처리
ohah/bungae#52생성 · 병합mergedmaintest(zts-server): ZTS dev server 네트워크 통합 테스트
ohah/bungae#51생성 · 병합mergedmainfix(zts-bundler): Downloading 100% 로딩 바 미숨김 수정
ohah/bungae#50생성 · 병합mergedmainfix(zts-server): Downloading 100% 로딩 바가 사라지지 않는 문제 수정
ohah/bungae#49생성 · 병합mergedmainfix(asset-plugin): AssetRegistry 이중 specifier 통합 — 이미지 미표시 수정
ohah/bungae#48생성 · 병합mergedmaintest(asset-plugin): httpServerLocation 단위 테스트 + computeHttpServerLocation export
ohah/bungae#47생성 · 병합mergedmainfix(asset-plugin): httpServerLocation에서 leading ../ 제거
ohah/bungae#46생성 · 병합mergedmainfix(zts-server): Metro 호환 sourceMappingURL + sourceURL 삽입
ohah/bungae#45생성 · 병합mergedmainfix(zts-server): 파일 수정 없이 저장 시 불필요한 full reload 제거
ohah/bungae#44생성 · 병합mergedmainfix(zts-server): multipart/mixed 응답으로 Loading from Metro 타이틀 제거
ohah/zntc#968생성 · 병합mergedmainfix(plugin): transform 훅 응답에서 code 필드 인식
ohah/zntc#967생성 · 병합mergedmainrefactor(plugin): parseModule 내 PluginRunner 초기화 통합
ohah/zntc#965생성 · 병합mergedmainfeat(plugin): transform 훅을 파싱 전 graph 레벨로 이동
ohah/zntc#963생성 · 병합mergedmaindocs: ROADMAP + 벤치마크 데이터 2026-04-10 실측 반영
ohah/zntc#962생성 · 병합mergedmainfix(sourcemap): prologue 전체를 <runtime>으로 매핑 + x_google_ignoreList
ohah/zntc#961생성 · 병합mergedmainfix(sourcemap): polyfill identity mapping + x_google_ignoreList
ohah/zntc#960생성 · 병합mergedmainfix(sourcemap): RN 번들 소스맵 경로 + 매핑 수정
ohah/zntc#959생성 · 병합mergedmainrevert: RN 소스맵 절대 경로 출력 되돌리기 (#958)
ohah/zntc#958생성 · 병합mergedmainfix(sourcemap): RN 플랫폼에서 Metro 호환 절대 경로 소스맵 출력
ohah/zntc#957생성 · 병합mergedmainfix(sourcemap): ESM 래핑 모듈의 column 0 매핑 추가 (RN DevTools 콘솔)
ohah/zntc#956생성 · 병합mergedmaintest(sourcemap): 줄 번호 정확도 통합 테스트 추가
ohah/zntc#955생성 · 병합mergedmainfix(sourcemap): lookahead 시 line_offsets 중복으로 줄 번호 밀림 수정 (#954)
ohah/zntc#953생성 · 병합mergedmainfix(sourcemap): RN 번들 소스맵 경로 + 매핑 수정
ohah/zntc#952생성 · 병합mergedmainfix(hmr): graph_changed 감지를 경로 SET 비교로 개선 (#951)
ohah/zntc#950생성 · 병합mergedmainfix(sourcemap): sources 경로를 상대 경로로 변환
ohah/zntc#949생성 · 병합mergedmainfix(sourcemap): ESM 래핑 모듈의 소스맵 매핑 생성
ohah/zntc#948생성 · 병합mergedmainfix(sourcemap): sources 배열의 제어 문자 JSON 이스케이프 누락 수정
ohah/zntc#947생성 · 병합mergedmainfix(hmr): eval 후 __esm factory 미실행 버그 수정
ohah/zntc#946생성 · 병합mergedmainfeat(hmr): WS 프로토콜에 update-start/update-done 메시지 추가
ohah/zntc#945생성 · 병합mergedmainstyle(hmr): 코드 주석에서 내부 레퍼런스 코드네임 제거
ohah/zntc#944생성 · 병합mergedmainrefactor(hmr): HMR 재설계
ohah/zntc#943생성 · 병합mergedmainfix(hmr): react-refresh lazy resolve (polyfill 시점 문제 해결)
ohah/zntc#942생성 · 병합mergedmainfix(hmr): RN에서 react-refresh를 require()로 글로벌 노출
ohah/zntc#941생성 · 병합mergedmainfix(hmr): react-refresh symlink 경로 해석 수정 (Bun)
ohah/zntc#940생성 · 병합mergedmaindebug(hmr): react-refresh 탐색 경로 디버깅 로그
ohah/zntc#939생성 · 병합mergedmainfix(hmr): RN dev mode에서 __ReactRefresh 글로벌 설정 + 팩토리 실행
ohah/zntc#938생성 · 병합mergedmainfix(hmr): __zts_apply_update에서 모듈 팩토리 실제 실행 추가
ohah/zntc#937생성 · 병합mergedmainfix(hmr): dev 모드 모듈 참조를 __zts_modules 레지스트리 lookup으로 변경
ohah/zntc#936생성 · 병합mergedmaindocs: 73개 에러 코드 Playground 링크 + 사이드바 중복 제거
ohah/zntc#935생성 · 병합mergedmaindocs: 125개 에러 코드 문서 + Playground 옵션 공유
ohah/zntc#934병합mergedmainfeat(diagnostic): 120개 에러 코드 전수 등록