한상욱

구조를 그려서 문제를 푸는 프론트엔드 엔지니어.
디자인 시스템, 모노레포, 배포 파이프라인을 다룹니다.

캐시가 hit인데 매번 콜드 빌드였습니다 — GitHub Actions Next.js 캐시 키가 죽어 있던 이유

캐시 복원은 초록불이었고 67MB가 정상적으로 내려왔습니다. 그런데 빌드는 캐시가 아예 없을 때와 같은 4분이었습니다. hit 로그가 보증하지 않는 것 — 캐시가 거치는 두 단계, 그리고 캐시 키에서 구조적으로 빠지는 입력을 대조군 실측으로 확인합니다.

2026-08-16 · 18 min

  1. 매일 쓰던 getByRole 때문에 테스트가 26배 느렸습니다 — RTL·jsdom 성능 분석

    07-31
  2. TypeScript 6 업그레이드인 줄 알았는데, 문제는 "설정"이었습니다

    07-02
  3. [Typescript로 설계하는 프로젝트] id?: string을 버려라. 상태가 다르면 타입도 달라야 한다.

    03-16
  4. [누가 시키지도 않았는데 번들러 만들기] 4. 소스맵: 번들된 코드에서 원본의 흔적 찾기

    03-03
  5. [누가 시키지도 않았는데 번들러 만들기] 3. 번들링과 스코프: 파일 합치기의 기술

    02-23
  6. [누가 시키지도 않았는데 번들러 만들기] 2. 코드를 데이터로 보는 법 (AST Graph)

    02-17
  7. [누가 시키지도 않았는데 번들러 만들기] 0. 프롤로그: 질문이 구현이 되는 순간

    02-02
  8. [누가 시키지도 않았는데 번들러 만들기] 1. 개념과 도구: 번들러의 등장 배경

    02-02
  9. 결제 시스템 리팩토링: if문 지옥에서 디자인 패턴(Factory, Adapter)으로 탈출하기

    01-24
  10. 2025 회고: 글 33개, PR 38회, 발표 3회로 '보여주는 개발자'가 되다

    12-21
  11. 2025 Teoconf 발표 후기

    12-11
  12. 하루 만에 끝날 줄 알았던 디자인 시스템 배포가 3주 걸린 이유

    11-30
모든 글 →

오픈소스 기여