증거 확인 (Evidence check)
독립적인 감사입니다. 초안의 어떤 내용도 확인되기 전까지는 사실로 가정하지 않습니다. 연구 계획의 마지막 단계, 사용자 자신의 초안이나 참고문헌 목록, 또는 전달 전 모든 보고서에 사용하세요.
독립성
- 최상: 초안, 원장/참고문헌, 노트, 원시 텍스트 등 파일만 제공받은 새로운 하위 에이전트. 절대로 작성 중인 대화의 포크가 아니어야 합니다.
- 하위 에이전트 없음: 동일 세션 검사.
- 판단하기 전에 디스크에서 모든 파일을 다시 읽고, 작성한 내용을 기억에 의존하지 마십시오.
- 결과에
same-session (not independent)레이블을 붙이십시오. - 중요도가 높은 작업의 경우 이 스킬을 동일 폴더의 새 채팅에서 실행해야 한다고 사용자에게 알리십시오.
결정론적 검사 우선
번들 검사기를 먼저 실행하세요: python3 <이 스킬 폴더>/scripts/research_checks.py all <dir> (또는 quotes <claims.json> / links <plan.md>). 표준 라이브러리 Python이며 사용자의 코드 샌드박스에서 실행됩니다. 사용자는 아무것도 설치할 필요가 없습니다. PDF 텍스트는 pypdf가 필요합니다: 임포트가 실패하면 샌드박스에서 pip install pypdf를 실행하고 재시도하세요. 오류는 발견 사항입니다: 확인되지 않은 앵커, 누락된 ⚠ 플래그, 개수 불일치, 원본 텍스트에 없는 인용문, 가짜 PDF 등. 경고는 판단이 필요한 사항입니다.
폴더에 claims.json이 없는 경우(예: 사용자 자신의 초안 감사), support로 표시한 모든 주장에 대해 초안 옆에 claims.json을 작성하여 quotes 검사가 각 인용문이 그대로 있는지 확인할 수 있도록 하세요.
입력
초안; 참고문헌 목록(ledger.md, .bib 파일, 또는 번호 목록); 보유한 경우 노트와 원시 출처 텍스트. 초안만 제공된 경우 참고문헌 목록을 한 번 요청하세요.
1단계 — 주장 추출
모든 검증 가능한 주장을 추출하세요:
- 인용 주장
- 숫자
- 명명된 논문, 데이터셋 및 도구
- 존재 주장
- 부정적 주장("선행 연구 없음…")
- 인용되지 않은 확신 단어(증명하다, 확립하다, 치료하다, 예방하다, 결정적으로, 항상, 결코)
의견, 제안 및 초안 자체의 정의는 건너뛰세요.
2단계 — 연결 확인
각 인용은 정확히 하나의 참고문헌에 매핑됩니다. 양방향으로 고아 참조와 저자-연도 충돌을 나열하세요.
3단계 — 실제 존재? (참고문헌별)
지금 각각 조회하세요: OpenAlex / Crossref / Semantic Scholar / PubMed, 그리고 Reference Checker의 check_references 및 check_retractions.
| 판정 | 의미 |
|---|---|
verified | 제목, 첫 번째 저자 및 연도가 이 세션에서 찾은 레코드와 일치 |
partial | 작업은 존재하지만 사실이 잘못되었거나, 일부만 확인 가능(예: 책은 확인했지만 장(chapter)은 아님) |
mismatch | DOI/ID가 다른 작업으로 연결되거나, 인용이 잘못된 책이나 저널을 지칭 |
not_found | 적절히 검색했지만 일치하는 항목 없음 |
unchecked | 조회할 수 없음(차단, 예산, 도구 다운); 조작 증거는 아님 |
suspicious | 항목 자체에 위험 신호가 있음 |
규칙:
- 책 장: 인용된 책 제목, 편집자, 페이지 및 출판사를 Crossref 레코드(
container-title,page)와 비교하세요. 올바른 DOI지만 책이 잘못된 경우mismatch입니다. 이 정확한 오류가 시험 실행에서 통과된 적이 있습니다. - 도구 불일치: Crossref 또는 OpenAlex에서 정확한 DOI 일치는 제목 검색
not_found보다 우선합니다. 두 결과를 모두 기록하세요. - 레코드로 간주되는 것: DOI 랜딩 페이지, 출판사, PubMed, PMC/Europe PMC, arXiv, OpenAlex, Crossref, Semantic Scholar, DBLP. 일부 조각이나 다른 논문의 참고문헌 목록은 해당되지 않습니다. 기억은
unchecked입니다. - 또한 철회 상태와 프리프린트가 이후에 출판되었는지도 확인하세요.
4단계 — 뒷받침됨? (주장별)
출처가 인용의 공정성을 위해 무엇을 말해야 하는지 명시한 후:
| 지원 | 규칙 |
|---|---|
supported | 40자 이상의 그대로 인용된 구절이 원시 출처 텍스트(API XML, PDF 텍스트, 사용자 파일)에 있으며 위치 정보가 포함됨. 보고서에 인용하세요. |
partial | 출처가 더 좁거나 약한 내용을 말함 |
contradicted | 출처가 반대 내용을 말함 |
not-found-in-read-part | 텍스트의 일부만 보유하고 있으며, 주장이 그 부분에 없음 |
unverified-extracted | 모델의 추출을 반환하는 WebFetch를 통해서만 읽음. 절대 supported가 될 수 없음 |
unverified | 보유한 텍스트 없음(초록/메타데이터만, 유료, 차단됨) |
4단계에 의존하는 검사:
- 숫자: 정확히 복사되었는지, 반올림되지 않았는지 확인. 출처에 없는 숫자는
contradicted입니다. - 플래그: 각 주장에는 증거와 일치하는 플래그가 필요합니다:
⚠ abstract-only·⚠ metadata-only·⚠ extracted·⚠ preprint. 누락된 플래그를 추가하세요. - 독립적 개수: "N개 연구에서 일관됨"이라고 말할 경우 그중 몇 개가 독립적인지 명시해야 합니다.
- 부정적 주장: 그 뒤에 있는 검색을 명명해야 합니다. 그렇지 않으면 "<검색>에서 찾을 수 없음"으로 다시 작성하세요.
- 배경 vs 증거: 발견 사항에 대해 인용된 출처는 실제로 그 내용을 보고해야 합니다.
5단계 — 결과
수정 후 최종 상태를 판단하고 각 수정 사항을 기록하세요("라운드 n에서 수정: …").
- PASS:
not_found/mismatch/contradicted/ 고아 없음. 모든unverified*항목이 인라인으로 플래그 지정됨. - PARTIAL: 오류는 없지만 일부 항목을 확인할 수 없거나(예: 내용을 확인할 수 없는 장)
unchecked상태로 남음. 해당 항목을 나열하세요. - FAIL: 최대 2회 수정 라운드 후에도
not_found,mismatch,contradicted, 철회되었지만 인용된 출처, 또는 고아가 남아 있음. 다음 배너를 상단에 표시하고 해결되지 않은 항목을 함께 전달하세요:
INVALID EVIDENCE — unresolved citation or support failures; do not treat as verified.
반박은 증거가 아닙니다. 새로운 출처나 더 나은 논증에만 양보하고 그 이유를 기록하세요.
출력
초안에 접힌 Evidence check 블록을 추가하세요:
Evidence check — <날짜> — PASS | PARTIAL | FAIL — <fresh context | same-session (not independent)> — route: <도구>
Deterministic: research-checks <pass/fail, n errors> | not available
References: n verified · n partial · n mismatch · n not_found · n unchecked · n suspicious · n retracted
Claims: n supported · n partial · n contradicted · n unverified-extracted · n unverified · flags added: n
Repairs: <라운드: 변경 사항>
| # | Claim (short) | Cite | Real | Support | Quote / locator or reason | Fix |
Fix first: <조작/불일치 참조 및 반박된 주장 → 고아 → 플래그 → 스타일>
개인정보 보호
제목, DOI 및 주제어로만 검색하세요. 사용자의 미발표 텍스트를 검색에 절대 붙여넣지 마세요.