문제 (a2ad scripts 레인 — 인벤토리 지문 기반, 본문 재검증 필요 명시)
ccc-memory-* 셸 6종+wrapper 2종이 단일 디스패처 없이 병존, ccc-memory.test.sh 1029줄 비대
install-*.sh 5종(157–442줄)의 공통 로직(백업/idempotency/systemd·cron 등록/로깅) 중복 후보
- python-wrapper 셸 6종 동일 템플릿 (곽가 로컬 검증: ccc-doctor.sh/ccc-memory-search.sh 동일 패턴 확인)
제안
- agent_cron 전례('python core + compatibility wrapper')를 컨벤션 문서화
- ccc-memory 계열 → 단일 dispatcher 마이그레이션 로드맵
scripts/lib/installer-common.sh 신설 (기존 .test.sh 페어 유지, 공용 fixture만 추가)
가드레일
통폐합 전 호출부(systemd/cron/docs) grep 필수, 테스트 페어 유지, 착수 전 .sh 본문 기반 재검증 (이번 분석은 크기·라인 지문 기반).
a2ad 라운드 ccc-node-repo-opt-20260803 (main 6382e28 기준). 인접 이슈: #893–#898.
문제 (a2ad scripts 레인 — 인벤토리 지문 기반, 본문 재검증 필요 명시)
ccc-memory-*셸 6종+wrapper 2종이 단일 디스패처 없이 병존,ccc-memory.test.sh1029줄 비대install-*.sh5종(157–442줄)의 공통 로직(백업/idempotency/systemd·cron 등록/로깅) 중복 후보제안
scripts/lib/installer-common.sh신설 (기존 .test.sh 페어 유지, 공용 fixture만 추가)가드레일
통폐합 전 호출부(systemd/cron/docs) grep 필수, 테스트 페어 유지, 착수 전 .sh 본문 기반 재검증 (이번 분석은 크기·라인 지문 기반).
a2ad 라운드
ccc-node-repo-opt-20260803(main6382e28기준). 인접 이슈: #893–#898.