18.3 KB · 수정 2026-08-19 10:42
목차

code-qa — 인수인계서

주기적 코드 품질 파이프라인. 디버깅 에이전트(선행) → 리팩토링 에이전트(후행) 2단계로 프로젝트 코드를 파트 단위로 훑는다. 1차 대상 = pfs, 이후 다른 프로젝트로 확대. 규칙 = rules.md · 대시보드 = devplan code-qa.html(8799) · 작업물 = C:\dev\tools\code-qa\

🔶 루트 NOW 이관 — 진행·미결 (2026-08-19 대청소, 페페 지시)

루트 HANDOFF.md를 pncad 만 남기고 비웠다. 아래는 그때 옮겨온 원문(문구 무변경).

🆕 NOW (26.7.29) — 신규 구축 + PFS 전수검사 + 1차 로드맵 (페페 확인 대기)

페페 지시: "주기적으로 디버깅·리팩토링할 CLI 에이전트를 만든다(opus5, 노력도는 코디 추천). 각각 기본 하네스 작성, 웹조사로 기본 매뉴얼 포함, PFS 반복 이슈 매뉴얼 추가. 오늘 첫 작업 = ①PFS 코드 전수검사 ②로드맵·devplan 페이지 생성 ③작업 방식(디버깅 우선·버그 주석·파트 끝나면 리팩토링 호출·이력 통합관리). 전수검사와 1차 로드맵까지 하고 보고."

구축물

PFS 전수검사 결과 (8개 파트 병렬, 전부 읽기 전용)

✅ P0 보안 3결정 실행·운영배포 완료 (26.7.29)

페페 결정 = ①platform-auth 추천안(A+C) + 하위 2건도 보안처리 ②ops-secrets 비번 회전 없이 git 평문 제거 + gitignore 관리 + C(8791) ③platform-response-policy B(헬퍼 먼저·점진 이관). "테스트 배포 후 검증 → 운영배포".

🆕 NOW (26.7.30) — P0 잔여 5파트 전부 완료 + 운영배포 완료

페페 지시 = P0 잔여 5파트를 번호순으로(각 파트 착수 전 재검수 → 수정 → 테스트 검증 → qa.py 기록 → 리팩토링 호출). 페페 승인(채팅) = "테스트서버 검증 후 이상없으면 운영배포 승인한다" → 테스트 전 항목 PASS 후 운영배포 실행.

🚀 운영배포 — deploy-live 6698a3c (26.7.30 01:5x)

✅ 1) field-dispatch — 완료(테스트 검증 PASS)

✅ 2) platform-auth 마무리 — 완료(테스트 검증 PASS, 리팩토링 PFS-R002 done)

✅ 3) estimate-satellite — 완료(테스트 검증 PASS, master 2200589·9e55f64)

✅ 4) templates-xss-cache — 완료(테스트·운영 검증 PASS, master a09743e·2d5b25c)

✅ 5) platform-core 잔여 — 완료(EC2 검증 PASS, master 27f50e9)

검증 자산 (tracked, 재사용)

⏳ 페페 몫

  1. 운영 육안 확인 — 배차 사진 업로드/조회, 거래처·견적 목록, 견적 저장(기타부가비·별도항목).
  2. 보류 2건 결정PFS-D003(커넥션 풀 도입 여부) · PFS-D045(requirements 를 운영 기준으로 되돌릴지 / dev·prod 분리).
  3. 남은 P0 = platform-response-policy(fail() status 점진 이관, 26.7.29 결정 B로 헬퍼까지만 반영됨).

🔍 P0 착수 전 재검수 (26.7.29 · 페페 지시 "P0 단계 시작 전 계획 재검토")

읽기 전용 실측으로 P0 발견을 전부 다시 확인했다. 감사 이후 master 신규 커밋 없음(HEAD 6f9732c 11:01, 감사는 그 뒤 17:26~) → 로드맵 전제는 유효. 발견 7건 현행 코드에서 재현 확인: __str__(4개 예외 클래스 동일) · fail() status 미변경 · secret_key 'pfs-key.v1' · 컨트롤러 49개 중 login_required 사용 0건(before_request 훅도 /api/면 통과) · UPLOAD_DIR=/home/ubuntu/pfs-test · 위성 CRUD delete+insert · DataTables 21파일 · base.html 캐시버스터 부분적용.

재검수로 바꾼 것 3가지 1. platform-core 분할fail()이 항상 200인 건을 신규 파트 platform-response-policy로 떼어냈다. 실측 근거 = 프론트 code=='0000' 체크는 18곳뿐인데 error: 콜백은 158곳 → status를 붙이는 순간 지금까지 조용히 넘어가던 실패가 전 화면에서 한꺼번에 에러로 뜬다(방향은 옳지만 회귀 폭이 앱 전체). 코드 버그가 아니라 프론트 계약을 바꾸는 정책 결정 → 같은 파트에 두면 무해한 국소 수정(__str__)까지 결정 대기에 묶인다. 분리 후 platform-core는 즉시 착수 가능. 2. 착수 순서 재배치 — field-dispatch가 선두. 운영 EC2 실측: 배포본도 경로가 pfs-test로 확인됐지만 양쪽 uploads/dispatch.gitkeep뿐 = 실업로드 축적 0 → 파일 마이그레이션 불필요, 한 줄 수정으로 종결, 회귀 위험 없음. 화물 배차가 곧 실사용 전환이라 그 전에 처리하면 손실 자체가 안 생긴다. 3. 결정 대기 3파트를 blocked로 표기(대시보드에 ⛔ 노출) — platform-auth · ops-secrets · platform-response-policy. P0 안에 섞여 있으면 순차 진행이 결정 대기에 막힌다. 부수 확인: 실배포는 scripts/deploy-production.sh(systemd restart)로 정상이고, service/deploy-{live,test}.sh두 파일 내용이 완전 동일(둘 다 pfs-test.ini + killall -9)한 방치본 → ops-secrets 트랙에서 같이 정리(D022 note).

로드맵 27 → 28파트(P0 7 = 착수가능 4 + 결정대기 3), history 1건 기록, devplan 단계 카드 갱신 완료.

⏳ 페페 몫 (다음 지시 대기)

  1. P0 착수 순서 승인 → 재검수 추천 = field-dispatchplatform-coreestimate-satellitetemplates-xss-cache(앞 3개와 파일 충돌 없어 병렬도 가능).
  2. 설계 결정 3건(2건 → +1) — platform-auth(API 인증 게이트 위치·방식) · ops-secrets(git 이력 평문 비번 처리) · 🆕platform-response-policy(fail() status 전환 방식: 일괄 / 도메인별 점진 / 현행 유지+프론트가 code를 보게 통일).
  3. 운영 배포는 지시 시에만(에이전트는 master까지).

확정 사실 (불변 핵심)