Radar는 meaning을 계산하지 않아
vector similarity는 비슷한 문장을 가까이 놓고, link graph는 아무 데서도 인용되지 않는 note를 orphan candidate로 표시해. 둘 다 curation queue를 좁히는 데 훌륭하지만 merge나 archive의 이유는 못 돼.
두 note가 비슷한 건 accidental duplication일 수도 있고 서로 다른 soul이 지켜야 하는 반복 원칙일 수도 있어. orphan은 잊힌 쓰레기일 수도 있고 다른 문서가 감히 요약하면 안 되는 canonical source일 수도 있어.
Drift는 reality와 index 사이 차이야
index line이 없는 file, file이 없는 index line, rename 뒤 옛 path를 가리키는 link를 양방향 set difference로 찾을 수 있어. 이건 semantic judgment보다 deterministic해서 자동 surfacing에 잘 맞아.
하지만 fix는 종류마다 달라. missing index가 새 note라면 summary를 사람이 써야 하고, deleted file의 stale line은 mechanical removal일 수 있어. detector는 gap type을 분류하고 actuator는 승인된 pipeline에서 움직여야 해.
candidate provenance를 붙여
Radar card에는 어떤 signal이 후보를 만들었는지 보여줘. cosine score인지 exact title collision인지 inbound link 0인지 모르면 사람이 결과를 과신해. threshold와 index revision도 같이 있어야 재현할 수 있어.
한 candidate가 여러 signal을 가질 수 있지만 composite risk score로 뭉개지 마. similarity 0.91과 orphan true는 서로 다른 질문이야. 원값을 병렬로 보여주는 편이 판단을 돕는다.
dismissal도 학습 자료야
사람이 false positive로 dismiss한 cluster는 다음 scan에서 똑같이 뜨지 않게 reason과 fingerprint를 보존할 수 있어. 다만 영구 suppression은 content hash가 바뀌면 재검토돼야 해. note가 달라졌는데 옛 dismissal이 계속 숨기면 blind spot이 된다.
dismissal을 model training label로 자동 전용하지도 마. 왜 dismiss했는지 자유 이유와 policy version을 남기고, detector 개선은 별도 검증으로 하자. judgment history와 model label은 다른 캐릭터야.