파생 그래프를 MultiDiGraph로 바꿔 같은 노드쌍의 평행한 타입 엣지를 보존

문제 (Context)

코드 리뷰에서 HIGH 등급 결함 하나를 잡았다. 평범한 DiGraph는 노드쌍마다 엣지를 하나로 합쳐 버렸다. 그래서 같은 대상에 걸린 두 번째 타입 관계(같은 대상에 depends_on과 contradicts가 함께 있는 경우)나 공유 소스 패스가 작성자가 단 타입 술어를 조용히 덮어썼다. 파생 그래프에서 데이터가 사라지는 셈이다.

시도한 해결 (Decision)

build_graph와 from_sidecar가 이제 (술어, 소스)를 키로 하는 MultiDiGraph를 쓴다. 서로 다른 관계는 함께 존재하고, 완전히 똑같은 중복만 합친다. 후속 경로가 멀쩡한지도 확인했다. 커뮤니티는 평행 가중치를 합산하고, 검색은 모든 엣지를 읽으며, 사이드카는 왕복 직렬화에서 손실이 없다. 회귀 테스트 두 건을 붙였다.

근거·결과 (Consequences)

보고된 리뷰 결함 하나를 닫았다. 나머지 결함은 접수 레인에 남는다.

노드 계약 (contract)

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

시행착오 타임라인 (supersede)


이슈 wiki_chain 코드 리뷰 · Status superseded · 2026-06-25