피드백 루프 감사 (2026-04-20)

감사 범위: wiki/활동/ 인제스트 → 품아이 답변 반영 경로


체크리스트

#항목상태비고
1wiki/활동/*.md 존재PASS샘플 1개 (act-20260420-120000-김성훈.md)
2ingest_activities.py 실행 → ChromaDB poomasi_docs 적재PASS2청크 확인
3localpay_grade.py dry-run → 실행 → ledger/localpay.jsonl 기록PASS첫 레코드 생성 완료
4중복 지급 방지 (.localpay_state.json)PASS재실행 시 SKIP 확인
5engine.py search()poomasi_docs 컬렉션 포함 여부FAIL아래 BUG-01 참조
6frontmatter grade 필드 → localpay 지급 경로PASSS등급 → 90점 정상 계산
7KST 타임스탬프PASS2026-04-20T00:32:40+09:00
8ledger append-only (덮어쓰지 않음)PASS파일 끝에 추가 확인

BUG-01: 활동 데이터가 품아이 답변에 실제로 반영되지 않음

심각도: 중간 (기능 누락, 오류 없음)

현상:

  • ingest_activities.pypoomasi_docs 컬렉션에 적재
  • engine.pysearch() 메서드(line 475)는 poomasi_qa + poomasi_qa_addl 컬렉션만 쿼리
  • _chroma_generate가 호출하는 search()poomasi_docs를 전혀 읽지 않음

원인:

# engine.py line 478 — poomasi_qa 전용
results = self.collection.query(...)  # self.collection = poomasi_qa

영향:

  • 활동 MD를 아무리 인제스트해도 품아이 RAG 답변에 반영 안 됨
  • question/answer 키 포맷이 달라 직접 삽입 시 KeyError 발생 가능

수정 방향 (건호에게 위임 필요): 옵션 A (권장): engine.pysearch()poomasi_docs 컬렉션 추가 검색 후, question 없는 청크는 {"question": doc[:80], "answer": doc} 형태로 정규화해 병합 옵션 B: ingest_activities.py에서 poomasi_qa 포맷(question+answer 필드)으로 변환 후 poomasi_qa_addl에 적재

위임 태그: 건호에게 위임 필요 — engine.py 수정 필요, 100줄+ 변경 예상


현재 컬렉션 현황

컬렉션문서 수engine.py 검색 여부
poomasi_qa24,852PASS
poomasi_qa_addl122PASS
poomasi_docs3,117미포함 (BUG-01)
farmer_profiles503별도 경로
member_profiles2,386별도 경로

즉시 수정 가능 항목 (수정 완료)

  • localpay_grade.py: grade_filter 기본값 “S” (S등급만 처리) — 정상
  • ingest_activities.py: SKIP_FILES에 README.md 포함 — 정상
  • ledger 디렉토리 auto-mkdir — 정상 (LEDGER_PATH.parent.mkdir(parents=True, exist_ok=True))

다음 단계

  1. 건호: BUG-01 처리 (engine.py poomasi_docs 연동)
  2. 활동 MD 샘플 추가로 파이프라인 실증
  3. localpay_grade.py 스케줄 연동 (cron 또는 ingest_activities.py 후처리)