2026-03-12
날짜는 UTC 기준으로 나눴습니다(9월 22일부터는 한국 시간 기준). 커밋은 커미터 시각(committer date), PR은 생성·병합 시각으로 분류했습니다. 목록은 2026-10-06 KST에 GitHub에서 다시 조회해 보강했습니다. 공개 저장소의 기본 브랜치 활동만 포함합니다.
요약 (AI 작성)
cheolsu-proxy는 PR 서른네 개를 main에 병합하며 하루 대부분을 구조 정리에 썼습니다. 오전에는 데스크톱 proxy_v2.rs, 데몬 protocol.rs, MCP 서버 main.rs를 기능별 모듈로 나누고 intercept.rs·session.rs·store.rs 유닛 테스트를 붙였으며(#199부터 #204), 이어 hybrid_tls_handler.rs·client_handler.rs·tls_client.rs·diff.rs·engine.rs·detection.rs 등 큰 파일을 서브모듈로 쪼개는 작업을 여러 PR로 병합했습니다(#205부터 #214). 같은 내용을 일부만 담은 #208은 닫혔습니다. 인증서 생성의 unwrap·expect를 Result와 폴백으로 바꾸고(#215), 데몬 컨텍스트의 채널을 묶어 깊은 중첩을 풀었으며(#216), macOS에서 설치한 CLI·MCP가 OpenSSL dylib를 찾지 못하던 문제를 고쳤습니다(#217).
오후에는 패닉 방지와 타임아웃, 바디 크기 제한, atomic ordering, graceful shutdown 등 프록시 견고성 개선(#218, #219)에 이어, 정규식 캐시의 LRU 전환, 매직 넘버 상수화, Response::builder 헬퍼, handle_command 인자를 묶은 CommandContext, 불필요한 .clone() 제거 같은 작은 리팩터링 PR이 한꺼번에 병합됐습니다(#220부터 #228). 관측성·보안·성능 종합 개선(#229)과 테스트 헬퍼 통합·데드 코드 제거(#230) 뒤에는 CI에서 테스트 CA 인증서를 직접 만들고 Linux 저장소 지원과 macOS 테스트를 정리했습니다(#231). 저녁에는 프런트엔드 중복 제거(#232)와 race condition·stale closure·조용히 삼키던 에러 수정(#233)을 병합했고, Grafana Loki식 쿼리 빌더 UI와 여러 따옴표를 지원하는 쿼리 파서 커밋도 들어왔습니다. 웹소켓 메시지 표 가상 스크롤 #234는 이날 열려 다음 날 병합됐습니다.
React Native 번들러 bungae는 OXC·Rolldown 기반 번들러 1단계로 Rolldown 핵심 번들링, 플랫폼 해석·Flow 제거·JSON·에셋 플러그인, 트리 셰이킹과 Hermes 바이트코드 컴파일을 병합하고(#20), 기본 번들러를 graph에서 oxc로 바꿨습니다. 이어 2단계로 Rolldown DevEngine 기반 개발 서버와 HMR, React Refresh를 넣고, Hermes가 읽지 못하는 문법을 SWC로 ES5로 낮추는 hermes-compat 플러그인과 RN 폴리필·전역 설정을 붙였습니다(#21). DevEngine HMR과 Hermes 호환을 이어 가는 #22는 이날 열려 3월 14일에 병합됐습니다.
ohah.github.io에는 크론의 맞춤법 점검 상태 기록과 이날 요약 추가 커밋 28개가 남았습니다.
공개 커밋 148개, 해당일 생성 또는 병합된 PR 39개를 정리했습니다. PR 생성 39개·병합 36개는 같은 PR이 양쪽에 포함될 수 있습니다.
커밋
ohah/bungae
- style: format CLAUDE.md
- feat(oxc-bundler): add BUNGAE_BUNDLER and BUNGAE_VERSION globals
- docs: document Rolldown runtime compat issues and upstream contribution plan
- fix(hermes-compat): add warning when __defProp patch fails to match
- fix(oxc-bundler): patch Rolldown runtime __defProp for RN dev mode compat
- refactor(oxc-bundler): use Rolldown intro/outro to wrap chunk in IIFE
- fix(oxc-bundler): downlevel RN polyfills to ES5 with SWC for Hermes compat
- fix(oxc-bundler): load RN polyfills from rn-get-polyfills
- fix(oxc-bundler): add ErrorUtils polyfill to prelude
- fix(oxc-bundler): prepend full prelude to bundle output
- fix(oxc-bundler): add global = globalThis for React Native compatibility
- fix(hermes-compat): use SWC renderChunk with ES5 target
- fix(hermes-compat): use transform hook instead of renderChunk
- fix(oxc-server): return plain text for /status endpoint
- fix(hermes-compat): use SWC loose mode to avoid Hermes parse error
- docs(oxc-bundler): update docs to reflect hermes-compat solving #private
- docs(config): add oxc-bundler documentation and DevEngine limitations
- feat(oxc-bundler): add hermes-compat plugin and rewrite dev-engine
- fix(oxc-bundler): remove devMode.implement to fix runtime parse error
- feat(oxc-bundler): implement Phase 2 - Dev Server + HMR
- chore(deps): add @rolldown/binding-darwin-arm64 explicitly
- chore(example): switch ExampleApp bundler config to oxc
- feat(bundler): change default bundler from graph to oxc
- feat(oxc-bundler): Phase 1 - Rolldown core bundling with Hermes integration (#20)
ohah/cheolsu-proxy
- chore(desktop): i18n 카탈로그 라인 번호 업데이트
- refactor(desktop): FSD 구조 준수 — features 내부 모듈 직접 import 제거
- feat(desktop): 쿼리 파서 다양한 따옴표 지원 (", ', `) 및 이스케이프 처리
- test(desktop): 쿼리 파서/시리얼라이저 테스트 대폭 보강
- style(desktop): 쿼리 빌더 필드 드롭다운 너비 확장 (w-24 → w-28)
- style(desktop): URL 입력 플레이스홀더 색상 구분 및 정규식 예제 추가
- feat(desktop): 쿼리 빌더 행별 AND/OR 토글 지원 및 UI 개선
- fix(desktop): 쿼리 빌더 UI 레이아웃 변경 — 헤더 깨짐 방지
- fix(desktop): query-serializer no-plusplus lint 에러 수정
- style(desktop): oxfmt 포맷 자동 수정
- feat(desktop): Grafana Loki 스타일 쿼리 빌더 UI 추가
- fix(desktop): 리뷰 반영 — catch 핸들링 개선 및 테스트 런타임 변경
- chore(desktop): i18n 카탈로그 라인 번호 업데이트
- test(desktop): sanitizeHopByHopHeaders 유닛 테스트 추가
- fix(desktop): silent .catch(() => {}) 패턴에 에러 로깅 추가
- fix(desktop): 비동기 로직의 race condition 및 stale closure 수정
- fix(desktop): transaction-store 테스트에서 transactionIds 초기화 누락 수정
- fix(desktop): 코드 리뷰 이슈 반영
- style(desktop): http-headers 포맷 수정
- refactor: 프론트엔드 중복 코드 제거 및 컴포넌트 분리
- fix: websocket http 테스트를 HTTP CONNECT 표준 패턴으로 변경
- fix: 서버 인증서에 EKU(serverAuth) 추가 — macOS native-tls 테스트 통과
- fix: websocket http/https_native_tls 테스트를 CI에서 ignore 처리
- fix: CI에서 테스트 CA 인증서 자동 생성 및 macOS 테스트 추가
- fix: macOS 전용 워크플로우 제거 — #[ignore] 테스트 대부분이 알려진 환경 문제
- fix: macOS CI에 OPENSSL_DIR 설정 — homebrew openssl 사용
- fix: websocket http 테스트를 macOS에서만 실행 — Linux에서 native-tls 400 에러
- fix: storage 모듈에 Linux 지원 추가 — CI(ubuntu) 테스트 통과
- fix: .gitignore 예외 복원 및 CI 인증서 생성 스텝에 mkdir -p 추가
- fix: cheolsu-proxy.cnf를 git 추적 — CI 인증서 생성에 필요
- fix: CI에서 테스트 CA 인증서를 직접 생성하도록 변경
- feat: macOS 전용 테스트 GitHub Actions 워크플로우 추가
- fix: .gitignore에 테스트 CA 인증서 예외 추가 — CI 컴파일에 필요
- fix: CI에 proxyapi_v2 테스트 추가 및 기존 실패 테스트 수정
- refactor: start_test_server도 common 헬퍼로 통합 — HTTP 서버 시작 로직 중복 제거
- fix: common/mod.rs에서 불필요한 #![allow(dead_code)] 제거
- refactor: start_proxy_server를 common 헬퍼로 통합 — 프록시 시작 로직 중복 제거
- fix: start_proxy_server에 graceful shutdown 연결 — rx가 미사용되던 버그 수정
- fix: 테스트 common 모듈 컴파일 에러 수정 — gen_server_config Result 처리 추가
- fix: 데드코드 제거 — unused imports, deprecated 함수, 미사용 테스트 헬퍼 정리
- fix: 리뷰 반영 — replay warn→debug, pkcs12 canonicalize 추가
- refactor: 관측성·안정성·보안·성능 종합 개선
- refactor: 핸들러 모듈의 불필요한 .clone() 호출 제거
- fix: 리뷰 반영 — is_some_and 적용, Method 비교 통일 및 주석 보강
- refactor: handle_request/handle_response 함수에서 개별 관심사를 별도 함수로 분리
- refactor: intercept 테스트 파일을 논리적 모듈로 분리
- fix: 리뷰 반영 — CommandState 이름 변경, send_message 헬퍼 추가
- refactor: handle_command 함수의 15개 파라미터를 CommandContext 구조체로 그룹화
- refactor: 매직 넘버를 명명된 상수로 추출
- fix: 리뷰 반영 — 빌더 에러 로깅 추가, import 경로 단축
- refactor: Response::builder 반복 패턴을 헬퍼 함수로 추출
- refactor: watch 채널 생성 보일러플레이트를 팩토리 함수로 통합
- refactor: 정규식 캐시를 LRU 방식으로 변경 — 캐시 가득 시 전체 삭제 대신 최근 미사용 항목부터 제거
- fix: 리뷰 반영 — DEFAULT_SSL_PORT 상수 일관 적용
- refactor: SSL 패스스루 도메인 목록 문서화 및 매직 넘버 상수 추출
- fix: 리뷰 반영 — 카운팅 단순화, catch_unwind 제거, ordering 일관성, 주석 보강
- fix: 프록시 견고성 5가지 개선 — 이벤트 카운팅, 바디 크기 제한, atomic ordering, 패닉 방지, graceful shutdown
- fix: 테스트 컴파일 에러 수정 — TlsVersion import 추가, openssl-ca feature 게이트
- fix: 리뷰 반영 — 로그 폭풍 방지, 에러 레벨 조정, timeout 상수화
- chore: 미사용 review-apply 커맨드 제거
- fix: 프록시 안정성 개선 — panic 방지, timeout 추가, 에러 처리 강화
- fix: macOS CLI/MCP 설치 시 OpenSSL dylib 누락으로 실행 불가 수정
- fix: apply_map_remote 테스트에서 URI 정규화 반영
- fix: 리뷰 반영 — URI 이중 파싱 제거 및 순수 함수 단위 테스트 추가
- refactor: DaemonContext 채널 그룹핑 및 깊은 중첩 플래트닝
- fix: 리뷰 반영 — 폴백 panic 제거, expect 정리, 로그 포맷 통일
- refactor: 인증서 생성 시 unsafe unwrap/expect를 Result 반환 + 폴백 패턴으로 개선
- refactor(proxyapi_v2): hybrid_tls_handler/mod.rs를 기능별 서브모듈로 분리
- refactor(proxy_daemon): handler/http.rs를 기능별 서브모듈로 분리
- refactor(scripting): engine.rs를 기능별 서브모듈로 분리
- fix: 리뷰 반영 — 이중 #[cfg(test)] 가드 제거
- refactor(proxy_daemon): protocol/mod.rs 테스트를 도메인별 서브모듈로 분리
- refactor(proxy_v2_models): detection.rs를 기능별 서브모듈로 분리
- fix: 리뷰 반영 — 가시성 축소 및 glob re-export 제거
- refactor: 8개 거대 파일을 기능별 서브모듈로 분리
- refactor(tui): forms.rs를 기능별 서브모듈로 분리
- refactor(proxyapi_v2): proxy/internal.rs를 기능별 서브모듈로 분리
- refactor(proxyapi_v2): hybrid_tls_handler.rs를 기능별 서브모듈로 분리
- refactor(proxy_daemon): intercept 모듈 테스트를 별도 파일로 분리
- refactor(proxy_daemon): client_handler.rs를 기능별 서브모듈로 분리
- refactor(proxy_daemon): tls_client.rs를 기능별 서브모듈로 분리
- refactor(proxy_daemon): diff.rs를 기능별 서브모듈로 분리
- fix: 리뷰 반영 — regex 캐시 주석 보강, 빈 데이터 압축 테스트 추가
- refactor(proxy_daemon): session.rs를 기능별 서브모듈로 분리 및 테스트 추가
- refactor: 거대 파일을 기능별 서브모듈로 분리
- fix: i18n 카탈로그 라인 번호 업데이트
- fix: 리뷰 반영 및 CI 포맷팅 수정
- refactor: 코드 유지보수성 및 타입 안전성 개선
- test(mcp_server): store.rs 유닛 테스트 추가
- test(proxy_daemon): session.rs 유닛 테스트 추가
- test(proxy_daemon): intercept.rs 유닛 테스트 추가
- refactor(mcp_server): main.rs 거대 파일을 기능별 모듈로 분리
- refactor(proxy_daemon): default_true 함수를 protocol/mod.rs로 이동
- refactor(proxy_daemon): protocol.rs 거대 파일을 기능별 모듈로 분리
- refactor(desktop): proxy_v2.rs 거대 파일을 기능별 모듈로 분리
- chore: 불필요한 문서 및 pnpm-workspace 파일 정리
ohah/ohah.github.io
- crd-write: add entry for 2026-03-13 08:30AM recheck
- crond: final verification pass for all mdx files
- CRD: fix typo in 124차 업데이트 (업데이터 → 업데이트)
- 크론 주기적 재확인: 전체 대상 .mdx 파일(26개)에 대한 맞춤법 교정 완료 상태 최종 확인. 추가 맞춤법 교정 필요 없음.
- chore(crd-write): confirm all .mdx files passing spell-check; 123rd cron update
- cron: reconfirm all mdx files - 2026-03-13 2:30 AM
- CRD: cron recheck - all mdx files already checked off
- docs(CRON_CRD_WRITE): 120차 업데이트 - 모든 mdx 파일 검사 완료 상태 확인. 2026-03-13 1:30 AM (Asia/Seoul)
- docs: cron periodic recheck 2026-03-13 1:00 AM
- chore: CRD write checklist - updated as completed and verified lint passing
- docs: add AI summary for 2026-03-12 commits
- cron: re-check CRON_CRD_WRITE.md (nothing to edit, all .mdx already checked)
- 크론: 모든 mdx 파일 맞춤법 교정 완료 상태 재확인 (11:30 PM)
- cron: reconfirm all .mdx files (no spelling issues found)
- docs: mark docs/index.mdx as checked in cron crd-write schedule
- cron: docs/index.mdx spell check - no corrections needed
- cron: 116차 업데이트 - 2026-03-12 8:30 PM (Asia/Seoul) - 전체 mdx 파일 맞춤법 검사 완료 기록
- chore(cron): 115차 업데이트 - 모든 mdx 파일 맞춤법 검사 완료
- crd: update cron status after 2026-03-12 7:00 PM (Asia/Seoul) re-check - all mdx files spell-checked
- 2026-03-12 18:02 - 크론 주기적 재확인 실행. 모든 대상 .mdx 파일이 이미 검사 완료된 상태로 추가 맞춤법 교정 작업 없음. Lint 통과, CRON_CRD_WRITE.md 상태만 갱신하여 커밋.
- 🤖 cron: 맞춤법 교정 사이클 112 (5:00 PM, 2026-03-12) - CRON_CRD_WRITE.md 상태만 갱신
- chore(cron): add 111th periodic check entry (2026-03-12 2:30 PM)
- cron: 업데이트 - 크론 주기적 재확인 실행
- crondoc: 크론 109차 재확인 (모든 mdx 검사 완료, 수정 없음)
- 🧹 크론 주기적 재확인 실행 (CRON_CRD_WRITE.md만 갱신)
- crd-write: 2026-03-12 12:00 PM recheck (lint pass)
- crd: 106차 cron 주기적 재확인 실행 - 전체 대상 .mdx 파일 이미 검사 완료
- CRON update: 2026-03-12 9:00 AM - reconfirm all targets checked
PR (해당일 생성/머지)
상태는 조회 시점 기준입니다. merged는 아래 대상 브랜치에 병합됐다는 뜻이며, 기능 브랜치 병합과 main 반영을 구분합니다. 같은 PR이 생성일과 병합일 양쪽 기록에 나타날 수 있습니다.