2026-05-13
날짜는 UTC 기준으로 나눴습니다(9월 22일부터는 한국 시간 기준). 커밋은 커미터 시각(committer date), PR은 생성·병합 시각으로 분류했습니다. 목록은 2026-10-06 KST에 GitHub에서 다시 조회해 보강했습니다. 공개 저장소의 기본 브랜치 활동만 포함합니다.
요약 (AI 작성)
zntc는 전날 열어 둔 RN 번들 디버깅 정리 PR #3141을 병합하며 커밋 40여 개를 한꺼번에 main에 반영했습니다. React Native 쪽은 Metro와 동작을 맞추는 수정이 중심이었습니다. Metro RN exports 조건과 main 필드 순서, node modules 경로 전달, prelude 전역 선택, guard 오류 의미를 Metro에 맞췄고, 혼합 CJS 모듈을 Metro처럼 감싸고 CJS default에 Babel interop을 쓰게 했습니다. ESM import는 default는 즉시 로드하고 함수 전용·값 import는 사용 지점으로 지연하며, 없는 named import에는 shim을 두도록 정리했습니다. transformer는 async 제어 흐름과 try 안의 return 다운레벨, 매개변수 프로퍼티 기본값, private auto-accessor 데코레이터, super 이전 화살표 함수의 this 캡처, private 헬퍼 이름 충돌을 고쳤고, 파서는 generic get/set 메서드와 TS 함수 타입 매개변수의 문맥 키워드 이름, Flow 반환 타입 문맥 복원, match 호출을 Flow match로 오인하던 문제를 바로잡았습니다. resolver는 . 지정자와 끝에 슬래시가 붙은 패키지 import를 처리하게 됐습니다.
이어 object_extensions 다운레벨의 단축 키 보존(#3144), stage3 accessor 저장소 이름 격리(#3145), tslib UMD와 헬퍼 이름이 겹치지 않게 하는 컴파일 타임 검사(#3146), Metro 호환 disableHierarchicalLookup resolver 옵션(#3148)이 병합됐고, buildRnBundleOverride 옵션 객체화와 쓰지 않는 Module.interop 제거, finalize·linker 정책 주석 정정이 뒤따랐습니다. 밤에는 호출 단위 프로파일링용 metadata·resolve·graph_io 감사 카테고리(#3157)와 새 모듈 경로 등록 때 dir-fd 캐시를 미리 데우는 최적화(#3158)가 들어왔습니다. RN 런타임 회귀를 고치는 #3156은 이날 열렸습니다.
블로그 저장소 ohah.github.io의 커밋 12개는 크론의 맞춤법 점검 표시와 요약 갱신이 대부분이고, development-2.mdx 문장부호와 development-5.mdx의 표기 수정이 포함됐습니다.
공개 커밋 66개, 해당일 생성 또는 병합된 PR 14개를 정리했습니다. PR 생성 13개·병합 13개는 같은 PR이 양쪽에 포함될 수 있습니다.
커밋
ohah/ohah.github.io
- chore: complete daily cron task - verified development-1.mdx spelling (2026-05-14 23:30 KST)
- chore: update 2026-05-13 activity summary (CRD + zntc PRs)
- cron: 2026-05-14 23:30 KST - CRON_CRD_WRITE.md update (docs/index.mdx verified)
- chore: cron CRD doc verification - tech-stack.mdx checked
- fix: correct 'Craby' to 'Caby' in development-5.mdx (spelling)
- chore: cron task completed - verified background.mdx spelling
- chore(cron): summarize 2026-05-13 activity
- chore(cron): summarize 2026-05-13 activity
- chore(cron): mark CRD write task completed (development-1.mdx verified)
- chore: update CRON_CRD_WRITE.md - verify development-3.mdx spelling (2026-05-13 19:30 KST)
- fix: punctuation in development-2.mdx
- chore(cron): update CRON_CRD_WRITE.md - verified development-2.mdx (2026-05-13 14:30)
ohah/zntc
- perf(graph): pre-warm dir-fd cache when registering a new module path
- feat(debug): add metadata/resolve/graph_io audit categories for per-call profiling
- refactor(test): extract formatLazyMarker helper for RN inlineRequires tests
- docs(linker): correct rationale for default ESM import eager policy
- docs(bundler): document mixed CJS branch order invariant in finalize
- chore(bundler): remove dead Module.interop helper
- refactor(core): options object for buildRnBundleOverride
- feat(resolver): add disableHierarchicalLookup option (Metro compat)
- refactor(generator): unify yield+return fast-path skip via helper
- fix(runtime-helpers): comptime drift guard for tslib UMD collisions
- fix(transformer): isolate stage3 accessor backing storage names
- fix(transformer): preserve shorthand key in object_extensions lowering
- test(transformer, semantic): tighten new regression assertions
- test(semantic): cover destructured parameter default visit branches
- test(transformer): cover dot member property name preservation edge cases
- fix(resolve): include import/require for Metro RN exports
- test(tsc): update parameter property snapshots
- fix(transformer): lower returns in async control flow
- fix(transformer): avoid private helper name collisions
- fix(linker): bind cjs re-export namespace members
- fix(parser): parse generic get and set methods
- fix(rn): forward decorator build options
- fix(transformer): lower parameter property defaults
- fix(resolve): match Metro RN export conditions
- fix(transformer): lower async try returns
- fix(transformer): handle private auto-accessor decorators
- fix(rn): keep default esm imports eager
- fix(rn): align prelude global selection with Metro
- test(rn): accept expression guard close form
- fix(semantic): visit destructured parameter defaults
- fix(rn): defer esm value imports at use sites
- fix(transformer): expand renamed block shorthand values
- fix(rn): shim missing named imports
- fix(bundler): throw optional missing requires
- fix(transformer): avoid pre-super arrow this capture
- fix(rn): defer function-only esm imports
- fix(rn): assign exported destructuring in esm wrappers
- fix(rn): keep entry dependency guard nested
- fix(rn): isolate private field helper name
- fix(rn): use Babel interop for CJS defaults
- fix(rn): wrap mixed CJS modules like Metro
- fix(transformer): preserve dot member property names
- fix(transformer): free block_rename_stack new_name slices
- fix(rn): preserve Metro guard error semantics
- fix(rn): match Metro main field order
- fix(rn): forward Metro node modules paths
- fix(resolver): treat dot specifier as current directory
- fix(parser): avoid treating match calls as Flow match
- fix(profile): guard counters on limited atomic targets
- fix(bundler): use shard index width after modulo
- fix(parser): restore Flow return type context before arrow body
- fix(parser): accept contextual names in TS function type params
- test(resolver): cover workspace trailing slash imports
- fix(resolver): handle trailing slash package imports
PR (해당일 생성/머지)
상태는 조회 시점 기준입니다. merged는 아래 대상 브랜치에 병합됐다는 뜻이며, 기능 브랜치 병합과 main 반영을 구분합니다. 같은 PR이 생성일과 병합일 양쪽 기록에 나타날 수 있습니다.