2026-05-22
날짜는 UTC 기준으로 나눴습니다(9월 22일부터는 한국 시간 기준). 커밋은 커미터 시각(committer date), PR은 생성·병합 시각으로 분류했습니다. 목록은 2026-10-06 KST에 GitHub에서 다시 조회해 보강했습니다. 공개 저장소의 기본 브랜치 활동만 포함합니다.
요약 (AI 작성)
zntc는 rollup 호환 플러그인 컨텍스트를 하루 동안 넓혔습니다. this.warn·this.error(#3642), ModuleInfo.meta와 자기 모듈 한정 this.getModuleInfo(#3643), external 판정을 포함한 this.resolve(#3644)를 넣고, resolveId·load의 this 바인딩 누락과 watch warning 누수도 함께 고쳤습니다. 이어 this.emitFile로 에셋을 모으고 this.getFileName과 이름만 준 에셋 emit을 지원했으며(#3650, #3652), vitePlugin()에도 같은 기능을 맞췄습니다(#3654). type: chunk emit은 설계 RFC(#3657) 뒤 이미 그래프에 있는 모듈을 별도 chunk로 내는 경우와 새 모듈을 chunk로 내는 경우(#3659, #3661), chunk 참조의 파일 이름 조회, 상대·bare specifier 해석, 명시한 fileName 그대로 출력(#3668)까지 이어졌습니다. 같은 범위를 다른 방식으로 올린 #3662는 닫았습니다.
후속 이슈에서는 resolveId·transform 훅의 ModuleInfo.meta 병합(#3666), syntheticNamedExports와 그 re-export 전달(#3667, #3669), implicitlyLoadedAfterOneOf 관계 배선과 chunk 비트 축약(#3670, #3671)을 구현했고, watch 증분 빌드에서 새로 emit된 chunk 모듈이 재파싱 목록에서 빠지던 문제를 고쳐 e2e 회귀 가드를 붙였습니다(#3673).
이 밖에 --minify가 esbuild처럼 식별자 mangling을 함께 켜도록 바꾸고(#3651), whitespace minify 때 RN polyfill 내용도 줄이며 polyfill 변환 결과의 메모리 누수를 막았습니다(#3653, #3656). dev 서버는 sass partial이 바뀌면 @import한 루트 scss를 다시 컴파일하도록 역의존을 추적하고(#3675), innerGraph dead-store DCE를 제어 흐름 블록 안으로 넓혔으며(#3677), 렉서의 한 줄·여러 줄 주석 스캔에 SIMD를 적용했습니다(#3678). RN 예제에는 Re.pack 벤치마크 설정을 추가했고(#3645), 백로그는 측정 결과에 따라 stale 항목을 두 차례 정리했습니다. 블로그 저장소 ohah.github.io의 커밋 7개는 크론의 문서 점검 표시와 요약 갱신 커밋입니다.
공개 커밋 43개, 해당일 생성 또는 병합된 PR 33개를 정리했습니다. PR 생성 33개·병합 32개는 같은 PR이 양쪽에 포함될 수 있습니다.
커밋
ohah/ohah.github.io
- cron: 2026-05-23 08:30 CRD write - verified development-3.mdx
- chore(cron): mark CRON_CRD_WRITE.md task as completed for 2026-05-23 01:30 KST
- docs: update today-commit 2026-05-22 summary
- docs: update CRON_CRD_WRITE.md - verified spelling in development.mdx
- fix: correct CRON task file reference (zts → hwpjs/development-3.mdx)
- chore: verify docs/index.mdx for spelling (2026-05-22)
- cron: verify crd/development-5.mdx spelling (lint passed, no errors or warnings)
ohah/zntc
- perf(lexer): 주석 스캔(single/multi-line)을 SIMD 로 확장 (ROADMAP SIMD)
- feat(bundler): innerGraph dead-store DCE 를 control-flow 블록 내부로 확장 (b1)
- docs: stale 정리 — CSS 처리 완료 반영 + dead-lever(innerGraph/lazyBarrel) 종결 + sass dep tracking 해결
- fix(dev): sass @import reverse-dep tracking — partial 변경 시 root scss 재컴파일
- test(watch): watch 증분 빌드 신규 emit chunk reparsed e2e 회귀 가드 (#3664)
- fix(bundler): watch 증분 빌드에서 신규 emit chunk 모듈 reparsed 누락 (#3664)
- feat(bundler): implicitlyLoadedAfterOneOf chunk bit-collapse (#3664 P3-(2))
- feat(plugin): implicitlyLoadedAfterOneOf 관계 데이터 배선 (#3664 P3)
- feat(plugin): syntheticNamedExports re-export forwarding (#3664 P2 follow-up)
- feat(plugin): emit chunk 명시 fileName verbatim 출력 (#3664, #1880 PR7-2d)
- feat(plugin): syntheticNamedExports (#3664 P2)
- feat(plugin): ModuleInfo.meta resolveId/transform hook merge (#3664 P1)
- feat(plugin): emit chunk 상대/bare specifier resolution (#1880 PR7-2b-ii follow-up)
- feat(plugin): this.getFileName(chunkRef) + emit chunk name (#1880 PR7-2c)
- feat(plugin): this.emitFile chunk B-ii — 신규 모듈 chunk emit (#1880 PR7-2b-ii)
- chore: .gitignore 에 NAPI/pack 빌드 산출물 추가
- feat(plugin): this.emitFile chunk B-i — 이미-graph 모듈 별도 chunk (#1880 PR7-2b-i)
- test(bundler): mangle/polyfill 엣지 케이스 회귀 가드 추가
- docs(rfc): emit chunk 생존 메커니즘 정정 (tree_shaker entry_set)
- docs(rfc): plugin this.emitFile type:chunk 설계 (#1880 PR7-2b)
- fix(bundler): polyfill transpile 결과 owned 필드 누수 + 실패 진단/개행 보강
- feat(plugin): EmitStore chunk 요청 수집 토대 (#1880 PR7-2a)
- feat(plugin): vitePlugin() emitFile / getFileName parity (#1880 PR7)
- fix(bundler): minify_whitespace 시 RN polyfill content 도 minify (#3649)
- feat(plugin): this.getFileName + name-only asset emit (#1880 PR6)
- feat(plugin): this.emitFile asset 수집 (#1880 PR5)
- fix(transpile): --minify 가 식별자 mangling 함의 (esbuild 호환, #3648)
- chore: switch pre-PR review gate to /code-review max
- feat(examples): add Re.pack benchmark setup to RN examples
- fix(plugin): this.resolve code-review — external 판정 + test3 vacuous (PR4)
- feat(plugin): this.resolve plugin context (#1880 PR4)
- feat(plugin): ModuleInfo.meta + this.getModuleInfo (self-only) (#1880 PR2+PR3)
- fix(plugin): resolveId/load this 바인딩 누락 + watch warning 누수 (code-review)
- feat(plugin): this.warn / this.error plugin context (#1880 PR1)
- docs(backlog): lexer 마이크로 항목 measure 결과 반영 (3부류 ROI 0)
- docs(backlog): stale 항목 정리 라운드2 (TS 타입 섹션 전체 + #17/#74)
PR (해당일 생성/머지)
상태는 조회 시점 기준입니다. merged는 아래 대상 브랜치에 병합됐다는 뜻이며, 기능 브랜치 병합과 main 반영을 구분합니다. 같은 PR이 생성일과 병합일 양쪽 기록에 나타날 수 있습니다.