Skip to content

fix(statusline): 세션별 캐시로 창 간 폴더명 오염 차단 - #1

Merged
dkdannyboy merged 1 commit into
mainfrom
fix/statusline-session-cache
Jul 6, 2026
Merged

fix(statusline): 세션별 캐시로 창 간 폴더명 오염 차단#1
dkdannyboy merged 1 commit into
mainfrom
fix/statusline-session-cache

Conversation

@dkdannyboy

Copy link
Copy Markdown
Owner

문제

단일 전역 prev-status.cache 를 모든 Claude Code 창이 공유 → 한 창이 캐시를 쓰면 다른 창이 최대 5초간 남의 폴더/git 상태를 표시하는 오염 발생.

수정

makeWrapper() 에서 캐시를 prev-status.<session_id>.cache 로 세션별 분리. session_id 는 jq 미설치 환경 대비 sed 로 파이프 JSON에서 추출하고, 값이 없으면 default 폴백. 1일 이상 지난 세션 캐시는 갱신 시점에 자동 정리.

  • 파일: lib/install.js (+12/-2)
  • adopt.jsmakeWrapper() 를 호출하므로 자동 커버

검증

  • npm test 71/71 통과 (wrapper 회귀 테스트 포함)
  • 생성 셸 sh -n 문법 통과
  • 세션 격리: A 재호출 시에도 B 캐시를 덮어쓰지 않음 확인

🗿 MoAI email@mo.ai.kr

단일 전역 prev-status.cache 를 여러 Claude Code 창이 공유해,
한 창이 캐시를 쓰면 다른 창이 최대 5초간 남의 폴더·git 상태를
표시하는 오염이 있었다. 캐시 경로를 session_id 로 분리한다.
session_id 는 jq 미설치 환경 대비 sed 로 파이프 JSON에서 추출하고,
1일 이상 지난 세션 캐시는 갱신 시점에 자동 정리한다.

🗿 MoAI <email@mo.ai.kr>
@dkdannyboy
dkdannyboy merged commit ca96251 into main Jul 6, 2026
6 checks passed
@dkdannyboy
dkdannyboy deleted the fix/statusline-session-cache branch July 6, 2026 05:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant