쓰기 입구에서 RAG 소스 경계를 강제해 비위키 자료를 거부

문제 (Context)

0.0.2.5 안정화 작업은 RAG를 권한 경계가 흐려지는 지점으로 지목한다(docs/version 0.0.2.4 scope). 다듬어진 아카이브 경계(docs/50_memory_and_knowledge/README.md)는 원시 토큰, 원시 프로바이더 라우트 id, 로컬 절대경로, tmux id를 위키 자료로 보지 않는다고 못 박는다.

시도한 해결 (Decision)

RAG 색인기인 produce_node는 이를 전혀 강제하지 않았다. pm_send는 외부로 나가는 채팅 표면만 가렸고, 진실의 원천인 아카이브에는 저장 상태 경계가 없었다. rag_boundary_violations()와 RagBoundaryError를 더해 produce_node에서 강제한다. 비위키 자료를 품은 노드는 거부한다. 조용히 지우지 않고 큰 소리로 막는다. 위반은 표면으로 끌어올려야 할 권한 흐림이기 때문이다. 패턴은 프로바이더 중립이며, 저장소 상대경로 file:line 소스 참조는 통과한다.

근거·결과 (Consequences)

실제로 이미 존재하던 위반을 잡아냈다. iter-1 원본 노드가 절대 로컬 경로를 박아 두고 있었다. 삭제 대신 대체 방식으로 물려 내리고 다듬은 재진술을 남겼다. 라이브 아카이브는 이제 경계가 깨끗하다. 테스트 8건을 새로 더했고 모두 통과한다.

노드 계약 (contract)

필드
type결정(decision)
Statusaccepted
source_count1
confidence미설정 — 구 엔진 격차
confidence_reason_codes미설정 — 구 엔진 격차
stalefresh
이슈(feature)RAG·지식엔진

상호참조


이슈 RAG 검색·소스 경계 · Status accepted · 2026-06-25