Verificación de evidencia
Una auditoría independiente. No asume que nada en el borrador es verdad hasta que se comprueba. Úsala como el último paso de research-plan, en el borrador o bibliografía del usuario, o en cualquier informe antes de la entrega.
Independencia
- Mejor: un subagente nuevo que solo recibe los archivos (borrador, libro mayor/bibliografía, notas, textos originales). Nunca una bifurcación de la conversación de escritura.
- Sin subagentes: una verificación dentro de la misma sesión.
- Vuelve a leer cada archivo desde el disco antes de juzgar nada y no confíes en lo que recuerdas haber escrito.
- Etiqueta el resultado
misma-sesión (no independiente). - Dile al usuario que, para cualquier cosa de alto riesgo, debería ejecutar esta habilidad en un nuevo chat en la misma carpeta.
Verificaciones deterministas primero
Ejecuta primero el verificador incluido: python3 <ruta de esta habilidad>/scripts/research_checks.py all <dir> (o quotes <claims.json> / links <plan.md>). Es Python de la biblioteca estándar y se ejecuta en tu propio sandbox; el usuario no instala nada. El texto PDF necesita pypdf: si la importación falla, haz pip install pypdf en el sandbox y reintenta. Sus errores son hallazgos: anclas que no se resuelven, banderas ⚠ faltantes, desajustes de conteo, citas que no están en el texto fuente, PDFs falsos. Sus advertencias son juicios de valor.
Si la carpeta no tiene claims.json (por ejemplo, al auditar el propio borrador del usuario), escribe uno junto al borrador para cada afirmación que marques como supported, de modo que la verificación de quotes pueda confirmar que cada cita es textual.
Entradas
El borrador; la lista de referencias (ledger.md, un .bib o una lista numerada); notas y textos fuente originales si se tienen. Si solo se da el borrador, pregunta una vez por la bibliografía.
Paso 1 — Extraer afirmaciones
Extrae cada afirmación verificable:
- afirmaciones con cita;
- números;
- artículos, conjuntos de datos y herramientas nombrados;
- afirmaciones de existencia;
- afirmaciones negativas ("ningún trabajo previo…");
- palabras de certeza sin cita (demuestra, establece, cura, previene, concluyentemente, siempre, nunca).
Omite opiniones, sugerencias y las definiciones propias del borrador.
Paso 2 — Resolver
Cada cita debe corresponder exactamente a una referencia. Enumera los huérfanos en ambas direcciones y las colisiones autor-año.
Paso 3 — ¿Real? (por referencia)
Busca cada una ahora: OpenAlex / Crossref / Semantic Scholar / PubMed, además de Reference Checker check_references y check_retractions.
| veredicto | significado |
|---|---|
verified | título, primer autor y año coinciden con un registro encontrado en esta sesión |
partial | la obra existe pero algún dato es incorrecto, o solo se pudo confirmar parcialmente (p. ej., el libro pero no el capítulo) |
mismatch | el DOI/ID resuelve a una obra diferente, o la cita nombra el libro o revista equivocados |
not_found | se buscó adecuadamente, no hay coincidencias |
unchecked | no se pudo buscar (bloqueado, presupuesto, herramienta caída); no es evidencia de invención |
suspicious | señales de alerta en la entrada misma |
Reglas:
- Capítulos de libro: compara el título del libro citado, editores, páginas y editorial con el registro de Crossref (
container-title,page). Un DOI correcto pero con el libro equivocado es unmismatch; este error exacto pasó desapercibido en una prueba. - Desacuerdo entre herramientas: una coincidencia exacta de DOI en Crossref u OpenAlex supera un
not_foundpor búsqueda de título. Registra ambos resultados. - Qué cuenta como registro: una página de aterrizaje de DOI, editorial, PubMed, PMC/Europe PMC, arXiv, OpenAlex, Crossref, Semantic Scholar, DBLP. Un fragmento o la lista de referencias de otro artículo no cuenta. La memoria es
unchecked. - También verifica el estado de retracción y si un preprint ha sido publicado desde entonces.
Paso 4 — ¿Respaldada? (por afirmación)
Declara lo que la fuente debe decir para que la cita sea justa, luego:
| soporte | regla |
|---|---|
supported | un pasaje textual de 40 caracteres o más del texto fuente original (XML de API, texto PDF, archivo del usuario) lo dice, con un localizador. Cítalo en el informe. |
partial | la fuente dice algo más limitado o más débil |
contradicted | la fuente dice lo contrario |
not-found-in-read-part | solo se tiene parte del texto, y la afirmación no está en él |
unverified-extracted | se leyó solo mediante WebFetch, que devuelve una extracción del modelo; nunca puede ser supported |
unverified | no se tiene texto (solo resumen / metadatos, detrás de muro de pago, bloqueado) |
Verificaciones que dependen del Paso 4:
- Números: copiados exactamente, no redondeados. Un número que no está en la fuente es
contradicted. - Banderas: cada afirmación necesita la bandera que coincida con su evidencia:
⚠ solo-resumen·⚠ solo-metadatos·⚠ extraído·⚠ preprint. Agrega las que falten. - Conteo independiente: "consistente en N estudios" debe indicar cuántos son independientes.
- Afirmaciones negativas: deben nombrar las búsquedas detrás de ellas. De lo contrario, reformula como "no encontrado en <búsquedas>".
- Contexto vs evidencia: una fuente citada para un hallazgo debe realmente informarlo.
Paso 5 — Resultado
Juzga el estado final después de las correcciones, y registra cada corrección ("corregido en ronda n: …").
- PASS: ningún
not_found/mismatch/contradicted/ huérfano. Cada elementounverified*está marcado en línea. - PARTIAL: sin errores, pero algunos elementos no pueden resolverse (p. ej., un capítulo cuyo contenido no se puede verificar) o permanecen
unchecked. Enuméralos. - FAIL: cualquier
not_found,mismatch,contradicted, fuente retractada pero citada, o huérfano permanece después de como máximo 2 rondas de corrección. Entrega con este banner en la parte superior, seguido de los elementos no resueltos:
EVIDENCIA INVÁLIDA — fallos de cita o soporte no resueltos; no tratar como verificado.
La oposición no es evidencia. Cede solo ante una nueva fuente o un mejor argumento, y registra por qué.
Salida
Anexa un bloque plegable de Verificación de evidencia al borrador:
Verificación de evidencia — <fecha> — PASS | PARTIAL | FAIL — <contexto fresco | misma-sesión (no independiente)> — ruta: <herramientas>
Determinista: research-checks <aprueba/falla, n errores> | no disponible
Referencias: n verificadas · n parciales · n desajustadas · n no encontradas · n no verificadas · n sospechosas · n retractadas
Afirmaciones: n respaldadas · n parciales · n contradichas · n no verificadas-extraídas · n no verificadas · banderas añadidas: n
Correcciones: <ronda: qué cambió>
| # | Afirmación (corta) | Cita | Real | Soporte | Cita / localizador o razón | Corrección |
Corregir primero: <refs inventadas/desajustadas y afirmaciones contradichas → huérfanos → banderas → estilo>
Privacidad
Busca solo con títulos, DOIs y palabras clave. Nunca pegues el texto inédito del usuario en una búsqueda.