CIENCIA Y PROCEDENCIASCIENCE & PROVENANCE

También publicamos
lo que no funciona.
We also publish
what doesn’t work.

Cada experimento de MolDesign se registró antes de ejecutarse, con su hipótesis y su criterio de decisión escritos por adelantado, y se selló con el commit, la semilla, el entorno y los hashes de todo lo que tocó. Esta página los abre todos: los que funcionaron y los que no.Every MolDesign experiment was registered before it ran, with its hypothesis and its decision criterion written in advance, and sealed with the commit, the seed, the environment and the hashes of everything it touched. This page opens all of them: the ones that worked and the ones that did not.

171 experimentos selladossealed experiments77 con artículowith a paperÚltimo sello:Latest seal:

Lo que se sostuvo, y lo que se cayó.What held up, and what fell.

El cociente crudo de decisiones del manifest sería más halagador. No lo usamos: mezcla prerregistros —que se sellan como positivos al declararse, no por superar nada— con experimentos que sí tenían un umbral real. Separar las poblaciones es la única forma de que el número signifique algo.The raw decision ratio in the manifest would be more flattering. We do not use it: it mixes pre-registrations —which are sealed as positive by being declared, not by passing anything— with experiments that did have a real threshold. Separating the populations is the only way for the number to mean anything.

27HallazgosFindings

Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.

27RefutacionesRefutations

Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.

Las otras poblaciones del registroThe other populations in the record

Estas no son ni éxitos ni fracasos, y por eso no entran en el marcador. Están aquí porque son la mitad del trabajo.These are neither successes nor failures, which is why they do not enter the scoreboard. They are here because they are half of the work.

47 medicionesmeasurements
Miden sin decidir: no tienen umbral de aceptación. Describen el terreno.They measure without deciding: there is no acceptance threshold. They describe the terrain.
42 prerregistrospre-registrations
Hipótesis y criterio declarados ANTES de mirar datos. Se sellan GO por convención; no son un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; they are not a success.
12 correccionescorrection notices
Correcciones de un resultado propio, cuyo valor principal es la corrección.Corrections of an own result, whose main value is the correction.
16 inconclusosinconclusive
Ejecutados y declarados sin conclusión. No se reclasifican a posteriori.Executed and declared without a conclusion. They are not reclassified afterwards.

El registro.The record.

Lo último sellado va primero. Abre un expediente para leer su artículo, o la ficha generada de su manifest si el artículo todavía no está escrito. Los textos científicos se muestran en su idioma original, el español.The most recently sealed comes first. Open a record to read its paper, or the sheet generated from its manifest if the paper has not been written yet. Scientific texts are shown in their original language, Spanish.

FEP-09-R1Con el origen reconocido, Preparación detecta los huecos del sitio y la estereoquímica sin asignarInconclusoInconclusiveArtículoPapern=163

FEP-09 repetido sobre el producto con P01 arreglado: las 163 auditorías miden desde el ligando y no desde la caja. Los huecos del sitio siguen en 15 de 15, la estereoquímica sube a 21 de 21 y la falsa alarma baja a cero. El agua puente y la protonación del sitio siguen siendo límites de alcance, no efectos de P01.

INCONCLUSIVE, como estaba previsto. El gate global exige que pasen todas las categorías declaradas, y «tautómero minoritario» y «especie del ligando» siguen con n=0: no hay poblaciones ni pKa independientes con que sembrarlas. De las que sí se pueden medir, las dos declaradas pasan el gate: huecos en el sitio, 15 de 15, y estereoquímica sin asignar, 21 de 21. Se completaron 163 auditorías, sin rechazos antes de Preparación y sin fallos de infraestructura.

Por qué se repitió

FEP-09 midió la pestaña Preparación con un defecto dentro, P01: la comprobación del origen no reconocía la receta de los receptores propios. Por eso sus 127 auditorías del camino B se midieron desde la caja. P01 se arregló en f0e64086.

El mismo día se arregló en la pestaña Evaluación un error de la misma familia (aguas, interacciones y archivos del visor). Ese arreglo no toca Preparación. R1 repite FEP-09 sobre el producto con los dos arreglos, ee2d6c78, y amplía la estereoquímica, que se había quedado con n=3.

Qué se midió

  • Lo mismo que FEP-09: camino B (respetar), Vina 1.2.7, exhaustividad 8, 9 poses, semilla 42, pH 7,4, un confórmero. Las mismas 15 dianas del benchmark de OpenFF (commit fd88824f) y los mismos 127 casos, idénticos byte a byte.
  • Arnés: el de Sol sin cambios (fep09_inputs, fep09_run, fep09_analyze), envuelto por scripts/fep09r1_*.py.
  • Modo tautomérico: no se forzó. El efectivo fue «entrada» en las 163, como declara esta vez el prerregistro.
  • Estereoquímica: 36 casos nuevos. Por diana, hasta tres ligandos con algún estereocentro asignado, en el orden del SDF; cada uno con su línea base y una variante que borra la asignación del primer centro. Eso da n=21 en 7 dianas.
  • Ejecución: tres cápsulas de QA con Vina limitado a 4 núcleos y árbol limpio, en 43 min. En paralelo corría otro experimento (MET-01) en una cuarta cápsula.

El prerregistro se fijó en 68d36882, antes de la primera corrida, con el gate, seis predicciones y la potencia. No hubo desviaciones.

Qué salió

CategoríanFEP-09R1IC 95 % (R1)Decisión / alcance
hueco_en_el_sitio151515[0,782; 1,000]GO
estereo_sin_asignar21 (FEP-09: 3)321[0,839; 1,000]GO
tautomero_minoritario0——no estimableINCONCLUSIVE
especie_del_ligando0——no estimableINCONCLUSIVE
agua_puente_retirada900[0,000; 0,336]límite
protonacion_del_sitio500 (5 saturadas)[0,000; 0,522]límite
cadena_del_sitio_ausente100 (saturada)[0,000; 0,975]límite
metal_o_cofactor_retirado100[0,000; 0,975]límite
tautomero_alternativo_proxy131313[0,753; 1,000]proxy
especie_opuesta_proxy711[0,004; 0,579]proxy

Los 15 huecos se detectan ahora midiendo desde el ligando, no desde la caja. En cdk2, por ejemplo, el corte LEU 78 → PHE 82 queda a 3,11 Å del ligando, y Preparación se abstiene.

En la estereoquímica, las 7 dianas dan 3 de 3. El IC trata los 21 casos como independientes, pero son tres ligandos por diana. El requisito lee el ligando y no el receptor, así que el agrupamiento pesa poco, aunque existe.

ControlFEP-09R1
entorno.referencia REGISTRADO0 de 127163 de 163
Falsa alarma (renumeración inocua)4 de 555 (0,72 %)0 de 585
Acuerdo entre líneas base repetidas99,55 % (5 cambios en procedencia.commit)100 % (1170 comparaciones)
Cambios no previstos en los cortes lejanos2 de 3700 de 390
Mismo receptor_sha256 en las tres bases de cada diana15 de 1515 de 15

La falsa alarma y el ruido de FEP-09 venían de procedencia.commit, que pasaba de REGISTRADO a NO_DISPONIBLE porque el arnés se editaba durante la medición. R1 corrió desde un worktree congelado, así que ese factor desaparece. Es el mismo factor de confusión que FEP-09 declaró, no una mejora del producto.

Predicciones, antes y después

#Predicción preregistradaResultado
P1entorno.referencia REGISTRADO en todas163 de 163 ✔
P2Huecos: GO otra vez (≥ 12 de 15)15 de 15 ✔
P3Agua puente: 0 de 9, límite de alcance0 de 9 ✔
P4Protonación del sitio: 0 de 5, rutinaria por diseño0 de 5 ✔ (las 5 saturadas)
P5Estereoquímica: GO (≥ 16 de 21)21 de 21 ✔
P6Falsa alarma ≤ 0,100 ✔

P3 y P4 corrigen lo que escribí al revisar FEP-09. Dije que P01 confundía esos dos límites; no era así. El resultado no cambia caso por caso entre los dos experimentos.

  • Agua puente: se borra antes de subir el archivo. La auditoría sólo ve una cifra distinta, «1 conservada» en la base frente a «0» en la variante de cdk2, y no tiene manera de saber que faltaba un agua.
  • Protonación: en el camino B es la del usuario. Preparación la pide revisar en toda corrida, así que la línea base ya está en REVISAR y una His cambiada no puede subir el riesgo.

Lo que P01 sí podía cambiar era la referencia de los huecos, y el resultado se mantiene midiendo desde el ligando.

Los únicos cambios colaterales son ecos del propio defecto. Las variantes de estereoquímica añaden LIGANDO_REVISION_QUIMICA en la comprobación previa (21 casos), y algunas variantes cambian la regla de selección de la pose.

Qué no dice

  • No mide la fracción de problemas reales de preparación que MolDesign detecta: los defectos los sembramos nosotros sobre un benchmark preparado por expertos.
  • No demuestra transferencia a FEP, compatibilidad con FEP+ ni energía libre.
  • No valida poblaciones tautoméricas, pKa individuales ni la protonación del receptor.
  • No audita la interfaz, WebView2, el runtime empaquetado ni el instalador.
  • No atribuye errores a los autores del benchmark; los estados químicos proxy están fuera del gate.

Reproducción

Manifiesto, inventario, condiciones registradas, resultados por caso, métricas y la evidencia de cada corrida están en scripts/artifacts_science/FEP-09-R1/. Para repetirlo:

  1. una cápsula de QA desde el commit del prerregistro;
  2. python scripts/fep09r1_run.py --capsule DIR --shard N, con N = 0, 1 y 2;
  3. python scripts/fep09r1_analyze.py --merge.

Datos CC BY 4.0 de OpenFF, atribuidos a Hahn et al., LiveCoMS 2022; las estructuras no se copian al repositorio.

Ficha del registro selladoSealed record sheet

CategoríaCategory
InconclusoInconclusive · Ejecutado y declarado sin conclusión. No se reclasifica a posteriori.Executed and declared without a conclusion. It is not reclassified afterwards.
Decisión del manifestManifest decision
INCONCLUSIVE
HipótesisHypothesis
Con P01 arreglado, Preparación mide desde el ligando en el camino B: los huecos del sitio siguen detectándose, la estereoquímica sin asignar se detecta con n>=8, y agua puente y protonación del sitio siguen siendo límites de alcance, no efectos de P01.
Criterio prerregistradoPre-registered criterion
Idéntico a FEP-09: por categoría declarada n>=8, CP95 inferior>=0.5 y falsa alarma<=0.10. NO_GO si alguna falla, GO sólo si todas pasan, de otro modo INCONCLUSIVE (global INCONCLUSIVE por construcción: tautómero minoritario y especie con n=0). Parar si infraestructura>30%.
ProtocoloProtocol
docs/auditorias/FEP-09-R1-prerregistro.md; inventory.json (127 casos de FEP-09 sin cambios y 36 de estereoquímica); producto ee2d6c78; camino B respetar; Vina 8/9/42; pH 7.4
Razón de la decisiónReason for the decision
163 auditorías confirmatorias, producto ee2d6c78 (P01 arreglado), camino B respetar, Vina 8/9/42, pH 7.4, modo tautomérico efectivo entrada en las 163; prerregistro 68d36882; 0 fallos. entorno.referencia REGISTRADO 163/163 (FEP-09: 0/127). Huecos en el sitio 15/15, CP95 [0.7819806391, 1.0], GO, ahora midiendo desde el ligando. Estereoquímica sin asignar 21/21 en 7 dianas (3 por diana), CP95 [0.8389023848, 1.0], GO. Falsa alarma 0/585 (FEP-09: 4/555, por procedencia.commit con el arnés editado); acuerdo de bases 1170/1170. Agua puente 0/9 y protonación del sitio 0/5 (saturadas) iguales caso a caso que en FEP-09: límites de alcance, no efectos de P01. Tautómero minoritario y especie con n=0: INCONCLUSIVE global por construcción, como se preregistró. Las seis predicciones se cumplen. Duración: del primer inicio al último término de la fase confirmatoria, tres cápsulas en paralelo.

Métricas registradasRecorded metrics

decision
INCONCLUSIVE
experiment
FEP-09-R1
n_planned
163
n_terminal
163
product_commit
ee2d6c78

ReproducibilidadReproducibility

commit
ee2d6c7846 (dirty)
ramabranch
claude/integracion-fep09-evaluacion
semillaseed
42
selladosealed
11 de octubre de 2026October 11, 2026
duraciónduration
43 min
complejoscomplexes
163
hashes SHA-256
1725
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MET-01-ION-DEL-SITIOMET-01 no puede comparar el ion: la evaluación pierde la whitelistInconclusoInconclusiveArtículoPaper

INCONCLUSIVE. La variante CON conserva Zn, pero las seis tentativas CON del piloto 1BN1 usaron el receptor SIN. No se inició la fase confirmatoria ni se estimó el efecto del ion.

INCONCLUSIVE. MET-01 se detuvo en el piloto porque el producto cambió el receptor del brazo CON. La evidencia no responde si conservar el ion mejora el redocking. Se mantiene la abstención; cualquier arreglo del producto y repetición requieren otro encargo y un experimento MET-01-R1.

Qué se fijó antes de acoplar

Producto f0e6408668fa8ecbecb417cf39621928fdfee886, Vina 1.2.7, Meeko 0.7.1, Python embebido 3.11.9, RDKit 2025.9.6 y PoseBusters 0.6.5 dock, con H reconstruidos bajo MF-33-H-COR. Exhaustividad 8, nueve poses solicitadas, un conformador, CPU=4 y semillas 42–46. Prerregistro: 32e552ebe823d8e289582102d52424bce3cd6d4a.

La población fija tiene 41 entradas y 52 iones: 35 entradas coordinan un ion por geometría del cristal y seis son controles. Los SMILES del CCD, sus URL, fechas y hashes, microestados normales y formas diagnósticas se congelaron antes de Vina. Se conservaron las definiciones completas. Diccionario wwPDB.

Se reutilizan sin modificar Backend.evaluar, _cristal, _neutro_sin_h y _top1 de CAL-8HFI-01. RMSD simétrico de átomos pesados, sin alinear, del top-1 comprobado contra el PDBQT; todos los RMSD de las poses devueltas se conservan. Reproduce una entrada si ≥3 de 5 semillas dan RMSD ≤2 Å y todas las semillas cuyo RMSD cumple son físicamente válidas.

Potencia y reconocimiento

Prueba pareada exacta de signos, bilateral, α=0,05. Seis discordancias 6:0 dan p=0,03125: 17,14 puntos sobre n=35, un límite de significación, no de potencia. El efecto mínimo preregistrado fue 40 puntos de tasa pareada, bajo el supuesto explícito de 50 % de discordancias: potencia de 94,76 % con n=35, 82,02 % con n=25 y 87.24 % con las 28 entradas principales previstas. A 80 % de potencia son detectables 33,7 puntos con 35 y 39,4 con 25 bajo ese mismo modelo. La tabla de sensibilidad está sellada. No se garantiza esa potencia para tasas desconocidas de discordancia.

Dos preparaciones en procesos distintos dieron hashes repetibles en 39 SIN y 37 CON. SIN coincide con el catálogo en 38 de las 39 preparables. Se excluyeron antes de docking nueve entradas: 1VKG, 5E92, 5I3T, 6S1Y, 6S1Z, 6USR, 8UBR, 8WGR, 9GKV. Son siete principales y dos controles. 8UBR conserva dos ATP adicionales en la variante, al perderse site_ligand durante la ingesta; se excluyó antes de Vina, sin arreglarlo. Las demás causas de preparación o referencia no casable se documentan por entrada. Quedaban 28 principales y cuatro controles.

Se fijó antes de medir un cambio del gate propuesto: no pérdida de reproducción en todos los controles evaluables, con mínimo cuatro de seis. Dos controles ya eran inevaluables por preparación/referencia. Un n<25 o más de 30 % de exclusiones principales exige INCONCLUSIVE. El cambio no permite afirmar ausencia de daño en los controles omitidos.

Qué reveló el piloto

La API creó CON de 1BN1 con cofactors_whitelist=["ZN"] y hash e23dabe7f14c443a8df26a8ec8aa0ff5d2d3efd90370e4c5d4ee65dd6ff5c08b. Preflight y pipeline usan _coerce_hotspots, cuya implementación conserva sólo elementos dict: la lista de cadenas se convierte en []. La evaluación vuelve a preparar el receptor sin Zn. Su hash es 96e0aa3134454f59a8f8bc3ef365ae8412c3c5bd3e67490988e7e204acb6fed8, el de SIN. La copia del receptor utilizado, los logs de Vina, los resultados persistidos y los seis crudos CON confirman el mismo cambio. Las funciones originales prueban también el descarte de MG, CA y K; esto demuestra el mecanismo, no resultados de redocking en esas entradas.

Evidencia del pilotoCantidad
SIN con resultado completo y receptor esperado5 semillas
Intentos solicitados CON que utilizaron SIN6, dos por semilla 42–44
Terminales rechazados por el guardián de receptor3 de 8 (37,5 %)
Pares válidos en el piloto0
Corridas confirmatorias0 de 380 previstas
Pares principales / controles al cierre0 / 0

El limitador detuvo y cerró la cápsula al superar 30 %. El error es una invalidación del brazo por el producto; no prueba que Vina fallara ni que el ion empeorara. Los terminales originales conservan la etiqueta genérica INFRASTRUCTURE_FAILURE del guardián, junto con la causa exacta. No se reclasifican como poses fallidas para inflar el resultado científico. Antes hubo dos fallos de Vina por MAX_PATH y dos detenciones de montaje sin evaluación: se conservan aparte y las correcciones del arnés están en la bitácora. No se sobrescribió ningún crudo ni terminal.

Los cinco SIN del piloto dieron 0/5 RMSD ≤2 Å, 5/5 top-1 válidos y 0/5 ambos. Son datos del piloto, fuera del gate. Los seis intentos CON no son seis semillas independientes ni un brazo con metal. La prueba de signos no es aplicable con cero pares; el p=1 del JSON es la convención del algoritmo para cero discordancias, no una inferencia. El piloto pareado quedó incompleto y no permite estimar el tiempo total.

El límite de PoseBusters y del diagnóstico

El reconocimiento usó coordenadas del cristal, nunca poses acopladas. Meeko escribe los iones como ATOM; PoseBusters los excluye de la máscara inorgánica por considerarlos proteína y de la máscara de proteína por su elemento. Los 52 átomos metálicos cargados quedaron fuera de ambas máscaras: 46 pertenecían a la población y seis eran iones adicionales conservados por código de residuo. Un PASA no valida su coordinación. API de PoseBusters.

Las seis formas diagnósticas representables para Zn se fijaron con reglas químicas independientes y se contrastaron en dos procesos. No se ejecutaron. El pH usado para expresarlas no estima su población de unión. Tampoco se pudo medir la frecuencia de His con H en el nitrógeno coordinante durante corridas CON reales, porque ningún receptor CON se acopló.

Qué no dice y qué queda

No hay un NO_GO científico contra conservar el ion, una demostración de equivalencia ni una recomendación de whitelist por receptor. El redocking previsto usa el propio cristal: aun completo no demostraría cross-docking, afinidad, actividad, energía de coordinación, calibración ni readiness FEP. Las entradas comparten familias proteicas; no equivalen a 35 dianas independientes. Vina tampoco añade por conservar un ion los parámetros y pseudoátomos del protocolo AutoDock4Zn. Documentación de AutoDock.

Se conservan el prerregistro y toda la evidencia producida. El catálogo, M5 y el producto siguen en f0e64086. La confirmación no se lanzó, por lo que no hubo intervalo confirmatorio con ediciones. Los sellos usan rutas del repositorio y los archivos científicos están versionados. La única desviación de alcance fue un temporal propio creado fuera de scripts/docs durante la primera inspección de PoseBusters, retirado después; consta en la bitácora. El runtime no viaja por git y sus hashes sí.

Ficha del registro selladoSealed record sheet

CategoríaCategory
InconclusoInconclusive · Ejecutado y declarado sin conclusión. No se reclasifica a posteriori.Executed and declared without a conclusion. It is not reclassified afterwards.
Decisión del manifestManifest decision
INCONCLUSIVE
HipótesisHypothesis
Conservar los iones del sitio con el Vina del producto mejora la reproducción pareada top-1 del cristal frente a retirarlos, bajo microestados y receptores congelados.
Criterio prerregistradoPre-registered criterion
Signos exactos bilaterales alfa 0.05; GO significativo a favor de CON y sin daño en todos los controles evaluables, mínimo cuatro; n principal mínimo 25 y exclusiones no mayores de 30 por ciento; si no, NO_GO o INCONCLUSIVE según protocolo preregistrado.
ProtocoloProtocol
scripts/artifacts_science/MET-01-ION-DEL-SITIO/entrada/protocolo.json
Razón de la decisiónReason for the decision
Piloto CON invalidado: variante con Zn, ejecución sin Zn y hash idéntico a SIN por descarte de list[str] en _coerce_hotspots del producto f0e64086. Guardián detuvo 3/8 terminales (37,5 %); fase confirmatoria no iniciada, cero pares válidos. No estima el efecto del ion. Se preservan once crudos y se mantiene el gate preregistrado.

Métricas registradasRecorded metrics

experiment
MET-01-ION-DEL-SITIO
product_commit
f0e6408668fa8ecbecb417cf39621928fdfee886
decision
INCONCLUSIVE
failures_n
0
product_rejections_n
0
total_runs
0
per_element_condition
Membership is nonexclusive for entries containing more than one element; seed observations are correlated, not independent sample units.

ReproducibilidadReproducibility

commit
1be6e56de1
ramabranch
sol/met-01-metales
semillaseed
42
selladosealed
11 de octubre de 2026October 11, 2026
duraciónduration
10 min
hashes SHA-256
267
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FEP-09-SENSIBILIDADPreparación detecta cortes del sitio; la sensibilidad completa queda abiertaInconclusoInconclusiveArtículoPapern=127

Un ensayo pareado por la API, con 15 dianas de OpenFF, defectos sembrados y controles independientes. Resultado INCONCLUSIVE: la tabla conserva las detecciones, los límites y una comprobación de origen que no reconoce la receta de receptores ya preparados.

INCONCLUSIVE. Se completaron 127 intentos confirmatorios: 127 auditados, 0 rechazados antes de Preparación y 0 fallos de infraestructura. El piloto de ocho corridas se conserva aparte y no entra en estas cifras.

MolDesign pretende comunicar qué evidencia estructural produjo una corrida y dónde debe abstenerse. Un control positivo sobre estructuras preparadas por expertos, como FEP-08, no demuestra que la pestaña Preparación reaccione a defectos. Este experimento mide esa reacción por requisito, sin ejecutar energía libre ni cambiar el producto para mejorar su resultado.

Qué se midió

Producto f183e0af, Python embebido 3.11.9, Meeko 0.7.1, camino B (respetar, receta B versión 1, distinta de la receta automática 7), Vina 1.2.7, exhaustividad 8, nueve poses solicitadas, semilla 42, pH 7,4, un confórmero y modo tautomérico efectivo entrada. Se usaron tres cápsulas aisladas, cuatro núcleos por Vina, con datos y perfiles propios. No se ejerció el frontend externo ni el instalador.

Benchmark de OpenFF en commit fd88824f9114244f95a14b485e6d6c96c1de716d: 15 dianas con PDB y SDF en las rutas prescritas, de las 21 entradas en targets.yml. Se excluyeron seis por archivos ausentes, antes de ver resultados. Se eligió el primer registro SDF legible por diana; la caja fija de 20 Å por lado se centró en sus átomos pesados. Los archivos permanecen en el clon externo; aquí se conservan nombres, hashes, intervenciones y respuestas.

Para cada diana se repitió tres veces una subida y preparación independiente de la línea base. Cada variante del brazo A cambia una característica: cortes del esqueleto, cadena o especie ausente, estado químico o protonación local. Los generadores usan geometría directa y RDKit, sin importar las funciones del producto. La ruta fue upload → preflight → submit → status → result → POST preparacion, conservando estados y datos de todos los requisitos.

El prerregistro se fijó en 9cdd0eab826bbbbe10d9b2469c52fbd0a0cf1638 antes de la primera corrida. Una alerta ya presente en la base no cuenta como detección. Para categoría declarada con n≥8 se exige límite inferior del IC exacto bilateral 95 % de Clopper–Pearson ≥0,5 y falsa alarma de controles inocuos ≤0,10. Las categorías con n insuficiente quedan INCONCLUSIVE; no se retiran del gate.

Desviación declarada. El prerregistro llama «canónico» al modo por defecto, pero el arnés no especificó ese parámetro y la API de f183e0af aplicó entrada, como muestran preflight y ligand_state. Esa descripción era incorrecta; no se modificaron las peticiones entre brazos ni se reintentaron corridas. El texto preregistrado queda intacto. Las métricas describen la condición efectiva y el cierre queda INCONCLUSIVE; los proxies no validan minoría tautomérica ni el comportamiento bajo un modo canónico forzado.

Qué salió

CategoríanAuditorDetectado antesIC 95 % rutaDecisión / alcance
agua_puente_retirada900[0,000; 0,336]límite
cadena_del_sitio_ausente100[0,000; 0,975]límite
especie_del_ligando000no estimableINCONCLUSIVE
especie_opuesta_proxy710[0,004; 0,579]proxy
estereo_sin_asignar330[0,292; 1,000]INCONCLUSIVE
hueco_en_el_sitio15150[0,782; 1,000]GO
metal_o_cofactor_retirado100[0,000; 0,975]límite
protonacion_del_sitio500[0,000; 0,522]límite
tautomero_alternativo_proxy13130[0,753; 1,000]proxy
tautomero_minoritario000no estimableINCONCLUSIVE

El gate global exige que todas las categorías declaradas pasen. Estereoquímica tiene n=3; minoría tautomérica y especie con pKa independiente, n=0. Aunque una categoría suficiente pase, estas tres quedan INCONCLUSIVE.

«Auditor» cuenta un aumento de riesgo del requisito esperado respecto a su base, con el mínimo preregistrado; «detectado antes» guarda el rechazo explícito anterior. Las tasas de los límites y proxies son respuestas al ensayo, no sensibilidad bajo una cobertura que el producto no declara. metrics.json conserva también saturación, ausencias, casos evaluables y cambios colaterales, sin excluirlos para favorecer una tasa.

Hay saturación previa en 1 caso de cadena, 5 de especie proxy y 5 de protonación del receptor: su aviso base ya alcanza el mínimo, sin incremento atribuible a la intervención. Esos casos permanecen en el denominador descriptivo.

La falsa alarma de renumeración inocua fue 4/ 555 requisitos comparables (0,72 %). El acuerdo de las bases fue 99,55 %, sobre 1110 comparaciones; cambiaron 5. Requisitos no reproducibles por estado o riesgo: procedencia.commit (5). Las tres bases conservan un hash único de receptor por diana: 15/15.

En 5 comparaciones de base y 4 de renumeración cambió procedencia.commit entre REGISTRADO y NO_DISPONIBLE. El producto declara commit sólo con árbol general limpio (vina_service.py::_source_commit); los scripts y metadatos de este experimento se editaron y commitearon durante la fase larga, con diff de producto vacío. Las razones registradas explican esa ausencia por árbol modificado. Se mantienen estos cambios en el conteo preregistrado y se declara el factor de confusión: no prueban variación de química o de preparación, ni son evidencia de no determinismo de protonación.

Los 10 cortes lejanos son un control espacial, con 2 cambios no previstos entre requisitos comparables. El prerregistro permite revisión de esos extremos nuevos: el producto la declara aun lejos del sitio. Esa revisión legítima no se presenta como una falsa alarma ni se confunde con bloquear la cavidad.

Una comprobación de procedencia que falla

La referencia de distancias quedó sin evaluar por discrepancia de receta en 127/127 auditorías de este camino B. En la reproducción mínima de cdk2, el archivo de origen existe y el hash del receptor se verifica; la receta B recalculada coincide con la registrada. Sin embargo, el comprobador del origen usa la fórmula de la receta automática y concluye que no coincide.

La auditoría lo declara en entorno.referencia: «NO_EVALUADO». Por eso los otros requisitos usan la caja como referencia y no pueden ofrecer toda la geometría al ligando que declaran cuando reconocen el origen. El expediente separa este defecto de las especies borradas antes del upload: el auditor declara el diff que MolDesign produce, no reconstruir un origen que no recibió. No se aplicó ningún parche durante el experimento.

Concordancia descriptiva con FEP-08

DianaHuecos físicos que declara PreparaciónCadenas del sitio declaradas
cdk2REGISTRADO: Ninguno: el esqueleto de las cadenas del receptor es continuo (C–N ≤ 2 Å entre residuos consecutivos).A
thrombinREGISTRADO: Ninguno: el esqueleto de las cadenas del receptor es continuo (C–N ≤ 2 Å entre residuos consecutivos).H
tnks2REGISTRADO: Ninguno: el esqueleto de las cadenas del receptor es continuo (C–N ≤ 2 Å entre residuos consecutivos).A

FEP-08 marcó saltos de numeración en cdk2 y thrombin, y un sitio entre cadenas en tnks2. Un salto de numeración no prueba un corte físico. Además, aquí se observa la preparación de MolDesign por API y su referencia efectiva de caja. Esta comparación no entra al gate ni convierte documentabilidad preliminar en readiness de un cálculo posterior.

Lo publicado por terceros

DianaFuente abiertaQué comunica la fuenteObservación de esta versión
tnks2lig_7La incidencia comunica un N de amida sin H y carga negativa en lig_7 frente al resto de la serie; se comprueba su representación en el commit fijado, sin adjudicar su población a pH experimental.lig_7: ligando.especie=REGISTRADO, Microestado más próximo al predicho a pH 7.4, de 2 enumerados; global REVISION
eg5lig_CHEMBL1084935La incidencia pregunta por las dos representaciones de estereoquímica de una amina protonada y nombres repetidos. Es una preocupación publicada, no una demostración de que alguna sea incorrecta.lig_CHEMBL1084935: ligando.estereoquimica=REVISAR, La entrada declaraba 1 estereocentro(s) y 0 doble(s) E/Z que la especie acoplada no conserva (la normalización cambió esos átomos): lo acoplado no es el estereoisómero escrito.; global REVISION
thrombinlig_7dLa incidencia pregunta si la medida de lig_7d corresponde a un estereoisómero o una mezcla, ante varias entradas. Se documenta la incertidumbre experimental, sin atribuir un error a los autores.Sin registro con el nombre indicado en el commit fijado
tyk2construcción del receptorLa incidencia propone revisar D1023N respecto al sistema del ensayo. El auditor no declara comparar secuencia y construcción experimental; se mide como límite. La correspondencia de numeración con 4GIH no se ha probado.lig_ejm_54: sin requisito declarado de identidad del constructo experimental; global REVISION

Se abrieron las incidencias el 2026-10-11. Son preocupaciones públicas y preguntas, no demostraciones de que los curadores se equivocaron. El estado de la versión fijada debe contrastarse por separado: por ejemplo, su tnks2 lig_7 contiene [nH] neutro en la representación leída, y eg5 aporta un registro con el nombre buscado. Con cuatro preocupaciones y tres registros medidos, el brazo C es no concluyente y no tiene tasa.

Qué no dice

  • No mide la fracción de problemas reales de preparación que MolDesign detecta.
  • No demuestra transferencia a FEP, compatibilidad con FEP+ ni ejecución de energía libre.
  • No valida poblaciones tautoméricas, pKa individuales, protonación del receptor ni identidad experimental.
  • No audita interfaz, WebView2, runtime staged o instalador.
  • No atribuye errores a los autores de PLB. Los estados químicos proxy están fuera del gate.
  • No prueba un protocolo forzado a tautómero canónico: la API usó entrada por defecto, discrepante con la descripción del prerregistro.
  • La variación de procedencia.commit está confundida por ediciones y commits del arnés durante la medición; no demuestra no determinismo químico.
  • Las tasas de ausencia previa al upload no evalúan el diff que produce la preparación.

No se verificó una población independiente para llamar minoritario a cada alternativo RDKit ni un pKa individual que cumpla distancia >3 a pH 7,4. Estas dos categorías estrictas tienen n=0 verificable; los proxies se publican por separado. Tampoco se validó el carácter catalítico de cada Asp/Glu intervenido, ni la correspondencia de numeración TYK2–4GIH.

Consecuencia y reproducción

El resultado conserva qué categorías discriminan y cuáles quedan abiertas. La comprobación del origen de modo B necesita un encargo de corrección separado, y la cobertura química necesita una cohorte con estados verificados independientemente. No se cambia el producto de 1.0.2 ni se publica la rama.

Manifiesto, datos agregados, shards y verificación: scripts/artifacts_science/FEP-09-SENSIBILIDAD/. Arnés: scripts/fep09_inputs.py, fep09_run.py, fep09_analyze.py, fep09_verify.py, fep09_reproduce.py. El analizador incluye autotest positivo y negativo; sus IC se contrastaron con scipy.stats.beta en 5.150 combinaciones, tolerancia 1e-9. La producción usa biblioteca estándar.

Datos CC BY 4.0 de OpenFF, atribuidos a Hahn et al., LiveCoMS 2022, Best Practices for Constructing, Preparing, and Evaluating Protein-Ligand Binding Affinity Benchmarks. Código del benchmark MIT. El clon externo y su obtención están declarados en sellos_no_distribuidos.json.

Ficha del registro selladoSealed record sheet

CategoríaCategory
InconclusoInconclusive · Ejecutado y declarado sin conclusión. No se reclasifica a posteriori.Executed and declared without a conclusion. It is not reclassified afterwards.
Decisión del manifestManifest decision
INCONCLUSIVE
HipótesisHypothesis
Preparacion por API cambia los requisitos de riesgo ante defectos dentro de su cobertura declarada; variantes pareadas de PLB, no sensibilidad a problemas reales.
Criterio prerregistradoPre-registered criterion
Por categoria declarada n>=8, CP95 inferior>=0.5 y falsa alarma<=0.10. NO_GO si alguna falla, GO solo si todas pasan, de otro modo INCONCLUSIVE. Parar si infraestructura>30%.
ProtocoloProtocol
docs/auditorias/FEP-09-prerregistro.md; inventory.json; producto f183e0af; camino B respetar; Vina 8/9/42; pH 7.4
Razón de la decisiónReason for the decision
127 corridas confirmatorias, producto f183e0af, B/respetar, Vina 8/9/42. Huecos: 15/15, CP95 [0.7819806391, 1.0], gate GO; falsa alarma 0.007207207207207207. Estereo n=3, tautómero minoritario y especie con pKa independientes n=0: no permiten GO global. Proxies, límites y brazo C fuera del gate estricto. Modo tautomérico efectivo entrada; descripción preregistrada canónica incorrecta, publicada sin modificar protocolo ni reintentar corridas. Duración: reloj de fase confirmatoria entre primer inicio y último término, cápsulas paralelas.

Métricas registradasRecorded metrics

decision
INCONCLUSIVE
experiment
FEP-09-SENSIBILIDAD
n_planned
127
n_terminal
127
preregistration_commit
9cdd0eab826bbbbe10d9b2469c52fbd0a0cf1638
product_commit
f183e0af

ReproducibilidadReproducibility

commit
45d4490ee6 (dirty)
ramabranch
sol/fep-09-sensibilidad
semillaseed
42
selladosealed
11 de octubre de 2026October 11, 2026
duraciónduration
36 min
complejoscomplexes
127
hashes SHA-256
1422
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

CAL-8HFI-018HFI reproduce la pose, pero no ordena su serieRefutaciónRefutationArtículoPapern=62

El primer intento de verificar un receptor del catálogo: el transportador de noradrenalina reproduce la desipramina del cristal en 3 de 5 semillas, pero Vina ordena las 57 moléculas del panel casi como el azar (ρ = 0,13; IC 95 % de −0,16 a 0,41). 8HFI sigue en Demostración, con el resultado publicado en la aplicación.

Ninguno de los 381 receptores del catálogo tenía una calibración medida frente a datos experimentales. Para 1.0.2 se buscaba un primer receptor «verificado», y 8HFI (el transportador de noradrenalina humano, con desipramina en el sitio) era el candidato con el panel más completo: CHEMBL853189, 57 compuestos padre con Ki medido en un mismo ensayo.

La hipótesis, fijada antes de acoplar nada, tenía dos partes. Con la receta de receptor que publica el producto (la 7) y la configuración por defecto de un caso (exhaustividad 8, 9 poses, semilla 42):

  1. Pose: el top-1 reproduce la desipramina del cristal (RMSD ≤ 2 Å, sin alinear) en al menos 3 de 5 semillas, y es físicamente válido en PoseBusters.
  2. Calibración: el top-1 de Vina ordena el panel con una ρ de Spearman cuyo IC 95 % bootstrap tiene el límite inferior por encima de 0.

Qué se midió

Todo pasó por la API del producto, no por un script aparte: la misma preparación, la misma especie química y los mismos parámetros que obtendría un usuario. Los microestados se congelaron antes de acoplar y no hubo ninguna desviación del protocolo. Hubo un solo receptor preparado (un único SHA-256) y cero fallos en las 57 moléculas.

Qué salió

NO_GO. La pose pasa, justo en el límite. La calibración, no.

ResultadoExigido
Semillas con RMSD ≤ 2 Å3 de 5 (0,52; 0,56; 0,64 Å)≥ 3
Semillas que fallan3,68 y 4,12 Å—
Top-1 válidos en PoseBusters5 de 5todos
ρ de Spearman (−E de Vina frente a pKi)0,13—
IC 95 % bootstrap (10 000 remuestreos)[−0,16; 0,41]límite inferior > 0
IC 95 % de Fisher[−0,14; 0,38]—

Con este receptor y esta configuración, el orden que da Vina no se distingue del azar en esta serie. El rango de afinidades no es el problema: el pKi va de 5,97 a 8,85, casi tres órdenes de magnitud.

Qué no dice

  • No dice que Vina no sepa acoplar en NET. La pose del cristal se reproduce con precisión cuando sale (0,5–0,6 Å). Lo que falla es el orden entre análogos.
  • No vale para ligandos de estructura diversa. El panel es casi entero una serie: 53 de los 57 comparten el mismo andamio de Murcko. La ρ describe cómo ordena compuestos de esa serie.
  • No es una afirmación sobre el ensayo. Las condiciones (pH, temperatura, radioligando) no constan en las fuentes consultadas, y la correlación es dentro de un único ensayo.

Dos condiciones declaradas

  • Sin iones. La preparación del producto retira el cloruro del depósito. Vina no tiene término electrostático y su corte es de 8 Å: el top-1 más cercano queda a 7,9 Å de donde estaba el cloruro, y sólo uno de los 57 top-1 queda a menos de 8 Å. La estructura no modela sodio.
  • Dos correcciones técnicas del análisis, hechas y declaradas antes de calcular ninguna cifra: neutralizar después de quitar los hidrógenos explícitos (con ellos, la amina protonada no casaba con el ligando neutro del cristal) y excluir los pseudoátomos con que Meeko abre el anillo de siete de la desipramina al contrastar el SDF con el PDBQT.

Lo que apareció por el camino

El producto acoplaba los 57 padres con carga +2, con las dos aminas protonadas, también cuando una de ellas lleva un grupo atractor cerca del nitrógeno y su pKa real queda cerca o por debajo de 7,4. No decide este resultado (no hay forma de saber si otra especie ordenaría mejor sin medirlo), pero era un defecto de química: desde 1.0.2, la «Especie acoplada» de esas aminas pide revisión, con su motivo.

Consecuencia

8HFI sigue en Demostración, y la sección «Verificados» sale vacía en 1.0.2. El intento se publica igualmente: el selector de receptores y los resultados con 8HFI muestran estas cifras, sus condiciones y este experimento. Un receptor sólo entra en Verificados si supera el protocolo; publicar también los intentos que no lo superan es lo que da sentido a esa sección.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
Con la receta 7 y la configuracion por defecto de un caso (exhaustividad 8, 9 poses, semilla 42), 8HFI reproduce la pose cristalografica de la desipramina (RMSD <= 2 A sin alinear en >= 3 de 5 semillas, top-1 valido en PoseBusters) y el top-1 de Vina ordena el panel CHEMBL853189 (57 padres, Ki) con rho de Spearman cuyo IC 95 % bootstrap tiene limite inferior > 0.
Criterio prerregistradoPre-registered criterion
GO si verificacion de pose (>= 3/5 semillas con RMSD <= 2 A y top-1 valido) Y calibracion (limite inferior del IC 95 % de rho(Q, pKi) > 0, cero fallos tras un reintento) Y un unico receptor_sha256; si no, NO_GO y 8HFI sigue en Demostracion con su resultado publicado.
ProtocoloProtocol
scripts/artifacts_science/CAL-8HFI-01/entrada/protocolo.json; scripts/calibracion_receptor.py; decisiones del propietario 2026-10-09
Razón de la decisiónReason for the decision
Verificacion de pose GO en el limite: 3 de 5 semillas reproducen la desipramina (RMSD 0,52/0,56/0,64 A; 3,68 y 4,12 A fallan) y los cinco top-1 son validos. Calibracion NO_GO: rho(-E, pKi) = 0,13, IC 95 % bootstrap [-0,16; 0,41], Fisher [-0,14; 0,38], n = 57, cero fallos, un solo receptor_sha256, parametros 8/9/42 y microestados congelados sin desviacion. El top-1 de Vina no ordena esta serie congenerica en 8HFI. 8HFI sigue en Demostracion con este resultado publicado; no se cambia el panel.

Métricas registradasRecorded metrics

experimento
CAL-8HFI-01
analizado_en
2026-10-09T13:18:55+00:00
decision
NO_GO

ReproducibilidadReproducibility

commit
36405e1854 (dirty)
ramabranch
claude/cal-8hfi
semillaseed
42
selladosealed
9 de octubre de 2026October 9, 2026
duraciónduration
45 min
complejoscomplexes
62
hashes SHA-256
72
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FEP-08-CONTROL-POSITIVOEl auditor distingue una preparación experta, y contar tautómeros no la mideHallazgoFindingArtículoPapern=384

Sobre un benchmark preparado por expertos para FEP relativo, el auditor documenta el doble de receptores que en PDBBind. Pero el número de tautómeros sale igual: depende de la molécula. Y en uno de cada seis ligandos, los curadores eligieron un tautómero distinto del que acoplaría MolDesign.

MolDesign quiere ser un auditor de readiness para energía libre: decir qué le falta a un sistema antes de un cálculo caro. Un auditor así tiene que pasar un control positivo. Si marca igual una estructura preparada por expertos que una sin preparar, no está midiendo preparación.

El control es el protein-ligand-benchmark de OpenFF («Best practices for constructing, preparing, and evaluating protein-ligand binding affinity benchmarks», Hahn et al.; dataset DOI 10.5281/zenodo.4813735; datos CC BY 4.0): 15 dianas con la proteína preparada y 369 ligandos con la protonación y el tautómero elegidos por sus curadores. Se le aplicaron sin modificarlas las mismas funciones selladas que auditaron PDBBind.

Dos predicciones, fijadas antes de medir

(a) Lo que depende de la preparación tiene que distinguir. (b) Lo que depende de la química, no.

Qué salió

GO: se cumplen las dos.

OpenFFPDBBind
Receptores documentables (sin huecos, sitio en una cadena)80,0 % (12/15)39,7 %
Ligandos con un único tautómero enumerable18,2 %21,6 %
Ligandos con estereoquímica indefinida0 de 36948 de 4641

El auditor de receptores ve la preparación: el doble de sistemas documentables. Los tres que fallan lo hacen con motivo: cdk2 y trombina conservan un hueco de numeración, y en tnks2 el sitio se reparte entre dos cadenas.

El recuento de tautómeros no la ve. Los curadores prepararon cada ligando a conciencia y aun así el 82 % admite más de un tautómero. Contar tautómeros describe la molécula, no el trabajo que se hizo con ella. La readiness de un ligando no puede depender de cuántos tautómeros existen, sino de quién eligió uno y con qué evidencia.

El hallazgo que cambia el producto

En 62 de 369 ligandos (16,8 %) el tautómero que eligieron los curadores no es el canónico de RDKit. Y no están dispersos, sino que son series casi enteras: cdk8 (19), tnks2 (18), syk (15) y cdk2 (10).

MolDesign acopla el canónico de RDKit. Si un investigador le entregara estas moléculas, el producto sustituiría la elección de los curadores por la de un canonicalizador que no pretende predecir poblaciones. Lo avisa, pero la sustituye. Para docking con Vina apenas importa; para un paquete que va a un cálculo de energía libre, la elección de una fuente curada es evidencia y no debería perderse.

La limitación, declarada

Con 15 dianas, cada receptor mueve la fracción siete puntos. El control dice si el auditor distingue una preparación experta, no si las elecciones de los curadores son correctas. El artefacto guarda nombres y resultados, no estructuras del benchmark.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Control positivo del auditor de readiness: aplicadas sin modificar las funciones selladas de FEP-01 y FEP-02 al protein-ligand-benchmark de OpenFF (preparado por expertos para RBFE), (a) el receptor documentable de FEP-02 (sin huecos de numeracion y sitio en una sola cadena) es al menos 20 puntos mas frecuente que en PDBBind (39.7%, FEP-02-PDBBIND), porque depende de la preparacion; y (b) la fraccion de ligandos con un unico tautomero enumerable no se aleja mas de 15 puntos de la de PDBBind (21.6%, FEP-01-DECL), porque depende de la quimica y no de quien preparo la molecula.
Criterio prerregistradoPre-registered criterion
GO si (a) la fraccion de receptores documentables de OpenFF es >= 0.597 (39.7% + 20 puntos) y (b) la fraccion de ligandos RESUELTO_UNICO esta en [0.066, 0.366] (21.6% +- 15 puntos). NO_GO si falla cualquiera de las dos. Se informan siempre huecos, sitio entre cadenas, estereo indefinido y si el tautomero de los curadores coincide con el canonico de RDKit.
ProtocoloProtocol
scripts\analisis_fep08_control_positivo.py sobre openforcefield\protein-ligand-benchmark (clon del commit fd88824f9114244f95a14b485e6d6c96c1de716d, datos CC BY 4.0, codigo MIT) en E;C:\Program Files\Git\MolDesign-science\openff-plb. Las funciones _analizar de analisis_fep01_integridad.py y analisis_fep02_receptor.py se cargan sin modificar y se les sustituye el directorio de datos por una copia con el formato de PDBBind (receptor; 01_protein\crd\protein.pdb; sitio definido con el primer ligando de 02_ligands\ligands.sdf; ligandos uno por uno). Declaracion de tautomeros con backend\chem\declaracion_tautomeros.py sobre la lectura de FEP-01 (MolFromMolFile). Sin atom mapping (no hay index_map). Prueba tecnica previa con --limite 1 (cdk2), que por contrato no lee el gate.
Razón de la decisiónReason for the decision
GO: las dos predicciones se cumplen. (a) Preparacion: 12 de 15 receptores del protein-ligand-benchmark de OpenFF son documentables para FEP-02 (80.0%) frente al 39.7% de PDBBind; los tres que no: cdk2 y thrombin por un hueco de numeracion y tnks2 por un sitio entre dos cadenas. (b) Quimica: 67 de 369 ligandos (18.2%) tienen un unico tautomero enumerable, frente al 21.6% de PDBBind: el numero de tautomeros depende de la molecula y no de quien la preparo, asi que contar tautomeros no mide preparacion. Estereo indefinido 0 de 369 (PDBBind 48 de 4641). Hallazgo aparte, con consecuencia para el producto: en 62 de 369 ligandos (16.8%) el tautomero elegido por los curadores NO es el canonico de RDKit que acopla el conformador, y se concentran en series enteras (cdk8 19, tnks2 18, syk 15, cdk2 10). Para un paquete FEP, la eleccion de una fuente curada es evidencia, y hoy el conformador la sustituye (lo avisa, pero la sustituye). Funciones selladas de FEP-01 y FEP-02 reutilizadas sin modificar, con sus SHA-256 en metrics.json. Datos: openforcefield/protein-ligand-benchmark, commit fd88824f, datos CC BY 4.0 (Hahn et al., LiveCoMS 2022); el artefacto guarda nombres y resultados, no estructuras. Limitacion: 15 dianas dan una resolucion de ~7 puntos en la fraccion de receptores.

Métricas registradasRecorded metrics

experimento
FEP-08-CONTROL-POSITIVO
generado_utc
2026-09-23T23:44:29.528552+00:00
duracion_s
13.9
rdkit
2025.09.6
declaracion_sha256
a2d467c06c7a3da8b0f446f9863c4548c9518bb8696b8abf704777f7ce2c598b
decision_por_el_gate
GO
no_demuestra
Con 15 dianas, la fracción de receptores tiene una resolución de ~7 puntos. Tampoco dice que las elecciones de los curadores sean correctas: sólo si el auditor las distingue.

ReproducibilidadReproducibility

commit
0405b13edc (dirty)
ramabranch
codex/release-hygiene
semillaseed
0
selladosealed
23 de septiembre de 2026September 23, 2026
duraciónduration
14 s
complejoscomplexes
384
hashes SHA-256
8
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FEP-01-DECLDeclarar tautómeros sube FEP-01 al 89 %, pero sólo resuelve el 19 %MediciónMeasurementArtículoPapern=4641

El roadmap predijo que declarar el tautómero llevaría la preparación para FEP de 19 % a más del 80 %. Se cumple: 180 de 203. Y la descomposición enseña por qué esa cifra no puede citarse sola.

FEP-01 midió que 164 de 203 ligandos tienen más de un tautómero enumerable y que el pipeline no declaraba cuál acoplaba. El tautómero decide qué átomos donan y cuáles aceptan puentes de hidrógeno; para un cálculo de energía libre, elegir uno en silencio es elegir la molécula.

El roadmap escribió una predicción concreta: declarar los tautómeros subiría FEP-01 de 19 % a más del 80 % de un golpe. Este experimento la pone a prueba con la declaración que ya produce el conformador.

Qué es «declarar»

RDKit enumera los candidatos; no decide cuál domina en disolución, y su tautómero canónico es una representación reproducible, no una predicción. Así que la declaración tiene tres estados:

  • un solo tautómero enumerable;
  • varios candidatos, la lista completa y ninguno descartado, porque no hay un modelo de poblaciones validado;
  • no resuelto: la enumeración falló o pasó del tope de 32.

El criterio de FEP-01 pasa de «un solo tautómero» a «tautómero declarado» (cualquiera de los dos primeros). Estereoquímica y atom mapping se toman tal cual de los sellos anteriores.

Qué salió

GO: 180 de 203 (88,7 %). La predicción se cumple. Pero:

ligandos
Un solo tautómero39 (19,2 %)
Listos sólo porque su multiestado quedó declarado141
No resueltos (más de 32 tautómeros)22
Bloqueados por estereoquímica1

Los 39 únicos son exactamente los 39 del sello: declarar no resolvió ni uno más. Lo que hizo es convertir 141 ambigüedades silenciosas en ambigüedades escritas, con sus candidatos (mediana 4, entre 2 y 31) y los átomos que cambian.

En PDBBind completo, sin gate, sobre 4641 ligandos legibles: 1003 con un solo tautómero, 3187 con varios y 451 no resueltos. El reparto es el mismo.

Por qué el 89 % no puede citarse solo

Un paquete con varios tautómeros no está resuelto: exige a quien calcula tratarlos todos o elegir uno con evidencia. Un tautómero que en disolución sólo tiene el 1 % de la población, tratado como si costara cero, ya introduce unas 2,7 kcal/mol, más que la precisión que se espera de un cálculo relativo. Por eso el producto no cuenta como resuelto lo que sólo está declarado, y la cifra que describe el estado real es la del 19 %.

Lo que sigue

Un modelo energético validado que permita descartar los candidatos fuera de una ventana de 2-3 kcal/mol, y que el paquete de exportación lleve todos los que queden, cada uno con su identificador.

La limitación, declarada

En PDBBind, 4 ligandos cambian de «único» a «varios» respecto del sello porque aquí se conserva la estereoquímica sp3 al enumerar y el sello usaba el enumerador por defecto. En los 203 coinciden los 39.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Declarar el tautomero con tres estados (RESUELTO_UNICO, MULTIESTADO_REQUERIDO, NO_RESUELTO; backend/chem/declaracion_tautomeros.py) sube la fraccion de ligandos listos de FEP-01 sobre los 203 complejos de molflex por encima del 80%, como predicen docs/50_ROADMAP.md (seccion 3) y AGENTS.md (de 19% a mas del 80%), si el criterio de tautomero pasa de 'un solo tautomero enumerable' a 'tautomero declarado' (estado distinto de NO_RESUELTO).
Criterio prerregistradoPre-registered criterion
GO si en los 203 de FEP-01 la fraccion de listos con el criterio 'tautomero declarado' (con mapping) es >= 0.80. NO_GO si es menor. PDBBind se informa sin gate. La fraccion de listos solo por tautomero unico y la de listos solo por multiestado declarado se informan siempre, junto a la decision.
ProtocoloProtocol
scripts/analisis_fep01_declaracion.py. Para cada complejo de los per_complex sellados de FEP-01 (203) y FEP-01-PDBBIND (5325) se lee data/pdbbind/<pid>/<pid>_ligand.sdf con Chem.MolFromMolFile (la misma lectura que FEP-01) y se declara con declarar_tautomeros (RDKit, tautomerRemoveSp3Stereo=False, tope 32 como FEP-01). Estereoquimica y atom mapping se toman tal cual de los sellos, sin volver a medir. Listo = sin estereo indefinido, mapping biyectivo que cubre los pesados, y tautomero declarado. Se informa aparte cuantos listos lo son solo por MULTIESTADO_REQUERIDO (declarado no es resuelto) y, para PDBBind, la variante sin mapping (no hay index_map). Prueba tecnica previa con --limite 5, que por contrato no lee el gate. Maquina local, Python del sistema con RDKit 2025.09.6.
Razón de la decisiónReason for the decision
GO por la letra del gate: en los 203 de FEP-01, 180 (88.7%) quedan listos con el criterio 'tautomero declarado' (umbral 80%), como predecia el roadmap. La lectura que importa es la descomposicion: solo 39 (19.2%, los mismos 39 del sello) tienen un unico tautomero; 141 estan listos SOLO porque su multiestado quedo declarado (varios candidatos, ninguno descartado con evidencia), y 22 siguen NO_RESUELTO porque la enumeracion llega al tope de 32 (los 164 ambiguos del sello son 142 multiestado + 22 no resueltos). La estereoquimica bloquea 1. Declarado no es resuelto: un paquete con varios tautomeros exige a quien calcula tratarlos todos, o elegir uno con evidencia que hoy no hay (sin modelo de poblaciones validado). Los multiestado tienen mediana de 4 candidatos (2 a 31). PDBBind, sin gate, sobre las 4641 entradas legibles del sello: 1003 unico, 3187 multiestado, 451 no resuelto; sin el criterio de mapping (no hay index_map) 4143 listos (89.3%), de ellos 985 por tautomero unico (21.2%) frente a 989 del sello: 4 cambian porque el sello uso el enumerador por defecto y aqui se conserva la estereoquimica sp3 (tautomerRemoveSp3Stereo=False); en los 203 coinciden 39/39. 0 fallos. Siguiente: un modelo energetico validado para descartar candidatos fuera de 2-3 kcal/mol, y que el paquete FEP-05 lleve todos los candidatos con su id.

Métricas registradasRecorded metrics

experimento
FEP-01-DECL
generado_utc
2026-09-23T23:39:22.452050+00:00
duracion_s
24.8
rdkit
2025.09.6
modulo_declaracion_sha256
a2d467c06c7a3da8b0f446f9863c4548c9518bb8696b8abf704777f7ce2c598b
prediccion_puesta_a_prueba
docs/50_ROADMAP.md §3: declarar tautómeros sube FEP-01 de 19% a >80%
umbral_go
0.8
decision_por_el_gate
GO
no_demuestra
Que el tautómero acoplado sea el correcto. «Declarado» incluye MULTIESTADO_REQUERIDO: varios candidatos sin descartar, que quien calcule tiene que tratar.

ReproducibilidadReproducibility

commit
60437c04a7 (dirty)
ramabranch
codex/release-hygiene
semillaseed
0
selladosealed
23 de septiembre de 2026September 23, 2026
duraciónduration
25 s
complejoscomplexes
4641
hashes SHA-256
8
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MMGBSA-H3-FREESOLV-RADIOSEl radio de Bondi empeora la hidratación del bromo y del yodoRefutaciónRefutationArtículoPapern=642

Contra 37 moléculas de FreeSolv, cambiar el radio GB de Br e I por el de Bondi sube el error de 1,93 a 2,05 kcal/mol. El radio se queda en 1,5 Å, y el análisis posterior apunta a otro sitio: el flúor y la dispersión.

En GBn2, el bromo y el yodo reciben un radio de 1,5 Å: no porque alguien lo eligiera para ellos, sino porque es el valor por defecto para elementos sin parámetro. La hipótesis era que un radio físico, el de Bondi (1,85 y 1,98 Å), acertaría mejor la energía libre de hidratación.

Qué se midió

Las 642 moléculas neutras de FreeSolv v0.52 (Mobley y Guthrie, 2014; datos CC BY 4.0), con un solo confórmero y sin minimizar: una estimación estática, no una energía libre con muestreo. Polar: GBn2 con las correcciones de Amber de MMGBSA-H13. No polar: γ·SASA + b, ajustado sólo con las 467 moléculas sin halógeno, para que ningún radio de Br o I pudiera compensar un sesgo del término no polar. Nada se ajusta en Br ni en I.

Qué salió

NO_GO. El radio de Bondi empeora el acierto.

1,5 ÅBondi
Br e I (37)1,932,05 kcal/mol
Br (21)1,671,80
I (12)1,131,27

El intervalo bootstrap de la diferencia es [−0,01; +0,25] y Bondi mejora 8 de 37 moléculas. Con 1,5 Å el bromo ya sale infrasolvatado —sesgo +1,57 kcal/mol—, y un radio mayor lo empeora. Repetido con PB en lugar de GB, Bondi tampoco mejora: el resultado no es un artefacto de la aproximación GB.

La medida que hubo que repetir

La primera corrida perdió justo las 37 moléculas que decidían: pbsa corta los nombres de archivo a 80 caracteres y la ruta del brazo de Bondi medía 81. Se corrigió, se declaró antes de repetir y se repitió sólo la medida: las 605 moléculas que ya habían salido dan valores idénticos bit a bit.

Lo que apareció después, sin decidir nada

El análisis posterior al gate —exploratorio y declarado como tal— encontró dos patrones más grandes que el del radio:

  • GBn2 sobresolvata los grupos polifluorados frente a PB con los mismos radios: con uno o dos F coinciden; con un CF₃, −2,3 kcal/mol de media; con cuatro o más F, −7,7.
  • Las moléculas con cuatro o más cloros quedan +5,9 kcal/mol por encima del experimento sin que PB lo explique, lo que apunta a un término no polar sin dispersión atractiva.

Son hipótesis nuevas. Ninguna se ha prerregistrado todavía, y ninguna se arregla con un número de la literatura: la bibliografía revisada no ofrece un radio ni un apantallamiento de flúor validados para GBn2.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
En GBn2 (con las correcciones de fosforo y de descreening de Amber), usar para Br e I el radio de Bondi (1.85 y 1.98 A) en vez del 1.5 A que asigna mbondi3 reduce el error absoluto medio de la energia libre de hidratacion calculada frente a la experimental de FreeSolv v0.52 en las moleculas con Br o I, con el termino no polar calibrado solo en moleculas sin halogeno.
Criterio prerregistradoPre-registered criterion
Sin ajustar nada en Br ni en I, sobre las 37 moleculas con Br o I (21 Br, 4 Br mixtas, 12 I): GO si MAE_B <= 0.8*MAE_A y el IC bootstrap 95% (1000 remuestreos de moleculas, semilla 20260923) de MAE_B - MAE_A queda entero por debajo de 0. NO_GO en cualquier otro caso. Br e I se informan por separado sin las mixtas; los controles no cambian entre brazos por construccion; PB y el valor alquimico GAFF de FreeSolv se informan como referencia.
ProtocoloProtocol
backend/audits/freesolv_h3.py. FreeSolv v0.52 (DOI 10.5281/zenodo.1161245, datos CC BY 4.0), 642 moleculas, coordenadas 3D de sus SDF, un confomero sin minimizar; regla de curacion declarada: los 37 nitro que el SDF de OEChem escribe como N(-O-)(-O-) se corrigen a [N+](=O)[O-] y se exige el InChIKey del SMILES (37/37 recuperados; 2 difieren solo en estereoquimica y se aceptan). GAFF2 + AM1-BCC (antechamber) + mbondi3 (tleap) en el contenedor moldesign-science. Polar: energia de la CustomGBForce de OpenMM 8.5.2 con apply_amber_gbn2_phosphorus y apply_amber_gbn2_descreening; brazo B cambia RADII de Br/I en el prmtop antes de construir el sistema. No polar: gamma*SASA+b, SASA de FreeSASA Lee-Richards (radios de Bondi, sin H), gamma y b por minimos cuadrados SOLO en las moleculas sin halogeno. PB de AmberTools (pbsa, radiopt=0, space 0.25, fillratio 4) como referencia electrostatica fuera del gate. Piloto previo de 6 moleculas (1 Br, 1 I, 1 nitro, 1 con S, 2 controles) solo para probar la cadena: no se comparo con el experimento.
Razón de la decisiónReason for the decision
NO_GO por la letra del gate: sobre las 37 moleculas con Br o I, MAE_A (1.5 A, mbondi3) 1.930 y MAE_B (Bondi, Br 1.85 e I 1.98 A) 2.053 kcal/mol; reduccion relativa -6.4% (se exigia >= 20%) e IC95 bootstrap de MAE_B - MAE_A [-0.010, +0.246], que no queda entero bajo cero. Br (n 21): MAE 1.67 -> 1.80, sesgo +1.57 -> +1.73. I (n 12): MAE 1.13 -> 1.27, sesgo +0.06 -> +0.76. El brazo B reduce el error en 8 de 37 moleculas. Se cumple la clausula de refutacion de H3: el radio por defecto da menos error; con 1.5 A el Br ya queda infrasolvatado (sesgo positivo) y agrandar el radio lo empeora. No polar ajustado solo en 467 moleculas sin halogeno: gamma 0.02537 kcal/mol/A2, b -3.418 kcal/mol. La primera medida se perdio por un fallo del script, no de la quimica (pbsa corta los nombres de archivo a 80 caracteres; los 37 fallos son exactamente las 37 Br/I, registrados en failures.jsonl); corregido y declarado en f7871d8, se repitio solo la etapa medir sobre los mismos prmtop: 642/642, y las 605 moleculas que ya habian salido son identicas bit a bit. Caracterizacion exploratoria posterior al gate (freesolv_h3_caracterizar.py; no cambia la decision): con PB en lugar de GB y el no polar reajustado igual, Bondi tampoco mejora (Br/I MAE 1.15 -> 1.21; Br empeora, I mejora 1.28 -> 1.00), asi que el NO_GO no es un artefacto de la aproximacion GB. GBn2 sobresolvata frente a PB con los mismos radios las moleculas con 3 F (media -2.34 kcal/mol, n 13) y con 4 o mas F (-7.68, n 5), mientras con 1 o 2 F coincide (+0.55, +0.45); y el modelo deja un sesgo de +5.94 kcal/mol en las policloradas (4 o mas Cl, n 31) que PB no explica (GB-PB -0.40), atribuible al termino no polar. Son hipotesis nuevas, no resultados.

Métricas registradasRecorded metrics

experimento
MMGBSA-H3-FREESOLV-RADIOS
generado_utc
2026-09-23T22:38:59.974523+00:00
atribucion
FreeSolv v0.52 (Mobley y Guthrie, J. Comput.-Aided Mol. Des. 2014; release DOI 10.5281/zenodo.1161245), datos bajo CC BY 4.0. Los autores advierten que parte de los datos procede de fuentes con restricciones que podrían desconocer.
seleccion_sha256
8bece40ad85a23ce6971ce345f6a9820a91763645c5738b68e6727719ea8f6ad
decision_por_el_gate
NO_GO
no_demuestra
Energías libres de hidratación con muestreo: es una estimación estática de un solo confórmero. Tampoco dice nada del agujero sigma, que las cargas atómicas no representan.

ReproducibilidadReproducibility

commit
493f06a91d (dirty)
ramabranch
codex/release-hygiene
semillaseed
20260923
selladosealed
23 de septiembre de 2026September 23, 2026
duraciónduration
2 min
complejoscomplexes
642
fallosfailures
37
hashes SHA-256
13
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MMGBSA-H12A-FREESASAFreeSASA falla su gate por medio ångström cuadradoRefutaciónRefutationArtículoPapern=121

La SASA numérica que ya viaja dentro de la RDKit acierta por átomo con una mediana de 0,14 Ų, veinte veces mejor que LCPO. Pero su p95 sale 0,55 con el tope en 0,5, y se sella NO_GO sin reformular el criterio.

LCPO no representa bien los anillos polibromados (MMGBSA-H2). La alternativa obvia es calcular el área con un método numérico en lugar de una fórmula analítica. La RDKit que ya viaja en el instalador trae FreeSASA (algoritmo de Lee-Richards), así que la pregunta era si es lo bastante exacta y rápida.

Qué se midió

Área por átomo de FreeSASA frente a una SASA numéricamente exacta (Shrake-Rupley con 50 000 puntos), con los mismos radios y la misma sonda, en los 121 ligandos de PDBBind con Br o I: 3088 átomos pesados. Tope por átomo: p95 ≤ 0,5 Ų y máximo ≤ 1,0 Ų, en el conjunto y por elemento, y ≤ 50 ms por ligando.

Qué salió

NO_GO por la letra.

medianap95máximo
Todos0,1440,5531,221
Br0,2610,6431,177
I0,1630,5470,664

Tarda 0,55 ms por ligando. El techo lo pone la resolución por defecto de Lee-Richards, que la RDKit no deja cambiar.

Por qué no se reformula

Con estos números delante sería fácil escribir un criterio energético que pasara: 1,22 Ų por la tensión superficial habitual son menos de 0,009 kcal/mol. Pero un criterio diseñado después de ver los datos pasa por construcción. El gate se fijó antes y se sella como dice.

Lo que sí queda establecido

Como caracterización, el error de FreeSASA es unas veinte veces menor que el de LCPO, cuya mediana de fondo es 2,81 Ų y que en Br e I llega a p90 de 9,8. Para decidir el término no polar del producto pesa esa comparación, no sólo el veredicto.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
FreeSASA (Lee-Richards) de la RDKit 2025.09.6 que viaja en el producto reproduce por atomo la SASA numericamente exacta (Shrake-Rupley, 50000 puntos) con los mismos radios (Bondi, sin H, sonda 1.4 A) en los 121 ligandos de PDBBind con Br o I, tambien en Br e I, con coste despreciable.
Criterio prerregistradoPre-registered criterion
GO si, por atomo pesado, el p95 de |FreeSASA - exacta| <= 0.5 A2 y el maximo <= 1.0 A2 en el conjunto y por separado en Br y en I, no hay fallos de ejecucion, y la mediana del tiempo de FreeSASA por ligando <= 50 ms. NO_GO en otro caso.
ProtocoloProtocol
backend/audits/freesasa_h12.py sobre las topologias de MMGBSA-H1-LCPO-BONDI, ejecutado con frontend/src-tauri/resources/python (el runtime que se entrega); referencia sasa_numerica de lcpo_vs_sasa_exacta.py sin modificar. Piloto previo declarado: un ligando (1zoh, 4 Br) dio <= 0.43 A2 por atomo y < 1 ms.
Razón de la decisiónReason for the decision
NO_GO por la letra del gate: el p95 de |FreeSASA - exacta| por atomo es 0.553 A2 (tope 0.5) y el maximo 1.221 A2 (tope 1.0) en 3088 atomos pesados; en Br p95 0.643 y maximo 1.177; en I p95 0.547 y maximo 0.664. Mediana 0.144 A2 (Br 0.261, I 0.163) y 0.55 ms por ligando. El techo lo pone la resolucion por defecto de Lee-Richards, que la RDKit 2025.09.6 no expone (SASAOpts solo tiene algoritmo, clasificador y sonda). No se reformula el gate: una R1 con un criterio energetico disenado despues de ver estos numeros pasaria por construccion. Caracterizacion: el error de FreeSASA es unas 20 veces menor que el error de fondo de LCPO (mediana 2.81 A2) y que el de LCPO en Br/I (H1, H2: medianas 1-5 A2, p90 hasta 9.8), y 1.22 A2 por 0.0072 kcal/mol/A2 son menos de 0.009 kcal/mol.

Métricas registradasRecorded metrics

experimento
MMGBSA-H12A-FREESASA
rdkit
2025.09.6
n_ligandos
121
ms_mediana_por_ligando
0.5512000061571598
pasa_gate
false

ReproducibilidadReproducibility

commit
e9da283971 (dirty)
ramabranch
codex/release-hygiene
semillaseed
20260923
selladosealed
23 de septiembre de 2026September 23, 2026
duraciónduration
1 min
complejoscomplexes
121
hashes SHA-256
5
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MMGBSA-H13-AZUFRE-AMBEREl GBn2 de OpenMM no era el de Amber en cuanto había azufreHallazgoFindingArtículoPapern=57

Para el azufre, Amber usa una serie donde OpenMM integra, y además corta a 25 Å. Reproducidas esas dos ramas, el desacuerdo cae de 11,24 kcal/mol a una cienmilésima.

La paridad entre OpenMM y sander para bromo y yodo (MMGBSA-H5) dejó un cabo suelto: con azufre, los dos programas discrepaban en GBn2 hasta 11,24 kcal/mol. No era un detalle de ligandos raros. Toda metionina y toda cisteína de un receptor lleva azufre.

La causa, leída en el código

El fuente de Amber (egb.F90) calcula la integral del radio efectivo de dos formas. Cuando la distancia entre átomos supera cuatro veces el radio apantallado del vecino, usa una serie de Taylor. El azufre de GBn2 tiene un factor de apantallamiento negativo, así que para él la serie se usa siempre. OpenMM evalúa en todos los casos la integral cerrada. Además, Amber corta la suma a 25 Å (rgbmax) y limita el radio inverso a 1/30 Å⁻¹.

Qué se probó

Reescribir las expresiones de GBn2 en OpenMM con esas ramas (apply_amber_gbn2_descreening) y comprobar que coincide con sander en topologías con y sin azufre, y en dos péptidos con Met y Cys, uno de ellos de 56 Å para que el corte de 25 Å importe.

Qué salió

GO.

sin la correccióncon la corrección
14 topologías con azufre (residuo máximo)11,24 kcal/mol1,3·10⁻⁵
41 sin azufre2,0·10⁻⁵2,0·10⁻⁵ (sin cambio)
Dipéptido Met-Cys (ff14SB)0,92 kcal/mol1,6·10⁻⁶

El OpenMM del Python que se entrega en Windows reproduce al de Linux en 57 de 57 comparaciones. Sin el corte de 25 Å el péptido largo deja 4,1·10⁻³ kcal/mol: hacen falta las dos ramas.

Qué significa

El MM-GBSA candidato sobre OpenMM no calculaba el GBn2 parametrizado en cuanto había una Met o una Cys. Con la corrección, sí. Nada de esto está conectado a la aplicación: MM-GBSA sigue desactivado hasta pasar sus puertas.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Reescribir las expresiones GBn2 de OpenMM 8.5.2 con las ramas de Amber egb.F90 (corte y cola de rgbmax=25 A, serie de Taylor para dij>4*sj -siempre para el S, cuyo radio apantallado es negativo-, integral cerrada en el resto y tope de 1/30 A^-1 del radio inverso) hace que OpenMM reproduzca a sander en GBn2 sin superficie, tambien con azufre, sin romper lo que ya coincidia.
Criterio prerregistradoPre-registered criterion
GO si, con la correccion y rgbmax=25 A, todas las topologias de geometria posible (regla de MMGBSA-H5-R1) y los dos peptidos pasan en GBn2_no_SA frente a sander (residuo tras la conversion de constantes < 0.001 kcal/mol y fuerza convertida < 0.001 kcal/mol/A), no hay fallos de ejecucion, uno de los peptidos supera 25 A de extension, y OpenMM de Windows reproduce al de Linux con la correccion (< 1e-6) en todas las comparaciones con las mismas entradas. El brazo sin rgbmax es diagnostico y no entra en el gate. Cualquier otro fallo: NO_GO.
ProtocoloProtocol
backend/audits/gbn2_azufre_amber_h13.py con apply_amber_gbn2_descreening de backend/services/chemistry/amber_compatibility.py, sobre las 55 topologias de lcpo_halogenos.py (12 con S) y dos peptidos ff14SB con Met y Cys construidos con tleap (ACE MET CYS NME; y uno de 17 residuos de 56 A de extension, que ejercita rgbmax). Servidor: OpenMM y sander (contenedor moldesign-science); esta maquina: OpenMM del runtime que se entrega sobre copias con el mismo SHA-256. Fuente de las ramas: AmberClassic src/msander/egb.F90 leido el 2026-09-23. Piloto previo de 5 casos (1c5n, 1e4h, 2weg y los dos peptidos) declarado: con la correccion pasan los 5; el brazo diagnostico sin rgbmax deja 4.1e-3 kcal/mol en el peptido largo.
Razón de la decisiónReason for the decision
La hipotesis se sostiene. Con las ramas de egb.F90 (rgbmax 25 A, serie para dij>4*sj, integral cerrada, tope de 1/30) OpenMM 8.5.2 reproduce a sander en GBn2 sin superficie en las 14 topologias con azufre (sin la correccion pasaban 0; residuo maximo 11.24 -> 1.3e-5 kcal/mol), en las 41 sin azufre de geometria posible (sin cambio: 2.0e-5) y en los dos peptidos ff14SB con Met y Cys (0.92 -> 1.6e-6 kcal/mol; el de 56 A ejercita rgbmax). 5mlj y 6gnp INDETERMINADAS por la regla geometrica de MMGBSA-H5-R1 (6gnp pasa igualmente). El OpenMM del runtime de Windows reproduce al de Linux en 57/57 comparaciones (7.1e-14 kcal/mol, 2.3e-13 kcal/mol/A). Diagnostico fuera del gate: sin rgbmax el peptido largo deja 4.1e-3 kcal/mol; hacen falta la serie del S y el corte. Consecuencia: el MM-GBSA candidato sobre OpenMM no calculaba el GBn2 parametrizado en cuanto habia una Met o una Cys; con apply_amber_gbn2_descreening si. No conecta nada a produccion.

Métricas registradasRecorded metrics

experimento
MMGBSA-H13-AZUFRE-AMBER
generado_utc
2026-09-23T19:16:02.617353+00:00
rgbmax_A
25.0
pasa_gate
true

ReproducibilidadReproducibility

commit
6ea4cecaae (dirty)
ramabranch
codex/release-hygiene
semillaseed
42
selladosealed
23 de septiembre de 2026September 23, 2026
duraciónduration
5 s
complejoscomplexes
57
fallosfailures
2
hashes SHA-256
11
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER
mantenimientomaintenance
1 mantenimiento(s) declarados. El hash actual no acredita qué código produjo la cifra original.1 declared maintenance action(s). The current hash does not establish which code produced the original figure.

Enlace a este expedienteLink to this record

MMGBSA-H2-LCPO-AJUSTEReajustar LCPO no arregla los anillos con cuatro o cinco bromosRefutaciónRefutationArtículoPapern=149

Con coeficientes propios, el yodo casi aprueba y el bromo pasa validación. La prueba trae una cola que ningún juego de coeficientes corrige: los polibromados de la familia TBB, inhibidores de la CK2.

Tras el fracaso del LCPO del cloro para el bromo y el yodo (MMGBSA-H1), el siguiente paso declarado era ajustar los cuatro coeficientes por elemento, sólo con los átomos de entrenamiento, manteniendo el radio de Bondi fijo. Una salvaguarda adicional (H10) comprobaba que lo aprendido no dependía de haber visto los mismos scaffolds.

Qué salió

NO_GO: fallan 2 de 4 casos.

  • Bromo. Con los coeficientes elegidos en validación —casi los del cloro publicado—, validación pasa (mediana 0,94 Ų, p90 4,85) y prueba falla (mediana 2,96, p90 9,70). La cola de la prueba aparece con cualquier juego de coeficientes: 9,44 con los de H1, 9,83 con el ajuste completo. Reajustar no la toca.
  • Yodo. Prueba pasa (mediana 1,83, p90 4,04) y validación falla sólo por el intervalo del sesgo, con 6 átomos.
  • H10. El bromo generaliza por scaffold; el yodo falla por 0,05 Ų sobre el margen, con 8 átomos.

De dónde sale la cola del bromo

De anillos con cuatro o cinco bromos, la familia TBB de inhibidores de la CK2. Ahí dos esferas grandes vecinas se solapan de una forma que LCPO no representa, y el error crece con el enterramiento del átomo. Como en un complejo el halógeno suele estar enterrado, la hipótesis siguiente fue dejar LCPO y calcular el término no polar con una SASA numérica (MMGBSA-H12A-FREESASA).

Una lección de método

Los coeficientes sueltos no están identificados: el de un término del yodo varía un 1402 % entre remuestreos. La predicción, en cambio, es estable (≤ 0,74 Ų). Por eso el criterio de estabilidad dejó de exigir un CV < 20 % a los cuatro coeficientes y pasó a pedirlo sólo al primero, junto con una dispersión de la predicción ≤ 1,0 Ų. Se cambió antes de ajustar con datos reales: ni con datos sintéticos sin ruido se cumplía el criterio original.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
Con el radio de Bondi fijo (Br 1.85, I 1.98 A), reajustar por minimos cuadrados los coeficientes LCPO por elemento, solo con los atomos de entrenamiento de MMGBSA-PARTICIONES-BRI-V1, aproxima la SASA exacta de Br y de I dentro del error de fondo en validacion y en prueba, con prediccion estable entre remuestreos (H2); y lo que se aprende no depende de haber visto los mismos scaffolds (H10).
Criterio prerregistradoPre-registered criterion
Por elemento (Br, I), para el brazo elegido en validacion, en validacion y en prueba: mediana |error| <= 2.81 A2, p90 <= 7.25 A2, IC95 bootstrap por scaffold del error medio con signo dentro de +-2.81 A2, CV bootstrap de P1 < 20% (1000 remuestreos de grupos de entrenamiento) y mediana de la DE bootstrap del area predicha en validacion <= 1.0 A2. Menos de 5 atomos: INDETERMINADO. GO si los cuatro casos pasan; NO_GO si alguno falla; INCONCLUSIVE si alguno es indeterminado sin fallos. H10, veredicto aparte: mediana de validacion por scaffold <= la de una particion aleatoria por molecula (semilla sellada, 60/20/20) + 1.0 A2.
ProtocoloProtocol
backend/audits/lcpo_bri_h2.py: etapa bases (terminos LCPO por atomo con P unitarios sobre las topologias de MMGBSA-H1, SASA exacta a 50000 puntos; guardian: con los P del Cl publicado reconstruye el area de H1 a 5e-5 A2) y etapa ajustar. Dos brazos: completo (P1-P4) y reducido (P1, P2; P3 y P4 del Cl publicado); por elemento se elige en validacion el reducido salvo que el completo baje la mediana de validacion mas de 0.5 A2; la prueba solo confirma. Cambio declarado respecto del documento: el criterio CV<20% en cada coeficiente se sustituye por CV(P1)<20% y DE bootstrap del area predicha <=1 A2, porque en un piloto SOLO de entrenamiento los terminos estan casi alineados (numero de condicion ~1e4; CV de P3 94% en Br y 997% en I) y con un objetivo sintetico sin ruido el CV de P3 del I sigue en 303%.
Razón de la decisiónReason for the decision
NO_GO: 2 de 4 casos fallan. Br (brazo reducido elegido en validacion; P1 0.962, P2 -0.391, casi los del Cl publicado): validacion PASA (mediana 0.94, p90 4.85, IC95 del sesgo [-2.57,-0.46], CV P1 1.9%, DE de prediccion 0.64 A2) y prueba FALLA (mediana 2.96, p90 9.70, IC95 [-1.60,3.98]); la cola de prueba aparece con cualquier juego de coeficientes (H1: p90 9.44; completo: 9.83), asi que no la resuelve reajustar P1-P4. I (brazo completo elegido: el reducido daba mediana de validacion 5.91): prueba PASA (mediana 1.83, p90 4.04, IC95 [-2.68,0.53]) y validacion FALLA solo por el sesgo (IC95 [-3.07,0.66], 6 atomos). H10: Br PASA (validacion por scaffold 0.94 frente a 1.70 aleatoria); I FALLA por 0.05 A2 sobre el margen (2.59 frente a 1.54, 8 atomos). Los coeficientes sueltos no estan identificados (CV de P3 del I 1402%), la prediccion si (DE <= 0.74 A2). Siguiente: diagnostico exploratorio de la cola del Br, sin reusar la prueba para elegir nada.

Métricas registradasRecorded metrics

experimento
MMGBSA-H2-LCPO-AJUSTE
generado_utc
2026-09-23T18:32:03.163441+00:00
particiones_sha256
dc9d0162c3381ba8c517712ec1791a2e0f51ae8a1d6f80c834896c0245332c65
decision_h2_por_el_gate
NO_GO
h10
FALLA
no_demuestra
Que el área LCPO sea el término no polar correcto: la SASA numérica es una referencia geométrica. Tampoco valida el término polar (H3).

ReproducibilidadReproducibility

commit
30df834bc9 (dirty)
ramabranch
codex/release-hygiene
semillaseed
20260923
selladosealed
23 de septiembre de 2026September 23, 2026
duraciónduration
40 s
complejoscomplexes
149
fallosfailures
4
hashes SHA-256
10
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MMGBSA-H1-LCPO-BONDIEl LCPO del cloro no sirve para el yodoRefutaciónRefutationArtículoPapern=121

Con los coeficientes publicados para el Cl y el radio de Bondi, el área del yodo sale sistemáticamente corta, y más cuanto mayor es el radio. El bromo roza el aprobado; el yodo no se acerca.

El término no polar de MM-GBSA necesita el área accesible al disolvente de cada átomo. OpenMM la aproxima con LCPO, una fórmula analítica con cuatro coeficientes por tipo de átomo, y no trae coeficientes para Br ni para I. La salida más barata era usar los del cloro (Weiser, Shenkin y Still, 1999) con el radio de Bondi de cada halógeno, sin ajustar nada.

Qué se midió

Error por átomo frente a la SASA numéricamente exacta, en 121 ligandos de PDBBind con Br o I repartidos por scaffold (60/20/20, sellado antes de medir). Por elemento y partición: mediana ≤ 2,81 Ų, p90 ≤ 7,25 Ų, un intervalo bootstrap del sesgo dentro de ±2,81 Ų, y que los átomos vecinos no empeoren respecto del respaldo que usa Amber.

Qué salió

Los cuatro casos fallan.

medianap90IC95 del sesgo
Br, validación0,706,90[−3,14; −0,40]
Br, prueba3,409,44[−3,03; +3,35]
I, validación4,716,49[−5,82; −1,32]
I, prueba4,575,36[−4,81; −1,33]

En el yodo el error es sistemático, negativo y crece con el radio: con un radio de 1,8 Å el error baja en las tres particiones. Es la refutación que el documento de hipótesis anticipaba: la forma funcional del cloro no escala con el tamaño del átomo.

Lo que sí pasa: los átomos vecinos mejoran entre 0,20 y 0,23 Ų respecto del respaldo de Amber, que usa para Cl, Br e I los coeficientes de un carbono y falla por 24-31 Ų.

Lo que apareció de paso

4 de 121 ligandos no se pudieron medir, y ninguno por el halógeno. Tres contienen un =CH₂ vinílico terminal, para el que OpenMM 8.5.2 no tiene parámetro LCPO: el MM-GBSA candidato tampoco puntuaría un alqueno terminal. El cuarto es un alquino terminal al que el SDF de PDBBind le quitó el hidrógeno.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
Los coeficientes LCPO P1-P4 del Cl publicado (Weiser, Shenkin y Still 1999) con el radio de Bondi (Br 1.85 A, I 1.98 A), sin ningun ajuste, aproximan la SASA numericamente exacta de los atomos de Br y de I dentro del error de fondo de LCPO, sin sesgo mayor que ese error y sin empeorar a los atomos vecinos respecto del respaldo de Amber.
Criterio prerregistradoPre-registered criterion
Por separado para Br y para I, en validacion y en prueba, con el brazo H1: (1) mediana |error| <= 2.81 A2 y p90 <= 7.25 A2; (2) IC bootstrap 95% (1000 remuestreos de grupos de scaffold, semilla 20260923) del error medio con signo dentro de +-2.81 A2; (3) en los atomos pesados que solapan con un Br o un I, cota superior del IC95 de la media pareada |error H1| - |error respaldo Amber| <= +0.5 A2. Menos de 5 atomos de un elemento en una particion: INDETERMINADO. GO si los cuatro casos (Br/I x validacion/prueba) pasan; NO_GO si alguno falla; INCONCLUSIVE si alguno es indeterminado y ninguno falla.
ProtocoloProtocol
backend/audits/lcpo_bri_h1.py (sha sellado en MMGBSA-PARTICIONES-BRI-V1) sobre los 121 ligandos de geometria posible de esa seleccion: parametrizar con AmberTools (GAFF2, cargas Gasteiger, mbondi3; la funcion de lcpo_halogenos.py sin modificar) en el contenedor moldesign-science, medir con OpenMM 8.5.2 y Shrake-Rupley a 50000 puntos por atomo, resumir por las particiones selladas. Brazos: H1 (Cl publicado + Bondi), respaldo de Amber C_sp2_2 (control negativo) y Cl publicado con r=1.8 (diagnostico). Piloto previo de 5 ligandos declarado en el docstring: llevo a reformular el criterio de vecinos como comparacion pareada (el documento decia 'no empeorar'); los criterios 1 y 2 no se tocaron.
Razón de la decisiónReason for the decision
La hipotesis se refuta. Con P1-P4 del Cl publicado y radios de Bondi, sin ajuste, los cuatro casos fallan: Br validacion (mediana 0.70, p90 6.90, pero IC95 del sesgo [-3.14,-0.40] sale de +-2.81), Br prueba (mediana 3.40, p90 9.44, IC95 [-3.03,3.35]), I validacion (mediana 4.71, IC95 [-5.82,-1.32]) e I prueba (mediana 4.57, IC95 [-4.81,-1.33]). En el yodo el error es sistematico y negativo y crece con el radio: el diagnostico con r=1.8 lo reduce en las tres particiones (prueba: mediana 3.62, media -2.95 frente a 4.57 y -3.66), que es la refutacion que el documento anticipaba (la forma funcional del Cl no escala con el radio). El criterio de vecinos pasa en las tres particiones: con H1 los atomos que solapan con Br/I mejoran 0.20-0.23 A2 frente al respaldo de Amber. El respaldo C_sp2_2 sigue fuera por 24-31 A2. 117 de 121 ligandos medidos; 4 fallos que no cuentan para el gate y no son del halogeno: tres =CH2 vinilicos terminales sin parametro LCPO en OpenMM 8.5.2 (el MM-GBSA candidato no puede puntuar un alqueno terminal) y un alquino terminal sin su H en el SDF de PDBBind. Siguiente, segun el orden declarado: H2 (reajustar P1-P4 por elemento en entrenamiento) con H10.

Métricas registradasRecorded metrics

experimento
MMGBSA-H1-LCPO-BONDI
generado_utc
2026-09-23T18:24:38.780727+00:00
seleccion_sha256
60701402692c0bebe3686d29dd11ebe88d226d1c5d05c5f333590b481781675c
particiones_sha256
dc9d0162c3381ba8c517712ec1791a2e0f51ae8a1d6f80c834896c0245332c65
decision_por_el_gate
NO_GO
no_demuestra
Que el área LCPO sea el término no polar correcto, ni que estos radios valgan para el término polar (H3): la SASA numérica es una referencia geométrica, no experimental.

ReproducibilidadReproducibility

commit
27b2917fca (dirty)
ramabranch
codex/release-hygiene
semillaseed
20260923
selladosealed
23 de septiembre de 2026September 23, 2026
duraciónduration
4 min
complejoscomplexes
121
fallosfailures
5
hashes SHA-256
11
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MMGBSA-PARTICIONES-BRI-V1Asignacion fija de los 122 ligandos de PDBBind con Br o I a entrenamiento, validacion y prueba (60/20/20) por scaffold de Bemis-Murcko, sin ningun scaffold compartido entre particiones, para reutilizarla sin cambios en H1, H2, H3 y H10 de docs/validacion_mmgbsa.md.MediciónMeasurement

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Asignacion fija de los 122 ligandos de PDBBind con Br o I a entrenamiento, validacion y prueba (60/20/20) por scaffold de Bemis-Murcko, sin ningun scaffold compartido entre particiones, para reutilizarla sin cambios en H1, H2, H3 y H10 de docs/validacion_mmgbsa.md.
Criterio prerregistradoPre-registered criterion
medicion sin gate: la asignacion se sella antes de cualquier medida de H1 y no se cambia despues
ProtocoloProtocol
backend/audits/lcpo_bri_h1.py curar y particionar (RDKit 2025.09.6, esta maquina, sin mirar ninguna energia ni area): grupos por scaffold (aciclicos por InChIKey), orden SHA-256(semilla:grupo), cada grupo a la particion con mayor deficit relativo, por separado para ligandos con Br y con I. Semilla 20260923. Determinista: tres ejecuciones dan la misma asignacion.
Razón de la decisiónReason for the decision
Asignacion sellada antes de medir H1: 122 ligandos en 83 grupos de scaffold (114 InChIKey distintos). Entrenamiento 72 ligandos / 46 grupos (Br 67 atomos, I 21), validacion 24 / 18 (Br 20, I 6), prueba 26 / 19 (Br 27, I 13). Ningun scaffold en dos particiones. Entornos: Br 109 arilo y 5 alifatico, I 39 y 1. 5mlj marcada como geometria imposible (regla de MMGBSA-H5-R1). Tres ejecuciones dan la misma asignacion.

Métricas registradasRecorded metrics

particiones
PDBBind-BrI-v1
semilla
20260923
n_ligandos
122
n_grupos
83
n_inchikey_distintos
114
rdkit
2025.09.6
determinista
true

ReproducibilidadReproducibility

commit
27b2917fca (dirty)
ramabranch
codex/release-hygiene
semillaseed
20260923
selladosealed
23 de septiembre de 2026September 23, 2026
duraciónduration
1 min
hashes SHA-256
4
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MMGBSA-H5-R1Replica de MMGBSA-H5-GBN2-PARIDAD con un filtro de validez geometrica: entre las topologias con Br o I de geometria posible, OpenMM 8.5.2 (Reference) reproduce a sander en vacuum y GBn2 sin superficie (residuo < 0.001 kcal/mol, fuerza convertida < 0.001 kcal/mol/A), con la misma excepcion del azufre que H5; y el OpenMM del runtime de Windows reproduce al de Linux.CorrigendumCorrection noticen=55

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
CorrigendumCorrection notice · Corrección de un resultado propio cuyo valor principal es la corrección.Correction of an own result whose main value is the correction.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Replica de MMGBSA-H5-GBN2-PARIDAD con un filtro de validez geometrica: entre las topologias con Br o I de geometria posible, OpenMM 8.5.2 (Reference) reproduce a sander en vacuum y GBn2 sin superficie (residuo < 0.001 kcal/mol, fuerza convertida < 0.001 kcal/mol/A), con la misma excepcion del azufre que H5; y el OpenMM del runtime de Windows reproduce al de Linux.
Criterio prerregistradoPre-registered criterion
GO si entre las topologias con Br o I de geometria posible hay al menos 20 y todas pasan en vacuum y GBn2_no_SA, o -solo si llevan S- el vacio pasa y el desacuerdo desaparece con el S como elemento generico; las de geometria imposible cuentan como INDETERMINADO; y OpenMM de Windows reproduce al de Linux (< 1e-6 kcal/mol y kcal/mol/A) en todas las comparaciones con las mismas entradas. Cualquier otro fallo: NO_GO.
ProtocoloProtocol
backend/audits/gbn2_paridad_halogenos_r1.py, que importa sin modificar el script sellado de H5, sobre las mismas 55 topologias; corridas nuevas en directorios nuevos (servidor con sander; esta maquina con frontend/src-tauri/resources/python). Filtro declarado antes de medir: geometria imposible si dos atomos estan a < 0.5 A o un angulo de valencia mide < 30 grados. Se diseno despues de ver 5mlj en H5 y se comprobo solo sobre geometrias (sin energias) antes de este prerregistro: marca 5mlj (Br) y 6gnp (Cl, control); en los dos el SDF de PDBBind anade un H a un carbono sp2 halogenado. Diagnostico fuera del gate: recolocar ese H (perpendicular al plano si el centro es plano) y medir la paridad.
Razón de la decisiónReason for the decision
La hipotesis se sostiene. De las 24 topologias con Br o I, 23 tienen geometria posible y las 23 pasan: 19 directamente (residuo <= 2e-6 kcal/mol, fuerza <= 1.1e-4 kcal/mol/A) y 4 con azufre que recuperan la paridad con el S como elemento generico en ambos programas. 5mlj es INDETERMINADA por el filtro declarado antes de medir (H22 a 0.259 A de C13; el SDF de PDBBind anade un H a un carbono sp2 con Br); diagnostico fuera del gate: con ese H perpendicular al plano, OpenMM y sander coinciden en 6.0e-6 kcal/mol en vacuum y GBn2, asi que el fallo de H5 queda atribuido entero a la geometria. Control F/Cl: 30 pasan y 6gnp (mismo defecto, H sobre un carbono sp2 con Cl) es INDETERMINADA; con el H recolocado coincide en 6e-9. OpenMM del runtime de Windows reproduce al de Linux en 110/110 comparaciones (8.5e-14 kcal/mol, 1.6e-13 kcal/mol/A) y el filtro da lo mismo en las dos maquinas. Con los mismos parametros (radio 1.5 A, apantallamiento 0.5, alfa/beta/gamma por defecto) los dos programas calculan lo mismo para Br e I: H1-H4 pueden atribuir errores a la fisica y no a la implementacion. Lo que no demuestra: que esos parametros sean buenos. Abierto aparte: el azufre discrepa en GBn2 hasta 11.24 kcal/mol (2weg). Nota de lectura: logs/comparar.log imprime primero el gate de H5 (NO PASA) porque reutiliza su cruce sin modificarlo; el de R1 es la ultima linea.

Métricas registradasRecorded metrics

experimento
MMGBSA-H5-R1
generado_utc
2026-09-23T17:59:43.227955+00:00
n_topologias
55
gate
Entre las topologías con Br o I de geometría posible (ningún par < 0,5 Å, ningún ángulo de valencia < 30°), todas pasan o, si llevan S, se atribuyen al S como en H5; hay al menos 20 evaluables; y OpenMM de Windows reproduce al de Linux (< 1e-6).
pasa_gate
true
no_demuestra
Que GBn2 describa bien la solvatación de Br o I. Demuestra, si pasa, que OpenMM y sander calculan lo mismo con los mismos parámetros, y registra cuáles son.
pasa_gate_windows
true

ReproducibilidadReproducibility

commit
ddb5304aed (dirty)
ramabranch
codex/release-hygiene
semillaseed
42
selladosealed
23 de septiembre de 2026September 23, 2026
duraciónduration
3 s
complejoscomplexes
55
fallosfailures
2
hashes SHA-256
8
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MMGBSA-H5-GBN2-PARIDADOpenMM y sander coinciden con Br e I; con azufre, noRefutaciónRefutationArtículoPapern=55

23 de 24 topologías con bromo o yodo reproducen a sander en GBn2 hasta la sexta cifra. La que falla trae un hidrógeno imposible en el SDF, y de paso apareció un desacuerdo de hasta 11 kcal/mol en cualquier Met o Cys.

Antes de ajustar un solo parámetro de bromo o de yodo en MM-GBSA hay que saber que el programa calcula lo que dice. Si OpenMM y sander (Amber) dieran energías distintas con la misma topología y las mismas coordenadas, cualquier error posterior se podría deber a la implementación y no a la física.

Qué se midió

24 topologías de PDBBind con Br o I, y 31 de control con F o Cl, evaluadas con OpenMM 8.5.2 (plataforma Reference, doble precisión) y con sander, en vacío y en GBn2 sin término de superficie. Tope: residuo de energía < 0,001 kcal/mol y error de fuerza < 0,001 kcal/mol/Å tras convertir constantes.

Qué salió

NO_GO por la letra del gate: 23 de 24.

  • 19 pasan directamente, con residuos ≤ 2·10⁻⁶ kcal/mol.
  • 4 llevan azufre y fallan sólo en GBn2. Las cuatro recuperan la paridad cuando el S se trata como elemento genérico en los dos programas: el desacuerdo es del azufre, no del halógeno.
  • 5mlj falla ya en vacío (3,88 kcal/mol), y no por el bromo: el SDF de PDBBind pone un hidrógeno a 0,26 Å de un carbono, con un ángulo de 1,2°. El gate no preveía esa excepción y no se cambió después de medir; se repitió como réplica con un filtro declarado antes (MMGBSA-H5-R1, GO 23/23).

El OpenMM del Python que se entrega en Windows reproduce al de Linux en 110 de 110 comparaciones (8,5·10⁻¹⁴ kcal/mol).

El hallazgo que no se buscaba

El desacuerdo del azufre en GBn2 llega a 11,24 kcal/mol (2weg) y a 4,87 con dos azufres (5eij). No es un problema de los ligandos: afecta a cualquier metionina o cisteína del receptor. Se resolvió después en MMGBSA-H13-AZUFRE-AMBER.

Lo que no demuestra

Que los parámetros sean buenos. Coincidir con sander prueba que los dos programas hacen la misma cuenta, no que la cuenta acierte.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
Con la misma topologia y las mismas coordenadas, OpenMM 8.5.2 (Reference, doble precision) reproduce a sander en GBn2 sin termino de superficie para ligandos con Br o I: residuo de energia tras la conversion analitica de constantes < 0.001 kcal/mol y maximo error de fuerza convertida < 0.001 kcal/mol/A, en vacuum y GBn2_no_SA. El OpenMM del runtime que se entrega (Windows) reproduce al de Linux.
Criterio prerregistradoPre-registered criterion
GO si las 24 topologias con Br o I pasan en vacuum y GBn2_no_SA, o -solo si llevan S- el vacio pasa y el desacuerdo de GBn2 desaparece con el S como elemento generico (Z=34) en ambos programas; y OpenMM de Windows reproduce al de Linux con diferencia < 1e-6 kcal/mol y kcal/mol/A en todas las comparaciones con las mismas entradas. Cualquier otro fallo: NO_GO.
ProtocoloProtocol
backend/audits/gbn2_paridad_halogenos.py sobre las 55 topologias de lcpo_halogenos.py (GAFF2, cargas Gasteiger, mbondi3) en ~/moldesign-fep/halogenos_trabajo: medir con sander y OpenMM en el contenedor moldesign-science (servidor), medir --sin-sander con frontend/src-tauri/resources/python (esta maquina) sobre copias con el mismo SHA-256, comparar. Piloto previo de 3 ligandos declarado en docs/validacion_mmgbsa.md (H5): 1c5n falla por el azufre, no por el yodo.
Razón de la decisiónReason for the decision
NO_GO por la letra del gate: 23/24 topologias con Br o I lo cumplen y 5mlj no. 19/24 pasan directamente (residuo de energia <= 2e-6 kcal/mol, fuerza <= 1.1e-4 kcal/mol/A); las 4 que llevan azufre fallan solo en GBn2 y las 4 recuperan la paridad con el S como elemento generico en ambos programas (residuo <= 6.3e-6). 5mlj (Br alifatico, sin S) falla ya en vacio (3.88 kcal/mol, 71 kcal/mol/A) por una geometria de entrada imposible, no por el bromo: el H22 del SDF de PDBBind esta a 0.259 A de C13 (angulo C13-C17-H22 = 1.2 grados) y toda la diferencia esta en el termino de angulo; el gate no preveia esa excepcion y no se cambia despues de medir. Controles F/Cl: 23/23 sin S pasan y 8/8 con S se atribuyen igual. OpenMM de Windows (python del runtime que se entrega) reproduce al de Linux en 110/110 comparaciones con las mismas entradas: 8.5e-14 kcal/mol y 1.6e-13 kcal/mol/A. Hallazgo aparte: el desacuerdo del azufre en GBn2 llega a 11.24 kcal/mol (2weg) y 4.87 (5eij, 2 S); afecta a cualquier Met/Cys del receptor. Siguiente: MMGBSA-H5-R1 con un filtro de validez geometrica declarado antes de medir.

Métricas registradasRecorded metrics

experimento
MMGBSA-H5-GBN2-PARIDAD
generado_utc
2026-09-23T17:53:33.740025+00:00
n_topologias
55
gate
24/24 topologías con Br o I pasan en vacuum y GBn2_no_SA, o —sólo si llevan S— el vacío pasa y el desacuerdo de GBn2 desaparece con el S como elemento genérico en ambos programas; y OpenMM de Windows reproduce al de Linux (< 1e-6)
pasa_gate
false
no_demuestra
Que GBn2 describa bien la solvatación de Br o I. Demuestra, si pasa, que OpenMM y sander calculan lo mismo con los mismos parámetros, y registra cuáles son.
pasa_gate_windows
true

ReproducibilidadReproducibility

commit
d83d0af9a4 (dirty)
ramabranch
codex/release-hygiene
semillaseed
42
selladosealed
23 de septiembre de 2026September 23, 2026
duraciónduration
4 s
complejoscomplexes
55
fallosfailures
1
hashes SHA-256
9
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FEP-07-PDBBINDPDBBind permite muchos mas calculos FEP ejecutables hoy que los 75 de los 203, y declarar tautomeros desbloquea una fraccion mayor que reparar receptoresMediciónMeasurementn=3299

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
PDBBind permite muchos mas calculos FEP ejecutables hoy que los 75 de los 203, y declarar tautomeros desbloquea una fraccion mayor que reparar receptores
Criterio prerregistradoPre-registered criterion
medicion sin gate: parejas ejecutables hoy, bloqueadas por tautomero y por receptor
ProtocoloProtocol
scripts/analisis_fep_ejecutable_hoy.py sellado, sin modificar (sha d5c06e4c4936), ejecutado desde un espacio de trabajo cuyo FEP-03/parejas.jsonl son los 21 shards de FEP-03-PDBBIND y cuyos FEP-01-EXT/FEP-02-EXT son las extensiones a PDBBind; replica previa identica al sello (75 ejecutables hoy).
Razón de la decisiónReason for the decision
La hipotesis se sostiene: de las 3299 parejas aptas de FEP-03-PDBBIND, 2243 (68%) son ejecutables hoy sobre 1114 complejos, frente a 75 en los 203; declarar tautomeros desbloquea 656 mas (hasta 2899) y reparar receptores solo recuperaria 400. Confirma el orden del roadmap: declarar tautomeros primero. Las 21 parejas aptas de galectina-3 (6qln-6qlu), la cohorte recomendada, son las 21 ejecutables hoy. Replica previa identica al sello (91 parejas, 75 ejecutables). Limitacion declarada por el script: ejecutable hoy significa sin los dos bloqueos medidos, no listo para produccion; con el criterio completo de FEP-02 en ambos extremos quedan 875.

Métricas registradasRecorded metrics

tipo
cruce de artefactos sellados, sin computo nuevo
duration_seconds
0.311
n_parejas_aptas
3299
limitacion_declarada
Ejecutable HOY significa 'sin los dos bloqueos medidos', no 'lista para produccion'. FEP-02 exige ademas documentar cadenas, disulfuros, metales, cofactores y aguas, y ese criterio completo (documentado_para_fep) se reporta aparte sin usarse para clasificar, porque lo cumplen muy pocos y absorberia toda la senal. El numero es una COTA SUPERIOR de lo ejecutable.

ReproducibilidadReproducibility

commit
ca68d06a5d (dirty)
ramabranch
codex/release-hygiene
semillaseed
42
selladosealed
23 de septiembre de 2026September 23, 2026
duraciónduration
0 s
complejoscomplexes
3299
hashes SHA-256
6
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FEP-02-EXT-PDBBINDEn PDBBind, como en los 203 (86 con huecos -> 41 con hueco en el sitio), menos de la mitad de los huecos de cadena caen en el sitio de unionMediciónMeasurementn=5325

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
En PDBBind, como en los 203 (86 con huecos -> 41 con hueco en el sitio), menos de la mitad de los huecos de cadena caen en el sitio de union
Criterio prerregistradoPre-registered criterion
medicion sin gate: fraccion de huecos en el sitio
ProtocoloProtocol
scripts/analisis_fep02ext_huecos_sitio.py sellado, sin modificar (sha fbaaaf09c1e5), --workspace con FEP-02/per_complex.jsonl de FEP-02-PDBBIND; mismo contenedor; replica previa identica al sello.
Razón de la decisiónReason for the decision
La hipotesis se sostiene: de los 1677 complejos de PDBBind con huecos de cadena, 468 (27.9%) los tienen en el sitio (8 A), 592 en la periferia y 617 lejos; 633 de 4610 huecos caen en el sitio. En los 203 era 47.7%: a escala, la mayoria de los huecos no obliga a reparar antes de declarar el receptor. Replica previa identica al sello (203/203). Script sellado sin modificar (fbaaaf09c1e5). Limitacion declarada por el propio script: un hueco lejano no garantiza que la estructura sirva para la dinamica global.

Métricas registradasRecorded metrics

tipo
medicion de consecuencia, sin gates de decision
duration_seconds
22.18
n_complejos
5325
n_con_huecos_segun_FEP02
1677
n_analizables
1677
n_error
0
fraccion_en_el_sitio
0.2791
huecos_totales
4610
huecos_en_el_sitio
633
limitacion_declarada
Un hueco LEJANO no garantiza que la estructura sea utilizable: puede romper plegamiento o dinamica global. Se mide que fraccion tiene el defecto EN la region que decide la union, que es la que obliga a reparar antes de declarar el receptor. Un hueco lejano se declara; uno en el sitio se arregla.

ReproducibilidadReproducibility

commit
ca68d06a5d (dirty)
ramabranch
codex/release-hygiene
semillaseed
42
selladosealed
23 de septiembre de 2026September 23, 2026
duraciónduration
22 s
complejoscomplexes
5325
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FEP-01-EXT-PDBBINDEn PDBBind, como en los 203 (164 ambiguos -> 54 con el proton moviendose), la mayoria de la ambiguedad tautomerica de FEP-01 no mueve protones y el bloqueo real por tautomero es una minoriaMediciónMeasurementn=5325

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
En PDBBind, como en los 203 (164 ambiguos -> 54 con el proton moviendose), la mayoria de la ambiguedad tautomerica de FEP-01 no mueve protones y el bloqueo real por tautomero es una minoria
Criterio prerregistradoPre-registered criterion
medicion sin gate: fraccion de ambiguos en los que el proton se mueve
ProtocoloProtocol
scripts/analisis_fep01ext_tautomeros.py sellado, sin modificar (sha a40a09d2e5b0), con --workspace apuntando a un espacio cuyo FEP-01/per_complex.jsonl es el de FEP-01-PDBBIND; contenedor moldesign-science del servidor, RDKit 2025.09.6. Replica previa sobre los 203 identica por registro al sello.
Razón de la decisiónReason for the decision
La hipotesis se sostiene: de los 3634 ligandos de PDBBind con tautomero ambiguo segun FEP-01, el proton se mueve en 1098 (30.2%), frente a 54/164 (32.9%) en los 203; en el 70% restante la ambiguedad no cambia que atomos donan o aceptan y no bloquea un calculo FEP. Solo 2 no ambiguos mueven el proton. Replica previa en el servidor identica al sello registro por registro (203/203). Script sellado sin modificar (a40a09d2e5b0), RDKit 2025.09.6, contenedor moldesign-science. Limitacion: 684 ligandos no canonicalizables por RDKit (KekulizeException), los mismos que FEP-01-PDBBIND no pudo leer.

Métricas registradasRecorded metrics

tipo
medicion de consecuencia, sin gates de decision
duration_seconds
259.59
n_complejos
5325
n_ok
4641
n_error
684
limitacion_declarada
El tautomero canonico NO es 'el correcto': es una heuristica de puntuacion, no una prediccion de la poblacion dominante a pH fisiologico. Se mide DESACUERDO entre el fichero y un canonicalizador estandar, no error.

ReproducibilidadReproducibility

commit
ca68d06a5d
ramabranch
codex/release-hygiene
semillaseed
42
selladosealed
23 de septiembre de 2026September 23, 2026
duraciónduration
4 min
complejoscomplexes
5325
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FEP-03-PDBBINDEn PDBBind sí hay series para FEP: 3299 parejas en 313 dianasHallazgoFindingArtículoPaper

Los 203 complejos de molflex se armaron para la diversidad y apenas daban 91 parejas perturbables. PDBBind completo da treinta y seis veces más, y el recuento no depende del tiempo que se le conceda al MCS.

Un cálculo de energía libre relativa (FEP) no compara una molécula con el vacío: compara dos ligandos parecidos en el mismo sitio. Necesita series congenéricas, pocas dianas con muchos análogos. El conjunto de 203 complejos con el que se auditó FEP-03 se había armado para lo contrario, para cubrir muchas dianas distintas, y daba 91 parejas aptas repartidas en 18 dianas, con el grupo mayor en 23 ligandos.

La pregunta de este experimento era si el problema era del conjunto o de la fuente: si PDBBind completo, con los mismos criterios, contiene series útiles.

Qué salió

Con los umbrales del sello (cobertura del MCS ≥ 0,70 y perturbación ≤ 10 átomos pesados):

molflex (203)PDBBind
Parejas aptas913299
Dianas con alguna pareja18313
Dianas con ≥ 10 ligandos conectados—28
Dianas con ≥ 20 ligandos conectados—12

La hipótesis se sostiene: la escasez de series era una propiedad del conjunto, no de la fuente.

Dos comprobaciones antes de creerlo

Réplica. Antes de extender nada, se repitió la auditoría sobre los 203 originales. El resumen coincide con el sello y 486 de 487 parejas salen idénticas. La que cambia (1ezq-1ksn) pasa de un MCS de 1 átomo a 27 sin volverse apta, y enseña algo útil: un MCS con límite de tiempo depende de la carga de la máquina.

Sensibilidad al límite de tiempo, declarada antes de correr. 163 MCS se habían cortado a los 10 s. Se repitieron con 300 s: el MCS creció en 47, 32 siguieron cortados y ninguna pareja cambió de veredicto (23 aptas antes y después). El recuento no depende del tiempo concedido. Un primer intento de esta sensibilidad fue inválido —el límite se pasó como número decimal y las 163 fallaron— y se conserva como evidencia.

La limitación, declarada

  • Es una cota superior: la agrupación por diana usa k-meros de secuencia y no distingue mutantes puntuales de la misma proteína.
  • El universo efectivo son 3887 de 5325 entradas, porque la copia local de PDBBind no trae el _protein.pdb de 1438.
  • Para elegir cohorte hacen falta afinidades por ligando. Las añadidas desde BindingDB al índice local se emparejaron por diana y no por complejo, así que no sirven; con las de la fase A, la cohorte recomendada es galectina-3 (6qln-6qlu, 7 ligandos de un mismo artículo).
  • PDBBind no permite redistribuir sus estructuras ni sus afinidades sin permiso escrito. El artefacto guarda identificadores PDB, recuentos y agregados por diana; un paquete para terceros construido sobre esta cohorte tendría que reconstruirse desde los identificadores.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
PDBBind completo contiene dianas con series congenéricas suficientes para una cohorte FEP (pocas dianas con muchos análogos), a diferencia de los 203 de molflex (91 parejas aptas en 18 dianas, grupo mayor de 23)
Criterio prerregistradoPre-registered criterion
medición: se informan parejas aptas y dianas con serie; la elección de la cohorte congenérica es una decisión aparte y posterior
ProtocoloProtocol
scripts/analisis_fep_pdbbind.py 03: fase 1 con _sec_job/_kmers y umbrales del sellado analisis_fep03_congenericas.py (k-meros 8, Jaccard sobre el menor >= 0.90); fase 2 MCS RDKit con los mismos parámetros (timeout 10 s, ringMatchesRingOnly, completeRingsOnly, RemoveAllHs) repartido en shards de 2000 parejas que no se reescriben; umbrales declarados antes: cobertura MCS >= 0.70 y perturbación <= 10. Prefiltro exacto declarado antes de mirar: |n_a - n_b| > 10 no se calcula porque no puede ser apta; las medianas se informan sobre las evaluadas. Contenedor moldesign-science del servidor <host-interno>, 3 procesos, compartido con la VM de QA. Réplica previa sobre los 203 contra FEP-03/metrics.json
Razón de la decisiónReason for the decision
La hipotesis se sostiene: PDBBind contiene series congenericas utilizables para FEP, a diferencia de los 203 de molflex. 3299 parejas aptas (cobertura MCS >= 0.70 y perturbacion <= 10, umbrales del sello) en 313 dianas, frente a 91 en 18; 28 dianas con 10 o mas ligandos conectados por parejas aptas y 12 con 20 o mas. Replica previa sobre los 203: resumen identico al sello y 486/487 parejas identicas; la que cambia (1ezq-1ksn, MCS 1 -> 27 atomos, ninguna apta) muestra que el MCS con timeout depende de la carga de la maquina. Sensibilidad declarada antes de correr: los 163 MCS cortados a 10 s se repitieron con 300 s; el MCS crecio en 47, 32 siguen cortados, 0 errores, y NINGUNA pareja cambio de veredicto (23 aptas antes y despues): el recuento no depende del timeout. Un primer intento de la sensibilidad fue invalido (timeout float, ArgumentError en las 163) y se conserva como evidencia. Limitaciones: cota superior por la agrupacion por k-meros (no distingue mutantes puntuales); universo efectivo 3887 de 5325 porque la copia local de PDBBind no trae _protein.pdb en 1438 entradas. Para elegir cohorte, las afinidades anadidas desde BindingDB al INDEX local estan emparejadas por diana y no sirven; con las de Fase A, la cohorte recomendada es galectina-3 (6qln-6qlu, 7 ligandos de un solo articulo, ChemMedChem 2019).

Métricas registradasRecorded metrics

tipo
auditoria (sin docking)
duration_seconds
1483.54
universo
pdbbind
prefiltro
exacto: |n_a - n_b| > perturbacion_max implica perturbacion > max; no cambia las aptas. Las medianas son sobre las parejas evaluadas, no sobre todas.
limitacion
la agrupacion por k-meros no distingue mutantes puntuales (que para FEP+ SI serian dianas distintas) y puede unir isoformas; el MCS con timeout puede ser suboptimo. Ambos sesgos SOBREESTIMAN las parejas: la cifra es una COTA SUPERIOR

ReproducibilidadReproducibility

commit
52b3768704 (dirty)
ramabranch
codex/release-hygiene
semillaseed
42
selladosealed
23 de septiembre de 2026September 23, 2026
duraciónduration
25 min
hashes SHA-256
40
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FEP-02-PDBBINDLa integridad del receptor en PDBBind completo (huecos de cadena, sitio entre cadenas, metales, aguas) es comparable a la de los 203 de molflex (83/203 documentables para FEP)MediciónMeasurementn=5325

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La integridad del receptor en PDBBind completo (huecos de cadena, sitio entre cadenas, metales, aguas) es comparable a la de los 203 de molflex (83/203 documentables para FEP)
Criterio prerregistradoPre-registered criterion
medición sin gate: se informa la fracción documentable para FEP con los criterios sellados
ProtocoloProtocol
scripts/analisis_fep_pdbbind.py 02 sobre el script sellado analisis_fep02_receptor.py sin modificar, universo data/pdbbind, contenedor moldesign-science del servidor <host-interno>, 3 procesos; réplica previa sobre los 203 contra FEP-02/metrics.json
Razón de la decisiónReason for the decision
La hipotesis se sostiene: la integridad del receptor en PDBBind es comparable a la de los 203 de molflex. Documentables para FEP 1543/3887 (39.7%) frente a 83/203 (40.9%); con huecos de cadena 43.1% frente a 42.4%; sitio entre cadenas 938/3887 (24.1%) frente a 43/203 (21.2%); con metales 819/3887 (21.1%) frente a 52/203 (25.6%); aguas en el sitio, mediana 11 frente a 10. Es decir: ampliar el universo no mejora la preparacion del receptor; seis de cada diez sistemas necesitan una decision declarada sobre huecos, cadenas, metales o aguas antes de un calculo FEP. Replica previa identica al sello complejo por complejo (203/203). Limitacion principal: 1438 de las 5325 entradas (27%) de la copia local de PDBBind no traen _protein.pdb; el universo efectivo es 3887 y no se ha comprobado que los ausentes sean aleatorios. Solo 2 complejos con cofactores: PDBBind limpia los heteroatomos del receptor (lo documento REC-12), asi que un cofactor ausente es invisible aqui.

Métricas registradasRecorded metrics

tipo
auditoria (sin docking)
duration_seconds
277.45
limitacion
un salto de numeracion no siempre es hueco fisico: hay convenciones de numeracion no consecutiva. Se marca CANDIDATO, no defecto
experiment_id_original
FEP-02
universo
pdbbind

ReproducibilidadReproducibility

commit
52b3768704 (dirty)
ramabranch
codex/release-hygiene
semillaseed
42
selladosealed
23 de septiembre de 2026September 23, 2026
duraciónduration
5 min
complejoscomplexes
5325
hashes SHA-256
7
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FEP-01-PDBBINDEn PDBBind completo (5332 complejos) la ambigüedad tautomérica sigue siendo el cuello de FEP-01, como en los 203 de molflex (164/203 ambiguos, ninguno declarado)MediciónMeasurementn=5325

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
En PDBBind completo (5332 complejos) la ambigüedad tautomérica sigue siendo el cuello de FEP-01, como en los 203 de molflex (164/203 ambiguos, ninguno declarado)
Criterio prerregistradoPre-registered criterion
medición sin gate: se informan las fracciones de tautómero ambiguo y estereoquímica indefinida; el criterio de mapping se declara no aplicable
ProtocoloProtocol
scripts/analisis_fep_pdbbind.py 01 sobre el script sellado analisis_fep01_integridad.py sin modificar, universo data/pdbbind, en el contenedor moldesign-science (Linux, RDKit 2026.03.1) del servidor <host-interno> con 3 procesos. Antes, réplica sobre los 203 con --comparar-con FEP-01/metrics.json; si no reproduce, no se interpreta la extensión. listo_para_fep exige el mapping de index_map.json, que no existe en PDBBind: se informa aparte resumen_sin_mapping (no estereo_indefinido y no tautomero_ambiguo)
Razón de la decisiónReason for the decision
La hipotesis se sostiene a escala: 3634 de 4641 ligandos legibles de PDBBind (78.3%) tienen tautomero ambiguo, frente a 164/203 (80.8%) en molflex; la ambiguedad tautomerica sigue siendo el cuello de FEP-01. Con los dos criterios que aplican a PDBBind (estereo definido y tautomero no ambiguo) hay 989/4641 listos (21.3%, frente a 19.2%). Replica previa en el servidor identica al sello complejo por complejo (203/203) con RDKit 2025.09.6, la de los sellos; con la 2026.03.1 de la imagen cambia n_tautomeros en 7 complejos (1ai4, 1g3d, 1g3e, 1gpn, 1h22, 1m0n, 1m0q) sin que ninguno cruce ambiguo/no ambiguo: la distribucion del numero de tautomeros se cita siempre con su version de RDKit. Limitaciones: 675 SDF de PDBBind ilegibles para RDKit (12.7%) y 9 entradas que no son complejos quedan fuera; listo_para_fep original da 0 por construccion porque exige el index_map de nuestra preparacion, que PDBBind no tiene. Envoltorio scripts/analisis_fep_pdbbind.py (blob e906372d, commit 52b3768) sobre el script sellado sin modificar; contenedor moldesign-science del servidor, 3 procesos.

Métricas registradasRecorded metrics

tipo
auditoria (sin docking)
duration_seconds
32.83
decision_silenciosa_auditada
run_mf10_relax_insitu.construir_sistema llama a Molecule.from_rdkit(molh, allow_undefined_stereo=True): el pipeline ACEPTA estereoquimica indefinida y deja que la biblioteca elija
limitacion
la enumeracion de tautomeros de RDKit es heuristica de transformaciones, no calculo de poblaciones: >1 senala AMBIGUEDAD NO DECLARADA, no error. Dimensiona el hueco, no lo corrige
experiment_id_original
FEP-01
universo
pdbbind

ReproducibilidadReproducibility

commit
52b3768704
ramabranch
codex/release-hygiene
semillaseed
42
selladosealed
23 de septiembre de 2026September 23, 2026
duraciónduration
33 s
complejoscomplexes
5325
hashes SHA-256
13
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

PROD-PV-H-01La representacion de hidrogenos con que produccion evalua una pose cambia el veredicto de validez fisica, y el proxy energetico RDKit del escalon 2 no es equivalente al internal_energy de PoseBusters. Si lo primero es cierto, la ruta mixta discrepa de la canonica bajo el MISMO evaluador oficial; si lo segundo, el proxy discrepa del evaluador oficial sobre la MISMA representacion.HallazgoFindingn=232

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La representacion de hidrogenos con que produccion evalua una pose cambia el veredicto de validez fisica, y el proxy energetico RDKit del escalon 2 no es equivalente al internal_energy de PoseBusters. Si lo primero es cierto, la ruta mixta discrepa de la canonica bajo el MISMO evaluador oficial; si lo segundo, el proxy discrepa del evaluador oficial sobre la MISMA representacion.
Criterio prerregistradoPre-registered criterion
IDENTICO al de PROD-PV-H-01-PRE y no se toca. R1: alguna A:PASA -> C:FALLA obliga a no promover la representacion mixta. R2: alguna A:FALLA -> C:PASA demuestra falsas alarmas de la ruta actual. R3: si B discrepa de A en cualquier pose, el proxy no puede etiquetarse internal_energy. R4, independiente de los datos: el proxy sigue siendo proxy aunque coincida en todas. R5: sin PoseBusters solo NO EVALUADA o proxy declarado sin autoridad de PoseBusters. La cobertura del lector se declaro en el prerregistro como calificacion del instrumento, observada antes del sello, y NO se presenta aqui como hallazgo ciego.
ProtocoloProtocol
Ver prerregistro sellado PROD-PV-H-01-PRE, anterior a esta corrida, que fija los tres brazos, los parametros oficiales leidos de config/dock.yml, las cinco reglas de decision, las tres coberturas reportadas por separado y la calificacion del instrumento. Runner: scripts/run_prodpvh01_representacion_h.py, SHA-256 b4957f9dbef7c7776889a94b0fa8b7e302f5121c3952403f5a2ccbb73ca848cc, congelado ANTES del sello del prerregistro. Cohorte: 116 complejos del protocolo rigido, top-1 de los dos brazos de docking, 232 poses; la misma del ambito B de MF-33-H-COR. Sin computo de docking: se reevaluan poses ya retenidas. La canonicalizacion se reutiliza de run_mf33hcor_reconstruccion.py con su hash sellado verificado en ejecucion.
Razón de la decisiónReason for the decision
LAS DOS DEUDAS QUEDAN RESUELTAS, Y EN DIRECCIONES DISTINTAS. La representacion de hidrogenos NO cambio ningun veredicto en esta cohorte; el proxy energetico SI discrepa del evaluador oficial, y siempre en la direccion de FALSA ALARMA. Cobertura 232/232 en lector, canonicalizacion y evaluador, con cero invariantes violadas. DEUDA 1, REPRESENTACION: SIN EFECTO DETECTABLE, PERO EL DISENO NO TUVO PODER PARA DETECTARLO, y esto es lo primero que hay que decir. A vs C da 0 discordantes sobre 232, asi que R1 y R2 no se disparan. Pero la razon honesta no es que las dos representaciones sean equivalentes: es que LAS 232 POSES PASAN el control oficial en los DOS brazos. Sin una sola pose que falle, la comparacion no tuvo ningun caso discriminante. El energy_ratio oficial se mueve entre -20.3 y 19.1 contra un umbral de 100.0, es decir un orden de magnitud por debajo del corte. LO QUE SE PUEDE AFIRMAR es que sobre esta cohorte la representacion mixta no produjo ni una falsa tranquilidad ni una falsa alarma. LO QUE NO SE PUEDE AFIRMAR es que las dos representaciones sean equivalentes en general: eso exigiria una cohorte con poses que fallen, y aqui no la hay. DEUDA 2, PROXY: R3 SE DISPARA CON 33 DE 232. El proxy discrepa del evaluador oficial en 33 poses, y las 33 van en la MISMA direccion: proxy FALLA donde el oficial PASA. Es decir, el proxy no es conservador ni ruidoso: RECHAZA POSES BUENAS. Sus razones en esos 33 casos van de 124.3 a 18 582 565, contra su umbral de 100.0, mientras el oficial las situa holgadamente dentro de rango. La causa es la que ya estaba documentada y ahora esta medida: no comparten campo de fuerza -MMFF contra UFF-, ni tamano de ensemble -16 contra 50-, ni la cantidad comparada -(pose-min)/(media-min) contra pose/media-, y el 100.0 de cada uno se aplica a cosas distintas. EL PROXY NO PUEDE ETIQUETARSE `internal_energy`, y por R4 -que no depende de los datos- tampoco podria aunque hubiera coincidido en las 232. CONSECUENCIA DE PRODUCTO, y estaba preregistrada. La regla decia: cualquier proxy FALLA -> PoseBusters canonico PASA demuestra falso rechazo y obliga a que el fallback solo emita REVISION, nunca FALLA. Se cumple 33 veces sobre 232, el 14.2%. El escalon 2 no puede seguir emitiendo un veredicto de FALLA. EL INSTRUMENTO HUBO QUE REPARARLO ANTES, y sin eso este artefacto no habria significado nada. El lector anterior leia las columnas 77-78 del PDBQT como simbolo quimico cuando ahi vive el tipo AutoDock: cubria 40 de 232 poses, y el fallo estaba CORRELACIONADO CON LA AROMATICIDAD. Cualquier matriz calculada sobre ese 17% habria parecido un resultado y no lo habria sido. El lector reparado -plantilla quimica, index_map serial->indice, coordenadas por columnas fijas, pseudo-atomos de pegado de macrociclo descartados por tipo- cubre 232/232. Esa calificacion se observo ANTES del sello, se declaro en el prerregistro y NO se presenta como hallazgo ciego. LAS TRES COBERTURAS, por separado porque un NO EVALUADA no significa lo mismo segun de donde venga: lector 232/232, canonicalizacion 232/232, evaluador 232/232 finitos. Invariantes: desplazamiento pesado 0.0 A, SMILES isomerico, carga y enlaces identicos en las 232, y num_h_added == 0 en el brazo canonico, que confirma que la canonicalizacion llega entera y PoseBusters no anade ni relaja nada encima. QUE NO SALE DE AQUI. Nada sobre exactitud de pose, union ni protocolo de docking. Nada sobre la bateria completa de PoseBusters: esto mide el control energetico y solo ese. Y nada que promueva el proxy: por R4, la concordancia empirica no convierte una formula distinta en la metrica oficial.

Métricas registradasRecorded metrics

tipo
VALIDACION DE CONFORMIDAD DE LA MEDICION: que procedimiento puede llamarse internal_energy dentro del producto. NO mide rendimiento de docking.
n_complejos
116
n_poses
232
n_poses_validas
232
duracion_total_s
581.7

ReproducibilidadReproducibility

commit
f003cd9e7a (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
complejoscomplexes
232
hashes SHA-256
7
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER
mantenimientomaintenance
3 mantenimiento(s) declarados. El hash actual no acredita qué código produjo la cifra original.3 declared maintenance action(s). The current hash does not establish which code produced the original figure.

Enlace a este expedienteLink to this record

PROD-PV-H-01-PRELa representacion de hidrogenos con que produccion evalua una pose cambia el veredicto de validez fisica, y el proxy energetico RDKit del escalon 2 no es equivalente al internal_energy de PoseBusters. Si lo primero es cierto, la ruta actual -mixta: polares explicitos de Vina, no polares implicitos- discrepa de la reconstruccion canonica bajo el MISMO evaluador oficial. Si lo segundo es cierto, el proxy discrepa del evaluador oficial sobre la MISMA representacion.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La representacion de hidrogenos con que produccion evalua una pose cambia el veredicto de validez fisica, y el proxy energetico RDKit del escalon 2 no es equivalente al internal_energy de PoseBusters. Si lo primero es cierto, la ruta actual -mixta: polares explicitos de Vina, no polares implicitos- discrepa de la reconstruccion canonica bajo el MISMO evaluador oficial. Si lo segundo es cierto, el proxy discrepa del evaluador oficial sobre la MISMA representacion.
Criterio prerregistradoPre-registered criterion
REGLAS DE DECISION. R1: si existe alguna pose A:PASA -> C:FALLA, la representacion mixta NO SE PROMUEVE, porque da falsa tranquilidad; es la regla que mas pesa, porque el error va en la direccion peligrosa. R2: si existe alguna A:FALLA -> C:PASA, la ruta actual produce FALSAS ALARMAS; tambien favorece canonicalizar. R3: si B discrepa de A en cualquier pose, el proxy NO PUEDE ETIQUETARSE internal_energy. R4, Y NO DEPENDE DE LOS DATOS: aunque B coincidiera en todas, sigue siendo un proxy; una formula distinta -MMFF contra UFF, 16 conformeros contra 50, (pose-min)/(media-min) contra pose/media- no se convierte en la metrica oficial por concordancia empirica, y ningun resultado de este artefacto puede promoverlo. R5: sin PoseBusters solo hay dos salidas honestas, NO EVALUADA o proxy declarado sin identidad ni autoridad de PoseBusters. CALIFICACION DEL INSTRUMENTO, OBSERVADA ANTES DEL SELLO Y NO ES RESULTADO DEL EXPERIMENTO. El lector original cubria 40/232 = 17.2% y el truncado a columnas PDB 156/232 = 67.2%, con el fallo CORRELACIONADO CON LA AROMATICIDAD -el tipo AutoDock A en las columnas 77-78-. El lector se reparo y se califico sobre la cohorte ENTERA en modo coverage-only, sin ejecutar ni leer los brazos energeticos: 232/232 en lector, 232/232 en canonicalizacion, 0 invariantes violadas, desplazamiento pesado 0.0 A, 12 pseudo-atomos de pegado descartados en los tres macrociclos. Estas cantidades se declaran aqui porque fingir que siguen ocultas seria incorrecto. En la corrida final se vuelve a reportar el flujo de elegibilidad para auditoria, pero NO se presenta como hallazgo ciego. OBSERVACIONES TECNICAS NO INTERPRETABLES, registradas para que no parezcan un descubrimiento cuando la corrida las reproduzca: en la prueba tecnica sobre casos DIAGNOSTICOS -no una muestra- el proxy dio NO_EVALUADO en 2 de 6 poses con el lector viejo, y FALLA en 2 de 10 con el reparado, donde el oficial dio PASA. No entran en ninguna conclusion. PROHIBIDO: leer los gates con --limite o --tecnico, que emiten NO_LEER_GATES_TECNICOS; promover el proxy a internal_energy por concordancia; concluir nada sobre exactitud de pose, union o protocolo de docking; y aceptar una exclusion de poses correlacionada con aromaticidad o carga.
ProtocoloProtocol
VALIDACION DE CONFORMIDAD DE LA MEDICION, no experimento de rendimiento del docking. Poses fijas y atomos pesados IDENTICOS en los tres brazos; lo unico que cambia es la representacion de hidrogenos y el evaluador. COHORTE: 116 complejos del protocolo rigido, top-1 de los dos brazos de docking, 232 poses; la misma del ambito B de MF-33-H-COR para poder contrastar. BRAZOS: A_PROD_FULL_CURRENT = PDBQT -> representacion mixta actual -> PoseBusters oficial; B_PROD_PROXY_CURRENT = PDBQT -> representacion mixta actual -> proxy RDKit propio; C_TARGET_CANONICAL = PDBQT -> reconstruccion canonica -> PoseBusters oficial. A vs C aisla el efecto de la representacion con el mismo evaluador a los dos lados; B vs A aisla el efecto del proxy sobre la misma representacion. D_PROXY_SOBRE_CANONICA se calcula como SECUNDARIO descriptivo y no responde ninguna de las dos preguntas. EVALUADOR OFICIAL: posebusters.modules.energy_ratio.check_energy_ratio con los parametros de config/dock.yml leidos del paquete instalado -UFF, 50 conformeros, umbral energy_ratio <= 100.0, energy_ratio = mol_pred_energy / ensemble_avg_energy-; NO los defaults 7.0/100 de la funcion aislada, que dock no usa. CANONICALIZACION REUTILIZADA, no reimplementada: reconstruir(..., corregida=True) de scripts/run_mf33hcor_reconstruccion.py, sellado en MF-33-H-COR con SHA-256 072746e4530ec8fc2cbdaae0356b2b71fb52b65d23e0f758e192fbbcd09b5e95, verificado en tiempo de ejecucion; el runner aborta si no coincide. LECTOR: plantilla quimica + index_map serial->indice + coordenadas leidas por columnas fijas. El PDBQT aporta SOLO coordenadas; grafo, carga y ordenes de enlace no se infieren de el. Los pseudo-atomos de pegado de macrociclo -tipo AutoDock G- se descartan por tipo, y cualquier otro serial no mapeado, mapa no biyectivo o atomo PESADO sin coordenada produce NO EVALUADA en vez de una reconstruccion heuristica. TRES COBERTURAS REPORTADAS POR SEPARADO: lector, canonicalizacion y evaluador, porque un NO EVALUADA no significa lo mismo si viene del formato, de la identidad, de la quimica, de la parametrizacion, de la generacion de conformeros o del propio PoseBusters. METRICAS POR POSE: estado, energy_ratio, mol_pred_energy, ensemble_avg_energy, num_h_added, motivo de no evaluacion, politica de H, motor con version y parametros, y tiempo. AGREGADAS: matrices de cambio A<->C y B<->A con ejemplos, asociacion descriptiva con H polares, H totales, carga, tamano y donadores, y tasa no evaluable. INVARIANTES POR POSE: desplazamiento pesado 0, SMILES isomerico identico, carga identica, enlaces identicos, cero H heredados, determinismo, y num_h_added == 0 en el brazo C como marcador de que la canonicalizacion llego entera. Runner: scripts/run_prodpvh01_representacion_h.py, SHA-256 b4957f9dbef7c7776889a94b0fa8b7e302f5121c3952403f5a2ccbb73ca848cc.
Razón de la decisiónReason for the decision
Prerregistro sellado DESPUES de la prueba tecnica y de la calificacion del instrumento, que es el orden que este programa aprendio a golpes: sellar antes de probar no gana ceguera y cuesta un artefacto extra. NO ES CIEGO EN UN PUNTO Y SE DICE CUAL. La cobertura del lector se observo ANTES del sello -40/232 con el lector original, 156/232 truncando, 232/232 con el reparado- porque reparar el instrumento exigia medirlo. Esas cantidades son CALIFICACION DEL INSTRUMENTO, no resultado del experimento, y fingir que siguen ocultas seria incorrecto. Lo que SI esta ciego es lo unico que importa: nadie ha ejecutado ni leido los brazos energeticos sobre la cohorte. El modo coverage-only existe precisamente para calificar el lector sin tocarlos. POR QUE HUBO QUE REPARAR EL LECTOR ANTES DE EMPEZAR. El lector anterior hacia MolFromPDBBlock sobre las lineas del PDBQT y despues parcheaba con AssignBondOrdersFromTemplate. En un PDBQT las columnas 77-78 llevan el TIPO AUTODOCK, no el simbolo quimico: `A` es carbono aromatico, `NA` nitrogeno aceptor, `HD` hidrogeno donador. RDKit intentaba leer `A` como elemento, abortaba con `anum > -1` y devolvia None para la molecula entera. Resultado medido sobre las 232 poses: 40 legibles (17.2%), 178 muertas en la lectura y 14 en la valencia de la plantilla. El fallo estaba CORRELACIONADO CON LA AROMATICIDAD, que es la peor forma posible de perder datos: cualquier matriz A<->C calculada sobre ese 17% habria sido no interpretable, y habria parecido un resultado. EL ARREGLO NO ES TRUNCAR. Truncar a columnas PDB quita la confusion del tipo, pero obliga a RDKit a inferir el grafo desde distancias y luego a corregirlo con la plantilla: la cobertura sube a 156/232 y los fallos de valencia suben de 14 a 70. Inferir y despues parchear no es una ruta principal aceptable. La ruta correcta ya existia en el programa: el SMILES es la autoridad quimica, index_map.json conserva la identidad atomica, y el PDBQT aporta UNICAMENTE coordenadas, leidas por columnas fijas. Es el mismo patron del corrigendum MF-33-H-COR. CUBRE 232/232, Y LOS SEIS CASOS QUE FALTABAN ENSENARON ALGO. Con la ruta del mapa quedaban 6 poses fuera, de 1mmq, 1mmr y 1nm6, cada una con exactamente dos seriales sin entrada en el mapa. No era un mapa roto: son PSEUDO-ATOMOS DE PEGADO tipo `G` que Meeko inserta al abrir un macrociclo para hacerlo flexible. No son atomos de la molecula y por eso el mapa no los lista. Se descartan POR TIPO -no hay elemento `G`-, que es una convencion documentada del formato y no una heuristica quimica. La regla es estrecha a proposito y esta probada en las dos direcciones: descarta los de pegado y sigue abortando ante cualquier otro serial no mapeado. Ninguno de los atomos PESADOS de esos tres ligandos estaba sin mapear. EL INSTRUMENTO QUEDA CALIFICADO: 232/232 en lector, 232/232 en canonicalizacion, cero invariantes violadas, desplazamiento pesado 0.0 A, SMILES isomerico, carga y enlaces identicos en las 232, y num_h_added == 0 en el brazo canonico, que es el marcador de que la canonicalizacion llega entera y PoseBusters no anade nada. No hay exclusion correlacionada con aromaticidad ni con carga, que era la condicion que no se podia ceder. LA PRUEBA TECNICA PASA lo que tenia que pasar y nada mas: los tres brazos corren, las invariantes se cumplen, la salida respeta el contrato, el determinismo es exacto -PoseBusters siembra ETKDG con 42 y cachea por InChI-, el NaN sintetico da NO_EVALUADO, y --tecnico emite NO_LEER_GATES_TECNICOS. Sus casos se eligieron por DIAGNOSTICO y no por muestreo, asi que no producen lectura. DOS OBSERVACIONES TECNICAS QUEDAN REGISTRADAS PARA QUE NO PAREZCAN UN HALLAZGO cuando la corrida completa las reproduzca: el proxy dio NO_EVALUADO en 2 de 6 poses con el lector viejo, y FALLA en 2 de 10 con el reparado, donde el evaluador oficial dio PASA. No entran en ninguna conclusion. QUE PUEDE Y QUE NO PUEDE SALIR DE AQUI. Puede salir que procedimiento tiene derecho a llamarse internal_energy dentro del producto. NO puede salir nada sobre exactitud de pose, union, ni el protocolo de docking, que no se toca. Y por R4, que no depende de los datos, ningun resultado puede promover el proxy a metrica oficial: una formula distinta no se convierte en la oficial por concordancia empirica.

ReproducibilidadReproducibility

commit
f003cd9e7a (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
hashes SHA-256
7
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER
mantenimientomaintenance
3 mantenimiento(s) declarados. El hash actual no acredita qué código produjo la cifra original.3 declared maintenance action(s). The current hash does not establish which code produced the original figure.

Enlace a este expedienteLink to this record

MF-33-H-COREl 2.64% medía nuestra reconstrucción de hidrógenos, no la física de la poseCorrigendumCorrection noticeArtículoPapern=164

Con los átomos pesados idénticos —desplazamiento máximo 0.0 Å— y los hidrógenos regenerados desde la geometría dockeada, la validez física pasa de 2.64% a 99.48%. Y la cifra nueva no se cita nunca sin esa condición.

Durante meses el programa reportó que el 2.64% de las poses retenidas pasa PoseBusters, y que el 97.3% de los fallos venían de internal_energy. De ahí salieron tres conclusiones que parecían sólidas: la validez física es deficiente, el ensemble no la arregla, y una minimización post-docking atacaría el problema.

Las tres están invalidadas. Ninguna medía la pose.

El defecto

Un PDBQT es una representación de átomo unido: los hidrógenos no polares no están. Para pasar una pose por PoseBusters hay que reconstruirlos, y la capa que lo hacía los tomaba de una fuente incompatible con la geometría dockeada. El resultado es un ligando cuyos átomos pesados están donde el motor los puso y cuyos hidrógenos están donde no toca — una molécula con tensión interna fabricada por la propia tubería de medición.

internal_energy detecta esa tensión perfectamente. Lo que no puede hacer es distinguir si viene del docking o del instrumento.

El diseño: mover hidrógenos y nada más

Sin cómputo de docking. Se reevalúan poses ya retenidas, regenerando los hidrógenos desde la geometría de átomos pesados dockeada y relajándolos con los pesados completamente fijos.

Dos ámbitos, declarados en MF-33-H-COR-PRE antes de correr:

ÁmbitoQué esPoses
Abrazo flexible retenido por MF-33-B-RET-R2, 48 complejos8,224
Btop-1 de los dos brazos del protocolo rígido, 116 complejos232

Y cinco invariantes por pose, que son la condición de validez del artefacto en lugar de un umbral de tasa: desplazamiento pesado máximo dentro de 1e-6 Å, SMILES canónico idéntico, carga formal idéntica, número de enlaces idéntico y cero hidrógenos heredados del cristal. Una pose que viole cualquiera de ellas no entra en la tasa y se cuenta aparte.

Qué salió

Ámbito A — 8,224 posesHistóricaCorregida
Válidas2178,181
Tasa2.64%99.48%
IC95 Wilson2.31 – 3.01%99.30 – 99.61%
Ámbito B — 232 poses top-1HistóricaCorregida
Válidas28216
Tasa12.07%93.10%

Y el desglose por control, que es donde se ve el mecanismo:

Control que fallaHistórica (A)Corregida (A)
internal_energy8,0067
double_bond_flatness5980
internal_steric_clash2323
minimum_distance_to_protein1313
bond_angles / bond_lengths7 / 77 / 7

Los controles geométricos no se mueven ni una unidad. Se mueven exactamente los dos que dependen de dónde están los hidrógenos.

Y eso corrige una afirmación nuestra. El prerregistro y el commit de este corrigendum dijeron que el defecto afectaba a la energía interna. También contaminaba la planaridad de dobles enlaces, que depende de los sustituyentes de hidrógeno: 598 → 0. La afirmación previa de que sólo estaba afectada la energía era incompleta, y queda corregida aquí.

Por qué la corrección es creíble, y no sólo favorable

Un corrigendum que multiplica por 38 la cifra que le conviene tiene que llegar con más respaldo del habitual. Tres piezas:

Las cinco invariantes se cumplen en las 8,456 poses, verificadas por un consolidador independiente y no por el contador del runner: desplazamiento pesado máximo 0.0 Å, SMILES canónico idéntico, carga formal idéntica, número de enlaces idéntico, cero hidrógenos heredados del cristal, cero violaciones. La molécula corregida es la misma molécula.

La reproducción de lo histórico es exacta, complejo a complejo y no en agregado. La rama histórica de esta tubería reproduce el top-1 pb_valid de MF-33-PB en los 48 complejos del ámbito A y el pb_valid_fisica de MF-33-TOP1 en los 116 del ámbito B, con cero discordancias. Sin esa reproducción, un cambio de tasa podría ser un cambio de tubería; con ella, la única variable que cambia es la reconstrucción de hidrógenos.

Los 331 archivos se bajaron del servidor con SHA-256 contrastado: 331 coinciden, 0 difieren, 0 faltan.

No es ciego, y no lo finge

Los 12 complejos del piloto diagnóstico fueron inspeccionados antes de diseñar la corrección, y la prueba técnica previa al sellado miró además 10gs del ámbito B.

Ese piloto demuestra el defecto y diseña la corrección; no estima la tasa nueva, que es lo que mide este artefacto sobre las cohortes completas. Un corrigendum de implementación no se aprueba ni se rechaza: se ejecuta y se reporta, con la reconstrucción histórica al lado para que la diferencia sea auditable. Por eso no tiene gate de aceptación, y es deliberado.

La decisión GO es la única etiqueta compatible con el esquema del registro y significa aquí «la corrección queda establecida y reemplaza a la medición anterior», no «el sistema pasa un umbral».

Una cifra que no es la corrección de la otra

El ámbito A corre sobre MF-33-B-RET-R2: 8,224 poses, no las 8,215 que selló MF-33-PB. La única diferencia de cohorte es 1afl, que aporta 267 poses en R2 frente a 258 en R1, y estaba predicha en los límites declarados de MF-33-PB.

En consecuencia, el 8,006 de este artefacto no es el 7,997 de MF-33-PB: aquél contaba internal_energy sobre 8,215 poses de R1 y éste sobre 8,224 de R2. No es una corrección de la cifra vieja sino otra cohorte, y la caída que este corrigendum mide es 8,006 → 7 dentro de la misma cohorte R2.

El residuo, que es lo que queda vivo

Las 43 poses del ámbito A que siguen inválidas —43 únicas frente a una suma de 57 recuentos por control, porque una pose puede fallar varios a la vez— se concentran en siete complejos: 21 de ellas en 1nm6 y 9 en 1mmq. Sus fallos son geométricos: internal_steric_clash 23, minimum_distance_to_protein 13, y un bloque de 7 poses que fallan bond_angles, bond_lengths e internal_energy siempre juntos.

No es tensión generalizada del ligando. Es un subconjunto pequeño y localizado que merece caracterización posterior. En el ámbito B pasa lo mismo: 14 de las 16 inválidas son contacto con la proteína.

Sin evidencia interpretable de diferencia entre brazos

Con la tasa cerca del techo, este diseño ya no distingue:

AmbosSólo ensembleSólo singleNingunoMcNemarMDE
Ámbito A (48)47010p = 1.05.41 pp
Ámbito B (116)104624p = 0.2896.61 pp

No se afirma que gane el single, ni que gane el ensemble, ni que sean equivalentes. Lo último exigiría una prueba de no-inferioridad con margen preregistrado, que aquí no existe.

Qué se invalida y qué no

Se invalidan y se reemplazan: el 217/8215 = 2.64%; el 97.3% de fallos por internal_energy; el 8/48 contra 10/48 de MF-33-PB; el 8.62% contra 15.52% de MF-33-TOP1; y las tres conclusiones que colgaban de ellos —«la validez física es deficiente», «el ensemble no la arregla» y «una minimización post-docking atacaría el problema»—.

No se ven afectados: RMSD, cobertura del oráculo, top-1, top-5 y la cascada de conversión de ningún artefacto. Los hidrógenos no entran en ninguna de esas métricas.

**MF-33-PB y MF-33-TOP1 no se tocan.** Quedan sellados e inmutables con sus cifras originales, etiquetados, y con este corrigendum nombrado al lado. Un registro que sólo publica lo que funcionó no permite juzgar lo que funcionó; uno que corrige en silencio, tampoco.

La condición que viaja con la cifra nueva

El 99.48% es válido después de una reconstrucción canónica de hidrógenos. Sin esa cláusula la frase es incorrecta.

Y no demuestra exactitud de pose, ni unión, ni ventaja de ningún brazo. Este corrigendum no toca el protocolo de docking: sólo dice que lo que se estaba midiendo no era lo que se creía medir.

Ficha del registro selladoSealed record sheet

CategoríaCategory
CorrigendumCorrection notice · Corrección de un resultado propio cuyo valor principal es la corrección.Correction of an own result whose main value is the correction.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El indicador de validez fisica de PoseBusters que el programa venia reportando esta dominado por un defecto de la capa de RECONSTRUCCION, no por tension real del ligando dockeado. Si es asi, regenerar los hidrogenos desde la geometria de atomos pesados dockeada -manteniendolos completamente fijos- cambia la tasa de validez de forma material sin mover un solo atomo pesado.
Criterio prerregistradoPre-registered criterion
SIN GATE DE ACEPTACION, Y ES DELIBERADO. Un corrigendum de implementacion no se aprueba ni se rechaza: se ejecuta y se reporta, con la reconstruccion historica al lado para que la diferencia sea auditable. NO ES CIEGO Y NO LO FINGE: los 12 complejos del piloto diagnostico fueron inspeccionados antes de disenar la correccion, y la prueba tecnica previa al sellado del prerregistro miro ademas 10gs del ambito B; ese piloto DEMUESTRA EL DEFECTO Y DISENA LA CORRECCION, no estima la tasa nueva, que es lo que mide este artefacto sobre las cohortes completas. LA CONDICION DE VALIDEZ del artefacto no es un umbral de tasa sino las cinco invariantes por pose: desplazamiento pesado maximo dentro de 1e-6 A, SMILES canonico identico, carga formal identica, numero de enlaces identico y cero hidrogenos heredados del cristal. Una pose que viole cualquiera de ellas no entra en la tasa y se cuenta aparte. SEGUNDA CONDICION: la reconstruccion HISTORICA de esta tuberia debe reproducir complejo a complejo lo que sellaron MF-33-PB y MF-33-TOP1; sin eso, un cambio de tasa podria ser un cambio de tuberia. PROHIBIDO: modificar o re-sellar MF-33-PB y MF-33-TOP1; presentar la tasa corregida como si viniera de una medicion ciega; concluir nada sobre el PROTOCOLO DE DOCKING, que no se toca aqui; afirmar exactitud de pose o de union; y afirmar ventaja de un brazo sobre otro o equivalencia entre ellos.
ProtocoloProtocol
Ver prerregistro sellado MF-33-H-COR-PRE, anterior a esta corrida, que fija el protocolo, los dos ambitos, las cinco invariantes por pose y la lista explicita de lo que queda suspendido. Sin computo de docking: se reevaluan poses YA RETENIDAS. AMBITO A: 48 complejos y 8224 poses del brazo flexible retenidas por MF-33-B-RET-R2 -8224 y no 8215 porque R2 redockeo 1afl, que pasa de 258 a 267 poses; era la unica diferencia predicha en los limites declarados de MF-33-PB-. AMBITO B: 116 complejos del protocolo rigido, top-1 de los dos brazos, 232 poses reconstruidas desde los conf<i>.out.pdbqt en disco. Runner: scripts/run_mf33hcor_reconstruccion.py, ejecutado en el servidor <host-interno>, contenedor mf33hcor, imagen moldesign-lab-pb:0.6.5, 164/164 trabajos, salida 0. Consolidacion y verificacion independiente: scripts/analisis_mf33hcor_consolidado.py, que RECALCULA desde los checkpoints por pose todo lo que el artefacto afirma, contrasta complejo a complejo contra MF-33-PB y MF-33-TOP1 sellados, y reusa por composicion el McNemar exacto, el Wilson y el MDE de scripts/estadistica_fnd04.py. Los 331 archivos se bajaron con SHA-256 contrastado contra el servidor: 331 coinciden, 0 difieren, 0 faltan. MF-33-PB y MF-33-TOP1 no se tocan: quedan sellados e inmutables.
Razón de la decisiónReason for the decision
CORRECCION CONFIRMADA. La reconstruccion historica de hidrogenos contaminaba la medicion de validez fisica. Con atomos pesados IDENTICOS y los hidrogenos regenerados desde la geometria dockeada y relajados con los pesados completamente fijos, la tasa PB-valid pasa de 2.64% a 99.48% en el ambito flexible (8181 de 8224 poses) y de 12.07% a 93.10% en los top-1 rigidos (216 de 232). Las tasas historicas y las conclusiones dominadas por internal_energy QUEDAN INVALIDADAS Y REEMPLAZADAS. ESTO NO DEMUESTRA exactitud de pose, ni union, ni superioridad de ningun brazo. POR QUE LA CORRECCION ES CREIBLE, y no solo favorable. Primero, LAS CINCO INVARIANTES SE CUMPLEN EN LAS 8456 POSES, verificadas de forma independiente por scripts/analisis_mf33hcor_consolidado.py y no por el contador del runner: desplazamiento pesado maximo 0.0 A, SMILES canonico identico, carga formal identica, numero de enlaces identico, CERO hidrogenos heredados del cristal, CERO violaciones. La molecula corregida es la misma molecula. Segundo, LA REPRODUCCION DE LO HISTORICO ES EXACTA, complejo a complejo y no en agregado: la rama HISTORICA de esta tuberia reproduce el top-1 pb_valid de MF-33-PB en los 48 complejos del ambito A y el pb_valid_fisica de MF-33-TOP1 en los 116 del ambito B, con CERO discordancias. Sin esa reproduccion, un cambio de tasa podria ser un cambio de tuberia; con ella, la unica variable que cambia es la reconstruccion de hidrogenos. Tercero, los 331 archivos se bajaron del servidor con SHA-256 contrastado: 331 coinciden, 0 difieren, 0 faltan. EL AMBITO A CORRE SOBRE R2, NO SOBRE R1: 8224 poses, no las 8215 que sello MF-33-PB. La unica diferencia de cohorte es 1afl, que aporta 267 poses en R2 frente a 258 en R1, y ESTABA PREDICHA en los limites declarados de MF-33-PB. En consecuencia, EL 8006 DE ESTE ARTEFACTO NO ES EL 7997 DE MF-33-PB: aquel contaba internal_energy sobre 8215 poses de R1 y este sobre 8224 de R2. No es una correccion de la cifra vieja sino otra cohorte, y la caida que este corrigendum mide es 8006 -> 7 DENTRO DE LA MISMA COHORTE R2. DOUBLE_BOND_FLATNESS: 598 -> 0, Y ESO CORRIGE UNA AFIRMACION NUESTRA. El prerregistro y el commit del corrigendum dijeron que el defecto afectaba a la energia interna. Tambien contaminaba la planaridad de dobles enlaces, que depende de los hidrogenos sustituyentes. La afirmacion previa de que solo estaba afectada la energia era incompleta y queda corregida aqui. NO ES CIEGO Y NO LO FINGE. Los 12 complejos del piloto diagnostico fueron INSPECCIONADOS antes de disenar la correccion, y la prueba tecnica previa al sellado del prerregistro miro ademas 10gs del ambito B. Ese piloto demuestra el defecto y disena la correccion; NO estima la tasa nueva, que es lo que mide este artefacto sobre las cohortes completas. Un corrigendum de implementacion no se aprueba ni se rechaza: se ejecuta y se reporta. La decision GO es la unica etiqueta compatible con el esquema y significa AQUI «la correccion queda establecida y reemplaza a la medicion anterior», no «el sistema pasa un umbral». SIN EVIDENCIA INTERPRETABLE DE DIFERENCIA ENTRE BRAZOS, que no es lo mismo que equivalencia. Ambito A: single 48/48 contra ensemble 47/48, tabla pareada ambos=47, solo_ensemble=0, solo_single=1, ninguno=0, McNemar exacto p=1.0, MDE 5.41 pp. Ambito B: single 106/116 contra ensemble 110/116, tabla pareada ambos=104, solo_ensemble=6, solo_single=2, ninguno=4, McNemar exacto p=0.289062, MDE 6.61 pp. Con la tasa corregida cerca del techo, este diseno no distingue entre brazos. NO se afirma que gane el single, NI que gane el ensemble, NI que sean equivalentes: lo ultimo exigiria una prueba de no-inferioridad con margen preregistrado, que aqui no existe. LOS RECUENTOS POR CONTROL SE SOLAPAN Y NO SUMAN POSES INVALIDAS UNICAS. Una misma pose puede fallar varios controles. Ambito A: 43 poses invalidas unicas frente a una suma de 57 recuentos por control. Ambito B: 16 unicas frente a 17. Las combinaciones de controles, que si son disjuntas, se reportan en metrics.json. EL RESIDUO CIENTIFICO ES LO QUE QUEDA VIVO, y ahora si es caracterizable. Las 43 poses del ambito A que siguen invalidas se concentran en SIETE complejos -21 de ellas en 1nm6 y 9 en 1mmq- y sus fallos son geometricos: internal_steric_clash 23, minimum_distance_to_protein 13, y un bloque de 7 poses que fallan bond_angles, bond_lengths e internal_energy A LA VEZ, siempre juntos. No es tension generalizada del ligando: es un subconjunto pequeno y localizado que merece caracterizacion posterior. Lo mismo en el ambito B, donde 14 de las 16 invalidas son contacto con la proteina. QUE SIGUE EN PIE Y QUE NO. Se invalidan y se reemplazan: 217/8215 = 2.64%; el 97.3% de fallos por internal_energy; el 8/48 contra 10/48 de MF-33-PB; el 8.62% contra 15.52% de MF-33-TOP1; y las conclusiones «la validez fisica es deficiente», «el ensemble no la arregla» y «una minimizacion post-docking atacaria el problema». NO se ven afectados: RMSD y cobertura del oraculo, top-1, top-5 y la cascada de conversion, las coordenadas de atomos pesados. MF-33-PB y MF-33-TOP1 no se tocan: quedan sellados e inmutables con sus cifras, que este artefacto reproduce y explica. MF-33-MIN queda confirmado como CANCELLED_BEFORE_EXECUTION / SUPERSEDED_BY_MF-33-H-COR: no queda tension generalizada que minimizar. LA CONDICION QUE NO SE PUEDE OMITIR AL CITAR ESTA CIFRA. El 99.48% es CONDICIONAL a una reconstruccion canonica de hidrogenos. El PDBQT es una representacion de atomo unido y no contiene la geometria explicita completa, asi que «el pipeline produce 99.48% de poses fisicamente validas» es una frase incorrecta sin esa condicion. La formulacion correcta es que las poses de atomos pesados son mayoritariamente compatibles con los controles fisicos de PoseBusters DESPUES de una reconstruccion canonica de hidrogenos.

Métricas registradasRecorded metrics

tipo
corrigendum de implementacion; reconstruccion historica contra corregida
prerregistro
MF-33-H-COR-PRE, sellado antes de la corrida
NO_ES_CIEGO_Y_NO_LO_FINGE
Los 12 complejos del piloto diagnostico fueron INSPECCIONADOS antes de disenar la correccion, y la prueba tecnica previa al sellado miro ademas el complejo 10gs del ambito B. Ese piloto DEMUESTRA EL DEFECTO Y DISENA LA CORRECCION; no estima la tasa nueva, que es lo que mide este artefacto sobre las cohortes completas. Un corrigendum de implementacion no se aprueba ni se rechaza: se ejecuta y se reporta, con la reconstruccion historica al lado para que la diferencia sea auditable.

ReproducibilidadReproducibility

commit
f003cd9e7a (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
duraciónduration
1 h 51 min
complejoscomplexes
164
hashes SHA-256
10
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-MINEl 97.3% de fallos de internal_energy que midio MF-33-PB es un ARTEFACTO del protocolo -conformeros rigidos que nunca se relajan- y no fisica real del ligando unido. Si lo es, la tension se puede liberar SIN mover la pose y una minimizacion restringida arregla la validez fisica sin degradar la geometria. La alternativa es que la tension sea intrinseca a estar colocado ahi, en cuyo caso liberarla exige mover la pose y minimizar comprara validez fisica a costa de precision geometrica.InconclusoInconclusive

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
InconclusoInconclusive · Ejecutado y declarado sin conclusión. No se reclasifica a posteriori.Executed and declared without a conclusion. It is not reclassified afterwards.
Decisión del manifestManifest decision
INCONCLUSIVE
HipótesisHypothesis
El 97.3% de fallos de internal_energy que midio MF-33-PB es un ARTEFACTO del protocolo -conformeros rigidos que nunca se relajan- y no fisica real del ligando unido. Si lo es, la tension se puede liberar SIN mover la pose y una minimizacion restringida arregla la validez fisica sin degradar la geometria. La alternativa es que la tension sea intrinseca a estar colocado ahi, en cuyo caso liberarla exige mover la pose y minimizar comprara validez fisica a costa de precision geometrica.
Criterio prerregistradoPre-registered criterion
DOS CO-PRIMARIAS, y las dos se leen JUNTAS. Es la razon de ser de este diseno: medir solo la fisica produciria un GO para un cambio que puede estar rompiendo lo unico que hoy funciona bien. CO-PRIMARIA 1, FISICA: fraccion de complejos cuyo top-1 pasa la bateria completa, pareada antes/despues, McNemar exacto bilateral. CO-PRIMARIA 2, GEOMETRIA: fraccion de complejos cuyo top-1 sigue cubriendo a <=2.0 A, pareada antes/despues, McNemar exacto bilateral. CUATRO LECTURAS ESCRITAS ANTES, por brazo: (1) la fisica mejora con p<0.05 y la geometria NO se degrada => ERA_ARTEFACTO_SE_PUEDE_ADOPTAR, y la minimizacion entra al pipeline; (2) la fisica mejora pero la geometria se degrada con p<0.05 => COMPRA_FISICA_A_COSTA_DE_GEOMETRIA_NO_ADOPTAR, y el resultado es que la tension sostenia la colocacion; (3) la fisica no mejora => LA_MINIMIZACION_NO_ARREGLA_LA_FISICA y la hipotesis sobre internal_energy era falsa; (4) el resto => SIN_DIFERENCIA_DETECTABLE, sin leerlo como equivalencia. EFECTO MINIMO DETECTABLE DECLARADO ANTES: con n=48, el MDE pareado es de 11.85 pp si la discordancia sale del 10%, 16.77 pp si del 20% y 20.53 pp si del 30%; y con c=0 el McNemar exacto exige b>=6 para p<0.05. SECUNDARIO descriptivo y sin gate: el desplazamiento mediano de cada brazo, y la misma tabla sobre el conjunto completo de poses y no solo el top-1. PROHIBIDO: adoptar la minimizacion si sale la lectura (2), por mucho que la mejora fisica sea grande; leer la lectura (1) como permiso para minimizar en produccion sin medir antes el efecto sobre el ranking, que este experimento NO toca; presentar el desplazamiento como criterio de descarte en produccion, donde no hay cristal para arbitrar y la regla seria circular; y comparar estas tasas con MF-33-TOP1 o con la configuracion dock de produccion. NADA DE ESTE GATE CAMBIA respecto a MF-33-MIN-PRE: se reproduce palabra por palabra, incluidas las dos co-primarias, las cuatro lecturas, el MDE y las prohibiciones. LA CEGUERA SE CONSERVA ENTERA: la version anterior no llego a producir ni un solo resultado -reventaba en el campo de fuerzas antes de evaluar nada-, y la prueba que lo destapo corrio con `--limite`, que por contrato fuerza NO_LEER_GATES_TECNICOS.
ProtocoloProtocol
NO EJECUTADO. Sin dockear ni una sola pose nueva: se relajan las 8215 ya retenidas por MF-33-B-RET-R1 y MF-33-B-RET-R2 y se vuelve a medir. Cohorte: los 48 de MF-33, que es donde hay cristal y por tanto donde se puede arbitrar si moverse fue bueno o malo. DOS BRAZOS DE RELAJACION sobre LAS MISMAS poses, pareado perfecto: RESTRINGIDA, minimizacion MMFF con restricciones armonicas de 10 kcal/mol/A2 sobre cada atomo pesado, que deja relajar enlaces, angulos y torsiones pero penaliza el desplazamiento; responde si la tension se puede liberar EN EL SITIO. LIBRE, minimizacion MMFF sin restricciones; responde CUANTO tiene que moverse la molecula para dejar de estar tensa. Maximo 500 iteraciones en los dos. Por pose se mide, antes y despues: validez fisica con PoseBusters en configuracion redock reusando el modulo sellado posebusters_metrica.py; el desplazamiento respecto a la pose de partida, SIN alineamiento, porque interesa cuanto se movio en el marco del receptor y alinear borraria justo esa senal; y el rmsd_pose_pocket al cristal. La geometria cruda de 47 complejos vive en MF-33-B-RET-R1 y la de 1afl en R2, que es el unico que R2 recomputo; el runner resuelve en ese orden y registra cual uso. Contenedor moldesign-lab-pb:0.6.5 del servidor. Script: scripts/run_mf33min_relajacion.py. CAMBIO DE IMPLEMENTACION, NO DE PROTOCOLO: las restricciones posicionales se ponen con `ff.MMFFAddPositionConstraint`, la API soportada, en vez de montarlas a mano con AddExtraPoint mas AddDistanceConstraint. Los dos brazos, sus constantes y todas las cantidades medidas son identicos.
Razón de la decisiónReason for the decision
CANCELLED_BEFORE_EXECUTION / SUPERSEDED_BY_MF-33-H-COR. NO SE EJECUTO NI UNA POSE. El esquema del manifest solo admite GO, NO_GO e INCONCLUSIVE, y de los tres INCONCLUSIVE es el unico compatible; pero la etiqueta correcta es la de arriba y se escribe aqui para que no se lea mal. NO ES UN NO_GO: su hipotesis nunca llego a probarse. Lo que desaparecio no fue el resultado sino LA VALIDEZ DE SU PREMISA. POR QUE SE CANCELA. MF-33-MIN preguntaba si la tension interna de las poses es artefacto del protocolo o fisica real, partiendo de que MF-33-PB habia medido internal_energy fallando 7997 de 8215 veces. El diagnostico posterior encontro que esa cifra esta dominada por un defecto de la capa de RECONSTRUCCION: los hidrogenos no polares se quedaban en coordenadas cristalograficas incompatibles con la pose. Y el diseno de MF-33-MIN no puede distinguirlo. Su brazo RESTRINGIDA fija los atomos pesados con una constante armonica pero deja los hidrogenos LIBRES, asi que relajaria exactamente el artefacto y devolveria 'la minimizacion arregla la fisica' de forma trivial. Habria producido un resultado plausible, con gate preregistrado, y equivocado. Ejecutarlo sabiendo esto habria sido fabricar evidencia. QUE PASA DESPUES. MF-33-H-COR recalcula la validez fisica con la reconstruccion corregida en los dos ambitos afectados. Si tras esa correccion TODAVIA queda tension sin explicar, la pregunta de MF-33-MIN sigue viva y se rediseña con tres brazos y un prerregistro nuevo: SOLO_H con pesados completamente fijos como baseline OBLIGATORIO, minimizacion pesada restringida, y minimizacion libre. Sin ese baseline el experimento no puede separar reconstruccion de quimica, que es justo lo que le fallo a este. Los prerregistros MF-33-MIN-PRE y MF-33-MIN-R1-PRE quedan sellados e intactos: son el registro de que la pregunta se formulo antes y de por que dejo de poder responderse asi.

Métricas registradasRecorded metrics

estado
CANCELLED_BEFORE_EXECUTION
superado_por
MF-33-H-COR
n_poses_evaluadas
0
nota
No se ejecuto. Su premisa -que el 97.3% de fallos de internal_energy medido por MF-33-PB refleja tension del ligando dockeado- quedo suspendida por MF-33-H-COR antes de lanzarlo.

ReproducibilidadReproducibility

commit
7430ef25a5 (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-H-COR-PREEl indicador de validez fisica de PoseBusters que el programa viene reportando esta dominado por un defecto de la capa de RECONSTRUCCION, no por tension real del ligando dockeado. Si es asi, regenerar los hidrogenos desde la geometria de atomos pesados dockeada -manteniendolos completamente fijos- cambia la tasa de validez de forma material sin mover un solo atomo pesado.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El indicador de validez fisica de PoseBusters que el programa viene reportando esta dominado por un defecto de la capa de RECONSTRUCCION, no por tension real del ligando dockeado. Si es asi, regenerar los hidrogenos desde la geometria de atomos pesados dockeada -manteniendolos completamente fijos- cambia la tasa de validez de forma material sin mover un solo atomo pesado.
Criterio prerregistradoPre-registered criterion
SIN GATE DE ACEPTACION, Y ES DELIBERADO. Un corrigendum de implementacion no se aprueba ni se rechaza: se ejecuta y se reporta. La cantidad que produce es la tasa de validez fisica bajo la reconstruccion corregida, con la historica al lado para que la diferencia sea auditable. NO ES CIEGO Y NO LO FINGE. Los 12 casos del piloto diagnostico ya fueron inspeccionados, y la prueba tecnica previa a este sellado mostro ademas el complejo 10gs del ambito B. El piloto DEMUESTRA EL DEFECTO Y DISENA LA CORRECCION; no estima la tasa nueva, que es lo que este artefacto mide sobre las cohortes completas. QUEDA SUSPENDIDO hasta que este corrigendum cierre, y no debe citarse: 217/8215 = 2.64% de poses validas; el 97.3% de fallos por internal_energy; el 8/48 contra 10/48 de MF-33-PB; el 8.62% contra 15.52% de MF-33-TOP1; y las conclusiones 'la validez fisica es deficiente', 'el ensemble no arregla la validez fisica' y 'una minimizacion post-docking atacaria directamente el problema'. NO QUEDA INVALIDADO y puede seguir citandose: RMSD y cobertura del oraculo; top-1, top-5 y la cascada de conversion; las coordenadas de atomos pesados; y los controles exclusivamente geometricos de pesados, que se reportan por separado. El indicador compuesto PB-valid SI se recalcula, porque exige que internal_energy pase. PROHIBIDO: modificar o re-sellar MF-33-PB y MF-33-TOP1; presentar la tasa corregida como si viniera de una medicion ciega; concluir del corrigendum nada sobre el PROTOCOLO DE DOCKING, que no se toca aqui; y ejecutar MF-33-MIN, cuya premisa depende de la cifra suspendida.
ProtocoloProtocol
EL DEFECTO, confirmado en el codigo. posebusters_metrica.mol_con_hidrogenos anade TODOS los hidrogenos sobre la geometria CRISTALOGRAFICA; pose_a_mol reemplaza despues solo las coordenadas presentes en el PDBQT, que de Vina trae unicamente los polares. Los no polares se quedan en posiciones del cristal, incompatibles con la pose en cuanto los pesados se mueven. PoseBusters optimiza solo los hidrogenos que el mismo anade y deja fijos los explicitos que recibe. El resultado es una molecula HIBRIDA cuya energia interna se dispara sin que haya tension real. RECONSTRUCCION CORREGIDA: se parte del grafo de atomos pesados con las coordenadas dockeadas, se eliminan TODOS los hidrogenos, se regeneran desde esa geometria y se optimizan con los pesados COMPLETAMENTE FIJOS -AddFixedPoint sobre cada pesado-, maximo 500 iteraciones. Ningun hidrogeno hereda coordenadas cristalograficas por construccion. INVARIANTES QUE SE VERIFICAN Y SE REPORTAN POR POSE: desplazamiento pesado maximo dentro de 1e-6 A; SMILES canonico identico; carga formal identica; numero de enlaces identico; cero hidrogenos heredados del cristal; y resultado determinista. Una pose que viole cualquiera de ellas se cuenta aparte y no entra en la tasa. DOS AMBITOS, porque corregir uno solo dejaria el otro suspendido en vez de reemplazado. AMBITO A, MF-33-PB: los 48 complejos y las 8215 poses del brazo flexible retenidas por MF-33-B-RET-R1 y R2. AMBITO B, MF-33-TOP1: los 116 complejos del protocolo rigido, top-1 de los dos brazos, reconstruidos desde los conf<i>.out.pdbqt que siguen en disco. Se reportan LADO A LADO, por pose: reconstruccion historica, reconstruccion corregida, energia interna de cada una, cada control individual y el PB-valid total. LOS ARTEFACTOS ORIGINALES NO SE TOCAN: MF-33-PB y MF-33-TOP1 quedan sellados e inmutables. Esto produce un artefacto nuevo. Script: scripts/run_mf33hcor_reconstruccion.py.
Razón de la decisiónReason for the decision
Prerregistro sellado ANTES de ejecutar la corrida completa y DESPUES de la prueba tecnica, que es el orden que hoy se aprendio a golpes: dos prerregistros de esta misma jornada sellaron scripts rotos y costaron un R1 cada uno. Sellar antes de probar no gana ceguera -la prueba tecnica no produce decision por contrato- y cuesta un artefacto extra. ES UN CORRIGENDUM DE IMPLEMENTACION, no un experimento nuevo, y suspende provisionalmente una medicion DOMINANTE que ya esta citada en docs/50, docs/52, el manuscrito y un informe de auditoria externa. Por eso se escribe antes de tocar nada y por eso enumera explicitamente que queda suspendido y que no. El mecanismo esta confirmado en el codigo y verificado en la prueba tecnica: sobre 10gs, la reconstruccion historica da 295660741 kcal/mol y la corregida 124.8, con desplazamiento de atomos pesados de 0.0 A, mismo SMILES, misma carga formal, mismo numero de enlaces y los mismos 28 hidrogenos, cero heredados del cristal. La pose pasa de invalida a valida sin que se mueva un solo atomo pesado. SE CORRIGEN LOS DOS AMBITOS a proposito. Recalcular solo MF-33-PB dejaria el 8.62% y el 15.52% de MF-33-TOP1 suspendidos para siempre en vez de reemplazados, y esas dos cifras son las que estan citadas fuera del registro. MF-33-TOP1 es recalculable porque sus 8570 conf<i>.out.pdbqt siguen en disco. MF-33-MIN NO SE EJECUTA. Su brazo RESTRINGIDA deja los hidrogenos libres, asi que mediria exactamente este artefacto y 'confirmaria' de forma trivial que la minimizacion arregla la fisica. Se registra como cancelado antes de ejecutar y superado por este corrigendum; NO como NO_GO, porque su hipotesis no llego a probarse: lo que desaparecio fue la validez de su premisa. Este corrigendum no debilita el programa. Es la demostracion de para que sirven la procedencia, la retencion forense y el derecho a corregir una medicion plausible pero equivocada antes de publicarla.

ReproducibilidadReproducibility

commit
7430ef25a5 (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
hashes SHA-256
5
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-MIN-R1-PREEl 97.3% de fallos de internal_energy que midio MF-33-PB es un ARTEFACTO del protocolo -conformeros rigidos que nunca se relajan- y no fisica real del ligando unido. Si lo es, la tension se puede liberar SIN mover la pose y una minimizacion restringida arregla la validez fisica sin degradar la geometria. La alternativa es que la tension sea intrinseca a estar colocado ahi, en cuyo caso liberarla exige mover la pose y minimizar comprara validez fisica a costa de precision geometrica.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El 97.3% de fallos de internal_energy que midio MF-33-PB es un ARTEFACTO del protocolo -conformeros rigidos que nunca se relajan- y no fisica real del ligando unido. Si lo es, la tension se puede liberar SIN mover la pose y una minimizacion restringida arregla la validez fisica sin degradar la geometria. La alternativa es que la tension sea intrinseca a estar colocado ahi, en cuyo caso liberarla exige mover la pose y minimizar comprara validez fisica a costa de precision geometrica.
Criterio prerregistradoPre-registered criterion
DOS CO-PRIMARIAS, y las dos se leen JUNTAS. Es la razon de ser de este diseno: medir solo la fisica produciria un GO para un cambio que puede estar rompiendo lo unico que hoy funciona bien. CO-PRIMARIA 1, FISICA: fraccion de complejos cuyo top-1 pasa la bateria completa, pareada antes/despues, McNemar exacto bilateral. CO-PRIMARIA 2, GEOMETRIA: fraccion de complejos cuyo top-1 sigue cubriendo a <=2.0 A, pareada antes/despues, McNemar exacto bilateral. CUATRO LECTURAS ESCRITAS ANTES, por brazo: (1) la fisica mejora con p<0.05 y la geometria NO se degrada => ERA_ARTEFACTO_SE_PUEDE_ADOPTAR, y la minimizacion entra al pipeline; (2) la fisica mejora pero la geometria se degrada con p<0.05 => COMPRA_FISICA_A_COSTA_DE_GEOMETRIA_NO_ADOPTAR, y el resultado es que la tension sostenia la colocacion; (3) la fisica no mejora => LA_MINIMIZACION_NO_ARREGLA_LA_FISICA y la hipotesis sobre internal_energy era falsa; (4) el resto => SIN_DIFERENCIA_DETECTABLE, sin leerlo como equivalencia. EFECTO MINIMO DETECTABLE DECLARADO ANTES: con n=48, el MDE pareado es de 11.85 pp si la discordancia sale del 10%, 16.77 pp si del 20% y 20.53 pp si del 30%; y con c=0 el McNemar exacto exige b>=6 para p<0.05. SECUNDARIO descriptivo y sin gate: el desplazamiento mediano de cada brazo, y la misma tabla sobre el conjunto completo de poses y no solo el top-1. PROHIBIDO: adoptar la minimizacion si sale la lectura (2), por mucho que la mejora fisica sea grande; leer la lectura (1) como permiso para minimizar en produccion sin medir antes el efecto sobre el ranking, que este experimento NO toca; presentar el desplazamiento como criterio de descarte en produccion, donde no hay cristal para arbitrar y la regla seria circular; y comparar estas tasas con MF-33-TOP1 o con la configuracion dock de produccion. NADA DE ESTE GATE CAMBIA respecto a MF-33-MIN-PRE: se reproduce palabra por palabra, incluidas las dos co-primarias, las cuatro lecturas, el MDE y las prohibiciones. LA CEGUERA SE CONSERVA ENTERA: la version anterior no llego a producir ni un solo resultado -reventaba en el campo de fuerzas antes de evaluar nada-, y la prueba que lo destapo corrio con `--limite`, que por contrato fuerza NO_LEER_GATES_TECNICOS.
ProtocoloProtocol
Sin dockear ni una sola pose nueva: se relajan las 8215 ya retenidas por MF-33-B-RET-R1 y MF-33-B-RET-R2 y se vuelve a medir. Cohorte: los 48 de MF-33, que es donde hay cristal y por tanto donde se puede arbitrar si moverse fue bueno o malo. DOS BRAZOS DE RELAJACION sobre LAS MISMAS poses, pareado perfecto: RESTRINGIDA, minimizacion MMFF con restricciones armonicas de 10 kcal/mol/A2 sobre cada atomo pesado, que deja relajar enlaces, angulos y torsiones pero penaliza el desplazamiento; responde si la tension se puede liberar EN EL SITIO. LIBRE, minimizacion MMFF sin restricciones; responde CUANTO tiene que moverse la molecula para dejar de estar tensa. Maximo 500 iteraciones en los dos. Por pose se mide, antes y despues: validez fisica con PoseBusters en configuracion redock reusando el modulo sellado posebusters_metrica.py; el desplazamiento respecto a la pose de partida, SIN alineamiento, porque interesa cuanto se movio en el marco del receptor y alinear borraria justo esa senal; y el rmsd_pose_pocket al cristal. La geometria cruda de 47 complejos vive en MF-33-B-RET-R1 y la de 1afl en R2, que es el unico que R2 recomputo; el runner resuelve en ese orden y registra cual uso. Contenedor moldesign-lab-pb:0.6.5 del servidor. Script: scripts/run_mf33min_relajacion.py. CAMBIO DE IMPLEMENTACION, NO DE PROTOCOLO: las restricciones posicionales se ponen con `ff.MMFFAddPositionConstraint`, la API soportada, en vez de montarlas a mano con AddExtraPoint mas AddDistanceConstraint. Los dos brazos, sus constantes y todas las cantidades medidas son identicos.
Razón de la decisiónReason for the decision
Prerregistro sellado ANTES de ejecutar. Existe por la misma razon mecanica que MF-33-PB-R1-PRE: el anterior sello un script que no corria, y un prerregistro sellado no se re-sella. EL DEFECTO: las restricciones posicionales del brazo RESTRINGIDA se montaban a mano con AddExtraPoint mas AddDistanceConstraint, y eso rompe el campo de fuerzas -'Pre-condition Violation: size mismatch' en ForceField.cpp- porque anadir puntos extra despues de construirlo exige reinicializarlo. Se sustituye por ff.MMFFAddPositionConstraint, que es la via soportada, en vez de parchear la artesanal. Verificado antes de sellar sobre una molecula tensionada a proposito: la restringida baja la energia de 143.71 a 19.76 desplazandose 0.102 A y la libre baja a 18.91 desplazandose 0.145 A, que es exactamente el comportamiento que el diseno pide. LA CEGUERA SE CONSERVA ENTERA, y este caso es mas limpio que el de MF-33-PB: alli la version rota llego a devolver 261 poses no evaluadas; aqui reventaba en el campo de fuerzas ANTES de evaluar nada, asi que no se produjo ni un numero. La prueba que lo destapo corrio con --limite, que por contrato nunca produce decision. LECCION DE PROCESO, que va al docs/50 seccion 12.3: es la SEGUNDA vez en el dia que un prerregistro sella un script que la prueba tecnica destapa como roto. El orden correcto es escribir el runner, pasar la prueba tecnica, y SOLO ENTONCES sellar. Sellar antes no gana ceguera -la prueba tecnica no produce decision- y cuesta un prerregistro extra cada vez.

ReproducibilidadReproducibility

commit
7430ef25a5 (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
hashes SHA-256
4
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-MIN-PREEl 97.3% de fallos de internal_energy que midio MF-33-PB es un ARTEFACTO del protocolo -conformeros rigidos que nunca se relajan- y no fisica real del ligando unido. Si lo es, la tension se puede liberar SIN mover la pose y una minimizacion restringida arregla la validez fisica sin degradar la geometria. La alternativa es que la tension sea intrinseca a estar colocado ahi, en cuyo caso liberarla exige mover la pose y minimizar comprara validez fisica a costa de precision geometrica.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El 97.3% de fallos de internal_energy que midio MF-33-PB es un ARTEFACTO del protocolo -conformeros rigidos que nunca se relajan- y no fisica real del ligando unido. Si lo es, la tension se puede liberar SIN mover la pose y una minimizacion restringida arregla la validez fisica sin degradar la geometria. La alternativa es que la tension sea intrinseca a estar colocado ahi, en cuyo caso liberarla exige mover la pose y minimizar comprara validez fisica a costa de precision geometrica.
Criterio prerregistradoPre-registered criterion
DOS CO-PRIMARIAS, y las dos se leen JUNTAS. Es la razon de ser de este diseno: medir solo la fisica produciria un GO para un cambio que puede estar rompiendo lo unico que hoy funciona bien. CO-PRIMARIA 1, FISICA: fraccion de complejos cuyo top-1 pasa la bateria completa, pareada antes/despues, McNemar exacto bilateral. CO-PRIMARIA 2, GEOMETRIA: fraccion de complejos cuyo top-1 sigue cubriendo a <=2.0 A, pareada antes/despues, McNemar exacto bilateral. CUATRO LECTURAS ESCRITAS ANTES, por brazo: (1) la fisica mejora con p<0.05 y la geometria NO se degrada => ERA_ARTEFACTO_SE_PUEDE_ADOPTAR, y la minimizacion entra al pipeline; (2) la fisica mejora pero la geometria se degrada con p<0.05 => COMPRA_FISICA_A_COSTA_DE_GEOMETRIA_NO_ADOPTAR, y el resultado es que la tension sostenia la colocacion; (3) la fisica no mejora => LA_MINIMIZACION_NO_ARREGLA_LA_FISICA y la hipotesis sobre internal_energy era falsa; (4) el resto => SIN_DIFERENCIA_DETECTABLE, sin leerlo como equivalencia. EFECTO MINIMO DETECTABLE DECLARADO ANTES: con n=48, el MDE pareado es de 11.85 pp si la discordancia sale del 10%, 16.77 pp si del 20% y 20.53 pp si del 30%; y con c=0 el McNemar exacto exige b>=6 para p<0.05. SECUNDARIO descriptivo y sin gate: el desplazamiento mediano de cada brazo, y la misma tabla sobre el conjunto completo de poses y no solo el top-1. PROHIBIDO: adoptar la minimizacion si sale la lectura (2), por mucho que la mejora fisica sea grande; leer la lectura (1) como permiso para minimizar en produccion sin medir antes el efecto sobre el ranking, que este experimento NO toca; presentar el desplazamiento como criterio de descarte en produccion, donde no hay cristal para arbitrar y la regla seria circular; y comparar estas tasas con MF-33-TOP1 o con la configuracion dock de produccion.
ProtocoloProtocol
Sin dockear ni una sola pose nueva: se relajan las 8215 ya retenidas por MF-33-B-RET-R1 y MF-33-B-RET-R2 y se vuelve a medir. Cohorte: los 48 de MF-33, que es donde hay cristal y por tanto donde se puede arbitrar si moverse fue bueno o malo. DOS BRAZOS DE RELAJACION sobre LAS MISMAS poses, pareado perfecto: RESTRINGIDA, minimizacion MMFF con restricciones armonicas de 10 kcal/mol/A2 sobre cada atomo pesado, que deja relajar enlaces, angulos y torsiones pero penaliza el desplazamiento; responde si la tension se puede liberar EN EL SITIO. LIBRE, minimizacion MMFF sin restricciones; responde CUANTO tiene que moverse la molecula para dejar de estar tensa. Maximo 500 iteraciones en los dos. Por pose se mide, antes y despues: validez fisica con PoseBusters en configuracion redock reusando el modulo sellado posebusters_metrica.py; el desplazamiento respecto a la pose de partida, SIN alineamiento, porque interesa cuanto se movio en el marco del receptor y alinear borraria justo esa senal; y el rmsd_pose_pocket al cristal. La geometria cruda de 47 complejos vive en MF-33-B-RET-R1 y la de 1afl en R2, que es el unico que R2 recomputo; el runner resuelve en ese orden y registra cual uso. Contenedor moldesign-lab-pb:0.6.5 del servidor. Script: scripts/run_mf33min_relajacion.py.
Razón de la decisiónReason for the decision
Prerregistro sellado ANTES de ejecutar, con el hash del script. Es CIEGO: nadie ha relajado estas poses ni ha mirado que pasa cuando se relajan. Existe por una pregunta que MF-33-PB dejo abierta y que es mas interesante que su propio resultado. Aquel midio que internal_energy falla 7997 de 8215 veces, y la tentacion es leerlo como 'el protocolo esta roto, hay que minimizar'. Pero internal_energy compara contra conformeros LIBRES, y un ligando UNIDO paga una penalizacion conformacional REAL: se tuerce para encajar. Las dos explicaciones son incompatibles y producen decisiones de producto opuestas, asi que hay que distinguirlas antes de tocar nada. El diseno de dos brazos es lo que las separa. Si la RESTRINGIDA arregla la fisica sin mover la pose, era artefacto. Si solo la LIBRE la arregla y ademas se desplaza, la tension estaba sosteniendo la colocacion. LAS DOS CO-PRIMARIAS SE LEEN JUNTAS y eso no es una formalidad: medir solo la fisica produciria un GO para un cambio que puede estar rompiendo la cobertura, que es lo unico que hoy funciona bien -MF-33-B-RET-R2 midio c=0 en oraculo y en top-5-. La lectura (2) esta escrita en serio: PROHIBE adoptar la minimizacion aunque la mejora fisica sea espectacular. LIMITE QUE SE DECLARA Y NO SE DISIMULA: la minimizacion es del ligando solo, con MMFF y SIN el campo del receptor, asi que 'en el sitio' lo sostienen las restricciones posicionales y no la proteina. Un ligando relajado en el campo real podria comportarse distinto y este experimento NO lo mide. Se elige asi porque distingue las dos explicaciones con lo que hay; meter el campo del receptor es otro experimento, mas caro y con mas piezas que pueden fallar. Y se prohibe de antemano el salto que la idea invita a dar: usar el desplazamiento como criterio de descarte en produccion. Alli no hay cristal, asi que la regla mediria distancia a la pose de partida y estaria asumiendo que la de partida era la buena, que es exactamente lo que no se sabe.

ReproducibilidadReproducibility

commit
7430ef25a5 (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
hashes SHA-256
4
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER
mantenimientomaintenance
1 mantenimiento(s) declarados. El hash actual no acredita qué código produjo la cifra original.1 declared maintenance action(s). The current hash does not establish which code produced the original figure.

Enlace a este expedienteLink to this record

MF-33-PBEl ensemble de conformeros no solo encuentra mas poses correctas: entrega una pose top-1 fisicamente mas valida que el conformero unico. La alternativa es que solo produzca MAS poses sin mejorar la fisica de la que finalmente elige, en cuyo caso la ventaja del ensemble no llega a la unica pose que el usuario recibe.InconclusoInconclusiveCifras reemplazadasFigures replacedn=48

Cifras reemplazadas. Un defecto detectado después de sellar invalidó las cifras de este registro. MF-33-H-COR las mide de nuevo y las sustituye. Este artefacto no se reescribe ni se re-sella: se conserva tal como quedó, para que la corrección sea auditable.Figures replaced. A defect found after sealing invalidated the figures of this record. MF-33-H-COR measures them again and replaces them. This artifact is not rewritten or re-sealed: it is preserved as it remained, so that the correction is auditable.

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
InconclusoInconclusive · Ejecutado y declarado sin conclusión. No se reclasifica a posteriori.Executed and declared without a conclusion. It is not reclassified afterwards.
Decisión del manifestManifest decision
INCONCLUSIVE
HipótesisHypothesis
El ensemble de conformeros no solo encuentra mas poses correctas: entrega una pose top-1 fisicamente mas valida que el conformero unico. La alternativa es que solo produzca MAS poses sin mejorar la fisica de la que finalmente elige, en cuyo caso la ventaja del ensemble no llega a la unica pose que el usuario recibe.
Criterio prerregistradoPre-registered criterion
PRIMARIA: fraccion de complejos cuyo top-1 pasa la bateria completa de PoseBusters, pareada por complejo, con b = ENSEMBLE pasa y SINGLE no, y c = SINGLE pasa y ENSEMBLE no. McNemar exacto bilateral de estadistica_fnd04. TRES LECTURAS ESCRITAS ANTES: (1) p<0.05 con b>c => EL_ENSEMBLE_ENTREGA_MAS_VALIDO, y la ventaja del ensemble alcanza tambien a la fisica de lo entregado; (2) p<0.05 con c>b => EL_ENSEMBLE_ENTREGA_MENOS_VALIDO, que seria un hallazgo serio y contrario a la hipotesis -mas poses pero peor fisica en la elegida- y obligaria a revisar como se presenta el ensemble en el paper; (3) p>=0.05 => SIN_DIFERENCIA_DETECTABLE, sin leerlo como equivalencia y declarando el limite de potencia. EFECTO MINIMO DETECTABLE DECLARADO ANTES: con n=48, el MDE pareado es de 11.85 pp si la discordancia sale del 10%, 16.77 pp si sale del 20% y 20.53 pp si sale del 30%; y con c=0 el McNemar exacto exige b>=6 para p<0.05. Diferencias menores NO son resolubles con esta cohorte y se reportaran como no concluyentes, nunca como tendencia. SECUNDARIO descriptivo y SIN gate: la misma tabla sobre top-5; la tasa de validez del CONJUNTO de poses, no solo de la entregada; y el recuento de que controles fallan mas. PROHIBIDO: comparar la tasa de aqui con el 8.62% / 15.52% de MF-33-TOP1 como si fueran la misma cantidad -aquello fue sobre el protocolo RIGIDO y sobre 116 complejos, esto sobre el FLEXIBLE y sobre 48-; comparar con la configuracion `dock` que corre en produccion, que tiene menos controles; leer validez fisica como acierto de docking, porque una pose puede ser fisicamente impecable y estar en el sitio equivocado; y leer SIN_DIFERENCIA_DETECTABLE como equivalencia. NADA DE ESTE GATE CAMBIA respecto a MF-33-PB-PRE: se reproduce palabra por palabra. Lo unico que cambia es la implementacion que lo calcula, y el motivo esta en la razon de decision. LA CEGUERA SE CONSERVA: con la version defectuosa no se leyo ningun resultado -las 261 poses de la unica prueba tecnica salieron todas como no evaluadas por RuntimeError-, y esa prueba se lanzo con `--limite`, que por contrato produce NO_LEER_GATES_TECNICOS y nunca una decision.
ProtocoloProtocol
Ver prerregistro sellado MF-33-PB-R1-PRE, anterior a esta corrida. IDENTICO al de MF-33-PB-PRE, que se reproduce aqui sin cambios, salvo la correccion de implementacion descrita en la razon de decision. Sin computo de docking: se evaluan poses YA RETENIDAS. El material son las 8215 poses que MF-33-B-RET-R1 conservo en 969 PDBQT crudos sobre 48 complejos. Ese claim -C10 del docs/52- figuraba como BLOQUEADO porque las poses se habian borrado en la corrida original; la retencion forense de R1 lo desbloquea. PoseBusters en configuracion REDOCK, no dock, y la eleccion no es libre: aqui SI existe el ligando cristalografico, y redock es ademas la configuracion con la que MF-33-TOP1 midio el protocolo rigido. Usar dock daria numeros que parecen comparables y no lo son. PAREADO PERFECTO. Por complejo, dos brazos que salen del MISMO artefacto: SINGLE son las poses del conformero 0; ENSEMBLE son todas. Mismo complejo, mismo receptor, mismo cristal, misma corrida. La pose se reconstruye reusando el mapeo de molflex sobre el cristal -que ya tiene los ordenes de enlace correctos- en vez de re-perceptualizar desde el PDBQT, porque re-perceptualizar perderia aromaticidad y haria basura los controles intramoleculares. ORDEN DE EVALUACION declarado: dentro de cada complejo se evaluan primero los top-1 y top-5 de cada brazo -las cantidades con gate- y despues el resto, con checkpoint por complejo. Si la corrida se interrumpe, los complejos completados siguen respondiendo la pregunta primaria. Contenedor moldesign-lab del servidor con posebusters 0.6.5, la MISMA version que el entorno local. Script: scripts/run_mf33pb_validez_fisica.py. CAMBIO DE IMPLEMENTACION, NO DE PROTOCOLO: el runner ya no llama a PoseBusters por su cuenta; REUSA scripts/posebusters_metrica.py, que se sella aqui como asset. Ese modulo separa el check `rmsd_` de los controles fisicos, construye el cristal con hidrogenos y llama a la API en la forma correcta. Las tres cosas estaban mal en la version anterior.
Razón de la decisiónReason for the decision
PRIMARIA: SIN_DIFERENCIA_DETECTABLE. El top-1 que pasa la bateria completa es 8 de 48 con un conformero y 10 de 48 con ensemble; b=3, c=1, McNemar exacto p=0.625, discordancia 0.0833, MDE observado 10.82 pp. INCONCLUSIVE por el mismo criterio con que se sellaron REC-11 y REC-05: es la rama que el gate reserva para 'no se distingue', el prerregistro prohibe leerla como equivalencia y obliga a declarar el limite de potencia. LA HIPOTESIS QUEDA SIN APOYO. Se preguntaba si el ensemble entrega una pose top-1 fisicamente MEJOR, y a este n no se distingue. Lo que el ensemble mejora -y mucho, medido en MF-33-B-RET-R2- es la cobertura del oraculo y el top-5; la fisica de la pose que finalmente se entrega no se mueve de forma detectable. EL VALOR DE ESTE ARTEFACTO ESTA EN EL SECUNDARIO DESCRIPTIVO, que no tiene gate y por eso no decide nada, pero es lo que cierra C10 del docs/52: sobre las 8215 poses retenidas del brazo flexible, solo 217 pasan la bateria completa. Es el 2.64% DEL CONJUNTO DE POSES. Y el fallo esta concentrado de forma extrema: internal_energy falla 7997 de 8215 veces -el 97.3%-, seguido de double_bond_flatness con 598 y de internal_steric_clash con 23. Todo lo demas es ruido. MECANISMO COHERENTE Y ACCIONABLE: el protocolo dockea conformeros RIGIDOS que nunca se relajan, asi que cada pose hereda la tension del conformero de entrada. Un paso de minimizacion post-docking atacaria directamente el 97.3% de los fallos. Eso NO es un experimento nuevo sino una mejora de producto que esta medicion justifica, y su efecto deberia contrastarse con prerregistro propio antes de adoptarse. C10 DEJA DE ESTAR BLOQUEADO. Figuraba en el docs/52 como imposible porque las poses se habian borrado; la retencion forense de MF-33-B-RET-R1 -que fallo su propio gate- es lo que hizo posible medirlo. Es la tercera vez que ese R1 justifica su diseno en el acto de fallar. PROHIBICIONES QUE SE REPITEN AQUI PORQUE SON EL ERROR MAS PROBABLE: esta tasa NO es comparable con el 8.62% / 15.52% de MF-33-TOP1 -aquello es protocolo RIGIDO sobre 116 y esto es FLEXIBLE sobre 48-, ni con la configuracion `dock` que corre en produccion, que tiene menos controles porque alli no hay cristal. Y validez fisica NO es acierto de docking: una pose puede ser fisicamente impecable y estar en el sitio equivocado, razon por la que el check `rmsd_` se separa de los controles fisicos. Ejecutado en el contenedor moldesign-lab-pb:0.6.5 del servidor, con la MISMA version de PoseBusters que el entorno local. Artefactos descargados con sha256 verificado.

Métricas registradasRecorded metrics

tipo
validez fisica pareada sobre poses retenidas; gate y MDE preregistrados
n_complejos
48
n_ok
48

ReproducibilidadReproducibility

commit
8d69c5533a (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
complejoscomplexes
48
hashes SHA-256
4
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

PREP-01Las tres politicas de heteroatomos que la auditoria del codigo encontro producen receptores MEDIBLEMENTE distintos sobre las mismas estructuras, y la que validaron los experimentos del programa no es la que ejecuta el producto.MediciónMeasurementn=116

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Las tres politicas de heteroatomos que la auditoria del codigo encontro producen receptores MEDIBLEMENTE distintos sobre las mismas estructuras, y la que validaron los experimentos del programa no es la que ejecuta el producto.
Criterio prerregistradoPre-registered criterion
SIN GATE. Es una MEDICION: cuenta lo que cada politica conserva y descarta, y no decide cual es correcta. No hay umbral y no hay decision que dependa de un numero. PROHIBIDO: leer 'pierde una especie del sitio' como defecto sin mirar QUE especie -un aditivo de cristalizacion y un cofactor funcional cuentan igual en ese contador y no valen lo mismo-; concluir que una ruta es mejor que otra, porque este analisis no mide docking ni cobertura; y extrapolar a los 387 targets del catalogo, cuya cadena la fija el catalogo por target y aqui se usa la mayoritaria. LO QUE SI AUTORIZA es corregir afirmaciones existentes que se hicieron por lectura de codigo y ahora estan medidas, en docs/51 y docs/53.
ProtocoloProtocol
Descriptivo y sin computo pesado. Sobre los 116 de MF-13, con la MISMA fuente para las tres rutas: la entrada original de RCSB que REC-12-R1 descargo. RUTA 1 dataset_experimental: el rec.pdbqt de data/molflex_train_v2, que es lo que consumieron REC-08-EXT, REC-09, REC-11 y la serie MF-33. RUTA 2 producto_docking: el filtro real de services/docking/preparer.py, IMPORTADO y no reimplementado. Se aplica `_filter_pdb_content` con keep_hetatm=True y cofactors_whitelist vacio, que es el estado de los 387 targets del catalogo. No se ejecuta meeko: meeko anade hidrogenos y cargas DESPUES y no cambia que residuos entran, que es lo unico que aqui se mide. RUTA 3 producto_mmgbsa: `removeHeterogens(keepWater=False)` de molchamb_v2, modelado como conservar solo registros ATOM, que es lo que hace. La clasificacion de especies usa backend/data/site_species_vocabulary.json, dato versionado cuya version viaja en el metrics. El ligando cristalografico se descarta por solapamiento dentro de 0.5 A: es el sitio, y sacarlo del receptor es correcto, no una perdida. Script: scripts/analisis_politicas_preparacion.py.
Razón de la decisiónReason for the decision
MEDICION, no experimento con gate: convierte en numero lo que hasta ahora era lectura de codigo. Sobre los 116 y con la fuente RCSB identica para las tres rutas. CONFIRMA lo que la auditoria afirmo: la ruta de docking del producto ELIMINA TODAS LAS AGUAS en 115 de 115 complejos que las tienen, que es lo contrario de la politica que docs/51 declara; y pierde algun metal en 55 de 116 complejos, cinco veces mas que el dataset experimental, que los pierde en 11. CORRIGE una afirmacion propia, y esta es la parte que no se esperaba: EL DATASET EXPERIMENTAL TAMBIEN PIERDE COSAS. Contra la fuente original de RCSB pierde algun metal en 11 complejos, algun cofactor conocido en 8 y alguna especie no aditiva del sitio en 22. La conservacion completa que REC-08-EXT midio -1788 de 1788 aguas, 42 de 42 metales- es cierta RELATIVA AL _protein.pdb DE PDBBIND, que ya venia limpiado, y NO relativa a la estructura depositada. Es exactamente lo que REC-12-R1 predijo: la fuente limpiada ocultaba la pregunta. docs/51 debe declarar respecto a que fuente mide su politica. HALLAZGO CONTRAINTUITIVO: la ruta de docking del producto pierde MENOS cofactores organicos conocidos -5 complejos- que el dataset experimental -8-, porque tiene una lista positiva codificada -HEM, NAD, FAD, FMN, ATP, ADP, SAM y los clusters hierro-azufre- mientras el dataset heredo lo que PDBBind hubiera dejado. En cofactores el producto es MEJOR que el conjunto sobre el que se valido la ciencia. Sigue siendo peor en aguas y en metales. DEFECTO PROPIO CORREGIDO ANTES DE REGISTRAR: la primera pasada contaba el ligando cristalografico como especie del sitio perdida, y daba 110 de 116 en las TRES rutas, una alarma sin contenido. Sacar el ligando del receptor es lo correcto. Se descarta por solapamiento dentro de 0.5 A, igual que hace el modulo sellado de REC-12, y las cifras utiles bajan a 22, 41 y 41.

Métricas registradasRecorded metrics

analisis_id
PREP-01
tipo
barrido descriptivo de politicas de preparacion; sin gate
fuente
data/rcsb/<pid>.pdb, la entrada original que REC-12-R1 descargo
vocabulary_version
1.0.0
n_complejos
116
n_ok
116

ReproducibilidadReproducibility

commit
8d69c5533a (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
complejoscomplexes
116
hashes SHA-256
5
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER
mantenimientomaintenance
2 mantenimiento(s) declarados. El hash actual no acredita qué código produjo la cifra original.2 declared maintenance action(s). The current hash does not establish which code produced the original figure.

Enlace a este expedienteLink to this record

MF-33-B-RET-R2El unico fallo de MF-33-B-RET-R1 fue ambiental y no quimico, asi que re-ejecutar ese solo dock con el protocolo identico completa la corrida y permite leer los gates que R1 dejo bloqueados. Si vuelve a fallar, la hipotesis es falsa: el fallo no era ambiental y el problema esta en el complejo o en el protocolo.CorrigendumCorrection noticen=48

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
CorrigendumCorrection notice · Corrección de un resultado propio cuyo valor principal es la corrección.Correction of an own result whose main value is the correction.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El unico fallo de MF-33-B-RET-R1 fue ambiental y no quimico, asi que re-ejecutar ese solo dock con el protocolo identico completa la corrida y permite leer los gates que R1 dejo bloqueados. Si vuelve a fallar, la hipotesis es falsa: el fallo no era ambiental y el problema esta en el complejo o en el protocolo.
Criterio prerregistradoPre-registered criterion
LOS GATES NO CAMBIAN Y NO PUEDEN CAMBIAR. Son los sellados en MF-33-B-RET-PRE y MF-33-B-RET-R1-PRE: G0 tecnico exige 48 de 48 complejos completos y CERO fallos; G1 exige que el oraculo ENSEMBLE reproduzca el rmsd_min del brazo B sellado de MF-33 dentro de 0.001 A en al menos el 95% de los complejos. Con G0 y G1 aprobados, McNemar exacto bilateral sobre top-1, top-5 y oraculo, y la lectura es: (1) LA_VENTAJA_LLEGA_AL_USUARIO si mejoran oraculo Y top-1 con p<0.05; (2) EL_CUELLO_SE_DESPLAZA_A_LA_SELECCION si mejora oraculo pero no top-1; (3) SIN_EFECTO_EN_LA_ENTREGA en los demas casos. Si G0 o G1 falla, NO_LEER_GATES_TECNICOS. ADVERTENCIA DE PROCEDENCIA, Y ES LA RAZON DE SER DE ESTE CAMPO: al diagnosticar el fallo de R1 se vieron sus bloques cientificos. ESTE R2 NO ES UNA CONFIRMACION CIEGA y queda PROHIBIDO presentarlo como tal en el paper o en cualquier material. Lo que sigue siendo ciego es la REGLA DE DECISION, escrita y sellada antes de todo esto; lo que se perdio es la ceguera sobre el desenlace, y se declara en vez de disimularse. UN SOLO INTENTO. Si 1afl vuelve a fallar, G0 vuelve a fallar, la lectura vuelve a ser NO_LEER_GATES_TECNICOS y NO habra un R3 por la via de repetir: haria falta un diseno distinto y un prerregistro nuevo que declare que cambio. Escribir esto antes es lo unico que impide que la reparacion degenere en repetir hasta que salga, que es la forma mas facil de fabricar un resultado sin darse cuenta. PROHIBIDO ademas: modificar, re-sellar o reinterpretar MF-33-B-RET-R1, que queda INCONCLUSIVE; reparar cualquier complejo que no sea 1afl; y tratar los 47 checkpoints reusados como si se hubieran recomputado.
ProtocoloProtocol
Ver prerregistro sellado MF-33-B-RET-R2-PRE, anterior a esta corrida. Reparacion minima, una sola variable: se re-ejecuta UN complejo. scripts/run_mf33bret_r2.py IMPORTA scripts/run_mf33bret_r1.py -sellado como asset de MF-33-B-RET-R1- y reutiliza su funcion analizar, su _block y sus constantes EXH=8, NUM_MODES=9, SEED=42, BOX=25.0, UMBRAL_A=2.0, G1_TOL=0.001 y G1_MIN=0.95. El protocolo es identico POR CONSTRUCCION y no por copia, segun el docs/49 seccion 17. PASOS: (1) reusar VERBATIM los 47 checkpoints buenos de R1, registrando el sha256 de cada uno en el metrics; (2) re-ejecutar SOLO 1afl y sus 30 conformeros; (3) recalcular G0, G1 y los bloques con las MISMAS reglas selladas. No se toca ningun umbral, ninguna regla de lectura ni el artefacto R1, que queda sellado e intacto. El reuso de artefactos sellados de una corrida previa sin recomputarlos es el mismo patron que MF-29-EMP-EXT aplico con el brazo de produccion de MF-29-EMP. CONDICION DE EJECUCION declarada porque es la causa del fallo que se repara: la maquina debe estar en reposo. R1 murio por contencion con PoseBusters, pytest y generacion de conformeros corriendo encima. Verificado antes de lanzar: sin procesos vina, python ni pytest vivos, 17.2 GB de RAM libre de 31.9.
Razón de la decisiónReason for the decision
LOS DOS GATES PASAN. G0 tecnico: 48 de 48 complejos completos y CERO fallos. G1: 48 de 48 = 1.0000 contra un minimo de 0.95, o sea que el oraculo ENSEMBLE reproduce el rmsd_min del brazo B sellado de MF-33 dentro de 0.001 A en TODOS los complejos. LA HIPOTESIS DE LA REPARACION SE CONFIRMA. El fallo de R1 era ambiental: 1afl completo sus 30 conformeros con 267 poses y CERO fallos en 4432 s, frente a los 9095 s que tardo en R1 compitiendo con PoseBusters, pytest y generacion de conformeros en la misma maquina. La mitad de tiempo sin contencion. Un solo intento, como se declaro. LECTURA PREREGISTRADA: EL_CUELLO_SE_DESPLAZA_A_LA_SELECCION, la rama (2) de las tres escritas antes. Sobre los 48: el oraculo pasa de 26 a 41 -b=15, c=0, McNemar exacto p=6.1e-05, +31.25 pp-; el top-5 de 26 a 35 -b=9, c=0, p=0.0039, +18.75 pp-; y el top-1 de 20 a 24 -b=7, c=3, p=0.34375, +8.33 pp, NO SIGNIFICATIVO-. En COLOCACION el patron es el mismo y mas marcado: oraculo 12 a 26 (p=0.000122), top-5 12 a 21 (p=0.0039), top-1 9 a 14 (p=0.1797, no significativo). LA CIFRA QUE CUENTA LA HISTORIA es el margen de seleccion, o sea los complejos donde el brazo CONTIENE una pose correcta y no la entrega en top-1: pasa de 6 a 17 sobre los 48, y de 3 a 12 en COLOCACION. El ensemble casi TRIPLICA los casos en los que la respuesta esta ahi y el selector no la elige. QUE SIGNIFICA, Y ES LO QUE VA AL PAPER: la ventaja del ensemble es enorme en generacion -cero derrotas pareadas en oraculo y en top-5- y NO LLEGA con significacion a la unica pose que el usuario recibe. El ensemble no resuelve el problema: lo CONVIERTE de problema de generacion en problema de seleccion. Esa es la respuesta a la amenaza T1 del docs/52 sobre el brazo flexible, y contesta que la metrica de oraculo del programa sobreestima lo que el pipeline entrega. ADVERTENCIA DE PROCEDENCIA, DECLARADA ANTES DE CORRER Y QUE DEBE VIAJAR CON EL RESULTADO: este R2 NO ES CIEGO. Al diagnosticar el fallo de R1 se vieron sus bloques cientificos, que son los mismos numeros salvo por 1afl. Lo que si permanecio sellado e inamovible es la REGLA DE DECISION, escrita en MF-33-B-RET-PRE y MF-33-B-RET-R1-PRE antes de todo esto. Queda PROHIBIDO presentar este resultado como confirmacion ciega en el paper o en cualquier material. RETENCION: los 47 complejos reusados conservan su geometria cruda en MF-33-B-RET-R1, cuyo checkpoint por complejo esta hasheado uno a uno en el metrics de este artefacto; aqui solo viven los 30 PDBQT de 1afl, que es lo unico recomputado. Es el patron de reuso sin recomputo que MF-29-EMP-EXT establecio. GO porque el experimento entrego la cantidad primaria sobre la cohorte completa, con los dos gates aprobados y sin mover ningun umbral.

Métricas registradasRecorded metrics

tipo
reparacion de un dock ambiental; reglas y protocolo importados sin cambios
no_es_ciego
Al diagnosticar el fallo de R1 se vieron sus bloques cientificos. Este R2 NO es confirmacion ciega. La REGLA DE DECISION sigue siendo la sellada en MF-33-B-RET-PRE y MF-33-B-RET-R1-PRE, y no se ha movido.
lectura_preregistrada
EL_CUELLO_SE_DESPLAZA_A_LA_SELECCION

ReproducibilidadReproducibility

commit
8d69c5533a (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
complejoscomplexes
48
hashes SHA-256
4
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-PB-R1-PREEl ensemble de conformeros no solo encuentra mas poses correctas: entrega una pose top-1 fisicamente mas valida que el conformero unico. La alternativa es que solo produzca MAS poses sin mejorar la fisica de la que finalmente elige, en cuyo caso la ventaja del ensemble no llega a la unica pose que el usuario recibe.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El ensemble de conformeros no solo encuentra mas poses correctas: entrega una pose top-1 fisicamente mas valida que el conformero unico. La alternativa es que solo produzca MAS poses sin mejorar la fisica de la que finalmente elige, en cuyo caso la ventaja del ensemble no llega a la unica pose que el usuario recibe.
Criterio prerregistradoPre-registered criterion
PRIMARIA: fraccion de complejos cuyo top-1 pasa la bateria completa de PoseBusters, pareada por complejo, con b = ENSEMBLE pasa y SINGLE no, y c = SINGLE pasa y ENSEMBLE no. McNemar exacto bilateral de estadistica_fnd04. TRES LECTURAS ESCRITAS ANTES: (1) p<0.05 con b>c => EL_ENSEMBLE_ENTREGA_MAS_VALIDO, y la ventaja del ensemble alcanza tambien a la fisica de lo entregado; (2) p<0.05 con c>b => EL_ENSEMBLE_ENTREGA_MENOS_VALIDO, que seria un hallazgo serio y contrario a la hipotesis -mas poses pero peor fisica en la elegida- y obligaria a revisar como se presenta el ensemble en el paper; (3) p>=0.05 => SIN_DIFERENCIA_DETECTABLE, sin leerlo como equivalencia y declarando el limite de potencia. EFECTO MINIMO DETECTABLE DECLARADO ANTES: con n=48, el MDE pareado es de 11.85 pp si la discordancia sale del 10%, 16.77 pp si sale del 20% y 20.53 pp si sale del 30%; y con c=0 el McNemar exacto exige b>=6 para p<0.05. Diferencias menores NO son resolubles con esta cohorte y se reportaran como no concluyentes, nunca como tendencia. SECUNDARIO descriptivo y SIN gate: la misma tabla sobre top-5; la tasa de validez del CONJUNTO de poses, no solo de la entregada; y el recuento de que controles fallan mas. PROHIBIDO: comparar la tasa de aqui con el 8.62% / 15.52% de MF-33-TOP1 como si fueran la misma cantidad -aquello fue sobre el protocolo RIGIDO y sobre 116 complejos, esto sobre el FLEXIBLE y sobre 48-; comparar con la configuracion `dock` que corre en produccion, que tiene menos controles; leer validez fisica como acierto de docking, porque una pose puede ser fisicamente impecable y estar en el sitio equivocado; y leer SIN_DIFERENCIA_DETECTABLE como equivalencia. NADA DE ESTE GATE CAMBIA respecto a MF-33-PB-PRE: se reproduce palabra por palabra. Lo unico que cambia es la implementacion que lo calcula, y el motivo esta en la razon de decision. LA CEGUERA SE CONSERVA: con la version defectuosa no se leyo ningun resultado -las 261 poses de la unica prueba tecnica salieron todas como no evaluadas por RuntimeError-, y esa prueba se lanzo con `--limite`, que por contrato produce NO_LEER_GATES_TECNICOS y nunca una decision.
ProtocoloProtocol
IDENTICO al de MF-33-PB-PRE, que se reproduce aqui sin cambios, salvo la correccion de implementacion descrita en la razon de decision. Sin computo de docking: se evaluan poses YA RETENIDAS. El material son las 8215 poses que MF-33-B-RET-R1 conservo en 969 PDBQT crudos sobre 48 complejos. Ese claim -C10 del docs/52- figuraba como BLOQUEADO porque las poses se habian borrado en la corrida original; la retencion forense de R1 lo desbloquea. PoseBusters en configuracion REDOCK, no dock, y la eleccion no es libre: aqui SI existe el ligando cristalografico, y redock es ademas la configuracion con la que MF-33-TOP1 midio el protocolo rigido. Usar dock daria numeros que parecen comparables y no lo son. PAREADO PERFECTO. Por complejo, dos brazos que salen del MISMO artefacto: SINGLE son las poses del conformero 0; ENSEMBLE son todas. Mismo complejo, mismo receptor, mismo cristal, misma corrida. La pose se reconstruye reusando el mapeo de molflex sobre el cristal -que ya tiene los ordenes de enlace correctos- en vez de re-perceptualizar desde el PDBQT, porque re-perceptualizar perderia aromaticidad y haria basura los controles intramoleculares. ORDEN DE EVALUACION declarado: dentro de cada complejo se evaluan primero los top-1 y top-5 de cada brazo -las cantidades con gate- y despues el resto, con checkpoint por complejo. Si la corrida se interrumpe, los complejos completados siguen respondiendo la pregunta primaria. Contenedor moldesign-lab del servidor con posebusters 0.6.5, la MISMA version que el entorno local. Script: scripts/run_mf33pb_validez_fisica.py. CAMBIO DE IMPLEMENTACION, NO DE PROTOCOLO: el runner ya no llama a PoseBusters por su cuenta; REUSA scripts/posebusters_metrica.py, que se sella aqui como asset. Ese modulo separa el check `rmsd_` de los controles fisicos, construye el cristal con hidrogenos y llama a la API en la forma correcta. Las tres cosas estaban mal en la version anterior.
Razón de la decisiónReason for the decision
Prerregistro sellado ANTES de ejecutar. Existe porque MF-33-PB-PRE sello un script con DOS defectos de implementacion, y un prerregistro sellado no se puede re-sellar: la unica salida limpia es declarar el defecto y volver a preregistrar con el arreglo. PRIMER DEFECTO, visible: la llamada a PoseBusters fallaba entera. En la prueba tecnica las 261 poses del unico complejo evaluado salieron con RuntimeError, en 3.5 segundos. Si se hubiera lanzado la corrida completa sin probar, habrian sido entre tres y seis horas de servidor para devolver 48 complejos de nada. SEGUNDO DEFECTO, invisible y mucho peor: la version anterior contaba el check `rmsd_` del config `redock` entre los controles fisicos. Eso habria convertido la cantidad medida de 'la pose es fisicamente valida' en 'la pose es valida Y ADEMAS esta a menos de 2 A', que es precisamente lo que el gate de MF-33-PB-PRE prohibe leer. Habria producido un numero plausible, publicable y equivocado. El modulo sellado posebusters_metrica.py ya separaba las dos cosas y lo documentaba en sus lineas 101-108; la version defectuosa lo ignoro y reimplemento. La leccion es la regla del docs/49 seccion 17 que ya gobierna los assets sellados: reusar por composicion, no reimplementar. LA CEGUERA SE CONSERVA INTACTA y por eso este R1 SI es ciego, a diferencia de MF-33-B-RET-R2: no se leyo ningun resultado con la version defectuosa porque no produjo ninguno, y la prueba que la destapo se lanzo con `--limite`, que por contrato fuerza NO_LEER_GATES_TECNICOS. El gate se reproduce palabra por palabra desde MF-33-PB-PRE, incluidos el MDE declarado y las tres lecturas.

ReproducibilidadReproducibility

commit
8d69c5533a (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
hashes SHA-256
4
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-PB-PREEl ensemble de conformeros no solo encuentra mas poses correctas: entrega una pose top-1 fisicamente mas valida que el conformero unico. La alternativa es que solo produzca MAS poses sin mejorar la fisica de la que finalmente elige, en cuyo caso la ventaja del ensemble no llega a la unica pose que el usuario recibe.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El ensemble de conformeros no solo encuentra mas poses correctas: entrega una pose top-1 fisicamente mas valida que el conformero unico. La alternativa es que solo produzca MAS poses sin mejorar la fisica de la que finalmente elige, en cuyo caso la ventaja del ensemble no llega a la unica pose que el usuario recibe.
Criterio prerregistradoPre-registered criterion
PRIMARIA: fraccion de complejos cuyo top-1 pasa la bateria completa de PoseBusters, pareada por complejo, con b = ENSEMBLE pasa y SINGLE no, y c = SINGLE pasa y ENSEMBLE no. McNemar exacto bilateral de estadistica_fnd04. TRES LECTURAS ESCRITAS ANTES: (1) p<0.05 con b>c => EL_ENSEMBLE_ENTREGA_MAS_VALIDO, y la ventaja del ensemble alcanza tambien a la fisica de lo entregado; (2) p<0.05 con c>b => EL_ENSEMBLE_ENTREGA_MENOS_VALIDO, que seria un hallazgo serio y contrario a la hipotesis -mas poses pero peor fisica en la elegida- y obligaria a revisar como se presenta el ensemble en el paper; (3) p>=0.05 => SIN_DIFERENCIA_DETECTABLE, sin leerlo como equivalencia y declarando el limite de potencia. EFECTO MINIMO DETECTABLE DECLARADO ANTES: con n=48, el MDE pareado es de 11.85 pp si la discordancia sale del 10%, 16.77 pp si sale del 20% y 20.53 pp si sale del 30%; y con c=0 el McNemar exacto exige b>=6 para p<0.05. Diferencias menores NO son resolubles con esta cohorte y se reportaran como no concluyentes, nunca como tendencia. SECUNDARIO descriptivo y SIN gate: la misma tabla sobre top-5; la tasa de validez del CONJUNTO de poses, no solo de la entregada; y el recuento de que controles fallan mas. PROHIBIDO: comparar la tasa de aqui con el 8.62% / 15.52% de MF-33-TOP1 como si fueran la misma cantidad -aquello fue sobre el protocolo RIGIDO y sobre 116 complejos, esto sobre el FLEXIBLE y sobre 48-; comparar con la configuracion `dock` que corre en produccion, que tiene menos controles; leer validez fisica como acierto de docking, porque una pose puede ser fisicamente impecable y estar en el sitio equivocado; y leer SIN_DIFERENCIA_DETECTABLE como equivalencia.
ProtocoloProtocol
Sin computo de docking: se evaluan poses YA RETENIDAS. El material son las 8215 poses que MF-33-B-RET-R1 conservo en 969 PDBQT crudos sobre 48 complejos. Ese claim -C10 del docs/52- figuraba como BLOQUEADO porque las poses se habian borrado en la corrida original; la retencion forense de R1 lo desbloquea. PoseBusters en configuracion REDOCK, no dock, y la eleccion no es libre: aqui SI existe el ligando cristalografico, y redock es ademas la configuracion con la que MF-33-TOP1 midio el protocolo rigido. Usar dock daria numeros que parecen comparables y no lo son. PAREADO PERFECTO. Por complejo, dos brazos que salen del MISMO artefacto: SINGLE son las poses del conformero 0; ENSEMBLE son todas. Mismo complejo, mismo receptor, mismo cristal, misma corrida. La pose se reconstruye reusando el mapeo de molflex sobre el cristal -que ya tiene los ordenes de enlace correctos- en vez de re-perceptualizar desde el PDBQT, porque re-perceptualizar perderia aromaticidad y haria basura los controles intramoleculares. ORDEN DE EVALUACION declarado: dentro de cada complejo se evaluan primero los top-1 y top-5 de cada brazo -las cantidades con gate- y despues el resto, con checkpoint por complejo. Si la corrida se interrumpe, los complejos completados siguen respondiendo la pregunta primaria. Contenedor moldesign-lab del servidor con posebusters 0.6.5, la MISMA version que el entorno local. Script: scripts/run_mf33pb_validez_fisica.py.
Razón de la decisiónReason for the decision
Prerregistro sellado ANTES de ejecutar, con el hash del script. Este SI es ciego, y conviene decirlo porque el anterior de esta serie no lo era: nadie ha medido la validez fisica sobre el brazo flexible, ni yo ni nadie, y la pregunta pareada single contra ensemble no se ha mirado. La rama (2) -que el ensemble entregue poses MENOS validas- esta escrita en serio y no como formalidad: es un desenlace posible, seria contrario a la hipotesis, y obligaria a cambiar como el manuscrito presenta el ensemble. Existe porque C10 dejo de estar bloqueado. Figuraba en el docs/52 como imposible -las poses se borraron- y la retencion forense de MF-33-B-RET-R1 lo desbloqueo. Es la segunda vez que ese R1 justifica su diseno en el mismo acto de fallar su gate. El MDE se calcula ANTES con la biblioteca de FND-04 y se declara en cuatro formas -11.85, 16.77 y 20.53 pp segun la discordancia, mas b>=6 con c=0- para que ninguna diferencia pequena se pueda leer despues como tendencia. Es la leccion de RS-14 y el mismo trato que recibieron REC-11 y REC-05. Se prohibe de antemano el error mas probable, que es comparar esta tasa con el 8.62 / 15.52% de MF-33-TOP1: aquello es protocolo rigido sobre 116 y esto es flexible sobre 48. Y se declara que 47 de los 48 complejos tienen poses byte-identicas a las que tendra MF-33-B-RET-R2, asi que solo 1afl habra que recalcularlo cuando aquel cierre.

ReproducibilidadReproducibility

commit
8d69c5533a (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER
mantenimientomaintenance
1 mantenimiento(s) declarados. El hash actual no acredita qué código produjo la cifra original.1 declared maintenance action(s). The current hash does not establish which code produced the original figure.

Enlace a este expedienteLink to this record

MF-33-B-RET-R2-PREEl unico fallo de MF-33-B-RET-R1 fue ambiental y no quimico, asi que re-ejecutar ese solo dock con el protocolo identico completa la corrida y permite leer los gates que R1 dejo bloqueados. Si vuelve a fallar, la hipotesis es falsa: el fallo no era ambiental y el problema esta en el complejo o en el protocolo.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El unico fallo de MF-33-B-RET-R1 fue ambiental y no quimico, asi que re-ejecutar ese solo dock con el protocolo identico completa la corrida y permite leer los gates que R1 dejo bloqueados. Si vuelve a fallar, la hipotesis es falsa: el fallo no era ambiental y el problema esta en el complejo o en el protocolo.
Criterio prerregistradoPre-registered criterion
LOS GATES NO CAMBIAN Y NO PUEDEN CAMBIAR. Son los sellados en MF-33-B-RET-PRE y MF-33-B-RET-R1-PRE: G0 tecnico exige 48 de 48 complejos completos y CERO fallos; G1 exige que el oraculo ENSEMBLE reproduzca el rmsd_min del brazo B sellado de MF-33 dentro de 0.001 A en al menos el 95% de los complejos. Con G0 y G1 aprobados, McNemar exacto bilateral sobre top-1, top-5 y oraculo, y la lectura es: (1) LA_VENTAJA_LLEGA_AL_USUARIO si mejoran oraculo Y top-1 con p<0.05; (2) EL_CUELLO_SE_DESPLAZA_A_LA_SELECCION si mejora oraculo pero no top-1; (3) SIN_EFECTO_EN_LA_ENTREGA en los demas casos. Si G0 o G1 falla, NO_LEER_GATES_TECNICOS. ADVERTENCIA DE PROCEDENCIA, Y ES LA RAZON DE SER DE ESTE CAMPO: al diagnosticar el fallo de R1 se vieron sus bloques cientificos. ESTE R2 NO ES UNA CONFIRMACION CIEGA y queda PROHIBIDO presentarlo como tal en el paper o en cualquier material. Lo que sigue siendo ciego es la REGLA DE DECISION, escrita y sellada antes de todo esto; lo que se perdio es la ceguera sobre el desenlace, y se declara en vez de disimularse. UN SOLO INTENTO. Si 1afl vuelve a fallar, G0 vuelve a fallar, la lectura vuelve a ser NO_LEER_GATES_TECNICOS y NO habra un R3 por la via de repetir: haria falta un diseno distinto y un prerregistro nuevo que declare que cambio. Escribir esto antes es lo unico que impide que la reparacion degenere en repetir hasta que salga, que es la forma mas facil de fabricar un resultado sin darse cuenta. PROHIBIDO ademas: modificar, re-sellar o reinterpretar MF-33-B-RET-R1, que queda INCONCLUSIVE; reparar cualquier complejo que no sea 1afl; y tratar los 47 checkpoints reusados como si se hubieran recomputado.
ProtocoloProtocol
Reparacion minima, una sola variable: se re-ejecuta UN complejo. scripts/run_mf33bret_r2.py IMPORTA scripts/run_mf33bret_r1.py -sellado como asset de MF-33-B-RET-R1- y reutiliza su funcion analizar, su _block y sus constantes EXH=8, NUM_MODES=9, SEED=42, BOX=25.0, UMBRAL_A=2.0, G1_TOL=0.001 y G1_MIN=0.95. El protocolo es identico POR CONSTRUCCION y no por copia, segun el docs/49 seccion 17. PASOS: (1) reusar VERBATIM los 47 checkpoints buenos de R1, registrando el sha256 de cada uno en el metrics; (2) re-ejecutar SOLO 1afl y sus 30 conformeros; (3) recalcular G0, G1 y los bloques con las MISMAS reglas selladas. No se toca ningun umbral, ninguna regla de lectura ni el artefacto R1, que queda sellado e intacto. El reuso de artefactos sellados de una corrida previa sin recomputarlos es el mismo patron que MF-29-EMP-EXT aplico con el brazo de produccion de MF-29-EMP. CONDICION DE EJECUCION declarada porque es la causa del fallo que se repara: la maquina debe estar en reposo. R1 murio por contencion con PoseBusters, pytest y generacion de conformeros corriendo encima. Verificado antes de lanzar: sin procesos vina, python ni pytest vivos, 17.2 GB de RAM libre de 31.9.
Razón de la decisiónReason for the decision
Prerregistro sellado ANTES de ejecutar, con el hash del script nuevo y el del runner sellado de R1 que importa. Existe por una razon incomoda y por eso hay que escribirla: R1 completo los 48 complejos, reprodujo el brazo B sellado de forma PERFECTA -G1 = 47/47 = 1.0000- y aun asi su lectura primaria fue NO_LEER_GATES_TECNICOS por UN dock de 970. La tentacion de leerlo igualmente es enorme y el contrato lo prohibe, asi que la unica salida honesta es reparar el dock y volver a aplicar la MISMA regla. Lo que este prerregistro aporta que no estaba escrito antes son tres declaraciones. PRIMERA: el fallo esta caracterizado como ambiental -stdout cortado a media barra de progreso, stderr vacio, y el mismo dock re-ejecutado aislado da rc=0 con nueve poses- y la condicion de ejecucion pasa a ser explicita, maquina en reposo, porque la contencion fue la causa. SEGUNDA: este R2 NO ES CIEGO, porque al diagnosticar se vieron los bloques cientificos de R1; la regla de decision sigue siendo la sellada y no se mueve, pero la ceguera sobre el desenlace se perdio y queda declarado que no puede venderse como confirmacion. TERCERA: un solo intento, sin R3 por repeticion, para que la reparacion no se convierta en repetir hasta que salga. El reuso verbatim de los 47 checkpoints buenos, con su sha256 registrado uno a uno, sigue el patron que MF-29-EMP-EXT establecio al reusar el brazo de produccion de MF-29-EMP sin recomputarlo.

ReproducibilidadReproducibility

commit
8d69c5533a (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
hashes SHA-256
4
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-B-RET-R1La repeticion completa del brazo B MF-33, con retencion forense, reproduce su oraculo sellado y permite distinguir ganancia de generacion de ganancia entregada por score Vina.InconclusoInconclusiven=48

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
InconclusoInconclusive · Ejecutado y declarado sin conclusión. No se reclasifica a posteriori.Executed and declared without a conclusion. It is not reclassified afterwards.
Decisión del manifestManifest decision
INCONCLUSIVE
HipótesisHypothesis
La repeticion completa del brazo B MF-33, con retencion forense, reproduce su oraculo sellado y permite distinguir ganancia de generacion de ganancia entregada por score Vina.
Criterio prerregistradoPre-registered criterion
G0: 48/48 sin fallos; G1: oraculo ENSEMBLE reproduce B sellado dentro 0.001A en >=95%; primario McNemar top1/top5/oraculo con lectura exacta de MF-33-B-RET-PRE.
ProtocoloProtocol
Ver prerregistro sellado MF-33-B-RET-R1-PRE, anterior a esta corrida. Repeticion tecnica completa de 48 complejos: exh8, 9 modos, seed42, caja25A, cpu1; sin rescoring; retencion PDBQT/log/per-pose/checkpoint.
Razón de la decisiónReason for the decision
G0 TECNICO FALLA Y POR TANTO LA LECTURA PRIMARIA ES NO_LEER_GATES_TECNICOS, que es exactamente lo que el prerregistro ordena. 48 de 48 complejos completos, pero UN fallo: 1afl conformero 29, Vina returncode 1 a los 154.9 s. El contrato dice que un fallo de Vina, parseo o mapeo es ITT -se registra y hace fallar G0-, sin excepcion por tamano. G1 PASA Y DE FORMA PERFECTA: 47 de 47 = 1.0000 contra un minimo de 0.95. El oraculo ENSEMBLE reproduce el rmsd_min del brazo B sellado de MF-33 dentro de 0.001 A en todos los complejos leibles. La repeticion con retencion forense es fiel al original. CARACTERIZACION DEL FALLO, que es diagnostico y no cambia el gate: el stdout de 1afl/conf29 muestra que Vina calculo el grid y empezo a dockear, con la barra de progreso cortada a media altura y stderr VACIO. Re-ejecutado aislado con el protocolo identico, ese mismo dock termina con rc=0 y nueve poses. No es un fallo de quimica ni del conformero: el proceso murio. El checkpoint se escribio a las 17:36, mientras en la misma maquina se ejecutaban PoseBusters, pytest y generacion de conformeros; es contencion de recursos, la trampa que el propio registro ya tenia documentada -un plazo o una muerte de proceso producen sintomas identicos a un fallo real-. INCONCLUSIVE es la unica decision compatible con el contrato. Los bloques cientificos SE CALCULARON y estan en metrics.json porque el runner los escribe siempre, pero NO SE LEEN NI SE CITAN: el prerregistro condiciona su lectura a que G0 y G1 pasen los dos. ADVERTENCIA DE PROCEDENCIA PARA CUALQUIER R2, y hay que escribirla ahora: al diagnosticar el fallo se vieron los bloques cientificos de este metrics.json. Un R2 que repare el unico dock afectado NO puede presentarse como confirmacion ciega. Lo que SIGUE siendo ciego es la REGLA DE DECISION, que quedo escrita en MF-33-B-RET-PRE y MF-33-B-RET-R1-PRE antes de todo esto y no se puede mover; lo que se perdio es la ceguera sobre el desenlace, y eso se declara en vez de disimularse. Retencion completa conservada y verificada por conteo: 48 checkpoints, 48 per_pose, 969 PDBQT crudos -970 docks menos el que fallo- y 1940 logs. Esa retencion es lo que permite que el diagnostico de arriba exista, y es la razon de ser de este R1 frente al MF-33-B-RET original, que no guardaba geometria.

Métricas registradasRecorded metrics

lectura_preregistrada
NO_LEER_GATES_TECNICOS

ReproducibilidadReproducibility

commit
8d69c5533a (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
complejoscomplexes
48
fallosfailures
1
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-05Los metales del receptor son necesarios para colocar el ligando en de novo, y no un detalle de preparacion. Si lo son, quitarlos debe destruir la cobertura del oraculo en los complejos que los tienen. Es la hipotesis simetrica a la de REC-11 sobre las aguas, y sobre la unica de las tres clases del REC-05 original que admite medicion.InconclusoInconclusiven=29

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
InconclusoInconclusive · Ejecutado y declarado sin conclusión. No se reclasifica a posteriori.Executed and declared without a conclusion. It is not reclassified afterwards.
Decisión del manifestManifest decision
INCONCLUSIVE
HipótesisHypothesis
Los metales del receptor son necesarios para colocar el ligando en de novo, y no un detalle de preparacion. Si lo son, quitarlos debe destruir la cobertura del oraculo en los complejos que los tienen. Es la hipotesis simetrica a la de REC-11 sobre las aguas, y sobre la unica de las tres clases del REC-05 original que admite medicion.
Criterio prerregistradoPre-registered criterion
RE-ALCANCE DECLARADO ANTES DE CORRER, y esta es la parte que no se puede escribir despues. El REC-05 del docs/49 pedia ablacion en TRES clases con un gate de 'reglas por familia con evidencia'. Dos clases quedan fuera y el gate por familia NO ES ALCANZABLE: (a) AGUAS fuera, porque el prerregistro de REC-11 condicionaba abrir politicas intermedias a que saliera QUITARLAS MEJORA y salio SIN_DIFERENCIA_DETECTABLE; (b) COFACTORES fuera por falta de n, porque REC-12-R1 midio que el nucleo robusto son DOS complejos, 1gwv con UDP y 1lbk con GSH; (c) METALES dentro pero AGRUPADOS. PRIMARIA: cobertura del oraculo pareada sobre los 29, con b = complejos donde SIN cubre y CON no, y c = donde CON cubre y SIN no. McNemar exacto bilateral de estadistica_fnd04. TRES LECTURAS ESCRITAS ANTES: (1) p<0.05 con c>b => CONSERVARLOS_ES_NECESARIO, y la preparacion queda validada positivamente en esta clase, que hoy no lo esta -REC-08-EXT midio que se conservan 42 de 42, no que haga falta-; (2) p<0.05 con b>c => QUITARLOS_MEJORA, resultado sorprendente que exigiria replica antes de cualquier uso; (3) p>=0.05 => SIN_DIFERENCIA_DETECTABLE, sin leerlo como equivalencia. EFECTO MINIMO DETECTABLE DECLARADO ANTES: con n=29 y discordancia del 20% el MDE pareado es de 20.6 puntos porcentuales, unos 6 complejos netos; y con c=0 el McNemar exacto exige b>=6 para p<0.05. Diferencias menores NO son resolubles con esta cohorte y se reportaran como no concluyentes, nunca como tendencia -leccion de RS-14-. SECUNDARIO descriptivo y SIN gate: la misma tabla restringida a ZN, n=21, que es la UNICA familia con algo de potencia. DECLARADO NO LEIBLE: CA con n=7, MG con n=3, MN con n=3 y CU con n=2 no admiten lectura de familia y no se reportara ninguna, ni siquiera descriptiva. Esa es la razon de que el gate original de REC-05 se sustituya en vez de intentarse. PROHIBIDO: leer SIN_DIFERENCIA_DETECTABLE como equivalencia; emitir una regla por familia para CA, MG, MN o CU; leer esto como medicion de cobertura alcanzable, porque usa UN SOLO conformero igual que REC-11; y extender la lectura a los 87 complejos sin metal, sobre los que este experimento no dice nada.
ProtocoloProtocol
Ver prerregistro sellado REC-05-PRE, anterior a esta corrida y con el hash de los tres scripts. Intervencion pareada, una sola variable: el receptor. Protocolo IDENTICO al de REC-11 POR CONSTRUCCION y no por copia: scripts/run_rec05_metales_denovo.py IMPORTA scripts/run_rec11_aguas_denovo.py -sellado como asset de REC-11- y reutiliza su funcion _brazo y sus constantes BOX=25.0, EXH=8, NUM_MODES=9, SEMILLAS={42,1,2,3,4}, UMBRAL_A=2.0 y LIGANDO=conf0.flex.pdbqt. El conjunto METALES se importa del modulo sellado de REC-12. Es el patron que exige el docs/49 seccion 17. COHORTE: derivada de artefactos sellados y no escrita a mano; los complejos de los 116 de MF-13 que REC-08-EXT marca con metales_sitio>0. Son 29. BRAZO CON: rec.pdbqt tal cual. BRAZO SIN: el mismo receptor sin ningun residuo cuyo nombre este en METALES. Se quitan TODOS los metales del receptor y no solo los del sitio, por la misma razon que REC-11 quito todas las aguas: en de novo no hay pose de referencia con la que decidir cual estorba. Consecuencia declarada: en algunos complejos se retiran especies que REC-08-EXT no contaba por estar fuera de los 8 A -HG en la serie 1bn/1cn, MN en 1ax0, CA en 1g3d/1g3e-. Verificado antes de sellar: los 29 pierden entre 1 y 18 atomos, 96 en total, y ninguno se queda a cero. El ligando es identico en los dos brazos, asi que la penalizacion torsional se cancela -leccion de MF-29-EMP-COR aplicada por diseno-. Contenedor moldesign-lab del servidor.
Razón de la decisiónReason for the decision
Cohorte completa: los 29 complejos de los 116 que REC-08-EXT marca con metal en el sitio, n_ok 29 de 29, cero fallos. Se retiraron 96 atomos de metal en total, entre 1 y 18 por complejo, y ninguno se quedo a cero. CANTIDAD PRIMARIA: cobertura del oraculo pareada. CON metales 24 de 29 = 0.8276; SIN metales 25 de 29 = 0.8621. Discordantes 3 de 29 = 0.1034, con b -gana SIN- = 2 y c -gana CON- = 1. McNemar exacto bilateral p = 1.0. Cae en la rama (3) de las tres lecturas escritas antes: SIN_DIFERENCIA_DETECTABLE. INCONCLUSIVE y no GO por el mismo criterio con que se sellaron REC-11, REC-09 y MF-13: esa rama es la que el gate reserva para 'no se distingue', el prerregistro PROHIBE leerla como equivalencia, y obliga a declarar el limite de potencia. MDE OBSERVADO 14.84 pp, MEJOR que los 20.6 pp declarados antes de correr, porque la discordancia real -10.3%- salio por debajo del 20% supuesto al calcularlo. El diseno sigue sin resolver diferencias menores a unos 15 puntos porcentuales, unos 4 complejos netos sobre 29. SECUNDARIO DESCRIPTIVO, la unica familia con n: ZN sobre 21 complejos da CON 16, SIN 17, b=2, c=1, p=1.0 y MDE 19.72 pp. Apunta igual que el agrupado y tampoco resuelve nada. Las familias CA -7-, MG -3-, MN -3- y CU -2- se declararon NO LEIBLES antes de correr y no se reporta ninguna regla para ellas, que era la razon de re-alcanzar el REC-05 original en vez de intentar su gate por familia. LOS DOS DISCORDANTES, nominalmente: 1mmq -CON 1.134, SIN 2.083, gana CON- y 1mmr -CON 4.018, SIN 1.071, gana SIN-. 1mmr ya figuraba entre los 10 que REC-11 rescato al quitar las AGUAS; que tambien mejore al quitar los metales sugiere que ese complejo se beneficia de vaciar el receptor por razones que este diseno no identifica. Es UN caso y no se generaliza. CONSECUENCIA DE PRODUCTO, declarada aqui porque no era el proposito del experimento y conviene que no se sobreinterprete: la preparacion del producto -preparer.py- elimina hoy el 100% de los metales de los 387 targets del catalogo, porque su puerta de conservacion depende de un cofactors_whitelist vacio. REC-05 mide que, sobre estos 29 y con un solo conformero, eso NO ES DETECTABLEMENTE DANINO. NO dice que sea inocuo: con MDE de 14.84 pp, un dano de hasta cuatro complejos netos seria invisible para este diseno. LIMITES: un solo conformero, igual que REC-11, asi que mide el efecto a conformero igualado y no la cobertura alcanzable; se quitaron TODOS los metales del receptor y no solo los del sitio, lo que en algunos complejos retiro especies que REC-08-EXT no contaba por estar fuera de los 8 A; no dice nada de los 87 complejos sin metal; y no toca ningun artefacto sellado ni cambia ningun receptor. Ejecutado en el contenedor moldesign-lab del servidor. Artefactos descargados con sha256 verificado contra el remoto, y los tres scripts coinciden con lo sellado en REC-05-PRE en local y en el servidor.

Métricas registradasRecorded metrics

tipo
intervencion pareada con re-alcance, regla de lectura y MDE preregistrados
n_complejos
29
n_ok
29

ReproducibilidadReproducibility

commit
7a16fb14ea (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
complejoscomplexes
29
hashes SHA-256
5
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-05-PRELos metales del receptor son necesarios para colocar el ligando en de novo, y no un detalle de preparacion. Si lo son, quitarlos debe destruir la cobertura del oraculo en los complejos que los tienen. Es la hipotesis simetrica a la de REC-11 sobre las aguas, y sobre la unica de las tres clases del REC-05 original que admite medicion.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Los metales del receptor son necesarios para colocar el ligando en de novo, y no un detalle de preparacion. Si lo son, quitarlos debe destruir la cobertura del oraculo en los complejos que los tienen. Es la hipotesis simetrica a la de REC-11 sobre las aguas, y sobre la unica de las tres clases del REC-05 original que admite medicion.
Criterio prerregistradoPre-registered criterion
RE-ALCANCE DECLARADO ANTES DE CORRER, y esta es la parte que no se puede escribir despues. El REC-05 del docs/49 pedia ablacion en TRES clases con un gate de 'reglas por familia con evidencia'. Dos clases quedan fuera y el gate por familia NO ES ALCANZABLE: (a) AGUAS fuera, porque el prerregistro de REC-11 condicionaba abrir politicas intermedias a que saliera QUITARLAS MEJORA y salio SIN_DIFERENCIA_DETECTABLE; (b) COFACTORES fuera por falta de n, porque REC-12-R1 midio que el nucleo robusto son DOS complejos, 1gwv con UDP y 1lbk con GSH; (c) METALES dentro pero AGRUPADOS. PRIMARIA: cobertura del oraculo pareada sobre los 29, con b = complejos donde SIN cubre y CON no, y c = donde CON cubre y SIN no. McNemar exacto bilateral de estadistica_fnd04. TRES LECTURAS ESCRITAS ANTES: (1) p<0.05 con c>b => CONSERVARLOS_ES_NECESARIO, y la preparacion queda validada positivamente en esta clase, que hoy no lo esta -REC-08-EXT midio que se conservan 42 de 42, no que haga falta-; (2) p<0.05 con b>c => QUITARLOS_MEJORA, resultado sorprendente que exigiria replica antes de cualquier uso; (3) p>=0.05 => SIN_DIFERENCIA_DETECTABLE, sin leerlo como equivalencia. EFECTO MINIMO DETECTABLE DECLARADO ANTES: con n=29 y discordancia del 20% el MDE pareado es de 20.6 puntos porcentuales, unos 6 complejos netos; y con c=0 el McNemar exacto exige b>=6 para p<0.05. Diferencias menores NO son resolubles con esta cohorte y se reportaran como no concluyentes, nunca como tendencia -leccion de RS-14-. SECUNDARIO descriptivo y SIN gate: la misma tabla restringida a ZN, n=21, que es la UNICA familia con algo de potencia. DECLARADO NO LEIBLE: CA con n=7, MG con n=3, MN con n=3 y CU con n=2 no admiten lectura de familia y no se reportara ninguna, ni siquiera descriptiva. Esa es la razon de que el gate original de REC-05 se sustituya en vez de intentarse. PROHIBIDO: leer SIN_DIFERENCIA_DETECTABLE como equivalencia; emitir una regla por familia para CA, MG, MN o CU; leer esto como medicion de cobertura alcanzable, porque usa UN SOLO conformero igual que REC-11; y extender la lectura a los 87 complejos sin metal, sobre los que este experimento no dice nada.
ProtocoloProtocol
Intervencion pareada, una sola variable: el receptor. Protocolo IDENTICO al de REC-11 POR CONSTRUCCION y no por copia: scripts/run_rec05_metales_denovo.py IMPORTA scripts/run_rec11_aguas_denovo.py -sellado como asset de REC-11- y reutiliza su funcion _brazo y sus constantes BOX=25.0, EXH=8, NUM_MODES=9, SEMILLAS={42,1,2,3,4}, UMBRAL_A=2.0 y LIGANDO=conf0.flex.pdbqt. El conjunto METALES se importa del modulo sellado de REC-12. Es el patron que exige el docs/49 seccion 17. COHORTE: derivada de artefactos sellados y no escrita a mano; los complejos de los 116 de MF-13 que REC-08-EXT marca con metales_sitio>0. Son 29. BRAZO CON: rec.pdbqt tal cual. BRAZO SIN: el mismo receptor sin ningun residuo cuyo nombre este en METALES. Se quitan TODOS los metales del receptor y no solo los del sitio, por la misma razon que REC-11 quito todas las aguas: en de novo no hay pose de referencia con la que decidir cual estorba. Consecuencia declarada: en algunos complejos se retiran especies que REC-08-EXT no contaba por estar fuera de los 8 A -HG en la serie 1bn/1cn, MN en 1ax0, CA en 1g3d/1g3e-. Verificado antes de sellar: los 29 pierden entre 1 y 18 atomos, 96 en total, y ninguno se queda a cero. El ligando es identico en los dos brazos, asi que la penalizacion torsional se cancela -leccion de MF-29-EMP-COR aplicada por diseno-. Contenedor moldesign-lab del servidor.
Razón de la decisiónReason for the decision
Prerregistro sellado ANTES de ejecutar, con el hash del runner nuevo y el de los dos modulos sellados que reutiliza. Lo que hace falta declarar antes y no despues no es el gate sino el RE-ALCANCE: el REC-05 del docs/49 pedia tres clases y una regla por familia, y ninguna de las dos cosas es alcanzable. Aguas quedan fuera porque REC-11 no lo autorizo -su rama QUITARLAS MEJORA era la que abria las politicas intermedias, y salio SIN_DIFERENCIA_DETECTABLE-. Cofactores quedan fuera porque REC-12-R1 acaba de medir que el nucleo robusto son dos complejos. Y la regla por familia no se puede emitir con CA=7, MG=3, MN=3 y CU=2: solo ZN llega a 21 y aun asi es secundario descriptivo. El MDE se calcula ANTES con la biblioteca de FND-04 y se declara en dos formas -20.6 puntos porcentuales con discordancia del 20%, y b>=6 con c=0- para que ninguna diferencia pequena se pueda leer despues como tendencia; es la leccion explicita de RS-14 y el mismo trato que recibio REC-11. Se declara ademas una decision de implementacion que costo un bug y que quedo verificada antes de sellar: los metales se identifican SOLO por nombre de residuo. Probar tambien con el nombre de atomo y el campo de tipo del PDBQT retiraba entre 200 y 3900 atomos por complejo -la proteina entera-, porque `CA` es el carbono alfa de todo residuo y `NA` es el tipo AutoDock del nitrogeno aceptor. Con el criterio final los 29 complejos pierden entre 1 y 18 atomos, 96 en total, y ninguno se queda a cero.

ReproducibilidadReproducibility

commit
7a16fb14ea (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
hashes SHA-256
5
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-11-CRUCESEl criterio geometrico de agua bloqueante de REC-09 -algun atomo a <=2.6 A de un atomo pesado del ligando CRISTALOGRAFICO- necesita conocer la pose, y el docking de novo no la conoce. Si aun asi capturase el mecanismo, los complejos donde quitar las aguas gana el oraculo en REC-11 estarian enriquecidos en aguas bloqueantes.MediciónMeasurementn=116

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El criterio geometrico de agua bloqueante de REC-09 -algun atomo a <=2.6 A de un atomo pesado del ligando CRISTALOGRAFICO- necesita conocer la pose, y el docking de novo no la conoce. Si aun asi capturase el mecanismo, los complejos donde quitar las aguas gana el oraculo en REC-11 estarian enriquecidos en aguas bloqueantes.
Criterio prerregistradoPre-registered criterion
SIN GATE. NO HAY DECISION QUE DEPENDA DE UN UMBRAL, Y ESO ES DELIBERADO. ADVERTENCIA DE PROCEDENCIA, QUE ES LA RAZON DE SER DE ESTE CAMPO: la tabla de contingencia SE INSPECCIONO al proponer este analisis, ANTES de escribir este registro. NO es un prerregistro ciego y no se presenta como tal. En consecuencia los p que produce son DESCRIPTIVOS y no sostienen ninguna afirmacion confirmatoria, por pequenos que salgan. Registrarlo con la etiqueta correcta es preferible a no registrarlo, y es el mismo trato que recibio el desglose por estrato de REC-11. PROHIBIDO: citar el p de la tabla A como evidencia de nada; presentar esto como una refutacion de REC-09, que midio el scoring del CRISTAL y cuyo resultado no se toca -lo que aqui se contrasta es el ALCANCE de su criterio fuera de ese contexto-; usar esto para cambiar la politica de aguas, que la gobierna REC-11 y salio SIN_DIFERENCIA_DETECTABLE; y leer las celdas como estables, porque van de 1 a 7 elementos. Lo que este analisis produce es una HIPOTESIS para un prerregistro futuro, no un resultado.
ProtocoloProtocol
Sin computo: cruza dos artefactos sellados, REC-09/per_complex.jsonl y REC-11/per_complex.jsonl, sobre los mismos 116. Tabla A, sobre los 116: tasa de gana_SIN entre los que tienen al menos un agua bloqueante frente a los que no tienen ninguna, con test exacto de Fisher bilateral. Tabla B, restringida a los 18 discordantes de REC-11: entre los complejos que SI se movieron, la presencia de agua bloqueante predice la DIRECCION del movimiento. Se listan ademas por nombre los complejos rescatados al quitar las aguas que tienen CERO bloqueantes. La implementacion de Fisher es propia y se verifica contra dos casos conocidos antes de usarla. Script: scripts/analisis_rec11cruces_criterio_geometrico.py.
Razón de la decisiónReason for the decision
MEDICION DESCRIPTIVA POST-HOC. Se registra con esa etiqueta porque la tabla de contingencia se vio ANTES de escribir el registro, al proponer el analisis; decirlo es la unica forma de que el numero que sigue no se lea como lo que no es. LO QUE MIDE: sobre los 116, la tasa de 'quitar las aguas gana el oraculo' es 5 de 26 = 0.1923 entre los complejos con al menos un agua bloqueante por el criterio de 2.6 A de REC-09, y 5 de 90 = 0.0556 entre los que no tienen ninguna. Enriquecimiento 3.46x, Fisher exacto bilateral p = 0.0437 DESCRIPTIVO, que por lo dicho arriba NO se cita. LO QUE MUESTRA, Y NO DEPENDE DEL p: el criterio no basta. CINCO de los DIEZ complejos rescatados al quitar las aguas tienen CERO aguas bloqueantes -10gs, 1d7i, 1ela, 1fh7, 1nje-, o sea la mitad del efecto cae fuera de lo que el criterio ve. Y entre los 18 que SI se movieron, la presencia de agua bloqueante no predice la DIRECCION: p = 0.1516. Un criterio que necesita la pose cristalografica para definirse deja de servir cuando la pose es justamente lo que no se conoce, que es la asimetria que REC-11 declaro al disenarse y la razon de que alli se quitaran TODAS. GO porque el cruce entrega lo que prometia, con su limitacion escrita y su implementacion de Fisher verificada contra dos casos conocidos (0.4857 y 1.0825e-05) antes de usarla. NO refuta REC-09: aquel midio el scoring del CRISTAL y su resultado queda intacto; lo que aqui se acota es el ALCANCE de su criterio fuera de ese contexto. No autoriza cambiar la politica de aguas, que la gobierna REC-11 con SIN_DIFERENCIA_DETECTABLE. Lo que produce es una hipotesis para un prerregistro futuro: un criterio de agua estorbante que no dependa de conocer la pose.

Métricas registradasRecorded metrics

analisis_id
REC-11-CRUCES
tipo
medicion descriptiva POST-HOC declarada; sin gate y sin decision por umbral
advertencia_de_procedencia
La tabla de contingencia se inspecciono al proponer este analisis, ANTES de escribir su registro. NO es un prerregistro ciego. Los p que siguen son descriptivos y no sostienen ninguna afirmacion confirmatoria.
n
116

ReproducibilidadReproducibility

commit
edd07507a6 (dirty)
ramabranch
codex/mejora-producto
semillaseed
42
selladosealed
23 de agosto de 2026August 23, 2026
complejoscomplexes
116
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-12-R1La entrada original de RCSB si contiene los heteroatomos que PDBBind elimina, asi que permite medir lo que REC-12 no pudo: si algun receptor del programa tiene el sitio incompleto porque le falta un cofactor no metalico -un NAD, un FAD, un hemo-. REC-12 establecio que el instrumento estaba ciego, no que no hubiera nada que ver.MediciónMeasurementn=116

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La entrada original de RCSB si contiene los heteroatomos que PDBBind elimina, asi que permite medir lo que REC-12 no pudo: si algun receptor del programa tiene el sitio incompleto porque le falta un cofactor no metalico -un NAD, un FAD, un hemo-. REC-12 establecio que el instrumento estaba ciego, no que no hubiera nada que ver.
Criterio prerregistradoPre-registered criterion
G1 DE VALIDEZ DE LA FUENTE, el mismo que fallo en REC-12 y con el mismo minimo: fraccion de complejos cuya estructura original contiene algun HETATM que no sea agua ni metal, en cualquier parte de la estructura; minimo 0.05. En REC-12 dio 0.0208 y por eso aquel inventario NO SE LEYO. TRES LECTURAS ESCRITAS ANTES DE MIRAR: (1) G1 falla => LA_FUENTE_TAMPOCO_SIRVE, el inventario no se lee y el punto ciego sigue abierto con otra fuente por encontrar; (2) G1 pasa y hay al menos un complejo con cofactor no aditivo en el sitio que rec.pdbqt NO conserva => HAY_RECEPTORES_INCOMPLETOS, con la lista nominal de pids, y es un defecto de especificacion MEDIDO, del mismo tipo que REC-08-EXT y REC-09 destaparon; (3) G1 pasa y cero complejos con cofactor perdido => NINGUN_RECEPTOR_PIERDE_COFACTORES, y el punto ciego queda cerrado POR MEDICION y no por suposicion, que es lo que hoy no se puede decir. SECUNDARIO descriptivo y SIN gate: de los cristales que REC-09 marco absurdos y que no tienen ninguna agua bloqueante -1d7i y 1ew9-, cuantos tienen un cofactor en el sitio. PROHIBIDO: leer la presencia de un cofactor cerca del sitio como prueba de que el sitio lo necesita; el experimento establece que el receptor preparado no lo tiene, no que le haga falta. PROHIBIDO cambiar ningun receptor ni re-sellar ningun artefacto a partir de esto: lo que autoriza es disenar REC-05 -ablacion por familia-, que hoy esta bloqueado justamente porque los cofactores son invisibles. PROHIBIDO tratar la unidad asimetrica depositada como la assembly biologica: esa cuestion la gobierna REC-08 y aqui no se toca. PROHIBIDO mover la lista ADITIVOS despues de ver el resultado.
ProtocoloProtocol
Ver prerregistro sellado REC-12-R1-PRE, anterior a esta corrida y con el hash de los dos scripts. Cambio de UNA sola variable frente a REC-12: la fuente de la estructura original pasa de data/pdbbind/<pid>/<pid>_protein.pdb -limpiado por PDBBind- a la entrada de RCSB, https://files.rcsb.org/download/<pid>.pdb. Cohorte: los 116 de MF-13, la misma. El analisis NO se reescribe: scripts/run_rec12r1_cofactores_rcsb.py IMPORTA el modulo sellado scripts/analisis_rec12_cofactores.py y reutiliza sus funciones _hetatm, _todos y _cerca y sus constantes R_SITIO=8.0, TOL=0.5, METALES y AGUAS, como exige el docs/49 seccion 17 -un artefacto sellado se extiende por composicion, nunca se edita-. Por complejo se cuentan los atomos HETATM que no son agua ni metal, que caen a <=8.0 A de un atomo pesado del ligando cristalografico y que no solapan con el propio ligando dentro de 0.5 A; y se marca cuantos de ellos SOBREVIVEN en rec.pdbqt, el receptor preparado que consume todo el programa. AMPLIACION DECLARADA ANTES DE EJECUTAR: sobre la entrada cruda aparecen aditivos de cristalizacion -glicerol, sulfato, PEG, MPD- que en el archivo limpiado no existian, y contarlos como cofactores inflaria el inventario. Por eso la lista ADITIVOS queda escrita en el script ANTES de correr, con 51 especies, y se reportan DOS cuentas por complejo: la bruta y la que excluye aditivos. El gate se lee sobre la segunda. Una especie que no este en la lista cuenta como cofactor, no como aditivo. Sin computo de docking. Contenedor moldesign-lab del servidor, que es donde hay red.
Razón de la decisiónReason for the decision
G1 DE VALIDEZ DE LA FUENTE PASA Y NO POR POCO: 115 de 116 = 0.9914, contra el 0.0208 con que fallo REC-12 sobre el _protein.pdb limpiado de PDBBind. Las 116 entradas de RCSB se descargaron sin una sola ausencia. Eso solo ya cierra lo que REC-12 dejo abierto: la pregunta ERA contestable y el instrumento estaba ciego, no vacio el objeto. LECTURA PREREGISTRADA: HAY_RECEPTORES_INCOMPLETOS, la rama (2). En 15 de 116 complejos hay al menos un HETATM que no es agua, ni metal, ni figura en la lista ADITIVOS congelada antes de correr, que cae a <=8.0 A del ligando cristalografico y que NO sobrevive en el rec.pdbqt que consume todo el programa: 1alw 1apv 1bty 1c5o 1c5p 1d7j 1dgm 1f4g 1fd0 1gwv 1hpx 1igb 1jao 1jaq 1lbk. EL 15 ES UNA COTA SUPERIOR, NO UN RECUENTO DE COFACTORES FUNCIONALES, y esto se declara aqui y no se corrige moviendo la lista, que el prerregistro prohibe expresamente. Al desglosar las especies: (a) NUCLEO ROBUSTO, 2 complejos con cofactor funcional de verdad: UDP en 1gwv y GSH -glutation- en 1lbk; (b) 11 complejos cuya especie es un ligando o inhibidor, no un cofactor -BEN, benzamidina, en 1bty 1c5o 1c5p; KNI, 41 atomos, en 1hpx; y ISA BUQ TP4 254 IPO 0D3 01S-, donde descartarlos en la preparacion puede ser lo CORRECTO si son segundas copias del propio ligando, cosa que este analisis no distingue; (c) 2 complejos cuya especie escapo a las listas por un hueco declarado: DMF -un disolvente- en 1apv, y CL -un cloruro- en 1dgm, que no esta en el conjunto METALES del modulo sellado de REC-12. La lectura de existencia se sostiene aunque se retiren (b) y (c): UDP y GSH bastan para que la rama (2) sea la correcta. SECUNDARIO PREREGISTRADO, respuesta limpia en negativo: de los 6 cristales que REC-09 marco absurdos, los dos que no tienen ninguna agua bloqueante -1d7i y 1ew9- tampoco tienen ningun cofactor en el sitio. Esta via NO los explica y la pregunta abierta de REC-09 sigue abierta. GO porque el gate se leyo tal como se escribio, sobre la cohorte completa y con la fuente que el prerregistro nombro, y porque entrega lo que autorizaba: la lista nominal con la que se puede disenar REC-05, hoy bloqueado precisamente porque los cofactores eran invisibles. PROHIBIDO, y se repite aqui: esto establece que el receptor preparado no tiene esas especies, NO que el sitio las necesite. No cambia ningun receptor ni re-sella ningun artefacto. Limite adicional: la entrada de RCSB es la unidad asimetrica depositada y no la assembly biologica, cuestion que gobierna REC-08. Ejecutado en el contenedor moldesign-lab del servidor; artefactos descargados con sha256 verificado contra el remoto, y los dos scripts coinciden byte a byte con lo sellado en REC-12-R1-PRE en local y en el servidor.

Métricas registradasRecorded metrics

analisis_id
REC-12-R1
tipo
inventario desde la fuente original, con gate de validez de la fuente
fuente
https://files.rcsb.org/download/<pid>.pdb
cambio_unico_frente_a_REC-12
la estructura original; el analisis se importa del modulo sellado
n_complejos
116
n_ok
116
lectura_preregistrada
HAY_RECEPTORES_INCOMPLETOS

ReproducibilidadReproducibility

commit
cd0d4152e9 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
22 de agosto de 2026August 22, 2026
complejoscomplexes
116
hashes SHA-256
4
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-12-R1-PRELa entrada original de RCSB si contiene los heteroatomos que PDBBind elimina, asi que permite medir lo que REC-12 no pudo: si algun receptor del programa tiene el sitio incompleto porque le falta un cofactor no metalico -un NAD, un FAD, un hemo-. REC-12 establecio que el instrumento estaba ciego, no que no hubiera nada que ver.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La entrada original de RCSB si contiene los heteroatomos que PDBBind elimina, asi que permite medir lo que REC-12 no pudo: si algun receptor del programa tiene el sitio incompleto porque le falta un cofactor no metalico -un NAD, un FAD, un hemo-. REC-12 establecio que el instrumento estaba ciego, no que no hubiera nada que ver.
Criterio prerregistradoPre-registered criterion
G1 DE VALIDEZ DE LA FUENTE, el mismo que fallo en REC-12 y con el mismo minimo: fraccion de complejos cuya estructura original contiene algun HETATM que no sea agua ni metal, en cualquier parte de la estructura; minimo 0.05. En REC-12 dio 0.0208 y por eso aquel inventario NO SE LEYO. TRES LECTURAS ESCRITAS ANTES DE MIRAR: (1) G1 falla => LA_FUENTE_TAMPOCO_SIRVE, el inventario no se lee y el punto ciego sigue abierto con otra fuente por encontrar; (2) G1 pasa y hay al menos un complejo con cofactor no aditivo en el sitio que rec.pdbqt NO conserva => HAY_RECEPTORES_INCOMPLETOS, con la lista nominal de pids, y es un defecto de especificacion MEDIDO, del mismo tipo que REC-08-EXT y REC-09 destaparon; (3) G1 pasa y cero complejos con cofactor perdido => NINGUN_RECEPTOR_PIERDE_COFACTORES, y el punto ciego queda cerrado POR MEDICION y no por suposicion, que es lo que hoy no se puede decir. SECUNDARIO descriptivo y SIN gate: de los cristales que REC-09 marco absurdos y que no tienen ninguna agua bloqueante -1d7i y 1ew9-, cuantos tienen un cofactor en el sitio. PROHIBIDO: leer la presencia de un cofactor cerca del sitio como prueba de que el sitio lo necesita; el experimento establece que el receptor preparado no lo tiene, no que le haga falta. PROHIBIDO cambiar ningun receptor ni re-sellar ningun artefacto a partir de esto: lo que autoriza es disenar REC-05 -ablacion por familia-, que hoy esta bloqueado justamente porque los cofactores son invisibles. PROHIBIDO tratar la unidad asimetrica depositada como la assembly biologica: esa cuestion la gobierna REC-08 y aqui no se toca. PROHIBIDO mover la lista ADITIVOS despues de ver el resultado.
ProtocoloProtocol
Cambio de UNA sola variable frente a REC-12: la fuente de la estructura original pasa de data/pdbbind/<pid>/<pid>_protein.pdb -limpiado por PDBBind- a la entrada de RCSB, https://files.rcsb.org/download/<pid>.pdb. Cohorte: los 116 de MF-13, la misma. El analisis NO se reescribe: scripts/run_rec12r1_cofactores_rcsb.py IMPORTA el modulo sellado scripts/analisis_rec12_cofactores.py y reutiliza sus funciones _hetatm, _todos y _cerca y sus constantes R_SITIO=8.0, TOL=0.5, METALES y AGUAS, como exige el docs/49 seccion 17 -un artefacto sellado se extiende por composicion, nunca se edita-. Por complejo se cuentan los atomos HETATM que no son agua ni metal, que caen a <=8.0 A de un atomo pesado del ligando cristalografico y que no solapan con el propio ligando dentro de 0.5 A; y se marca cuantos de ellos SOBREVIVEN en rec.pdbqt, el receptor preparado que consume todo el programa. AMPLIACION DECLARADA ANTES DE EJECUTAR: sobre la entrada cruda aparecen aditivos de cristalizacion -glicerol, sulfato, PEG, MPD- que en el archivo limpiado no existian, y contarlos como cofactores inflaria el inventario. Por eso la lista ADITIVOS queda escrita en el script ANTES de correr, con 51 especies, y se reportan DOS cuentas por complejo: la bruta y la que excluye aditivos. El gate se lee sobre la segunda. Una especie que no este en la lista cuenta como cofactor, no como aditivo. Sin computo de docking. Contenedor moldesign-lab del servidor, que es donde hay red.
Razón de la decisiónReason for the decision
Prerregistro sellado ANTES de ejecutar, con el hash del script nuevo y el del modulo sellado de REC-12 que reutiliza. Existe porque REC-12 dejo escrita su propia deuda con el coste: 116 descargas y el mismo analisis sin tocar, siendo el bloqueo de datos y no de metodo. Se declara antes de correr la unica decision de diseno que el cambio de fuente introduce y que podria discutirse despues: la entrada cruda de RCSB trae aditivos de cristalizacion que el archivo limpiado de PDBBind no tenia, asi que la lista ADITIVOS se congela aqui con 51 especies y se reportan las dos cuentas, bruta y neta, leyendo el gate sobre la neta. Se declara tambien que la lectura (3) -ningun receptor pierde cofactores- es un desenlace legitimo y NO un fracaso: cerraria por medicion un punto ciego que hoy solo se puede afirmar por suposicion. Y se prohibe de antemano el error de interpretacion mas probable, que es leer 'hay un cofactor cerca' como 'el sitio lo necesita'.

ReproducibilidadReproducibility

commit
cd0d4152e9 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
22 de agosto de 2026August 22, 2026
hashes SHA-256
4
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-29-EMP-EXT1mmr y 1nm6 no fallaron en el brazo masivo de MF-29-EMP: expiraron. Con un plazo suficiente completan sus tres semillas a exh=512 y la cohorte queda en 50 de 50.HallazgoFindingn=2

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
1mmr y 1nm6 no fallaron en el brazo masivo de MF-29-EMP: expiraron. Con un plazo suficiente completan sus tres semillas a exh=512 y la cohorte queda en 50 de 50.
Criterio prerregistradoPre-registered criterion
Union de los 48 ya leidos mas los recuperados, con los umbrales de MF-29-EMP SIN TOCAR: f = fraccion donde min(exh=512) < min(exh=8) - 0.10; >=0.30 BUSQUEDA, <0.10 OBJETIVO, intermedio MIXTO. CASO DE BORDE DECLARADO ANTES DE CORRER, que es la razon de escribir este prerregistro: hoy son 3 de 48 = 0.0625; si ninguno mejora 3/50 = 0.0600 OBJETIVO; si uno mejora 4/50 = 0.0800 OBJETIVO; si los DOS mejoran 5/50 = 0.1000 y eso es MIXTO, porque la regla dice < 0.10 para OBJETIVO y 0.1000 no es menor que 0.10. Ese tercer desenlace CAMBIARIA la lectura de MF-29-EMP y queda escrito antes de mirar. PROHIBIDO: mover el umbral de 0.10 si cae el caso de borde; re-sellar MF-29-EMP, que queda leido sobre 48 con su limitacion declarada; leer nada de esto como certificado, porque MF-29 sigue ABIERTO.
ProtocoloProtocol
Ver prerregistro sellado MF-29-EMP-EXT-PRE, anterior a esta corrida y con el hash del script. Extension de cobertura de MF-29-EMP, no re-sellado. Protocolo IDENTICO al brazo masivo de MF-29-EMP -conf0.flex.pdbqt, mismo receptor, caja 25 A, num_modes 9, exh=512, semillas {42,7,13}, --cpu 1- salvo que el timeout deja de ser la constante 14400 en duro y pasa a parametro, con 72000 s por defecto. El brazo de produccion NO se recomputa: se reusan los valores ya medidos en MF-29-EMP (1mmr -6.608, 1nm6 -8.724). Contenedor moldesign-lab del servidor. Script: scripts/run_mf29empext_recuperar_expirados.py.
Razón de la decisiónReason for the decision
Los dos complejos que expiraron en MF-29-EMP se recuperan con el plazo parametrizado a 72000 s: recuperados 2 de 2, ninguno sin lectura. Las seis corridas cayeron entre 33546.6 s (1mmr s42) y 51275.8 s (1nm6 s7), TODAS por encima del timeout antiguo de 14400 s en duro, lo que confirma medido lo que el prerregistro afirmaba: 1mmr y 1nm6 no fallaron, expiraron. 1mmr mejora -produccion -6.608 contra masivo -6.77, ganancia 0.162 por encima del ruido declarado de 0.10- y 1nm6 no -produccion -8.724 contra masivo -8.713, ganancia -0.011-. La union con los 48 de MF-29-EMP da 4 de 50 = 0.08, que por la regla heredada SIN TOCAR -<0.10 OBJETIVO- es OBJETIVO. El caso de borde que motivo escribir este prerregistro NO se materializo: habria hecho falta que los DOS mejorasen para dar 5 de 50 = 0.1000 y caer en MIXTO. La lectura de MF-29-EMP no cambia y aquel NO se re-sella: queda leido sobre 48 con su limitacion declarada, y esto es una extension con registro propio, como REC-08-EXT o FEP-02-EXT. GO porque el experimento entrego la cantidad primaria preregistrada sobre la cohorte completa, con el unico cambio de protocolo declarado antes -el plazo- y sin mover ningun umbral despues de mirar. Limites: el brazo de produccion se reuso sin recomputar, tal como se declaro; los tiempos son orientativos porque el servidor puede estar compartido; y esto no certifica optimalidad global, MF-29 sigue ABIERTO. Artefactos producidos en el contenedor del servidor y descargados con sha256 verificado contra el remoto; el hash del runner coincide con el sellado en MF-29-EMP-EXT-PRE tanto en local como en el servidor.

Métricas registradasRecorded metrics

tipo
extension de cobertura de MF-29-EMP con regla de lectura preregistrada
duration_seconds
132221.05

ReproducibilidadReproducibility

commit
3bb30935f8 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
22 de agosto de 2026August 22, 2026
duraciónduration
36 h 44 min
complejoscomplexes
2
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-11Conservar todas las aguas del receptor -la politica declarada en docs/51- cambia el resultado del docking de novo. Puede BLOQUEAR la cuenca nativa, como REC-09 vio sobre el scoring del cristal, o puede GUIAR, si un agua estructural que media un puente de hidrogeno es parte del sitio y quitarla deja un bolsillo que no existe. Ninguna de las dos cosas esta medida hoy.InconclusoInconclusiven=116

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
InconclusoInconclusive · Ejecutado y declarado sin conclusión. No se reclasifica a posteriori.Executed and declared without a conclusion. It is not reclassified afterwards.
Decisión del manifestManifest decision
INCONCLUSIVE
HipótesisHypothesis
Conservar todas las aguas del receptor -la politica declarada en docs/51- cambia el resultado del docking de novo. Puede BLOQUEAR la cuenca nativa, como REC-09 vio sobre el scoring del cristal, o puede GUIAR, si un agua estructural que media un puente de hidrogeno es parte del sitio y quitarla deja un bolsillo que no existe. Ninguna de las dos cosas esta medida hoy.
Criterio prerregistradoPre-registered criterion
PRIMARIA: cobertura del oraculo pareada sobre los 116, con b = complejos donde SIN cubre y CON no, y c = donde CON cubre y SIN no. McNemar exacto bilateral de estadistica_fnd04. TRES LECTURAS ESCRITAS ANTES: (1) p<0.05 con b>c => QUITARLAS MEJORA, la politica de docs/51 cambia y el coste de regenerar queda justificado; (2) p<0.05 con c>b => CONSERVARLAS MEJORA, y la politica queda confirmada POSITIVAMENTE, que hoy no lo esta -hoy solo esta declarada-; (3) p>=0.05 => SIN DIFERENCIA DETECTABLE, la politica se mantiene por inercia y se declara el limite de potencia, sin leerlo como equivalencia. EFECTO MINIMO DETECTABLE DECLARADO ANTES (seccion 20.9): si c=0, McNemar exacto exige b>=6 para p<0.05 (2*0.5^6=0.031); con discordancia realista del 20% el MDE pareado con n=116 es de 11.3 puntos porcentuales, unos 13 complejos netos, y con discordancia del 10% baja a 8.0 puntos. Diferencias menores NO son resolubles con esta cohorte y se reportaran como no concluyentes, nunca como tendencia -leccion de RS-14, que descubrio su limite de resolucion despues de ejecutar-. SECUNDARIO descriptivo y sin gate: la misma tabla sobre el top-1, que es lo que produccion entrega pero es mas ruidoso. PROHIBIDO: leer SIN_DIFERENCIA_DETECTABLE como equivalencia; adoptar el brazo SIN si sale QUITARLAS MEJORA, porque lo que eso autoriza es abrir la comparacion contra politicas intermedias -filtrar por B-factor, ocupancia o enterramiento- que aqui no se evaluan; leer esto como medicion de cobertura alcanzable, porque usa UN SOLO conformero y MF-33 midio que conf0.flex solo convierte 12 de 33 contra 26 del ensemble.
ProtocoloProtocol
Ver prerregistro sellado REC-11-PRE, anterior a esta corrida y con el hash del script. Intervencion pareada, una sola variable. Cohorte: los 116 de train. Ligando conf0.flex.pdbqt FIJO y el mismo en los dos brazos, misma caja de 25 A, exhaustiveness=8, num_modes=9 y las mismas cinco semillas {42,1,2,3,4} del brazo de produccion de MF-29-EMP. Brazo CON: rec.pdbqt tal cual, la politica actual. Brazo SIN: el mismo receptor sin ningun residuo de agua (HOH/WAT/DOD), la politica alternativa. LO UNICO QUE CAMBIA ES EL RECEPTOR; el ligando es identico, asi que la penalizacion torsional se cancela en toda comparacion -leccion de MF-29-EMP-COR aplicada por diseno-. Se quitan TODAS las aguas y no solo las que chocarian, porque en produccion no existe una pose de referencia con la que decidir cuales estorban: esa asimetria es lo que hace que esto no sea REC-09 otra vez. Se mide por brazo el ORACULO -mejor rmsd_pose_pocket entre las poses de las cinco semillas- y el TOP-1 -rmsd de la pose de mejor score-. Contenedor moldesign-lab del servidor. Script: scripts/run_rec11_aguas_denovo.py.
Razón de la decisiónReason for the decision
Cohorte completa: n_ok 116 de 116, cero fallos, 61.27 CPU-h -31.04 el brazo CON y 30.23 el SIN- en 30.8 h de pared. La cantidad primaria preregistrada -cobertura del oraculo pareada- da CON 94 de 116 = 0.8103 y SIN 96 de 116 = 0.8276, con 18 discordantes (0.1552): b -gana SIN- = 10 y c -gana CON- = 8. McNemar exacto bilateral p = 0.814529. Cae en la rama (3) de las tres lecturas escritas antes de mirar: SIN_DIFERENCIA_DETECTABLE. INCONCLUSIVE y no GO porque esa rama es justamente la que el gate reserva para 'no se distingue': el prerregistro PROHIBE leerla como equivalencia y obliga a declarar el limite de potencia, que al n disponible es de 9.92 pp -unos 11 complejos netos-. Es el mismo criterio con que se sellaron REC-09 y MF-13 con lectura MIXTO. Consecuencia operativa: la politica de docs/51 -conservar todas las aguas- se mantiene, ahora con su limite de resolucion medido y no solo declarada; y sigue SIN estar confirmada positivamente, que era la rama (2) y no salio. El secundario top-1, descriptivo y sin gate, apunta en direccion CONTRARIA al primario -cubiertos CON 59 contra SIN 50, b=12, c=21, p=0.162756-: no es significativo, no tiene gate, y no se cita como evidencia en ninguna direccion. Contexto medido: delta del oraculo mediano -0.021 A, y una mediana de 156 atomos de agua quitados por receptor con rango de 0 a 2279. Dato conectado: 1fkh -el caso que docs/51 usa como demostracion del bloqueo, +2.550 a -10.369 kcal/mol quitando dos aguas- esta entre los 10 donde quitarlas gana tambien en de novo; es un caso, no una tendencia. Limites declarados: un solo conformero, asi que mide el efecto de las aguas a conformero igualado y NO la cobertura alcanzable -MF-33 midio que conf0.flex solo convierte 12 de 33 contra 26 del ensemble-; quitarlas todas no es la unica alternativa y las politicas intermedias -B-factor, ocupancia, enterramiento- no se evaluan aqui; no toca ningun artefacto sellado. Artefactos producidos en el contenedor del servidor y descargados con sha256 verificado contra el remoto; el hash del runner coincide con el sellado en REC-11-PRE tanto en local como en el servidor.

Métricas registradasRecorded metrics

tipo
intervencion pareada con regla de lectura y MDE preregistrados
duration_seconds
110736.06
n_complejos
116
n_ok
116

ReproducibilidadReproducibility

commit
3bb30935f8 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
22 de agosto de 2026August 22, 2026
duraciónduration
30 h 46 min
complejoscomplexes
116
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-B-RET-R1-PRELa repeticion completa del brazo B MF-33, con retencion forense, reproduce su oraculo sellado y permite distinguir ganancia de generacion de ganancia entregada por score Vina.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La repeticion completa del brazo B MF-33, con retencion forense, reproduce su oraculo sellado y permite distinguir ganancia de generacion de ganancia entregada por score Vina.
Criterio prerregistradoPre-registered criterion
G0: 48/48 sin fallos; G1: oraculo ENSEMBLE reproduce B sellado dentro 0.001A en >=95%; primario McNemar top1/top5/oraculo con lectura exacta de MF-33-B-RET-PRE.
ProtocoloProtocol
Repeticion tecnica completa de 48 complejos: exh8, 9 modos, seed42, caja25A, cpu1; sin rescoring; retencion PDBQT/log/per-pose/checkpoint.
Razón de la decisiónReason for the decision
Preregistro técnico sellado: repetición completa de 48 complejos con protocolo y gate del contrato padre, reteniendo evidencia por pose y permitiendo reanudación sin sobrescribir el parcial.

ReproducibilidadReproducibility

commit
8ac7950802 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
22 de agosto de 2026August 22, 2026
hashes SHA-256
7
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-B-RET-PARTIALEl resultado parcial de MF-33-B-RET puede preservarse como evidencia de ejecucion incompleta sin interpretacion cientifica.InconclusoInconclusive

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
InconclusoInconclusive · Ejecutado y declarado sin conclusión. No se reclasifica a posteriori.Executed and declared without a conclusion. It is not reclassified afterwards.
Decisión del manifestManifest decision
INCONCLUSIVE
HipótesisHypothesis
El resultado parcial de MF-33-B-RET puede preservarse como evidencia de ejecucion incompleta sin interpretacion cientifica.
Criterio prerregistradoPre-registered criterion
INCONCLUSIVE obligatorio: n=43/48 y ausencia de retencion por-pose/raw impiden evaluar el gate preregistrado.
ProtocoloProtocol
Snapshot inmutable del output local previo; no reejecutar, completar ni derivar una decision desde el parcial.
Razón de la decisiónReason for the decision
Snapshot forense de 43/48 registros: sin cinco PIDs y sin datos por-pose/geometria cruda, no permite aplicar el gate de MF-33-B-RET-PRE. Se preserva sin inferencia; MF-33-B-RET-R1 es la unica repeticion valida.

ReproducibilidadReproducibility

commit
8ac7950802 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
22 de agosto de 2026August 22, 2026
hashes SHA-256
5
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-ORDEl orden real atenúa la desviación en vez de crearlaHallazgoFindingArtículoPapern=116

conf0 es exactamente un confórmero medio: rango 0.503 contra 0.5 esperado. Y sólo el 2.3% de los órdenes aleatorios da un chi² tan pequeño como el real. La explicación que yo mismo había elevado a más plausible se cae con dos contrastes.

MF-33-EXT-MOD observó que la distribución del primer acierto —cuántos confórmeros hay que dockear hasta encontrar uno que cubra— se desvía de una geométrica homogénea. Hay más complejos de los esperados que aciertan al primer intento.

Una desviación así admite dos explicaciones muy distintas. Puede ser heterogeneidad entre complejos: unos son fáciles y otros refractarios, y mezclar dos poblaciones rompe la geométrica. O puede ser mucho más aburrido: que el orden no sea intercambiable, que conf0 sea el primero que ETKDG genera y resulte sistemáticamente mejor que sus hermanos.

En el registro de MF-33-EXT-MOD llegué a llamar a la segunda «la explicación más simple y más probable del exceso en k=1». Este experimento existe para ponerla a prueba, y la falsifica.

Un re-análisis exacto, sin recomputar nada

Cada confórmero se dockeó independientemente con la misma semilla y su rmsd_min está guardado por separado. Eso hace que permutar el orden sea una re-lectura exacta, no una simulación: los mismos números, leídos en otro orden.

Tres contrastes, declarados en MF-33-ORD-PRE antes de correr.

Contraste 1 — conf0 no es especial

Rango normalizado medio de conf0 entre los K de su complejo (n=109)0.503
Esperado bajo intercambiabilidad0.500
z0.116
p0.908

conf0 es exactamente un confórmero medio. La idea de que el primero de ETKDG tuviera ventaja intrínseca no tiene ningún apoyo.

Contraste 2 — la desviación sobrevive al orden, y en la dirección contraria

Diez mil permutaciones del orden, recalculando el chi² con el procedimiento idéntico al de MF-33-EXT-MOD:

chi² observado11.03
Mediana de la nula por permutación25.14
p95 de la nula39.33
p de permutación0.9773

Sólo un 2.3% de los órdenes aleatorios da un chi² tan pequeño o menor que el real.

Léase despacio: si el exceso en k=1 fuese artefacto de haber puesto primero un confórmero privilegiado, randomizar debería acercar la distribución a la geométrica. Ocurre lo contrario. El orden real atenúa la desviación en vez de crearla.

Eso permite retirar el efecto de posición con seriedad.

Por qué esto NO establece la heterogeneidad

El prerregistro lo prohíbe expresamente, y la razón es estructural: la permutación conserva el multiconjunto de RMSDs de cada complejo. La hipótesis nula ya incluye toda la heterogeneidad entre complejos. Este contraste no la pone a prueba — sólo pone a prueba el orden.

La formulación correcta es que la heterogeneidad entre complejos sigue siendo una explicación plausible de la desviación, no la explicación en pie por descarte. Quedan sin separar la dependencia entre confórmeros, la heterogeneidad en el número de confórmeros, la geometría de los estados generados, las diferencias entre bolsillos, la interacción confórmero-receptor y la estructura de orden posterior. Establecer un componente refractario seguiría exigiendo modelos de mezcla, que aquí no se ajustan.

Y queda una observación sin explicar, declarada como tal: que el chi² observado sea menor que el de casi todos los órdenes aleatorios sugiere alguna estructura en el orden que ETKDG genera. No está caracterizada y no se usa para nada.

Contraste 3 — y la medición que no se buscaba

El conjunto de los nueve nunca cubiertos es invariante al orden, verificado en 200 permutaciones. Es invariante por construcción —depende del conjunto completo de candidatos, no de en qué orden se miren— y se verifica de todas formas, porque convierte una afirmación teórica en un hecho comprobado.

Sobre los mismos datos apareció algo que no se buscaba, y que cambia cómo hay que pensar una política de parada. Con P(G1) = m/K, donde m es cuántos confórmeros cubren:

Complejos
P(G1) ≥ 0.80 — casi siempre aciertan al primero64
0.20 < P(G1) < 0.80 — zona inestable36
P(G1) ≤ 0.207

De los 107 cubiertos, 43 —el 40.2%— pueden cambiar de clase G1↔G2 según el orden.

G1 y G2 no son propiedades del complejo: son propiedades del par complejo-orden. G3 sí es propiedad del complejo, porque depende del conjunto completo de candidatos generados.

La consecuencia para el diseño de una política de parada es directa, y no se buscaba: una política no debe intentar aprender que un complejo *es* G1, porque no lo es. La pregunta correcta es secuencial —dado lo observado hasta ahora, ¿cuál es la probabilidad de que más inicializaciones aporten una cuenca útil nueva?— mientras que G3 plantea otra distinta: ¿hay señales de que seguir muestreando ataque el mecanismo equivocado?

Son STOP_SUCCESS contra CONTINUE contra ABSTAIN/REVIEW_INPUT: las mismas primitivas a las que llegó el análisis de coste por otra vía.

Límites

  • **No toca la cobertura de MF-33-EXT**, que tampoco depende del orden.
  • No ajusta modelos de mezcla. Retira una explicación alternativa; no instala la otra.
  • La permutación asume intercambiabilidad bajo la nula — que es la hipótesis contrastada, no un supuesto del método.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La desviacion de la distribucion del primer acierto respecto a una geometrica homogenea que midio MF-33-EXT-MOD esta producida por el ORDEN NO INTERCAMBIABLE de los conformeros -conf0 es el primero de ETKDG y puede ser sistematicamente mejor- y no requiere heterogeneidad entre complejos.
Criterio prerregistradoPre-registered criterion
PRIMARIO: p_permutacion del chi2 observado contra la nula bajo orden intercambiable. p_perm<0.05 LA DESVIACION ERA EL ORDEN; p_perm>=0.05 LA DESVIACION SOBREVIVE AL ORDEN. El contraste del rango de conf0 se reporta siempre. PROHIBIDO leer p_perm>=0.05 como que la heterogeneidad queda ESTABLECIDA.
ProtocoloProtocol
Ver prerregistro MF-33-ORD-PRE, sellado antes de correr. RE-ANALISIS PURO SIN COMPUTO DE DOCKING: cada conformero se dockeo independientemente con la misma semilla y su rmsd_min esta guardado por separado, asi que permutar el orden es una re-lectura EXACTA. Tres contrastes: rango de conf0 entre sus K conformeros; 10000 permutaciones del orden recalculando el chi2 con el procedimiento identico al de MF-33-EXT-MOD; y verificacion de invariancia del conjunto nunca cubierto. Semilla 42.
Razón de la decisiónReason for the decision
LA HIPOTESIS QUEDA FALSIFICADA EN LA DIRECCION DECLARADA, y la explicacion que yo mismo habia elevado a mas plausible se cae con dos contrastes independientes. CONTRASTE 1 - CONF0 NO ES ESPECIAL. Su rango normalizado medio entre los K conformeros del propio complejo es 0.503 contra 0.5 esperado bajo intercambiabilidad: z=0.116, p=0.908. conf0 es EXACTAMENTE UN CONFORMERO MEDIO. La idea de que el primer conformero de ETKDG tuviera ventaja intrinseca -que en MF-33-EXT-MOD llegue a llamar la explicacion mas simple y mas probable del exceso en k=1- no tiene ningun apoyo. CONTRASTE 2 - LA DESVIACION SOBREVIVE AL ORDEN, y en la direccion contraria a la esperada: chi2 observado 11.03 contra una nula por permutacion con mediana 25.14 y p95 39.33, p_perm=0.9773. Solo un 2.3% de los ordenes aleatorios dan un chi2 tan pequeno o menor que el real. Es decir, EL ORDEN REAL ATENUA la desviacion en vez de crearla: si el exceso en k=1 fuese artefacto de haber puesto primero un conformero privilegiado, randomizar deberia acercar a la geometrica, y ocurre lo contrario. Eso permite retirar el efecto de posicion con seriedad. POR QUE ESO NO ESTABLECE LA HETEROGENEIDAD, y el prerregistro lo prohibe expresamente: la permutacion CONSERVA el multiconjunto de rmsds de cada complejo, de modo que la nula ya incluye toda la heterogeneidad entre complejos. Este contraste NO la pone a prueba: solo pone a prueba el orden. La formulacion correcta es que la heterogeneidad entre complejos sigue siendo una explicacion PLAUSIBLE de la desviacion, no la explicacion en pie por descarte: quedan sin separar la dependencia entre conformeros, la heterogeneidad en el NUMERO de conformeros, la geometria de los estados generados, las diferencias entre bolsillos, la interaccion conformero-receptor y la estructura de orden posterior. Establecer un componente refractario seguiria exigiendo modelos de mezcla que aqui no se ajustan. OBSERVACION SIN EXPLICAR, declarada como tal: que el chi2 observado sea MENOR que el de casi todos los ordenes aleatorios sugiere alguna estructura en el orden que ETKDG genera, no caracterizada y no usada para nada. CONTRASTE 3 - C11 ES INVARIANTE, VERIFICADO en 200 permutaciones. MEDICION ANADIDA SOBRE LOS MISMOS DATOS, que cuantifica por que C11 pesa mas que la separacion G1/G2: con P(G1) = m/K, donde m es el numero de conformeros que cubren, 64 complejos tienen P(G1)>=0.80, 36 caen en la zona inestable 0.20<P(G1)<0.80 y 7 tienen P(G1)<=0.20. DE LOS 107 CUBIERTOS, 43 -EL 40.2%- PUEDEN CAMBIAR DE CLASE G1<->G2 SEGUN EL ORDEN. G1 y G2 no son propiedades del complejo sino del PAR complejo-orden; G3 es propiedad del conjunto completo de candidatos generados y no depende del orden. CONSECUENCIA PARA LA POLITICA DE PARADA, que no se buscaba y aparece igual: una politica no debe intentar aprender que un complejo ES G1, porque no es una propiedad intrinseca. La pregunta correcta es secuencial -dado lo observado, cual es la probabilidad de que mas inicializaciones aporten una cuenca util nueva- mientras que G3 plantea otra distinta: hay senales de que seguir muestreando ataque el mecanismo equivocado. Son STOP_SUCCESS contra CONTINUE contra ABSTAIN/REVIEW_INPUT, las mismas primitivas a las que llego el analisis de coste por otra via. LIMITES: no toca la cobertura de MF-33-EXT, que tampoco depende del orden; no ajusta modelos de mezcla; la permutacion asume intercambiabilidad bajo la nula, que es la hipotesis contrastada y no un supuesto.

Métricas registradasRecorded metrics

analisis_id
MF-33-ORD
tipo
re-analisis por permutacion, sin computo de docking
n_complejos
116
permutaciones
10000
semilla
42

ReproducibilidadReproducibility

commit
9fcb6f8919 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
21 de agosto de 2026August 21, 2026
complejoscomplexes
116
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-ORD-PRELa desviacion de la distribucion del primer acierto respecto a una geometrica homogenea que midio MF-33-EXT-MOD (chi2=11.04, gl=3, p=0.026) esta producida por el ORDEN NO INTERCAMBIABLE de los conformeros -conf0 es el primero de ETKDG y puede ser sistematicamente mejor- y no requiere heterogeneidad entre complejos para explicarse.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La desviacion de la distribucion del primer acierto respecto a una geometrica homogenea que midio MF-33-EXT-MOD (chi2=11.04, gl=3, p=0.026) esta producida por el ORDEN NO INTERCAMBIABLE de los conformeros -conf0 es el primero de ETKDG y puede ser sistematicamente mejor- y no requiere heterogeneidad entre complejos para explicarse.
Criterio prerregistradoPre-registered criterion
PRIMARIO, contraste (2): p_permutacion del chi2 observado contra la distribucion nula bajo orden intercambiable. DOS LECTURAS ESCRITAS ANTES: p_perm < 0.05 => LA DESVIACION ERA EL ORDEN, y C12 se reformula porque la desviacion proviene de la posicion de conf0 y no de heterogeneidad demostrada; p_perm >= 0.05 => LA DESVIACION SOBREVIVE AL ORDEN y la heterogeneidad entre complejos pasa a ser la explicacion en pie. El contraste (1) se reporta SIEMPRE, gane quien gane el (2), porque un conf0 con ventaja medida es un hecho de interes propio para el protocolo. PROHIBIDO: leer un p_perm >= 0.05 como que la heterogeneidad esta ESTABLECIDA -solo retira una explicacion alternativa, y establecer un componente refractario exigiria ajustar modelos de mezcla que aqui no se ajustan-; tocar C11, que es invariante por construccion y cuyo contraste (3) solo verifica; tocar la cobertura de MF-33-EXT, que tampoco depende del orden.
ProtocoloProtocol
RE-ANALISIS PURO, SIN COMPUTO DE DOCKING. MF-33-EXT guarda el rmsd_min de cada conformero por separado en corridas[], para los 116. Cada conformero se dockeo independientemente con la misma semilla, asi que su resultado NO depende del orden; el orden solo afecta al minimo acumulado y por tanto al indice del primer acierto. Permutar el orden es una RE-LECTURA EXACTA de los mismos datos, no una simulacion. Tres contrastes: (1) rango de conf0 entre sus K conformeros ordenados por rmsd_min, que bajo intercambiabilidad es uniforme con media normalizada 0.5; (2) 10000 permutaciones del orden por complejo, recalculando el primer acierto y el mismo chi2 contra la geometrica homogenea, con el procedimiento identico al de MF-33-EXT-MOD; (3) verificacion explicita de que el conjunto de nunca cubiertos es invariante bajo permutacion. Semilla 42. Script: scripts/analisis_mf33ord_permutaciones.py.
Razón de la decisiónReason for the decision
Prerregistro sellado con el hash del script ANTES de correrlo. Existe porque MF-33-EXT-MOD dejo dos explicaciones sin separar para su bloque 4, y una de ellas -el orden no intercambiable- resulta resoluble SIN COMPUTO NUEVO, cosa que no se advirtio al disenar aquel analisis. La clave es que cada conformero se dockeo independientemente y su rmsd_min esta guardado por separado en los 116 complejos: el orden solo entra en el minimo acumulado, asi que permutarlo es una re-lectura EXACTA y no una simulacion. Se declara de antemano el error de interpretacion mas probable y se prohibe: que un p_perm alto se lea como que la heterogeneidad queda ESTABLECIDA. No lo estaria; solo se habria retirado una explicacion alternativa, y afirmar un componente refractario exigiria ajustar modelos de mezcla -beta-geometrico o hurdle- que este analisis no ajusta y que el paper principal no necesita. Se declara tambien que el contraste (1) se reporta gane quien gane el (2): si conf0 tiene ventaja medida sobre un conformero al azar del mismo complejo, eso es un hecho del protocolo que interesa aunque no explique la curva.

ReproducibilidadReproducibility

commit
9fcb6f8919 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
21 de agosto de 2026August 21, 2026
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-EXT-MODSobre los 116 se pueden contestar tres cosas que los 33 no permitian: si la ventaja del ensemble es general o esta concentrada en el estrato dificil; si los seis predictores de MF-33-DOSIS replican y sobreviven en los 68 fuera de muestra; y si el fenomeno es de DOSIS o de ACIERTO.InconclusoInconclusiven=116

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
InconclusoInconclusive · Ejecutado y declarado sin conclusión. No se reclasifica a posteriori.Executed and declared without a conclusion. It is not reclassified afterwards.
Decisión del manifestManifest decision
INCONCLUSIVE
HipótesisHypothesis
Sobre los 116 se pueden contestar tres cosas que los 33 no permitian: si la ventaja del ensemble es general o esta concentrada en el estrato dificil; si los seis predictores de MF-33-DOSIS replican y sobreviven en los 68 fuera de muestra; y si el fenomeno es de DOSIS o de ACIERTO.
Criterio prerregistradoPre-registered criterion
Bloque 1 con umbrales de 5 y 15 pp fijados antes: A concentrado, B general, C grande e impredecible. Bloque 2 es REPLICACION y la conclusion se toma del bloque 3. Bloque 3 es la regla de decision. Bloque 4: ACIERTO si la observada no se separa de la geometrica y el primer acierto no se concentra en 1; DOSIS si crece por encima; HETEROGENEIDAD si se queda por debajo.
ProtocoloProtocol
Ver prerregistro MF-33-EXT-MOD-PRE, sellado con MF-33-EXT por la mitad (10 de 116). Sin computo nuevo. Bloque 1: curva_oraculo[0] es el resultado de un solo conformero y el oraculo final el del ensemble, comparacion pareada. Bloque 2: los seis predictores sobre los 116, declarados REPLICACION. Bloque 3: los cinco prospectivos sobre los 68 que no estan en la cohorte de 48. Bloque 4: primer_dock_que_cubre contra una geometrica con p por maxima verosimilitud. Script: scripts/analisis_mf33ext_moderadores.py.
Razón de la decisiónReason for the decision
TRES BLOQUES DAN RESULTADO Y UNO FALLO EN SU EJECUCION; por eso INCONCLUSIVE. BLOQUE 1, ESCENARIO B - EFECTO GENERAL. Cobertura single 0.6897 contra ensemble 0.9224 sobre los 116: delta de 23.28 pp, por encima del umbral de 15 fijado antes de ver dato alguno. En COLOCACION el delta es de 42.42 pp (0.3636 -> 0.7879). El efecto NO esta concentrado en el estrato dificil: es del metodo. La regeneracion de la cohorte queda justificada por la regla preregistrada. BLOQUE 3 NO SE EJECUTO, y es un defecto de mi analisis. Cuatro de los cinco predictores prospectivos tienen n=0 en los 68 fuera de muestra -torsdof, rot_bonds, diversidad, n_heavy-, porque el script los lee de MF-33-DOSIS, que solo cubrio los 48. El bloque que iba a ser la unica regla de decision con valor prospectivo evaluo UN predictor de cinco, y no porque los otros fallaran sino porque nunca se midieron ahi. El unico que corrio, n_conformeros, ESTA CONFUNDIDO POR CONSTRUCCION en este contraste: SINGLE usa 1 conformero y ENSEMBLE usa K, asi que el beneficio esta acotado por K -con K=1 los dos brazos son el mismo objeto-. El prerregistro lo declaro no circular heredando el diseno de MF-33-DOSIS, donde K si estaba igualado entre brazos; ese traslado fue un error mio. Da rho=0.538 p=2e-06, y rho=0.4766 p=6e-05 excluyendo los 3 con K=1, asi que el confundido no lo explica entero, pero NO autoriza a declararlo candidato a politica adaptativa. Arreglo anotado: calcular los cuatro restantes sobre los 116, que es parseo y RDKit sin docking. BLOQUE 4 - LA DISTRIBUCION DEL PRIMER ACIERTO SE DESVIA DE UNA GEOMETRICA HOMOGENEA, Y ESO ES TODO LO QUE SE PUEDE AFIRMAR. Contraste formal anadido tras el sellado inicial, porque la version anterior de esta razon afirmaba 'dos poblaciones mezcladas, una que el primer conformero resuelve y otra con p cercano a cero'. ESA AFIRMACION SE RETIRA: inventaba un mecanismo que estos datos no identifican. LO MEDIDO: chi-cuadrado sobre la distribucion del primer acierto entre los 107 cubiertos da chi2=11.04 con 3 gl y p=0.026, asi que la geometrica homogenea se rechaza, pero el efecto es MODERADO. Y la mayor contribucion al rechazo es el EXCESO EN k=1 -80 observados contra 64.9 esperados-, que tiene una explicacion mucho mas simple que la heterogeneidad: conf0 NO ES UNA EXTRACCION INTERCAMBIABLE, es el primer conformero de ETKDG y puede ser sistematicamente mejor que uno al azar. El segundo contraste, complejos nunca cubiertos, da 9 observados contra 4.36 esperados bajo la geometrica con el K propio de cada complejo: razon de 2x, unas 2.2 desviaciones, sugerente y no decisivo. FORMULACION RESISTENTE, y es la que va al paper: 'la distribucion del primer acierto se desvia sustancialmente de un proceso geometrico homogeneo, de forma compatible con una fuerte heterogeneidad entre complejos en la probabilidad de rescate conformacional'. Eso dice mucho sin inventar el mecanismo. EXPLICACIONES ALTERNATIVAS QUE ESTOS DATOS NO SEPARAN, y se declaran: p_i distinta entre complejos; dependencia entre conformeros; orden no intercambiable -que es justo lo que el exceso en k=1 sugiere-; una mezcla facil/dificil/refractario; o realmente un componente con p cercano a cero. Afirmar especificamente una mezcla de dos poblaciones exigiria ajustar un modelo hurdle o beta-geometrico, que no se ha hecho y que el paper principal no necesita. LO QUE SI SE SOSTIENE, y por convergencia y no por el modelo: NUEVE complejos no se cubren con ningun K -1afl, 1bq4, 1d7i, 1d9i, 1dgm, 1elb, 1ew8, 1fkh, 1jq8-, los SIETE de MF-33-CRUCES estan todos dentro y CUATRO de los seis cristales absurdos de REC-09 tambien. Tres lineas independientes senalan el mismo conjunto. Eso es evidencia convergente sobre QUE complejos son, independiente de que modelo genere la curva. LIMITES: el bloque 2 es replicacion y no descubrimiento; el orden de conformeros es por indice y no por calidad, que es a la vez una decision de diseno y una explicacion alternativa de la desviacion observada.

Métricas registradasRecorded metrics

analisis_id
MF-33-EXT-MOD
tipo
analisis preregistrado ANTES de que MF-33-EXT cerrara; hash sellado en MF-33-EXT-MOD-PRE
n_complejos
116
n_fuera_de_muestra
68

ReproducibilidadReproducibility

commit
22193cfdfc (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
21 de agosto de 2026August 21, 2026
complejoscomplexes
116
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-EXTEl denominador estaba por debajo del listón que el propio programa se pusoHallazgoFindingArtículoPapern=116

Con generador flexible, la cobertura de los 116 sube a 0.9224 y pasa el listón de 0.90 que MF-02D falló con 0.7931. Nueve complejos no se cubren con ningún presupuesto, y están enriquecidos en sistemas que otro diagnóstico ya había marcado.

Media docena de conclusiones del programa usan la misma referencia: el conjunto de poses candidatas de la cohorte de entrenamiento. Cobertura del oráculo, techo del selector, atribución de fallos — todas dividen por él.

RC-F0-V2-EXT midió que el 93.9% de ese conjunto viene del protocolo rígido. Y MF-33 acababa de medir que dockear flexible los mismos confórmeros cambia la cobertura del estrato difícil de 1 a 26 sobre 33.

Si eso vale sobre los 48, el denominador de todo lo demás está mal puesto.

Este experimento lo mide sobre los 116 de entrenamiento: mismo método que el brazo B de MF-33, distinto alcance. Todos los conf*.flex.pdbqt del ensemble ETKDG ya en disco, con los parámetros del brazo de control de MF-28 —exh=8, num_modes=9, semilla 42, caja de 25 Å—. Los confórmeros no se regeneran. 12.76 h de reloj con 10 workers, unas 107 CPU-h.

Qué salió

El listón no se inventó aquí: es el **G5 de MF-02D, heredado tal cual. Y la línea base es 0.7931**, la métrica de pocket, que es la primaria de MF-02D y la que falló su gate.

Cobertura del oráculo ≤2 Å
Base rígida, conjunto v20.7931
Generador flexible, este experimento107/116 = 0.9224
Listón heredado del G5 de MF-02D0.90

+12.93 puntos porcentuales, y por encima del listón. La lectura preregistrada es EL GENERADOR FLEXIBLE ALCANZA EL LISTÓN.

Lo que eso significa para el registro, dicho sin adornos: **MF-02D está sellado NO_GO precisamente porque su G5 dio 0.7931 y no alcanzó**. Mismo listón, misma cohorte, misma métrica, cambiando sólo la codificación del ligando: 0.9224.

Por estrato:

EstratonCubiertosCoberturaOráculo mediano
COLOCACION33260.78791.184 Å
CONTROL15151.00001.010 Å
RESTO68660.97060.889 Å

Una comprobación de consistencia que no estaba planificada y salió perfecta: en COLOCACION da 26 de 33, exactamente el brazo B de MF-33 sobre esos mismos complejos. Mismo protocolo y misma semilla debían reproducir, y reproducen.

La curva, que es el secundario

Cobertura acumulada según cuántos confórmeros se dockean, en orden de índice:

K1234692530
Cubiertos8094101103104106107107
Cobertura0.6900.8100.8710.8880.8970.9140.9220.922

Los tres primeros confórmeros compran 21 complejos. Los veintisiete siguientes compran seis.

Que la curva sea así de plana a partir de K≈9 dice algo sobre el coste: si hubiera que elegir un presupuesto, está mucho antes de 30. Pero no dice que la ventaja del ensemble sea presupuesto — eso lo midió MF-33-A3, igualando corridas, poses y CPU, y la ventaja sigue en pie. Por eso el titular de este registro es la cobertura final y la curva es descriptiva.

Los nueve que no se cubren con ningún K

1afl, 1bq4, 1d7i, 1d9i, 1dgm, 1elb, 1ew8, 1fkh, 1jq8.

Siete están en la cohorte de 48; dos —1bq4 y 1elb— no.

Aquí hay que corregir una cuenta propia, y es un error que ya cometí antes. La versión anterior de esta lectura hablaba de tres líneas independientes señalando el mismo conjunto. Son dos.

Que los siete no convertidos de MF-33-CRUCES estén todos dentro de este grupo no es convergencia independiente: MF-33-CRUCES define «no convertido» como que el brazo B no alcanza ≤2 Å sobre esos 48, y este experimento reproduce el brazo B exactamente. Ese solape de 7 sobre 7 es reproducción, no evidencia nueva.

La línea genuinamente independiente es REC-09, que midió el scoring del cristal y no el docking:

GruponCaen entre los nueve
Complejos con cristal que puntúa absurdamente mal64 — el 67%
Los demás1105 — el 4.5%

Enriquecimiento 14.7×, Fisher exacto unilateral p = 2.45e-04.

La afirmación defendible, y no más:

Los fallos residuales tras un muestreo conformacional extenso están enriquecidos en complejos señalados de forma independiente por diagnósticos de preparación y puntuación.

Eso argumenta contra el muestreo conformacional adicional como única explicación del conjunto de fallos residuales. No afirma que la preparación cause los nueve fallos, ni niega que otro muestreador pudiera recuperarlos. Dice que esta intervención causal sobre el muestreo llegó prácticamente a su límite, y que los mismos casos siguen apareciendo por otra vía.

Qué justifica y qué no

La regeneración de la cohorte con docking flexible queda justificada por la regla preregistrada. Con la advertencia obvia: justificarla no es ejecutarla. Ejecutarla es un programa con su propio re-sellado y el triaje de todos los consumidores del conjunto actual.

Límites declarados:

  • el oráculo es cota superior de lo alcanzable, no predicción: no evalúa selector, y lo que llega al top-1 es otra cosa —MF-33-TOP1 lo midió, y se atenúa;
  • los confórmeros no se regeneran: si el techo fuese conformacional, esto no lo mueve;
  • parte del techo puede ser preparación y no generador, que es justo lo que sugieren los nueve, y este experimento no los separa.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La cobertura del oraculo del programa esta medida sobre un conjunto de poses que en un 93.9% viene del protocolo RIGIDO. Dockeando FLEXIBLES los mismos conformeros sobre los 116 de train, esa cobertura sube, y el denominador de media docena de conclusiones esta mal puesto.
Criterio prerregistradoPre-registered criterion
PRIMARIA: cobertura = fraccion de los 116 con oraculo <= 2.0 A. LISTON HEREDADO del gate G5 de MF-02D: 0.90. LINEA BASE 0.7931 y NO 0.9310 -MF-02D reporto las dos, pero su primaria es la metrica de pocket y es la que fallo su gate-. DOS LECTURAS: cobertura >= 0.90 EL GENERADOR FLEXIBLE ALCANZA EL LISTON y la regeneracion queda JUSTIFICADA; < 0.90 NO ALCANZA. SECUNDARIO: curva de cobertura contra presupuesto en orden de indice de conformero.
ProtocoloProtocol
Ver prerregistro sellado MF-33-EXT-PRE. Mismo metodo que el brazo B de MF-33, distinto alcance: los 116 de train. Todos los conf*.flex.pdbqt con los parametros del brazo de control de MF-28: exh=8, num_modes=9, seed=42, caja 25 A, --cpu 1. Metrica rmsd_pose_pocket sin alineamiento. Los conformeros NO se regeneran. Corrio en la maquina local con 10 workers, 12.76 h, ~107 CPU-h.
Razón de la decisiónReason for the decision
EL GENERADOR FLEXIBLE ALCANZA EL LISTON: cobertura 107 de 116 = 0.9224, por encima del 0.90 heredado del gate G5 de MF-02D. Linea base rigida 0.7931: +12.93 puntos porcentuales. LO QUE SIGNIFICA PARA EL REGISTRO: MF-02D esta sellado NO_GO precisamente porque su G5 -cobertura con la metrica de pocket, la primaria- dio 0.7931 y no alcanzo el liston. El mismo liston, la misma cohorte y la misma metrica, con generador FLEXIBLE: 0.9224. El material que el programa usa como denominador estaba por debajo del liston que el propio programa se puso. LA REGENERACION DE LA COHORTE QUEDA JUSTIFICADA por la regla preregistrada, con la advertencia de que justificarla no es ejecutarla. COMPROBACION DE CONSISTENCIA NO PLANIFICADA Y PERFECTA: en COLOCACION da 26 de 33, EXACTAMENTE el brazo B de MF-33 sobre esos mismos complejos. Mismo protocolo y semilla, debia reproducir y reproduce. POR ESTRATO: COLOCACION 26/33 = 0.7879 con oraculo mediano 1.184; CONTROL 15/15 = 1.0 con 1.01; RESTO 66/68 = 0.9706 con 0.889. NUEVE COMPLEJOS NO SE CUBREN CON NINGUN K: 1afl, 1bq4, 1d7i, 1d9i, 1dgm, 1elb, 1ew8, 1fkh, 1jq8. Siete estan en la cohorte de 48 y dos -1bq4, 1elb- no. CORRECCION IMPORTANTE SOBRE COMO SE HA CONTADO ESTA CONVERGENCIA, Y ES UN ERROR MIO REPETIDO: la version anterior de esta razon hablaba de TRES lineas independientes senalando el mismo conjunto. SON DOS. Que los siete no convertidos de MF-33-CRUCES esten todos dentro de G3 NO es convergencia independiente: MF-33-CRUCES define no convertido como que el brazo B no alcanza <=2 A sobre esos 48, y G3 dentro de los 48 es que el ensemble de MF-33-EXT no cubre. ES EL MISMO PROTOCOLO SOBRE LOS MISMOS COMPLEJOS, y de hecho MF-33-EXT reproduce el brazo B exactamente -26/33-. Ese solape de 7 sobre 7 es REPRODUCCION, no evidencia nueva. LA LINEA GENUINAMENTE INDEPENDIENTE ES REC-09, que midio el scoring del cristal y no el docking, y su enriquecimiento es fuerte y ahora medido: de los 6 complejos con cristal absurdo, 4 estan en G3 -el 67%- contra 5 de 110 entre los no marcados -el 4.5%-. Enriquecimiento de 14.7x, Fisher exacto unilateral p=2.45e-04. AFIRMACION DEFENDIBLE, y no mas: los fallos residuales tras un muestreo conformacional extenso estan ENRIQUECIDOS en complejos senalados de forma independiente por diagnosticos de preparacion y puntuacion. Eso argumenta contra el muestreo conformacional adicional como UNICA explicacion del conjunto de fallos residuales. NO afirma que la preparacion cause los nueve fallos, ni niega que otro muestreador pudiera recuperarlos: dice que esta intervencion causal sobre el muestreo llego practicamente a su limite y los mismos casos siguen apareciendo por otra via. LIMITES: el oraculo es cota superior de lo alcanzable y no prediccion, no evalua selector; los conformeros no se regeneran; y parte del techo puede ser preparacion y no generador, que es justo lo que sugieren los nueve.

Métricas registradasRecorded metrics

tipo
extension de alcance de MF-33 brazo B con regla de lectura preregistrada
duration_seconds
45942.57
n_complejos
116
n_ok
116

ReproducibilidadReproducibility

commit
22193cfdfc (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
21 de agosto de 2026August 21, 2026
duraciónduration
12 h 46 min
complejoscomplexes
116
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-TOP1La cobertura sube 26.7 puntos y al top-1 llegan 11.2HallazgoFindingArtículoPaperCifras reemplazadasFigures replacedn=116

Cifras reemplazadas. Un defecto detectado después de sellar invalidó las cifras de este registro. MF-33-H-COR las mide de nuevo y las sustituye. Este artefacto no se reescribe ni se re-sella: se conserva tal como quedó, para que la corrección sea auditable.Figures replaced. A defect found after sealing invalidated the figures of this record. MF-33-H-COR measures them again and replaces them. This artifact is not rewritten or re-sealed: it is preserved as it remained, so that the correction is auditable.

De los 31 complejos ganados a nivel de oráculo sobreviven 18 al top-5 y 13 al top-1. La fracción de lo cubierto que se realiza en top-1 baja del 62.9% al 53.0%: el siguiente cuello es la selección.

## ⚠ Defecto detectado después de sellar, corregido en otro registro Las tasas de validez física de este artefacto —8.62% en single y 15.52% en ensemble— están invalidadas y reemplazadas. No medían tensión del ligando dockeado: medían un defecto de la capa que reconstruía los hidrógenos antes de pasar la pose a PoseBusters. [MF-33-H-COR](#) lo midió con los átomos pesados idénticos —desplazamiento máximo 0.0 Å, mismo SMILES canónico, misma carga, mismos enlaces— y las 232 poses top-1 de este experimento pasan de 12.07% a 93.10%: 91.38% en single y 94.83% en ensemble. Todo lo demás de esta ficha sigue en pie sin reservas: RMSD, cobertura del oráculo, top-1, top-5 y la cascada de conversión no dependen de los hidrógenos. Este artefacto queda sellado e inmutable con sus cifras originales, y el corrigendum que las reemplaza queda nombrado al lado.

MF-33 midió que el ensemble de confórmeros sube la cobertura del oráculo. El oráculo es el mejor RMSD entre las poses que el brazo conserva: dice qué hay disponible, no qué se entrega.

Lo que el investigador recibe es el top-1 por score. Y MF-09 había medido, en el estrato difícil, que el top-1 acierta 0 de 33 y el top-20 llega a 2. Con esa distancia entre lo disponible y lo entregado, subir el techo podría no mover nada.

Este experimento mide si el mecanismo llega hasta abajo. Sin cómputo de docking: los conf<i>.out.pdbqt del protocolo congelado están en disco para los 116 de entrenamiento, con sus scores y sus nueve modelos por corrida. Dos brazos pareados: SINGLE con las 9 poses de conf0.out, ENSEMBLE con las K×9 de todos.

Qué salió

McNemar exacto pareado sobre «acierta ≤2 Å», por separado en las tres métricas:

Sobre los 116SingleEnsembleΔb / cp
Oráculo3566+26.72 pp31 / 00.0
Top-53553+15.52 pp20 / 20.000121
Top-12235+11.21 pp13 / 00.000244

Las tres mejoran con significación. Y las tres mejoran cada vez menos.

De los +31 complejos ganados a nivel de oráculo, sobreviven 18 al top-5 —el 58% de la ganancia— y 13 al top-1 —el 42%—.

La atenuación es el resultado

El gate preregistrado da la etiqueta LA_VENTAJA_LLEGA_AL_USUARIO, y esa etiqueta se conserva porque se escribió antes de mirar. Pero no debe usarse como titular: como afirmación científica sobrepasa lo medido.

La formulación publicable es ésta, y es la que hay que usar:

Aunque el muestreo por ensemble aumentó la cobertura del oráculo, la fracción de complejos cubiertos que se realiza en top-1 bajó del 62.9% al 53.0%, ampliando el hueco oráculo-a-top-1 de 13 a 31 complejos.

Los cuatro números son el hecho observado. Están relacionados matemáticamente y la causalidad no está demostrada. La interpretación va aparte y en condicional: aumentar la cobertura de candidatos parece imponer una carga mayor sobre la selección de pose.

Una sutileza que un revisor señalaría, y hay que anticipar. Ese 53.0% no significa que el selector sea peor. El selector del brazo ensemble se enfrenta a un problema distinto —un espacio de candidatos mucho mayor y potencialmente con más cuencas competitivas—, así que la caída de 62.9% a 53.0% no demuestra por sí sola que el algoritmo de ranking se haya degradado intrínsecamente.

Lo que sí demuestra, y basta para identificar la selección como el siguiente cuello:

La capacidad del pipeline de convertir cobertura disponible en top-1 no escala proporcionalmente con el aumento de cobertura.

*(Enmienda del 2026-08-21: la versión anterior de esta lectura decía que mejorar la generación agrava el cuello de selección porque el oráculo sube más rápido que la capacidad de elegir. Eso afirmaba una causalidad que estos datos no establecen, y se retiró.)*

En el estrato difícil no hay señal, y era previsible

COLOCACION (n=33)SingleEnsemble
Top-1, top-5 y oráculo00

Cero en los tres campos para los dos brazos. No es un resultado nulo interesante: el protocolo rígido tiene techo de 1 de 33 en el estrato difícil, según el brazo C de MF-33. Aquí no hay nada que atenuar porque no hay nada que propagar.

La limitación central, declarada en el gate

Estas poses son del protocolo rígido. Las flexibles del brazo B de MF-33 no existen: el runner las escribió en un TemporaryDirectory.

Así que esto no mide el brazo del paper. Mide si el mecanismo llega al selector en el único protocolo cuyas poses sobrevivieron. Contestar la misma pregunta sobre el brazo flexible exigió volver a dockear, y para eso se selló MF-33-B-RET.

Otros límites: se ordena por score de Vina sin rescoring —la cartera RS mide eso aparte—; SINGLE usa conf0 por índice y no por calidad, como el brazo A de MF-33; y el ensemble selecciona sobre un pool K veces mayor, que es el fenómeno y no un confundido.

Qué cierra y qué deja expuesto

Cierra la amenaza T1 del paper a nivel de mecanismo: el efecto no vive exclusivamente en una métrica de oráculo, llega a lo que se entrega.

Deja expuestos dos cuellos posteriores que estaban ocultos detrás del de generación:

  1. Selección — 31 complejos que contienen una solución correcta y no la entregan en top-1, nominalmente identificados en per_complex.jsonl.
  2. Validez física — que aquí se midió mal y se corrigió después. Con las tasas corregidas de MF-33-H-COR el cuello no es el que este artefacto creyó ver, y el residuo real está caracterizado allí.

La razón por la que la validez física entró en este diseño sigue siendo buena aunque su medición fallara: un selector que pase de 35 a 55 entregando poses inválidas no habría mejorado el producto. Optimizar una métrica intermedia sin mirar la física es la forma estándar de mejorar un número y empeorar el resultado.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La ganancia del ensemble de conformeros, que MF-33 midio sobre la COBERTURA DEL ORACULO, llega tambien a lo que el usuario recibe -el top-1 por score-. MF-09 midio top-1 acierta 0/33 y top-20 2/33 en el estrato dificil, asi que subir el techo podria no mover la entrega.
Criterio prerregistradoPre-registered criterion
McNemar exacto pareado sobre acierta <=2 A, por separado en top1, top5 y oraculo. TRES LECTURAS ESCRITAS ANTES: LA VENTAJA LLEGA AL USUARIO si mejora oraculo Y top1 con p<0.05; EL CUELLO SE DESPLAZA A LA SELECCION si mejora oraculo y no top1; SIN EFECTO EN ESTE PROTOCOLO si no mejora el oraculo. LIMITACION CENTRAL DECLARADA: estas poses son del protocolo RIGIDO. Las flexibles del brazo B no existen -run_mf28_roadmap.py las escribio en un TemporaryDirectory-, asi que esto NO mide el brazo del paper: mide si el MECANISMO llega al selector en el unico protocolo cuyas poses sobrevivieron.
ProtocoloProtocol
SIN COMPUTO DE DOCKING. Los conf<i>.out.pdbqt del protocolo congelado estan en disco para los 116 de train con sus scores y 9 modelos por corrida. Dos brazos pareados: SINGLE con las 9 poses de conf0.out, ENSEMBLE con las Kx9 de todos. Por brazo: top1 -rmsd de la pose de mejor score-, top5 -mejor rmsd entre las 5 de mejor score- y oraculo. Se anade pb_valid_fisica de posebusters_metrica sobre el top-1 de cada brazo. Script: scripts/analisis_mf33top1_llega_al_selector.py.
Razón de la decisiónReason for the decision
El gate preregistrado da LA_VENTAJA_LLEGA_AL_USUARIO, y esa etiqueta se conserva porque se escribio antes de mirar, PERO NO DEBE USARSE COMO TITULAR EN TEXTO EXTERNO: como afirmacion cientifica sobrepasa lo medido. La formulacion correcta es que LA GANANCIA EN COBERTURA DEL ORACULO SE PROPAGA SOLO PARCIALMENTE a las predicciones mejor ranqueadas. LA ATENUACION AGUAS ABAJO ES EL RESULTADO: oraculo +26.72 pp (35 -> 66 de 116, b=31 c=0, p=0.0), top-5 +15.52 pp (35 -> 53, b=20 c=2, p=0.000121), top-1 +11.21 pp (22 -> 35, b=13 c=0, p=0.000244). De los +31 complejos ganados a nivel de oraculo sobreviven 18 a top-5 -58% de la ganancia- y solo 13 a top-1 -42%-. FORMULACION PUBLICABLE, SIN CAUSALIDAD, y es la que hay que usar: 'aunque el muestreo por ensemble aumento la cobertura del oraculo, la fraccion de complejos cubiertos que se realiza en top-1 bajo del 62.9% al 53.0%, ampliando el hueco oraculo-a-top-1 de 13 a 31 complejos'. Los cuatro numeros son el hecho observado; estan RELACIONADOS MATEMATICAMENTE y la causalidad NO esta demostrada. La interpretacion se separa y va aparte: 'aumentar la cobertura de candidatos parece imponer una carga mayor sobre la seleccion de pose'. ENMIENDA DEL 2026-08-21, SEGUNDA: la version anterior de esta razon decia que mejorar la generacion AGRAVA el cuello de seleccion PORQUE el oraculo sube mas rapido que la capacidad de elegir. Eso afirmaba causalidad que estos datos no establecen y se retira. SUTILEZA QUE UN REVISOR SENALARA Y HAY QUE ANTICIPAR: 53.0% NO significa que el selector sea peor. El selector del brazo ensemble se enfrenta a un PROBLEMA DISTINTO -espacio de candidatos mucho mayor y potencialmente mas cuencas competitivas-, asi que la caida de 62.9% a 53.0% no demuestra por si sola que el algoritmo de ranking se haya degradado intrinsecamente. Lo que si demuestra, y basta para identificar seleccion como el siguiente cuello: LA CAPACIDAD DEL PIPELINE DE CONVERTIR COBERTURA DISPONIBLE EN TOP-1 NO ESCALA PROPORCIONALMENTE CON EL AUMENTO DE COBERTURA. LO QUE ESTO CIERRA Y LO QUE DEJA EXPUESTO: cierra la amenaza T1 del paper a nivel de mecanismo, porque el efecto no vive exclusivamente en una metrica de oraculo. Y deja expuestos dos cuellos posteriores que quedaban ocultos detras del de generacion: (1) SELECCION, con 31 complejos que contienen una solucion correcta que no llega a top-1 y que estan nominalmente identificados en per_complex.jsonl; (2) VALIDEZ FISICA. Falta contestar T1 sobre el brazo FLEXIBLE, que es el del paper; para eso esta sellado MF-33-B-RET-PRE. EN COLOCACION NO HAY SENAL Y ERA PREVISIBLE: 0 de 33 en los tres campos para ambos brazos, porque el protocolo rigido tiene techo de 1/33 en el estrato dificil segun el brazo C de MF-33. HALLAZGO LATERAL DE PRIMER ORDEN, exploratorio: la validez fisica del top-1 entregado es del 8.62% en single y del 15.52% en ensemble; mas del 84% de lo que el pipeline entrega no pasa PoseBusters, con internal_energy dominando. Importa para no optimizar una metrica intermedia: un selector que pase de 35 a 55 entregando poses invalidas no habria mejorado el producto. LIMITES: protocolo rigido y no flexible; se ordena por score de Vina sin rescoring; SINGLE usa conf0 por indice y no por calidad; el ensemble selecciona sobre un pool K veces mayor, que es el fenomeno y no un confundido.

Métricas registradasRecorded metrics

analisis_id
MF-33-TOP1
tipo
medicion pareada con regla de lectura preregistrada, sin computo de docking
PROTOCOLO
RIGIDO. Las poses flexibles del brazo B de MF-33 no existen: se escribieron en un TemporaryDirectory. Esto NO mide el brazo del paper; mide si el mecanismo llega al selector en el protocolo cuyas poses sobrevivieron.
n_complejos
116
n_ok
116
lectura_preregistrada
LA_VENTAJA_LLEGA_AL_USUARIO

ReproducibilidadReproducibility

commit
38a6bc2e12 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
21 de agosto de 2026August 21, 2026
complejoscomplexes
116
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-B-RET-PRELa ventaja del ensemble flexible que MF-33 y MF-33-A3 midieron sobre la COBERTURA DEL ORACULO llega tambien a lo que el usuario recibe -el top-1 por score-. Si no llega, la diversidad conformacional resuelve el cuello de generacion y lo desplaza al selector, que es una conclusion distinta y reencuadra el paper.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La ventaja del ensemble flexible que MF-33 y MF-33-A3 midieron sobre la COBERTURA DEL ORACULO llega tambien a lo que el usuario recibe -el top-1 por score-. Si no llega, la diversidad conformacional resuelve el cuello de generacion y lo desplaza al selector, que es una conclusion distinta y reencuadra el paper.
Criterio prerregistradoPre-registered criterion
G1 DE CORDURA ANTES DEL PRIMARIO: el oraculo del brazo ENSEMBLE debe reproducir el rmsd_min del brazo B sellado en MF-33 dentro de 0.001 A en >=95% de los complejos. Mismo protocolo, misma semilla, mismo binario: si no reproduce, algo cambio y NADA de lo que sigue se lee. Es la unica forma de saber que este re-run es el mismo experimento y no uno parecido. PRIMARIO: McNemar exacto pareado sobre acierta <=2 A, por separado en top1, top5 y oraculo. TRES LECTURAS ESCRITAS ANTES: (1) LA VENTAJA LLEGA AL USUARIO si el ensemble mejora oraculo Y top1 con p<0.05, y entonces el claim del paper pasa de mejoramos el pool a mejoramos la entrega; (2) EL CUELLO SE DESPLAZA A LA SELECCION si mejora oraculo y NO top1, y entonces la diversidad resuelve el cuello de generacion y lo traslada al selector -este desenlace NO debilita el paper, lo reencuadra, y conecta con la cartera RS y con MF-09-; (3) SIN EFECTO EN LA ENTREGA si no mejora ninguno, y habria que decirlo tal cual. Se reporta ademas el margen de seleccion: complejos con pose buena disponible que el brazo no entrega. PROHIBIDO: ordenar por otra cosa que el score de Vina -el rescoring es cartera RS y meterlo aqui confundiria generacion, seleccion y funcion de puntuacion en un numero-; elegir conf0 por calidad en vez de por indice; reabrir MF-33 o MF-33-A3, cuyas cantidades son de oraculo y siguen como estan.
ProtocoloProtocol
Repite el brazo B de MF-33 cambiando UNA SOLA COSA: registra (score, rmsd_pose_pocket) de cada pose en vez de tirarlas. Cohorte: los 48 de MF-33, la del paper. Todos los conf*.flex.pdbqt con los parametros del brazo de control de MF-28 -de donde MF-33 reuso su brazo B-: exhaustiveness=8, num_modes=9, seed=42, caja 25 A, --cpu 1. Brazos pareados SINGLE (las 9 poses de conf0.flex) y ENSEMBLE (las Kx9 de todos). Se anade pb_valid_fisica de posebusters_metrica sobre el top-1 de cada brazo. Corre en la maquina LOCAL porque posebusters no esta en la imagen moldesign-lab. Coste ~42.6 CPU-h medidos del consumo real del brazo B, unas 4.5 h con 10 workers. NO se re-corre sobre los 116: MF-33-EXT ya lo hace para la cobertura y duplicarlo gastaria 103 CPU-h para una pregunta que se contesta con 42.6 sobre la cohorte del paper. Script: scripts/run_mf33bret_top1_flexible.py.
Razón de la decisiónReason for the decision
Prerregistro sellado con el hash del script ANTES de correr, y antes incluso de que la maquina este libre. Existe porque el paper de MF-33 tiene una amenaza a la validez que un revisor ataca primero y que hoy no esta medida sobre el brazo que el paper defiende: la metrica es de ORACULO y no de RESULTADO. MF-09 midio top-1 acierta 0/33 y top-20 2/33 en el estrato dificil, asi que subir el techo de 1/33 a 26/33 podria no mover nada de lo que el usuario recibe. No se puede medir con lo que hay: run_mf28_roadmap.py escribio las poses del brazo B en un TemporaryDirectory y se borraron al terminar; MF-33-TOP1 da el precedente en el protocolo RIGIDO, cuyas poses si sobrevivieron, pero ese no es el brazo del paper. DOS DECISIONES QUE SE TOMAN AQUI. PRIMERA, el G1 de cordura: exigir que el oraculo del ENSEMBLE reproduzca el brazo B sellado dentro de 0.001 A. Es identico protocolo, semilla y binario, asi que debe reproducir exactamente; si no lo hace, este re-run no es el mismo experimento y leerlo seria comparar dos cosas distintas. Ningun otro experimento del programa ha tenido que reproducirse a si mismo y conviene que este lo demuestre. SEGUNDA, y es la que evita el sesgo: se declara de antemano que el desenlace (2) -el cuello se desplaza a la seleccion- NO debilita el paper sino que lo reencuadra. Sin esa declaracion previa, la tentacion al ver un top-1 plano seria enterrar la medicion o presentarla como limitacion menor, cuando en realidad seria el hallazgo mas interesante: la diversidad conformacional resolviendo el cuello de generacion y trasladandolo al selector, que es exactamente donde vive la cartera RS. Se declara ademas que no se re-corre sobre los 116 aunque MF-33-EXT lo este haciendo: duplicarlo costaria 103 CPU-h para contestar con menos precision una pregunta que la cohorte del paper contesta con 42.6.

ReproducibilidadReproducibility

commit
5c2cd20ce8 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
21 de agosto de 2026August 21, 2026
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-EXT-MOD-PRESobre los 116 se pueden contestar tres cosas que los 33 no permitian: (1) si la ventaja del ensemble es general o esta concentrada en el estrato dificil; (2) si los seis predictores de MF-33-DOSIS replican, y sobre todo si sobreviven en los 68 complejos que NO estaban en la cohorte de 48; y (3) si el fenomeno es de DOSIS -mas oportunidades, mas espacio conformacional- o de ACIERTO -basta con que una inicializacion caiga en region favorable-, que es la hipotesis derivada de MF-33-A3 y MF-33-DOSIS y que hasta ahora no se podia contrastar.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Sobre los 116 se pueden contestar tres cosas que los 33 no permitian: (1) si la ventaja del ensemble es general o esta concentrada en el estrato dificil; (2) si los seis predictores de MF-33-DOSIS replican, y sobre todo si sobreviven en los 68 complejos que NO estaban en la cohorte de 48; y (3) si el fenomeno es de DOSIS -mas oportunidades, mas espacio conformacional- o de ACIERTO -basta con que una inicializacion caiga en region favorable-, que es la hipotesis derivada de MF-33-A3 y MF-33-DOSIS y que hasta ahora no se podia contrastar.
Criterio prerregistradoPre-registered criterion
BLOQUE 1, TRES LECTURAS ESCRITAS ANTES con umbrales de 5 y 15 puntos porcentuales fijados aqui y que NO se mueven: ESCENARIO A EFECTO REAL PERO CONCENTRADO si delta global < 5 pp y delta en COLOCACION >= 15 pp, y entonces NO se justifica regenerar la cohorte universalmente; ESCENARIO B EFECTO GENERAL si delta global >= 15 pp, y entonces la arquitectura debe cambiar y la regeneracion queda justificada; ESCENARIO C EFECTO GRANDE E IMPREDECIBLE si hay delta >= 15 pp en el global o en un subconjunto Y ningun predictor sobrevive los bloques 2 y 3, y entonces lo indicado es muestreo secuencial con criterio de parada y no una politica de descriptores estaticos. Cualquier otra combinacion se reporta como MIXTO con sus numeros, sin forzarla. BLOQUE 2 ES REPLICACION Y NO DESCUBRIMIENTO: los seis ya se miraron en los 33, no son hipotesis virgenes, y LA CONCLUSION SE TOMA DEL BLOQUE 3. Un predictor que aparezca en los 116 y desaparezca en los 68 externos es estructura de la cohorte original filtrandose por los 48 solapados. BLOQUE 3 ES LA REGLA DE DECISION: un predictor solo se declara candidato a politica adaptativa si sobrevive AQUI. BLOQUE 4: compatible con ACIERTO si la curva observada no se separa de la geometrica y el primer acierto no se concentra en la corrida 1; compatible con DOSIS si crece sostenidamente por encima de la geometrica; HETEROGENEIDAD si se queda por debajo, lo que indicaria complejos con p cercano a cero que ningun K rescata. PROHIBIDO: mover los umbrales de 5 y 15 pp; presentar el bloque 2 como descubrimiento; reabrir la cantidad primaria de MF-33-EXT, que es su cobertura contra el liston de 0.90 heredado del G5 de MF-02D y esta declarada en MF-33-EXT-PRE.
ProtocoloProtocol
ANALISIS PREREGISTRADO ANTES DE QUE MF-33-EXT CIERRE, sobre los datos que su runner ya registra y sin computo nuevo. BLOQUE 1: curva_oraculo[0] ES el resultado de un solo conformero y el oraculo final el del ensemble, asi que la comparacion sale pareada por complejo sin coste. BLOQUE 2: los seis predictores de MF-33-DOSIS sobre los 116, declarados como REPLICACION y no como descubrimiento, porque ya se miraron en los 33. BLOQUE 3: los cinco prospectivos sobre los 68 que no estan en la cohorte de 48, con FDR propio; frac_vuelve queda excluido porque MF-14 solo cubrio 48 complejos y no tiene version fuera de muestra. BLOQUE 4: primer_dock_que_cubre contra una geometrica con p estimada por maxima verosimilitud. Spearman de rangos, Benjamini-Hochberg q=0.05. Script: scripts/analisis_mf33ext_moderadores.py.
Razón de la decisiónReason for the decision
Prerregistro sellado con el hash del script MIENTRAS MF-33-EXT AUN CORRE -iba por 10 de 116 al momento de sellar-, de modo que las tres reglas de lectura son demostrablemente anteriores a los datos. Es la unica forma de que este analisis no sea post-hoc, y la razon de sellarlo ahora y no manana. TRES DECISIONES QUE SE TOMAN AQUI Y NO DESPUES. PRIMERA, los umbrales de 5 y 15 puntos porcentuales del bloque 1 quedan fijados sin haber visto ninguna cobertura. SEGUNDA, y es la que mas protege: el bloque 2 se declara REPLICACION y no descubrimiento. Los seis predictores ya se miraron en los 33 de MF-33-DOSIS; volver a mirarlos en un conjunto que contiene a esos mismos 33 no los convierte en hipotesis nuevas, y presentarlo asi seria contar dos veces la misma observacion. Por eso la regla de decision se traslada explicitamente al bloque 3, los 68 complejos que no estaban. TERCERA, se declara de antemano que frac_vuelve no puede pasar el bloque 3, porque MF-14 solo cubrio 48 complejos: si acabara siendo el unico superviviente del bloque 2, no bastaria, y conviene saberlo antes de que la tentacion exista. EL BLOQUE 4 ES LA PRIMERA OPORTUNIDAD DE CONTRASTAR la hipotesis de acierto-contra-dosis, que hasta ahora era una lectura de dos nulos independientes -A3 mostro que multiplicar por 29 las poses desde el mismo conformero no mueve un complejo, y DOSIS que la dispersion del ensemble no correlaciona con su beneficio-. El campo primer_dock_que_cubre que el runner de MF-33-EXT ya registra permite compararla contra un modelo explicito, y se declara ademas el tercer desenlace -heterogeneidad, complejos con p cercano a cero- porque seria evidencia convergente con lo que MF-33-CRUCES y REC-09 sugirieron por otra via: que parte de los fallos no son de muestreo sino de especificacion.

ReproducibilidadReproducibility

commit
8a86edc571 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
21 de agosto de 2026August 21, 2026
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-DOSISEn ligandos conformacionalmente dificiles, aumentar la profundidad de busqueda desde un UNICO estado tiene rendimientos decrecientes porque conformaciones iniciales distintas acceden a cuencas de pose distintas. Si es cierta, el beneficio B-A3 debe CRECER con alguna medida de dificultad conformacional computable ANTES de dockear, y esa variable permitiria una politica adaptativa: ligando sencillo docking barato, ligando dificil ensemble flexible.InconclusoInconclusiven=48

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
InconclusoInconclusive · Ejecutado y declarado sin conclusión. No se reclasifica a posteriori.Executed and declared without a conclusion. It is not reclassified afterwards.
Decisión del manifestManifest decision
INCONCLUSIVE
HipótesisHypothesis
En ligandos conformacionalmente dificiles, aumentar la profundidad de busqueda desde un UNICO estado tiene rendimientos decrecientes porque conformaciones iniciales distintas acceden a cuencas de pose distintas. Si es cierta, el beneficio B-A3 debe CRECER con alguna medida de dificultad conformacional computable ANTES de dockear, y esa variable permitiria una politica adaptativa: ligando sencillo docking barato, ligando dificil ensemble flexible.
Criterio prerregistradoPre-registered criterion
EXPLORATORIO, GENERACION DE HIPOTESIS, SIN GATES DE DECISION. No autoriza cambiar ninguna politica de muestreo. EFECTO MINIMO DETECTABLE DECLARADO: via z de Fisher con alpha=0.05 y potencia 0.80, este diseno solo ve |rho| >= 0.4711 con n=33 y >= 0.3949 con n=48; por debajo de eso un nulo significa NO DETECTABLE y no INEXISTENTE, y tras el FDR sobre 6 predictores el umbral efectivo es aun mas exigente. CORRECCION MULTIPLE OBLIGATORIA: con 6 contrastes y n=33 la probabilidad de que alguno de p<0.05 bajo H0 es del 26%. VALIDACION FUERA DE MUESTRA DECLARADA ANTES DE MIRAR: MF-33-EXT esta midiendo el brazo B sobre los 116 de train, de los que 68 no estan en esta cohorte; el protocolo es que este analisis produzca un ranking, que el primero se prerregistre con direccion y umbral antes de que MF-33-EXT cierre, y que se contraste en esos 68. Ni con FDR este analisis pasa a confirmatorio: el conjunto ya se ha mirado.
ProtocoloProtocol
ANALISIS EXPLORATORIO SIN COMPUTO DE DOCKING, sobre artefactos sellados. Respuesta continua beneficio = rmsd_A3 - rmsd_B (positiva cuando gana el ensemble), preferida a la binaria porque los discordantes son solo 7 y la continua usa los 33. Seis predictores: torsdof del conf0.flex.pdbqt, rot_bonds de RDKit, n_conformeros K -igualado entre brazos, no circular-, diversidad como RMSD medio por pares entre conformeros del ensemble con alineamiento de Kabsch, n_heavy, y frac_vuelve de MF-14 a 0.5 A via MF-33-CRUCES, que se marca como NO PROSPECTIVO porque se mide perturbando la pose nativa. Spearman de rangos, estrato primario COLOCACION n=33, los 48 como secundario. Correccion Benjamini-Hochberg q=0.05 sobre los 6. Script: scripts/analisis_mf33dosis_cuando_hace_falta_ensemble.py.
Razón de la decisiónReason for the decision
NO APARECE NINGUN PREDICTOR PROSPECTIVO. Ninguno de los seis sobrevive la correccion de Benjamini-Hochberg, y los cinco que serian utiles para una politica adaptativa estan practicamente en cero: n_conformeros rho=-0.138 p=0.4447, rot_bonds rho=-0.107 p=0.5516, n_heavy rho=-0.084 p=0.6421, diversidad rho=-0.083 p=0.6536, torsdof rho=-0.023 p=0.8989. El unico con senal cruda es frac_vuelve -rho=-0.396, p=0.0225-, que no pasa el FDR y que ademas NO ES PROSPECTIVO: se mide perturbando la pose nativa, que en produccion no existe. INCONCLUSIVE Y NO NO_GO, y la distincion importa: el MDE declarado dice que este diseno solo ve |rho| >= 0.4711 con n=33. Un efecto moderado real quedaria invisible. Lo que se puede afirmar es que NO HAY UN EFECTO GRANDE, no que no haya efecto. EL RESULTADO MAS INFORMATIVO ES EL DE LA DIVERSIDAD, y va en contra de la lectura intuitiva: rho=-0.083 entre el RMSD medio por pares del ensemble y el beneficio del ensemble. Los complejos cuyos conformeros estan mas dispersos NO se benefician mas. Si el mecanismo fuese dosis-respuesta -mas diversidad disponible, mas beneficio- esa correlacion deberia ser positiva y grande, y es cero. Sugiere que el fenomeno no es de dosis sino de acierto: hace falta EL conformero adecuado, y tener mas dispersion no lo entrega de forma fiable. Es coherente con MF-33-A3, donde multiplicar por 29 las poses desde el mismo conformero no movio un complejo. NOTA DE DIRECCION, por si se cita mal: el signo de frac_vuelve es el que la hipotesis predice -cuenca mas rugosa, o sea menor fraccion que regresa, se asocia a mayor beneficio del ensemble-. La direccion acompana; la magnitud no llega y la variable no sirve para el proposito. CONSECUENCIA PARA EL PRODUCTO: la politica adaptativa -ligando sencillo docking barato, ligando dificil ensemble- NO se puede construir hoy sobre estas seis variables. La idea sigue siendo buena y lo que falta es el predictor, no la logica. QUE SIGUE, declarado antes de mirar y ya escrito en el gate: MF-33-EXT esta midiendo el brazo B sobre los 116, de los que 68 no estan en esta cohorte. Ese conjunto permite (a) repetir esta busqueda con n mas grande y MDE mejor, y (b) validar fuera de muestra cualquier candidato que aparezca. Con n=116 el |rho| detectable baja a ~0.26. LIMITES: exploratorio y sin gates; la diversidad usa correspondencia 1:1 sin tratar simetria molecular, asi que en ligandos simetricos queda inflada y es cota superior del desorden real; no dice por que la diversidad ayuda, igual que MF-33-A3 tampoco.

Métricas registradasRecorded metrics

analisis_id
MF-33-DOSIS
tipo
EXPLORATORIO, generacion de hipotesis, sin gates de decision
pregunta
existe una variable computable antes de dockear que prediga cuando vale la pena pagar el coste del ensemble flexible
hipotesis_general
en ligandos conformacionalmente dificiles, aumentar la profundidad de busqueda desde un UNICO estado tiene rendimientos decrecientes, porque conformaciones iniciales distintas acceden a cuencas distintas
respuesta_continua
beneficio = rmsd_A3 - rmsd_B; positiva cuando el ensemble gana
correccion_multiple
Benjamini-Hochberg q=0.05 sobre los 6 predictores. Con 6 contrastes y n=33, P(alguno con p<0.05 | H0) = 26%.

ReproducibilidadReproducibility

commit
23d61aa0d7 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
21 de agosto de 2026August 21, 2026
complejoscomplexes
48
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-A3Veintinueve veces más poses desde el mismo confórmero no mueven un solo complejoMediciónMeasurementArtículoPapern=48

A3 igualó corridas, poses (261) y CPU —gastó un 20% más que B— y perdió 26 a 19. La explicación alternativa que suspendía la magnitud de MF-33 está medida y no aporta nada.

MF-33 midió que el ensemble flexible convierte 26 de 33 donde un solo confórmero flexible convierte 12. Poco después de sellarlo apareció un defecto que suspendía esa magnitud, y era serio.

La métrica es de oráculo: el mejor RMSD entre las poses que el brazo conserva. Y num_modes=9 limita cuántas poses escribe Vina por corrida, no cuántas busca.

BrazoCorridasPoses conservadas
A y A2 — 1 confórmero19
B — K confórmeros29 (mediana)261

El brazo B extraía su oráculo de veintinueve veces más muestras. Aunque la calidad de búsqueda fuera idéntica, ganaría sólo por conservar más. No es un mecanismo: es un artefacto de medición, y afectaba igual a MF-33-A2.

Este experimento existe para medirlo, y la hipótesis preregistrada fue la incómoda: que la ventaja del ensemble fuera conteo de poses.

El diseño: igualar las tres variables confundidas

El brazo A3 hace **K corridas independientes de Vina desde el mismo conf0.flex.pdbqt**, con K = el número de docks que el brazo B hizo en ese complejo, exh=8, num_modes=9 y semillas distintas 42…42+K−1. El oráculo se toma sobre las K×9 poses.

Eso iguala a B en las tres variables que estaban confundidas —corridas independientes, poses conservadas y CPU— y deja como única diferencia la conformación de partida.

Variable igualadaBA3
Corridas independientesKK
Poses conservadas (mediana)261261
CPU mediana en COLOCACION3,822 s4,570 s

La razón de CPU A3/B es 1.196: A3 gastó un 20% más que B. Cualquier sesgo residual de presupuesto favorecía a A3.

Los brazos A, B y C se reusan de MF-33 y A2 de MF-33-A2, sin recomputo. Prohibido por el prerregistro: elegir el confórmero por RMSD, o cambiar num_modes respecto de B.

Qué salió

Estrato de colocación (n=33)Alcanza ≤2 Å
C — K confórmeros, rígido1
A — 1 confórmero, flexible12
A2 — 1 confórmero, CPU igualada, 9 poses19
A3 — 1 confórmero, CPU igualada, 261 poses19
B — K confórmeros, flexible26

Pareado A3 contra B: g_B = 7, g_A3 = 0, McNemar exacto p = 0.0156. El umbral declarado antes de correr era g_B ≥ 6 con g_A3 = 0, y se cumple exactamente.

La hipótesis queda falsificada en la dirección declarada. El defecto era real como confundido y no explica la ventaja. Los siete complejos de diferencia van todos en la misma dirección: no hay ni uno solo donde A3 alcance y B no.

El secundario cierra el argumento, y es lo más limpio del experimento

A2 con 9 poses conservadas alcanza 19. A3 con 261 alcanza 19. Idéntico.

Los dos tienen paridad de CPU y el mismo confórmero de partida; se diferencian sólo en cuántas poses conservan. Multiplicar por 29 las poses conservadas desde el mismo confórmero no mueve un solo complejo.

El conteo de poses —la explicación alternativa que este experimento venía a descartar— está medido, y no aporta nada. Los siete complejos de diferencia son atribuibles a la única variable que quedaba libre: la conformación de partida.

Comprobación de cordura, declarada y cumplida

En control (n=15) todos los brazos convergen —C 15, A 14, A2 14, A3 15, B 15— con g_A3 = g_B = 0. El efecto es específico del estrato difícil y no un artefacto general del brazo. Cero corridas fallidas en los 48 complejos.

Consecuencias para el registro

  • **Se levanta la etiqueta defecto-abierto de MF-33 y de MF-33-A2.** La magnitud de MF-33 —1/33 rígido, 12/33 un confórmero flexible, 26/33 ensemble flexible— es citable, y el claim externo queda autorizado por la regla (2) del prerregistro.
  • **MF-33-A2 se relee sin cambiar su número.** Su 19/33 no era una limitación de conteo de poses.
  • **MF-33-EXT, que estaba esperando esta respuesta, puede titularse por su cobertura final** y no por la cobertura a presupuesto igualado, porque la ventaja del ensemble no es presupuesto. Su curva de cobertura contra presupuesto se conserva como secundario descriptivo.
  • **MF-30-ALCANCE** mantiene su comparador activo en 26/33, y su gate caducado sigue caducado 8.67×.

Límites

  • n = 33 en COLOCACION y el MDE declarado era de 6 complejos: esto detecta el efecto, no lo cuantifica con precisión.
  • No dice por qué la diversidad conformacional ayuda. Sólo que ayuda.
  • No toca la cuestión de si esos confórmeros son alcanzables en producción, que es el techo que MF-02A-EXT midió en 83.9% a K=30.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La ventaja del ensemble flexible de MF-33 no es diversidad conformacional sino ARTEFACTO DE CONTEO DE POSES: la metrica es de oraculo -mejor RMSD entre las poses que el brazo CONSERVA- y num_modes=9 limita las poses por corrida, no las buscadas, de modo que el brazo B extraia su oraculo de 29 veces mas muestras que A y A2.
Criterio prerregistradoPre-registered criterion
PRIMARIO A3 vs B pareado en COLOCACION (n=33), McNemar exacto bilateral, con g_A3 = complejos donde A3 alcanza <=2 A y B no, y g_B = donde B alcanza y A3 no. TRES LECTURAS ESCRITAS ANTES: (1) LA VENTAJA ERA EL CONTEO DE POSES si A3 y B son equivalentes -diferencia dentro de +-4 complejos-, y entonces la magnitud de MF-33 COLAPSA; (2) LA DIVERSIDAD CONFORMACIONAL ES REAL si g_B >= 6 con g_A3 = 0, y entonces MF-33 sobrevive con su magnitud corregida y el claim externo se autoriza; (3) MIXTA en cualquier otro caso, incluido g_B >= 6 con g_A3 >= 1. SECUNDARIO descriptivo: A3 vs A2, que separa 'muchas corridas poco profundas' de 'una corrida muy profunda' a igual CPU y distinto conteo de poses. PROHIBIDO: reinterpretar MF-33 o MF-33-A2 sin sellar el corrigendum; elegir el conformero por RMSD; cambiar num_modes respecto de B.
ProtocoloProtocol
Prerregistro MF-33-A3-PRE, sellado antes de correr. Corrigendum y etapa 3 de MF-33. BRAZO A3: K corridas INDEPENDIENTES de Vina desde el MISMO conf0.flex.pdbqt, con K = n_docks del brazo B en ese complejo, exh=8, num_modes=9 y semillas distintas 42..42+K-1. El oraculo se toma sobre las K*9 poses. Eso iguala a B en las tres variables confundidas -corridas independientes, poses conservadas y CPU aproximada- dejando como UNICA diferencia la conformacion de partida. Brazos A, B y C se reusan de MF-33 y A2 de MF-33-A2, sin recomputo. Cohorte: los mismos 48. Corrio en la maquina local con 10 workers, 24691 s. Script: scripts/run_mf33a3_reinicios.py.
Razón de la decisiónReason for the decision
LECTURA (2) DEL PRERREGISTRO: LA DIVERSIDAD CONFORMACIONAL ES REAL. En COLOCACION (n=33), g_B = 7 y g_A3 = 0, McNemar exacto bilateral p = 0.0156. El umbral declarado antes de correr era g_B >= 6 con g_A3 = 0, y se cumple exactamente. LA HIPOTESIS QUEDA FALSIFICADA EN LA DIRECCION DECLARADA: el defecto que motivo este corrigendum -que el brazo B extraia su oraculo de 29 veces mas muestras- era real como confundido y NO explica su ventaja. A3 igualo a B en las TRES variables confundidas y la comparacion no deja escapatoria: corridas independientes K = n_docks de B por complejo; poses conservadas 261 medianas, las mismas que B; y CPU con razon A3/B = 1.196, es decir, A3 gasto un 20% MAS que B, de modo que cualquier sesgo residual de presupuesto favorecia a A3. Aun asi B alcanza 26 de 33 y A3 19, y los 7 complejos de diferencia van todos en la misma direccion: no hay ni uno solo donde A3 alcance y B no. EL SECUNDARIO CIERRA EL ARGUMENTO, Y ES LO MAS LIMPIO DEL EXPERIMENTO: A3 alcanza 19 y A2 alcanza 19. Identico. A2 tenia paridad de CPU con 9 poses conservadas; A3 tiene paridad de CPU con 261. Multiplicar por 29 el numero de poses conservadas desde el mismo conformero NO MUEVE NI UN COMPLEJO. El conteo de poses, que era la explicacion alternativa que este experimento venia a descartar, esta medido y no aporta nada; los 7 complejos de diferencia son atribuibles a la unica variable que quedaba libre, la conformacion de partida. CONSECUENCIAS PARA EL REGISTRO: se levanta la etiqueta defecto-abierto de MF-33 y de MF-33-A2. La magnitud de MF-33 -1/33 rigido, 12/33 un conformero flexible, 26/33 ensemble flexible- es citable, y el claim externo queda autorizado por la regla (2). MF-33-A2 se relee sin cambiar su numero: su 19/33 no era una limitacion de conteo de poses. CONSECUENCIA PARA MF-33-EXT, que estaba esperando esta respuesta: su titular es la COBERTURA FINAL y no la cobertura a presupuesto igualado, porque la ventaja del ensemble no es presupuesto. La curva de cobertura contra presupuesto que su prerregistro declara se conserva como secundario descriptivo. CONSECUENCIA PARA MF-30-ALCANCE: el comparador activo se mantiene en 26/33 y su gate caducado sigue caducado 8.67x. COMPROBACION DE CORDURA DECLARADA Y CUMPLIDA: en CONTROL (n=15) todos los brazos convergen -C 15, A 14, A2 14, A3 15, B 15- con g_A3 = g_B = 0. El efecto es especifico del estrato dificil y no un artefacto general del brazo. Cero corridas fallidas en los 48 complejos. LIMITES: n=33 en COLOCACION y el MDE declarado era de 6 complejos, asi que esto detecta el efecto pero no lo cuantifica con precision; no dice POR QUE la diversidad conformacional ayuda, solo que ayuda; y no toca la cuestion de si esos conformeros son alcanzables en produccion, que es el techo que MF-02A-EXT midio en 83.9% a K30.

Métricas registradasRecorded metrics

tipo
corrigendum y control de confundido (poses y reinicios igualados)
duration_seconds
24691.12
n_complejos
48
n_ok
48

ReproducibilidadReproducibility

commit
55112383f5
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
21 de agosto de 2026August 21, 2026
duraciónduration
6 h 52 min
complejoscomplexes
48
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-30-ALCANCEMF-30 -evaluar un modelo generativo preentrenado, prioridad 3 de la seccion 20.11- ya no es una direccion de producto defendible: su gate esta caducado frente al mejor brazo propio, su premisa esta contradicha por evidencia externa publicada, y choca con la restriccion de que MolDesign sea 100% CPU.MediciónMeasurement

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
MF-30 -evaluar un modelo generativo preentrenado, prioridad 3 de la seccion 20.11- ya no es una direccion de producto defendible: su gate esta caducado frente al mejor brazo propio, su premisa esta contradicha por evidencia externa publicada, y choca con la restriccion de que MolDesign sea 100% CPU.
Criterio prerregistradoPre-registered criterion
REGISTRO DE DECISION, SIN GATES DE MEDICION. Las tres razones se documentan con su evidencia y la decision queda declarada junto con sus condiciones de reapertura, para que reabrir MF-30 no exija reconstruir el razonamiento. LIMITACION DECLARADA: las cifras de PoseBusters son externas y se citan con fuente; no las ha medido este programa. No cancela MF-30 ni cierra la seccion 20.11(c).
ProtocoloProtocol
REGISTRO DE CAMBIO DE ALCANCE, SIN COMPUTO. Calcula la tabla de comparadores desde artefactos sellados -MF-09 para el gate escrito, los tres brazos de MF-33 para el comparador activo, y MF-33-A3 si esta disponible- y registra como EXTERNA, con fuente citable, la evidencia de PoseBusters (Chemical Science 15, 3130, 2024). Script: scripts/analisis_mf30_alcance.py. No modifica el texto de la seccion 20.11(c): un prerregistro o una seccion superada se documenta, no se reescribe.
Razón de la decisiónReason for the decision
MF-30 pasa de PRIORIDAD 3 DE LA CARTERA PESADA Y DIRECCION DE PRODUCTO a BENCHMARK EXTERNO OPCIONAL. No se cancela, no se borra y no deja hueco en la cartera. RAZON 1, EL GATE ESTA CADUCADO 8.67x. El doc 49 lo escribio como 'cobertura superior al 3/33 de MF-09', que era el techo del generador con protocolo RIGIDO y el estado del arte del programa entonces. MF-33 midio despues que el ensemble FLEXIBLE propio alcanza 26 de 33 en el mismo estrato y la misma cohorte. Un modelo generativo con 8/33 pasaria el gate escrito siendo tres veces peor que lo que ya existe en casa: es comparar contra placebo cuando ya hay tratamiento estandar. El gate exige comparador activo y el activo no es el 3/33. RAZON 2, LA PREMISA ESTA CONTRADICHA POR EVIDENCIA EXTERNA. La seccion 20.11(c) coloca al generativo como el de mayor techo, y esa premisa es anterior a que se midiera. PoseBusters -Buttenschoen, Morris y Deane, Chemical Science 15, 3130, 2024- evaluo cinco metodos de aprendizaje profundo contra los clasicos sobre 308 complejos exigiendo RMSD <=2 A Y validez fisica: AutoDock Vina 58%, Gold 55%, DiffDock 12%, siendo DiffDock el mejor de los DL. Y el modo de fallo que reporta es especifico y agrava el caso: los metodos aprendidos producen poses que puntuan bien y son fisicamente imposibles. Estas cifras son EXTERNAS, se citan con fuente y se registran como tales; la seccion 20.12 prohibe citar analogias como evidencia y esto no es una analogia sino un benchmark publicado y auditable. RAZON 3, CHOCA CON UNA RESTRICCION DE PRODUCTO DECLARADA: MolDesign es 100% CPU y la GPU es opcional, nunca limitante. Un modelo de difusion como motor convierte la GPU en requisito. La distincion que sobrevive y queda escrita: la GPU puede estar en el LABORATORIO y no en el PRODUCTO -usarla para construir o validar un artefacto entregable en CPU es compatible; entregarla como motor, no-. TRES CONDICIONES DE REAPERTURA, declaradas ahora para no reconstruir el razonamiento despues: un generativo con inferencia en CPU en tiempo razonable o un uso estrictamente de laboratorio con entregable en CPU; un gate reescrito con comparador activo del momento y el control de solapamiento del doc 49 intacto; y evidencia externa posterior que revierta el resultado de PoseBusters sobre validez fisica. Ninguna se cumple hoy. NOTA: MF-33-A3 esta corriendo y puede mover la magnitud del comparador activo si demuestra que la ventaja del brazo B era conteo de poses; eso cambiaria el 26/33 pero no la conclusion, porque incluso el brazo A -un solo conformero flexible- queda muy por encima del 3/33 del gate escrito.

Métricas registradasRecorded metrics

analisis_id
MF-30-ALCANCE
tipo
registro de cambio de alcance, sin computo
experimento_afectado
MF-30
definicion_original
doc 49 seccion 20.11(c): evaluar un modelo generativo preentrenado sobre la cohorte de 48, con rmsd_pose_pocket y sin reentrenar. Gate: cobertura <=2 A superior al 3/33 de MF-09 con CI95 que excluya el cero. Control obligatorio: solapamiento con el conjunto de entrenamiento del modelo.
prioridad_original
3 de 4 en la seccion 20.11, tras MF-29 y MF-28

ReproducibilidadReproducibility

commit
8f7cbb1a87 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
21 de agosto de 2026August 21, 2026
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-12Los cofactores no metalicos del sitio -HETATM que no son ni agua ni metal, como NAD, FAD o hemo, y tambien aditivos de cristalizacion como glicerol o sulfato- son el eje de especificacion que nadie ha inventariado, y podrian explicar los cristales que REC-09 encontro puntuando absurdo con CERO aguas bloqueantes: 1d7i y 1ew9.InconclusoInconclusiven=116

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
InconclusoInconclusive · Ejecutado y declarado sin conclusión. No se reclasifica a posteriori.Executed and declared without a conclusion. It is not reclassified afterwards.
Decisión del manifestManifest decision
INCONCLUSIVE
HipótesisHypothesis
Los cofactores no metalicos del sitio -HETATM que no son ni agua ni metal, como NAD, FAD o hemo, y tambien aditivos de cristalizacion como glicerol o sulfato- son el eje de especificacion que nadie ha inventariado, y podrian explicar los cristales que REC-09 encontro puntuando absurdo con CERO aguas bloqueantes: 1d7i y 1ew9.
Criterio prerregistradoPre-registered criterion
INVENTARIO SIN GATES DE DECISION, con UN GATE DE VALIDEZ DE LA FUENTE. G1: fraccion de complejos cuyo <pid>_protein.pdb contiene algun HETATM que no sea agua ni metal, en cualquier posicion de la estructura. Minimo 0.05 para que el inventario se pueda leer. Si G1 falla, el cero medido NO es un hecho sobre las estructuras sino sobre el archivo, y el inventario NO SE LEE. LIMITACION DECLARADA: no clasifica cofactor funcional frente a aditivo de cristalizacion -esa distincion es quimica y por complejo-; no decide sobre 1d7i ni 1ew9; el emparejamiento por coordenada hace que los recuentos de perdida sean cota superior.
ProtocoloProtocol
Metodo identico al de REC-08-EXT, tercera entidad. Sitio a 8 A de un atomo pesado del ligando cristalografico -el radio de FEP-02-; emparejamiento entre original y preparado POR COORDENADA con tolerancia de 0.5 A, porque la preparacion renumera. Fuente del original: data/pdbbind/<pid>/<pid>_protein.pdb, la misma que uso REC-08-EXT. Script: scripts/analisis_rec12_cofactores.py. G1 de validez de la fuente anadido tras el primer intento: la fuente debe contener HETATM no-agua no-metal en algun sitio de la estructura, porque si no los contiene un inventario de cero seria del ARCHIVO y no de las estructuras.
Razón de la decisiónReason for the decision
G1 DE VALIDEZ DE LA FUENTE FALLA: 1 de 48 = 0.0208, por debajo del minimo de 0.05. EL INVENTARIO NO SE LEE, y el hallazgo es por que. La fuente del programa para la estructura original es data/pdbbind/<pid>/<pid>_protein.pdb, y PDBBind entrega ahi una estructura LIMPIADA: conserva aguas y metales y ELIMINA el resto de heteroatomos. Verificado sobre los 48 disponibles: los unicos resnames HETATM en el conjunto entero son HOH (8844 atomos), CA (22), ZN (15), MG (6), HG (1), CU (1) y ACE (6), y ACE es un grupo acetilo de cierre de cadena, no un cofactor. El cero de cofactores que el primer intento produjo era del ARCHIVO, no de las estructuras. LO QUE ESTO SI ESTABLECE, Y NO ES MENOR: todos los receptores del programa se construyeron desde una fuente que elimina los cofactores no metalicos. Si algun complejo de la cohorte necesita un NAD, un FAD o un hemo para que su sitio este completo, ese receptor esta incompleto Y NADIE PODRIA VERLO CON LOS DATOS ACTUALES, porque la evidencia se pierde en el mismo archivo del que se parte. Eso es exactamente un defecto de especificacion del tipo que REC-08-EXT y REC-09 vinieron destapando, con el agravante de que aqui el instrumento de deteccion tambien esta ciego. NO SE ESTABLECE que haya cofactores perdidos: no se ha medido ninguno, ni a favor ni en contra. LA PREGUNTA DE REC-09 SIGUE ABIERTA: 1d7i y 1ew9 puntuan absurdo con cero aguas bloqueantes, y esta via no los explica ni los descarta. QUE HARIA FALTA PARA MEDIRLO: la entrada original de RCSB de cada complejo, no el protein.pdb de PDBBind. Son 116 descargas y el analisis es el mismo script sin tocar; el bloqueo es de datos, no de metodo. Se deja anotado como deuda con su coste. LIMITE ADICIONAL descubierto de paso: el servidor solo tiene 48 de los 116 <pid>_protein.pdb -el local tiene 3887 archivos de PDBBind-, asi que incluso con una fuente valida habria que sincronizar antes. Ninguno de los dos problemas se arregla con computo.

Métricas registradasRecorded metrics

analisis_id
REC-12
tipo
inventario con gate de validez de la fuente, sin computo de docking
metodo
identico a REC-08-EXT, tercera entidad: HETATM del sitio que no son agua ni metal
n_complejos
116
n_ok
48

ReproducibilidadReproducibility

commit
f4728ae7fb (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
complejoscomplexes
116
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-11-PREConservar todas las aguas del receptor -la politica declarada en docs/51- cambia el resultado del docking de novo. Puede BLOQUEAR la cuenca nativa, como REC-09 vio sobre el scoring del cristal, o puede GUIAR, si un agua estructural que media un puente de hidrogeno es parte del sitio y quitarla deja un bolsillo que no existe. Ninguna de las dos cosas esta medida hoy.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Conservar todas las aguas del receptor -la politica declarada en docs/51- cambia el resultado del docking de novo. Puede BLOQUEAR la cuenca nativa, como REC-09 vio sobre el scoring del cristal, o puede GUIAR, si un agua estructural que media un puente de hidrogeno es parte del sitio y quitarla deja un bolsillo que no existe. Ninguna de las dos cosas esta medida hoy.
Criterio prerregistradoPre-registered criterion
PRIMARIA: cobertura del oraculo pareada sobre los 116, con b = complejos donde SIN cubre y CON no, y c = donde CON cubre y SIN no. McNemar exacto bilateral de estadistica_fnd04. TRES LECTURAS ESCRITAS ANTES: (1) p<0.05 con b>c => QUITARLAS MEJORA, la politica de docs/51 cambia y el coste de regenerar queda justificado; (2) p<0.05 con c>b => CONSERVARLAS MEJORA, y la politica queda confirmada POSITIVAMENTE, que hoy no lo esta -hoy solo esta declarada-; (3) p>=0.05 => SIN DIFERENCIA DETECTABLE, la politica se mantiene por inercia y se declara el limite de potencia, sin leerlo como equivalencia. EFECTO MINIMO DETECTABLE DECLARADO ANTES (seccion 20.9): si c=0, McNemar exacto exige b>=6 para p<0.05 (2*0.5^6=0.031); con discordancia realista del 20% el MDE pareado con n=116 es de 11.3 puntos porcentuales, unos 13 complejos netos, y con discordancia del 10% baja a 8.0 puntos. Diferencias menores NO son resolubles con esta cohorte y se reportaran como no concluyentes, nunca como tendencia -leccion de RS-14, que descubrio su limite de resolucion despues de ejecutar-. SECUNDARIO descriptivo y sin gate: la misma tabla sobre el top-1, que es lo que produccion entrega pero es mas ruidoso. PROHIBIDO: leer SIN_DIFERENCIA_DETECTABLE como equivalencia; adoptar el brazo SIN si sale QUITARLAS MEJORA, porque lo que eso autoriza es abrir la comparacion contra politicas intermedias -filtrar por B-factor, ocupancia o enterramiento- que aqui no se evaluan; leer esto como medicion de cobertura alcanzable, porque usa UN SOLO conformero y MF-33 midio que conf0.flex solo convierte 12 de 33 contra 26 del ensemble.
ProtocoloProtocol
Intervencion pareada, una sola variable. Cohorte: los 116 de train. Ligando conf0.flex.pdbqt FIJO y el mismo en los dos brazos, misma caja de 25 A, exhaustiveness=8, num_modes=9 y las mismas cinco semillas {42,1,2,3,4} del brazo de produccion de MF-29-EMP. Brazo CON: rec.pdbqt tal cual, la politica actual. Brazo SIN: el mismo receptor sin ningun residuo de agua (HOH/WAT/DOD), la politica alternativa. LO UNICO QUE CAMBIA ES EL RECEPTOR; el ligando es identico, asi que la penalizacion torsional se cancela en toda comparacion -leccion de MF-29-EMP-COR aplicada por diseno-. Se quitan TODAS las aguas y no solo las que chocarian, porque en produccion no existe una pose de referencia con la que decidir cuales estorban: esa asimetria es lo que hace que esto no sea REC-09 otra vez. Se mide por brazo el ORACULO -mejor rmsd_pose_pocket entre las poses de las cinco semillas- y el TOP-1 -rmsd de la pose de mejor score-. Contenedor moldesign-lab del servidor. Script: scripts/run_rec11_aguas_denovo.py.
Razón de la decisiónReason for the decision
Prerregistro sellado ANTES de ejecutar, con el hash del script. Es el experimento que docs/51_POLITICA_DE_AGUAS.md nombro como lo unico que cambiaria la politica, y existe porque REC-09 midio la pregunta equivocada para decidirla: midio el efecto de las aguas sobre el scoring del CRISTAL, y la politica gobierna el docking DE NOVO. La diferencia no es formal. En de novo el buscador explora todo el sitio y choca con aguas que el cristal ni toca, y ademas no dispone de la pose de referencia que REC-09 uso para decidir cuales aguas estorbaban; por eso aqui se quitan TODAS. Se declara desde el principio que la hipotesis es bidireccional -las aguas pueden bloquear la cuenca nativa o pueden guiar, si son estructurales y parte del sitio- y las tres lecturas incluyen una que CONFIRMA la politica actual, que es algo que hoy no esta medido: docs/51 la declara, no la valida. El MDE se calcula antes con la biblioteca de FND-04 y se declara en dos formas -b>=6 con c=0, y 11.3 puntos porcentuales con discordancia del 20%- para que ninguna diferencia pequena se pueda leer despues como tendencia; es la leccion explicita de RS-14. Y se prohibe de antemano el error mas probable de interpretacion: que un QUITARLAS MEJORA se lea como permiso para adoptar el brazo SIN, cuando lo que autoriza es comparar contra politicas intermedias que este diseno no evalua.

ReproducibilidadReproducibility

commit
f4728ae7fb (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-EXT-PRELa cobertura del oraculo del programa esta medida sobre un conjunto de poses que en un 93.9% viene del protocolo RIGIDO (RC-F0-V2-EXT). Dockeando FLEXIBLES los mismos conformeros, MF-33 vio pasar el estrato dificil de 1/33 a 26/33; si ese salto se sostiene sobre los 116 de train, el denominador de media docena de conclusiones del programa esta mal puesto.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La cobertura del oraculo del programa esta medida sobre un conjunto de poses que en un 93.9% viene del protocolo RIGIDO (RC-F0-V2-EXT). Dockeando FLEXIBLES los mismos conformeros, MF-33 vio pasar el estrato dificil de 1/33 a 26/33; si ese salto se sostiene sobre los 116 de train, el denominador de media docena de conclusiones del programa esta mal puesto.
Criterio prerregistradoPre-registered criterion
PRIMARIA: cobertura = fraccion de los 116 con oraculo <= 2.0 A por la metrica de pocket. EL LISTON NO SE ELIGE AQUI: es el 0.90 del gate G5 de MF-02D, declarado antes que este experimento y ya usado para sellar aquel NO_GO. LA LINEA BASE ES 0.7931 Y NO 0.9310: MF-02D reporto cobertura_despues=108/116=0.9310 con otra metrica, pero su gate G5 sobre la metrica de pocket -que es la primaria- dio 0.7931 y fallo el liston; por eso esta NO_GO. DOS LECTURAS ESCRITAS ANTES: (1) cobertura >= 0.90 => EL GENERADOR FLEXIBLE ALCANZA EL LISTON que el rigido no alcanzo, y la regeneracion completa de la cohorte queda JUSTIFICADA con su coste de re-sellado; (2) cobertura < 0.90 => NO ALCANZA EL LISTON, se reporta la diferencia contra 0.7931 como magnitud descriptiva y la regeneracion no queda justificada por esta via. SECUNDARIO: curva de cobertura contra presupuesto, registrando el oraculo acumulado tras 1..K corridas en ORDEN DE INDICE DE CONFORMERO -no ordenado por calidad, que seria informacion de oraculo inexistente en produccion-. Existe porque MF-33-A3 esta midiendo si la ventaja del brazo B era diversidad conformacional o conteo de poses: si fue diversidad el titular es la cobertura final, si fue conteo el titular es la cobertura al presupuesto de poses del protocolo rigido, que la curva da sin recomputar. ASI QUE ESTE EXPERIMENTO NO DEPENDE DE A3 PARA EJECUTARSE, SOLO PARA TITULARSE. PROHIBIDO: mover el liston de 0.90; usar el 0.9310 como linea base; leer esto como evaluacion de selector, que MF-02D declaro fuera de alcance y aqui se mantiene; leerlo como que el techo de cobertura sea del generador, porque MF-33-CRUCES midio que 4 de los 7 que el ensemble no convierte son cristales que puntuan absurdo y REC-09 que al menos dos lo son por aguas bloqueantes: parte del techo es PREPARACION y este experimento no los separa.
ProtocoloProtocol
Mismo metodo que el brazo B de MF-33, distinto alcance: los 116 de train en vez de los 48 de la cohorte, como REC-08-EXT extendio a REC-08. Por complejo, dockear TODOS los conf*.flex.pdbqt del ensemble ETKDG ya en disco con los parametros del brazo de control de MF-28 -de donde MF-33 reuso su brazo B-: exhaustiveness=8, num_modes=9, seed=42, caja 25 A, --cpu 1. Metrica rmsd_pose_pocket, RMSD de pesados en el marco del pocket SIN alineamiento, seccion 5.1 del doc 49. Los conformeros NO se regeneran. Script: scripts/run_mf33ext_cobertura_flexible.py. COSTE MEDIDO, no estimado: el brazo B de MF-33 consumio 42.6 CPU-h en 48 complejos -mediana 2548 s, maximo 11391 s, 970 docks-, que extrapolado a 116 son ~103 CPU-h: 10.3 h con 10 workers, 25.7 h con los 4 nucleos del servidor.
Razón de la decisiónReason for the decision
Prerregistro sellado ANTES de ejecutar, con el hash del script. Deja el experimento listo para lanzar con un comando cuando haya nucleos: ~103 CPU-h medidos y no estimados, extrapolados del consumo real del brazo B de MF-33. Tres decisiones de diseno que se toman aqui y no despues. PRIMERA, el liston se hereda: 0.90 sale del gate G5 de MF-02D y no de mirar estos datos. SEGUNDA, la linea base es 0.7931 y no 0.9310, porque la primaria de MF-02D es la metrica de pocket y es la que fallo su gate; confundirlas convertiria un NO_GO en un aparente exito. TERCERA, la curva de cobertura contra presupuesto se registra desde el principio para que el experimento se pueda leer con cualquiera de las dos respuestas que MF-33-A3 esta a punto de dar: si la ventaja del ensemble era diversidad conformacional, el titular es la cobertura final; si era conteo de poses, el titular es la cobertura a presupuesto igualado, que la curva da sin recomputar nada. Por eso no depende de A3 para ejecutarse, solo para titularse, y puede lanzarse en cuanto se liberen nucleos. Se declara ademas el limite que hoy es mas facil de olvidar: MF-33-CRUCES midio que 4 de los 7 complejos que el ensemble no convierte son cristales que puntuan absurdo, y REC-09 que al menos dos lo son por aguas que el pipeline conserva y el ligando desplaza. Parte del techo de cobertura es PREPARACION y no generador, y este experimento no los separa.

ReproducibilidadReproducibility

commit
9e385a7f2c (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-CRUCESLos 7 complejos de la cohorte de 48 que el ensemble flexible de MF-33 no convierte comparten propiedades medibles que ya estan en artefactos sellados: cuenca mas rugosa (MF-14), mas aguas retenidas en el sitio (REC-08-EXT y REC-09) y, la que no estaba en la lista, cristal que puntua absurdamente mal (REC-09), que es senal de sistema mal montado y no de fallo de busqueda.MediciónMeasurementn=48

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Los 7 complejos de la cohorte de 48 que el ensemble flexible de MF-33 no convierte comparten propiedades medibles que ya estan en artefactos sellados: cuenca mas rugosa (MF-14), mas aguas retenidas en el sitio (REC-08-EXT y REC-09) y, la que no estaba en la lista, cristal que puntua absurdamente mal (REC-09), que es senal de sistema mal montado y no de fallo de busqueda.
Criterio prerregistradoPre-registered criterion
MEDICIONES DE ASOCIACION SIN GATES DE DECISION. Son n pequeno -7 contra 41- y no autorizan atribucion causal: se describen y se nombran los complejos, que es lo util. LIMITACION DECLARADA: no relee MF-33 ni lo toca; lo que MF-33-A3 mide -si la ventaja del ensemble era diversidad conformacional o conteo de poses- afecta al POR QUE convierte y no a CUALES, asi que estos cruces no dependen de A3. REC-09 quedo INCONCLUSIVE: su lista de absurdos es dato medido con G1 pasado en 116 de 116; lo indeciso alli es si las aguas los explican, no cuales son.
ProtocoloProtocol
SIN COMPUTO NUEVO. Joins sobre per_complex.jsonl de MF-33, MF-14, REC-08-EXT y REC-09, con solape de 48 de 48. Cruce 1: fraccion de puntos con vuelve=True a r_nominal=0.5 de MF-14, comparada entre el grupo que el brazo B convierte y el que no. Cruce 2: aguas_sitio de REC-08-EXT -presencia a 8 A- y n_aguas_bloqueantes de REC-09 -choque a 2.6 A-, que es lo que la hipotesis quiere decir de verdad. Cruce 3: solape entre la lista de absurdos de REC-09 y los 7 que no convierten. Script: scripts/analisis_mf33_cruces.py.
Razón de la decisiónReason for the decision
Los tres cruces dan senal en la direccion hipotetizada, y el tercero -que no estaba en la lista de la 12.2 y aparecio al correr REC-09- es el que genera la hipotesis mas fuerte. CRUCE 3: de los 7 complejos que el ensemble flexible no convierte, 4 COINCIDEN con cristales que puntuan absurdamente mal -1afl, 1d7i, 1ew8, 1fkh-. Eso es el 57.1% contra el 4.9% entre los 41 que si convierte: un enriquecimiento de 12x. FORMULACION DEFENDIBLE, Y ES LA QUE VALE: mas de la mitad de los fallos del mejor brazo de MF-33 COINCIDEN con sistemas mal especificados. Eso justifica mover recursos experimentales hacia preparacion. NO demuestra que la preparacion sea la causa de esos fallos, por tres razones que se declaran aqui: el denominador es 7; el enriquecimiento es una asociacion y este artefacto no tiene gate causal por diseno; y -la que mas pesa- 'cristal que puntua absurdo' NO IDENTIFICA QUE COMPONENTE de la preparacion falla, solo que algo falla. REC-09 mostro que en 1fkh son dos aguas y en 1d7i no hay ninguna agua bloqueante, asi que ni siquiera dentro de los cuatro la causa es la misma. ENMIENDA DEL 2026-08-20: la version anterior de esta razon afirmaba que los fallos 'no son fallos de busqueda: son sistemas mal montados', lo que contradecia el gate de este mismo artefacto -que declara explicitamente que n=7 no autoriza atribucion causal- y sobrepasaba lo medido. Se corrige a 'coinciden con'. El dato numerico no cambia; cambia lo que se afirma sobre el. CRUCE 1, la cuenca rugosa: la fraccion mediana de puntos que regresan desde 0.5 A es 1.0 en los que convierten y 0.6667 en los que no. La hipotesis que la 12.2 tenia apuntada se confirma en direccion, con el limite de que ambos grupos llegan a min 0.0 y max 1.0 y n=7 no permite mas. CRUCE 2, las aguas: en presencia a 8 A la diferencia es modesta -15 contra 19 medianos- pero en CHOQUE a 2.6 A separa mejor, 0 contra 1 mediano, que era justo la distincion que el diseno queria hacer: lo que importa no es que haya aguas cerca sino que estorben. La hipotesis que REC-08-EXT dejo declarada en su sello queda apoyada, no establecida. CONSECUENCIA PARA EL PROGRAMA: la cuenta de fallos de MF-33 hay que releerla, porque sus 7 no son un bloque homogeneo. Junto con MF-28 -NO_GO, la exploracion alternativa no es la palanca- y MF-29-EMP -OBJETIVO, mas presupuesto del mismo buscador no rinde-, esto justifica dirigir el siguiente esfuerzo experimental a preparacion, que es cartera B y no C. Justifica el movimiento de recursos; no cierra la pregunta. LIMITES: asociaciones sobre n=7, sin gates y sin causalidad; no relee MF-33 ni depende de MF-33-A3.

Métricas registradasRecorded metrics

analisis_id
MF-33-CRUCES
tipo
mediciones de asociacion sin gates de decision, sin computo nuevo
n_complejos
48

ReproducibilidadReproducibility

commit
9e385a7f2c (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
complejoscomplexes
48
hashes SHA-256
5
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-09Los cristales que puntuan absurdamente mal no son sistemas a los que les FALTA algo sino a los que les SOBRA: el pipeline conserva todas las aguas -politica que nadie declaro, hallazgo abierto de REC-08-EXT- incluidas las que el ligando desplaza, y un agua que ocupa el sitio choca con el cristal y dispara el termino de repulsion.InconclusoInconclusiven=116

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
InconclusoInconclusive · Ejecutado y declarado sin conclusión. No se reclasifica a posteriori.Executed and declared without a conclusion. It is not reclassified afterwards.
Decisión del manifestManifest decision
INCONCLUSIVE
HipótesisHypothesis
Los cristales que puntuan absurdamente mal no son sistemas a los que les FALTA algo sino a los que les SOBRA: el pipeline conserva todas las aguas -politica que nadie declaro, hallazgo abierto de REC-08-EXT- incluidas las que el ligando desplaza, y un agua que ocupa el sitio choca con el cristal y dispara el termino de repulsion.
Criterio prerregistradoPre-registered criterion
G1 de validez antes del primario: score_con_aguas reproduce el score_cristal de MF-13 dentro de 0.10 en >=95%. Umbral de absurdo declarado antes: score >= -3.0, de la lectura sellada de MF-13. PRIMARIO: f = fraccion de los ABSURDOS que bajan de -3.0 al quitar solo las aguas que chocan. f>=0.70 con delta de control <0.5 => LAS AGUAS BLOQUEAN; f<=0.30 => NO SON LA EXPLICACION; intermedio => MIXTO.
ProtocoloProtocol
Ver prerregistro sellado REC-09-PRE, anterior a esta corrida. Sin recomputar ningun docking. Por complejo: contar aguas del receptor con algun atomo a <= d_clash=2.6 A de un atomo pesado del ligando cristalografico -mismo d_clash que MF-28 declaro antes de correr-; score_only del cristal contra rec.pdbqt; score_only contra el mismo receptor sin esas aguas y solo esas; delta = con - sin. Cristal preparado RIGIDO, identico a MF-13, caja 25 A, semilla 42. Los dos scores de cada pareja salen del MISMO PDBQT de ligando, asi que la penalizacion torsional se cancela en el delta. Contenedor moldesign-lab del servidor, 116 complejos, 233 s.
Razón de la decisiónReason for the decision
Lectura MIXTO por la regla preregistrada, y por tres centesimas: f = 2 de 6 = 0.3333, justo por encima del corte de 0.30 que habria dado LAS AGUAS NO SON LA EXPLICACION. El prerregistro prohibe mover el umbral tras ver la fraccion, asi que queda MIXTO y la decision es INCONCLUSIVE respecto a la pregunta binaria -la misma situacion que dejo a MF-13 en MIXTO tres milesimas por debajo de su corte-. G1 pasa perfecto: score_con_aguas reproduce el score_cristal de MF-13 en 116 de 116 dentro de 0.10 kcal/mol, asi que se esta puntuando exactamente lo mismo. EL MECANISMO ES REAL Y ENORME DONDE APLICA, y eso es lo que vale aunque el gate salga MIXTO. 1fkh -el complejo insignia que MF-13 nombro como sistema mal montado, con -1.631- pasa de +2.550 a -10.369 al quitar DOS moleculas de agua: 12.919 kcal/mol de artefacto producidos por dos aguas que el pipeline conservo y el ligando desplaza. 1eld pasa de -0.610 a -4.093 y tambien normaliza. Los otros cuatro absurdos no: 1afl y 1ew8 tienen aguas bloqueantes pero de efecto pequeno -0.426 y 0.324-, y 1d7i y 1ew9 NO TIENEN NINGUNA, de modo que su absurdo tiene otra causa y este experimento la descarta explicitamente. EL CONTROL SALE LIMPIO, que era la mitad del diseno: entre los 110 no absurdos el delta mediano es 0.000, es decir, quitar las aguas bloqueantes no mejora a los sanos y la mejora de 1fkh no es un efecto global disfrazado. Pero el maximo de ese control es 4.008 y 11 de los 110 se mueven mas de 0.5 kcal/mol, lo que dice que el problema NO se limita a los seis raros. ALCANCE MEDIDO: 26 de 116 complejos tienen al menos un agua bloqueante. CONSECUENCIA PARA LA POLITICA DE AGUAS, que era la razon de correrlo: conservarlas todas tiene consecuencia demostrada y cuantificada sobre la funcion de puntuacion, no es una decision inocua. Queda establecido que la politica hay que DECIDIRLA; NO queda establecido que la respuesta sea quitarlas todas, y el prerregistro lo prohibe expresamente, porque el criterio es puramente geometrico y no distingue un agua desplazable de una estructural que media un puente de hidrogeno. LO QUE ABRE: 1d7i y 1ew9 puntuan absurdo con cero aguas bloqueantes; la siguiente hipotesis son los cofactores no metalicos -HETATM que no son ni agua ni metal, que nadie ha inventariado- o la protonacion. LIMITES: no decide la politica por si solo porque no mide el efecto sobre docking de novo, que es donde una pose explora el sitio y choca con aguas que el cristal no toca; no relee MF-13, cuyo ~30% de puntuacion incluye complejos que no son absurdos.

Métricas registradasRecorded metrics

tipo
medicion de consecuencia con regla de lectura preregistrada
duration_seconds
232.72
n_complejos
116
n_ok
116

ReproducibilidadReproducibility

commit
9e385a7f2c (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
duraciónduration
4 min
complejoscomplexes
116
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-09-PRELos cristales que puntuan absurdamente mal no son sistemas a los que les FALTA algo, sino a los que les SOBRA: el pipeline conserva todas las aguas -politica que nadie declaro, hallazgo abierto de REC-08-EXT- incluidas las que el ligando desplaza al unirse, y un agua que ocupa el sitio choca con el ligando cristalografico y dispara el termino de repulsion de Vina.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Los cristales que puntuan absurdamente mal no son sistemas a los que les FALTA algo, sino a los que les SOBRA: el pipeline conserva todas las aguas -politica que nadie declaro, hallazgo abierto de REC-08-EXT- incluidas las que el ligando desplaza al unirse, y un agua que ocupa el sitio choca con el ligando cristalografico y dispara el termino de repulsion de Vina.
Criterio prerregistradoPre-registered criterion
G1 DE VALIDEZ, ANTES DEL PRIMARIO: score_con_aguas reproduce el score_cristal de MF-13 dentro de 0.10 kcal/mol en >=95% de los complejos; si no reproduce, no se esta puntuando lo mismo que MF-13 y nada se lee. UMBRAL DE ABSURDO DECLARADO ANTES Y NO AJUSTADO: score_cristal >= -3.0 kcal/mol, que no sale de mirar estos datos sino de la lectura ya sellada de MF-13, que nombro -1.631 (1fkh) y -2.181 (1ew8) como sistemas mal montados. PRIMARIO: f = fraccion de los ABSURDOS que se normalizan -bajan de -3.0- al quitar solo las aguas que chocan. TRES LECTURAS ESCRITAS ANTES: (1) f>=0.70 Y delta mediano en los NO absurdos < 0.5 => LAS AGUAS BLOQUEAN, conservarlas todas es defecto de produccion y la politica hay que cambiarla, no solo declararla; (2) f<=0.30 => LAS AGUAS NO SON LA EXPLICACION, hay que buscar en cofactores no metalicos o protonacion; (3) intermedio, o f>=0.70 con delta de control >=0.5 => MIXTO, porque si quitar aguas mejora a todos por igual el efecto es global y no explica el absurdo. EL CONTROL DE LOS NO ABSURDOS ESTA EN LA REGLA A PROPOSITO: sin el, cualquier mejora se leeria como confirmacion. PROHIBIDO: mover d_clash o el umbral de -3.0 despues de ver los resultados; leer esto como que la respuesta sea quitar todas las aguas, porque el criterio es puramente geometrico y no distingue agua desplazable de agua estructural.
ProtocoloProtocol
Sin recomputar ningun docking. Para cada complejo de train: contar aguas del receptor con algun atomo a <= d_clash=2.6 A de un atomo pesado del ligando cristalografico -d_clash es el mismo valor que MF-28 declaro antes de correr, se reusa y no se ajusta-; score_only del cristal contra rec.pdbqt tal cual; score_only contra el mismo receptor SIN esas aguas y solo esas; delta = con - sin. El cristal se prepara RIGIDO, el rigid_str de molflex.escribir_pdbqt, identico a MF-13, misma caja de 25 A, misma semilla 42, mismo binario. Leccion de MF-29-EMP-COR aplicada: los dos scores de cada pareja salen del MISMO PDBQT de ligando, asi que la penalizacion torsional se cancela en el delta. Contenedor moldesign-lab del servidor. Script: scripts/run_rec09_aguas_bloqueantes.py.
Razón de la decisiónReason for the decision
Prerregistro sellado ANTES de ejecutar, con el hash del script. La hipotesis se invierte respecto a lo que MF-13 supuso: aquel apunto a que FALTASE un cofactor, un metal o un agua estructural, pero REC-08-EXT ya midio que la preparacion no pierde nada -42 de 42 metales del sitio y 1788 de 1788 aguas conservadas-. Si no falta nada, sobra: 1ew8 conserva 511 atomos de agua en su rec.pdbqt y es justo el que MF-29-EMP-COR vio cruzar a +1.714 preparado flexible. Los dos parametros que podrian ajustarse a conveniencia estan fijados de fuentes anteriores e independientes: d_clash=2.6 A viene del prerregistro de MF-28 y el umbral de -3.0 de la lectura sellada de MF-13. El control de los no absurdos entra en la regla de lectura, no como analisis posterior, precisamente para que una mejora global no se pueda leer como confirmacion. Se declara ademas que esto NO decide la politica de aguas por si solo -falta el efecto sobre docking de novo- y que su lectura maxima es que la politica hay que decidirla, no que la respuesta sea quitarlas todas.

ReproducibilidadReproducibility

commit
9e385a7f2c (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-28El bolsillo no tiene sitio donde poner un mapaRefutaciónRefutationArtículoPapern=48

Cuatro de cada mil configuraciones muestreadas en el bolsillo no chocan. Un roadmap probabilístico convierte 4 de 33 donde Vina convierte 26, y el porqué vale más que el veredicto: la búsqueda sesgada no es un defecto a corregir, es lo que hace viable el problema.

Quedaban dos vías abiertas para reabrir la cartera de colocación. Una era más presupuesto del mismo buscador —MF-29-EMP la cerró—. La otra era otra estrategia de exploración: si Vina no llega a la cuenca nativa, quizá el problema sea cómo busca, no cuánto.

La forma canónica de esa idea viene de planificación de movimientos: construir un roadmap probabilístico. Se muestrean configuraciones del ligando, se descartan las que chocan, se conectan las que quedan con un planificador local, y se explora el grafo resultante. Es exploración sin sesgo, deliberadamente ciega al gradiente que Vina sí usa.

La hipótesis preregistrada fue directa: con el mismo CPU, el roadmap alcanza la cuenca nativa que la búsqueda sesgada de Vina no alcanza.

Qué salió

Misma cohorte congelada de 48, mismo ensemble ETKDG, y paridad de CPU medida: el roadmap recibe exactamente el wall-clock que Vina consumió en ese complejo.

Estrato de colocación (n=33)Vina exh=8Roadmap
Alcanza ≤2 Å264
RMSD mediano1.184 Å4.437 Å
CPU mediana3,822 s3,822 s (por construcción)

McNemar exacto pareado: b = 1 complejo donde gana el roadmap, c = 23 donde gana Vina, p = 0.0.

En control (n=15) el patrón se repite: Vina 15 de 15, roadmap 7, b = 0, c = 8, p = 0.0078.

El MDE preregistrado pedía b ≥ 6 con c = 0 para declarar mejora. Se obtuvo b = 1 con c = 23. No es que la mejora no alcance significación: es pérdida masiva y significativa en la dirección contraria.

La hipótesis queda falsificada en la dirección declarada.

El porqué, que es lo que vale

Un NO_GO que sólo dice «no funcionó» no compra nada. Éste dice por qué, y la cifra es el secundario descriptivo:

Fracción mediana de nodos libres
Estrato de colocación0.00417
Control0.0213

Cuatro de cada mil configuraciones muestreadas no chocan. En dos complejos del control el muestreo no encontró ninguna configuración libre en absoluto.

Un roadmap probabilístico uniforme necesita espacio libre donde poner nodos. El bolsillo de unión no lo tiene: es un volumen tan ajustado al ligando que el muestreo ciego cae casi siempre dentro de la proteína. Con cuatro nodos útiles por mil intentos, el grafo que se construye no describe el espacio de configuraciones — describe el ruido que sobrevivió al filtro de choque.

La búsqueda sesgada de Vina no es un defecto a corregir con mejor exploración. Es lo que hace viable el problema.

Ese sesgo —seguir el gradiente del campo de puntuación en vez de muestrear uniformemente— es exactamente lo que convierte un espacio casi enteramente prohibido en uno recorrible. Quitarlo no libera la búsqueda: la deja sin suelo.

Lo que cierra

Junto con MF-29-EMP, que midió que subir 64× el presupuesto del mismo buscador mueve tres complejos de 48, esto cierra las dos vías de exploración que quedaban abiertas. La cartera de colocación no se reabre por ahí, y el presupuesto de atención se va a la hipótesis alternativa.

Y encaja con el paisaje que MF-15-EXT y MF-14 habían medido: sin embudo que guíe desde lejos, con la cuenca estrecha y rugosa, y ahora además sin espacio libre donde muestrear a ciegas. Las tres propiedades apuntan al mismo sitio: la información de la función de puntuación no es un lujo del método, es el único asidero.

Dos notas de integridad, ambas declaradas

Desviación de protocolo, declarada antes de correr. El espacio torsional se discretiza por el ensemble ETKDG en vez de muestrearse continuo. La justificación es que MF-02A-EXT midió que el confórmero necesario está disponible en el 83.9% de los casos a K=30. Un roadmap con torsiones continuas es otro experimento, no éste.

**El metrics.json se reconstruyó desde per_complex.jsonl.** La fase de resumen del runner cayó con un TypeError —median() recibió None de los dos complejos sin configuración libre—. Los 48 complejos se ejecutaron completos y no se recomputó ningún docking: la reconstrucción sólo rehace la agregación. La métrica se verificó contra molflex.rmsd_pose_pocket en 46 complejos con delta máximo 0.0 a cuatro decimales.

Una limitación estructural de este registro

Es un sellado retroactivo. El experimento corrió completo el 2026-08-19 —48 de 48 complejos, 40,247 s— y sus resultados se commitearon esa misma noche, pero el directorio se quedó sin manifest.json mientras el documento del programa lo daba por sellado NO_GO. El barrido del registro detectó el hueco y esto lo cierra sin recomputar nada.

El prerregistro sí es anterior a la corrida: MF-28-PRE se commiteó el 2026-08-19 a las 00:44, y la corrida empezó después. Lo que faltaba era el artefacto, no la declaración.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
El fallo de colocacion es de ESTRATEGIA DE EXPLORACION: un roadmap probabilistico del espacio libre del bolsillo alcanza la cuenca nativa que la busqueda sesgada de Vina no alcanza, con el mismo presupuesto de CPU.
Criterio prerregistradoPre-registered criterion
PRIMARIO: fraccion de complejos donde el roadmap alcanza <=2 A (rmsd_pose_pocket, sin alineamiento) superior a la de Vina, McNemar exacto bilateral pareado. MDE DECLARADO ANTES (seccion 20.9): con n=33 en COLOCACION y c=0, McNemar exacto exige b>=6 para p<0.05; 3-5 conversiones NO alcanzan significacion y se reportan como no concluyentes, nunca como tendencia. SECUNDARIO descriptivo sin gate: fraccion de nodos libres, tamano de la componente conexa mayor y si el mejor nodo cae en ella. LO FALSIFICA: si el roadmap no alcanza la cuenca con el mismo CPU, el problema no es la estrategia de exploracion.
ProtocoloProtocol
Prerregistro MF-28-PRE, commiteado el 2026-08-19 00:44 en 9117a17, anterior a la corrida. Doc 49 seccion 20.11(a). Cohorte congelada de los 48 de MF-02F/cohorte.json (33 COLOCACION + 15 CONTROL), la misma de MF-25 y MF-13. DESVIACION DECLARADA: T^n se discretiza por el ensemble ETKDG y no se muestrea continuo, justificado en que MF-02A-EXT midio la conformacion disponible en 83.9% a K30. Nodo LIBRE si ningun atomo pesado del ligando queda a menos de d_clash=2.6 A de uno del receptor; aristas por k-vecinos con planificador local de interpolacion lineal + SLERP a 5 puntos. Brazo control Vina exh=8 semilla 42 sobre el MISMO ensemble. PARIDAD POR CPU MEDIDA: el roadmap recibe el wall-clock que consumio Vina en ese complejo, porque Vina no expone su conteo de evaluaciones. Script: scripts/run_mf28_roadmap.py.
Razón de la decisiónReason for the decision
SELLADO RETROACTIVO el 2026-08-20. El experimento corrio completo el 2026-08-19 -48 de 48 complejos, 40247 s, resultados commiteados a las 21:30 en b010641- pero su directorio se quedo SIN manifest.json, y el paragrafo 1 del roadmap lo daba por sellado NO_GO desde entonces. El barrido del registro lo detecto; esto cierra el hueco sin recomputar nada. Su prerregistro MF-28-PRE se commiteo el 2026-08-19 a las 00:44 en 9117a17, anterior a la corrida. LA HIPOTESIS QUEDA FALSIFICADA EN LA DIRECCION DECLARADA. En COLOCACION (n=33) Vina alcanza <=2 A en 26 complejos y el roadmap en 4. McNemar exacto pareado: b=1 complejo donde gana el roadmap, c=23 donde gana Vina, p=0.0. El MDE preregistrado exigia b>=6 con c=0 para declarar mejora; se obtuvo b=1 con c=23, es decir, no solo no hay mejora sino perdida masiva y significativa. RMSD mediano 1.184 A para Vina contra 4.437 A para el roadmap. En CONTROL (n=15) el patron se repite: Vina 15 de 15, roadmap 7, b=0 c=8 p=0.0078. EL PORQUE, QUE ES LO QUE VALE: la fraccion mediana de nodos libres es 0.00417 en COLOCACION -cuatro de cada mil configuraciones muestreadas no chocan- y 0.0213 en CONTROL. El espacio libre del bolsillo es tan escaso que un roadmap probabilistico uniforme casi no encuentra donde poner nodos, y en 2 complejos de CONTROL no hallo NINGUNA configuracion libre. La busqueda sesgada de Vina no es un defecto a corregir con mejor exploracion: es lo que hace viable el problema. CONSECUENCIA: la cartera C no se reabre por la via de la estrategia de exploracion, y H2 se lleva el presupuesto de atencion. Junto con MF-29-EMP -que midio que subir el presupuesto del mismo buscador tampoco rinde- cierra las dos vias de exploracion que quedaban abiertas. NOTA DE INTEGRIDAD DEL ARTEFACTO, ya presente en metrics.json y que se conserva: el metrics.json se reconstruyo desde per_complex.jsonl tras un TypeError en la fase de resumen -median() recibio None de los 2 complejos sin configuracion libre-. Los 48 se ejecutaron completos y no se recomputo ningun docking. La metrica se verifico contra molflex.rmsd_pose_pocket en 46 complejos con delta_max 0.0 a 4 decimales.

Métricas registradasRecorded metrics

tipo
intervencion pareada (estrategia de exploracion)
duration_seconds
40247.0
nota_reconstruccion
metrics.json reconstruido desde per_complex.jsonl tras un TypeError en la fase de resumen: median() recibio None de 2 complejos donde el roadmap no hallo NINGUNA configuracion libre. Los 48 complejos se ejecutaron completos; no se recomputo ningun docking.
n_complejos
48
n_ok
48

ReproducibilidadReproducibility

commit
5a32d16389 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
duraciónduration
11 h 11 min
complejoscomplexes
48
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-29-EMP-PREEn complejos de <=6 torsiones el optimo que Vina alcanza a exhaustiveness=8 ES su optimo global. Si un presupuesto 64x encuentra scores estrictamente mejores, el fallo restante es de BUSQUEDA; si no los encuentra, el optimo global de la funcion no es la pose nativa y el fallo es de OBJETIVO.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
En complejos de <=6 torsiones el optimo que Vina alcanza a exhaustiveness=8 ES su optimo global. Si un presupuesto 64x encuentra scores estrictamente mejores, el fallo restante es de BUSQUEDA; si no los encuentra, el optimo global de la funcion no es la pose nativa y el fallo es de OBJETIVO.
Criterio prerregistradoPre-registered criterion
DESCRIPTIVO, sin umbral de decision. Cantidad primaria: fraccion de complejos donde min(score exh=512) < min(score exh=8) - delta, con delta=0.10 kcal/mol declarado ANTES como ruido numerico. REGLA DE LECTURA PREREGISTRADA: >=0.30 => BUSQUEDA subotima incluso en baja dimension; <0.10 => la busqueda satura y el fallo restante es de OBJETIVO; 0.10-0.30 => MIXTO.
ProtocoloProtocol
doc 49 seccion 20.11(b), METODO SUSTITUIDO: la jerarquia de Lasserre se declara NO IMPLEMENTABLE en este hardware (ver decision_rationale) y se sustituye por cota superior empirica del minimo global por presupuesto masivo. Cohorte: 48 complejos con n_torsiones<=6 de los 116 de MF-24. Brazos: exh=8 semillas {42,1,2,3,4} y exh=512 semillas {42,7,13}, num_modes=9, caja 25 A, receptor y caja identicos al docking v2. Tercer testigo REUSADO de MF-13 (score_cristal_local), sin recomputo.
Razón de la decisiónReason for the decision
Prerregistro de MF-29-EMP, sellado RETROACTIVAMENTE el 2026-08-20 al detectarse en el barrido del registro que habia quedado en status created y decision PENDING. Procedencia verificable y anterior a la corrida: su manifest.json se commiteo el 2026-08-19 a las 00:44 en 9117a17, y MF-29-EMP arranco despues y cerro el 2026-08-20 tras 34 h. Contenido sin modificar. IMPORTANTE PARA EL REGISTRO: al sellar MF-29-EMP se cito su docstring como prerregistro, porque este artefacto no se localizo entonces; el prerregistro formal es ESTE, y coincide con aquel en lo que decide -cantidad primaria, delta=0.10 declarado antes como ruido numerico, y la regla de lectura >=0.30 BUSQUEDA, <0.10 OBJETIVO, intermedio MIXTO-. La lectura sellada de MF-29-EMP no cambia: 3 de 48 = 0.0625 sigue siendo OBJETIVO bajo esta regla.

ReproducibilidadReproducibility

commit
642f32466c
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-28-PREEl fallo de colocacion es de ESTRATEGIA DE EXPLORACION: un roadmap probabilistico del espacio libre del bolsillo alcanza la cuenca nativa que la busqueda sesgada de Vina no alcanza, con el mismo presupuesto de CPU.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El fallo de colocacion es de ESTRATEGIA DE EXPLORACION: un roadmap probabilistico del espacio libre del bolsillo alcanza la cuenca nativa que la busqueda sesgada de Vina no alcanza, con el mismo presupuesto de CPU.
Criterio prerregistradoPre-registered criterion
PRIMARIO: fraccion de complejos donde el roadmap alcanza <=2 A (rmsd_pose_pocket, sin alineamiento) superior a la de Vina, McNemar exacto bilateral pareado. MDE DECLARADO ANTES (seccion 20.9): con n=33 en COLOCACION y c=0 perdidas, McNemar exacto exige b>=6 para p<0.05 (2*0.5^6=0.031). El efecto minimo detectable son 6 COMPLEJOS ADICIONALES CONVERTIDOS de los 30 que hoy fallan; 3-5 conversiones NO alcanzan significacion y se reportaran como no concluyentes, nunca como tendencia. SECUNDARIO descriptivo, sin gate: fraccion de nodos libres, tamano de la componente conexa mayor y si el mejor nodo cae en ella. LO FALSIFICA: si el roadmap no alcanza la cuenca con el mismo CPU, el problema no es la estrategia de exploracion.
ProtocoloProtocol
doc 49 seccion 20.11(a). Cohorte congelada: los 48 de MF-02F/cohorte.json (33 COLOCACION + 15 CONTROL), la misma de MF-25 y MF-13. DESVIACION DECLARADA: el espacio es SE(3) x T^n; T^n se DISCRETIZA por el ensemble ETKDG (cada conformero es un nodo modal, seccion 20.2), no se muestrea continuo. Justificacion: MF-02A-EXT midio que la conformacion esta disponible en 83.9% a K30, asi que la discretizacion no es el cuello. Nodos: conformero uniforme del ensemble x posicion uniforme en la caja de 25 A x rotacion uniforme (cuaternion). Un nodo es LIBRE si ningun atomo pesado del ligando queda a menos de d_clash=2.6 A de un atomo pesado del receptor y el ligando cabe en la caja; d_clash declarado ANTES. Aristas: k-vecinos por RMSD de colocacion con planificador local por interpolacion lineal + SLERP, 5 puntos intermedios, arista valida si todos son libres. Brazo control: Vina exh=8 semilla 42 sobre el MISMO ensemble, corrido en esta misma maquina. PARIDAD DE PRESUPUESTO POR CPU MEDIDA, no por evaluaciones de energia: Vina no expone su conteo de evaluaciones, asi que el roadmap recibe exactamente el wall-clock que consumio Vina en ese complejo. El conteo de chequeos de colision se reporta como secundario.
Razón de la decisiónReason for the decision
Prerregistro de MF-28, sellado RETROACTIVAMENTE el 2026-08-20 al detectarse en el barrido del registro que habia quedado en status created y decision PENDING. La procedencia es verificable y anterior a la corrida pese al sello tardio: su manifest.json se commiteo el 2026-08-19 a las 00:44 en 9117a17 -experiment(mf-28, mf-29-emp): prerregistros y runners de la via del generador- mientras que los resultados de MF-28 se commitearon el mismo dia a las 21:30 en b010641. El contenido no se ha modificado: declara la cohorte congelada de los 48 de MF-02F, la desviacion de discretizar T^n por el ensemble ETKDG con su justificacion en MF-02A-EXT, d_clash=2.6 A declarado antes, la paridad de presupuesto por CPU medida -porque Vina no expone su conteo de evaluaciones- y el MDE de la seccion 20.9: con n=33 y c=0, McNemar exacto exige b>=6 para p<0.05, de modo que 3-5 conversiones se reportan como no concluyentes y nunca como tendencia.

ReproducibilidadReproducibility

commit
642f32466c (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-29-EMP-EXT-PRE1mmr y 1nm6 no fallaron en el brazo masivo de MF-29-EMP: expiraron. Con un plazo suficiente completan sus tres semillas a exh=512 y la cohorte queda en 50 de 50.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
1mmr y 1nm6 no fallaron en el brazo masivo de MF-29-EMP: expiraron. Con un plazo suficiente completan sus tres semillas a exh=512 y la cohorte queda en 50 de 50.
Criterio prerregistradoPre-registered criterion
Union de los 48 ya leidos mas los recuperados, con los umbrales de MF-29-EMP SIN TOCAR: f = fraccion donde min(exh=512) < min(exh=8) - 0.10; >=0.30 BUSQUEDA, <0.10 OBJETIVO, intermedio MIXTO. CASO DE BORDE DECLARADO ANTES DE CORRER, que es la razon de escribir este prerregistro: hoy son 3 de 48 = 0.0625; si ninguno mejora 3/50 = 0.0600 OBJETIVO; si uno mejora 4/50 = 0.0800 OBJETIVO; si los DOS mejoran 5/50 = 0.1000 y eso es MIXTO, porque la regla dice < 0.10 para OBJETIVO y 0.1000 no es menor que 0.10. Ese tercer desenlace CAMBIARIA la lectura de MF-29-EMP y queda escrito antes de mirar. PROHIBIDO: mover el umbral de 0.10 si cae el caso de borde; re-sellar MF-29-EMP, que queda leido sobre 48 con su limitacion declarada; leer nada de esto como certificado, porque MF-29 sigue ABIERTO.
ProtocoloProtocol
Extension de cobertura de MF-29-EMP, no re-sellado. Protocolo IDENTICO al brazo masivo de MF-29-EMP -conf0.flex.pdbqt, mismo receptor, caja 25 A, num_modes 9, exh=512, semillas {42,7,13}, --cpu 1- salvo que el timeout deja de ser la constante 14400 en duro y pasa a parametro, con 72000 s por defecto. El brazo de produccion NO se recomputa: se reusan los valores ya medidos en MF-29-EMP (1mmr -6.608, 1nm6 -8.724). Contenedor moldesign-lab del servidor. Script: scripts/run_mf29empext_recuperar_expirados.py.
Razón de la decisiónReason for the decision
Prerregistro sellado ANTES de ejecutar, con el hash del script. Existe por una sola razon: el caso de borde. Recuperar dos complejos de una cohorte de 50 parece trivial, pero con 3 de 48 = 0.0625 basta con que los DOS mejoren para dar 5 de 50 = 0.1000, y la regla de MF-29-EMP dice < 0.10 para OBJETIVO, asi que 0.1000 cae en MIXTO y cambiaria una lectura ya sellada. Escribirlo antes de mirar es lo unico que impide discutir el umbral despues. La probabilidad a priori es baja -3 de 48 mejoraron y la ganancia maxima de toda la cohorte es 0.282- pero no es cero. Se declara ademas que esto NO re-sella MF-29-EMP: aquel queda leido sobre 48 con su limitacion declarada, y esta es una extension con registro propio, como REC-08-EXT o FEP-02-EXT. El unico cambio de protocolo es el plazo, que pasa de constante en duro a parametro; la justificacion esta medida en el failures.jsonl de MF-29-EMP -43200.4 y 43200.6 s, tres veces 14400- y en que el brazo de produccion de estos dos tardo 569 y 736 s por semilla a exh=8, unas diez veces la media de la cohorte.

ReproducibilidadReproducibility

commit
78861c5b5c (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-13-ESCALAMF-13 arrastra el mismo desajuste de escala que MF-29-EMP-COR acaba de medir: comparo su cristal RIGIDO (TORSDOF 0) contra score_top1_dock del conjunto v2, y si esas poses son flexibles la comparacion no es homogenea y su diagnostico ~70% busqueda seria un artefacto.MediciónMeasurementn=116

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
MF-13 arrastra el mismo desajuste de escala que MF-29-EMP-COR acaba de medir: comparo su cristal RIGIDO (TORSDOF 0) contra score_top1_dock del conjunto v2, y si esas poses son flexibles la comparacion no es homogenea y su diagnostico ~70% busqueda seria un artefacto.
Criterio prerregistradoPre-registered criterion
COMPROBACION SIN GATES DE DECISION PROPIOS. Cantidad: el gate G2 de MF-13 con todas las fuentes frente al mismo gate restringido a poses rigidas, leidos con los umbrales que MF-13 preregistro (>=0.70 BUSQUEDA, <=0.30 PUNTUACION, intermedio MIXTO). Si la fraccion no se mueve, MF-13 no tiene el desajuste y la sospecha registrada al cerrar MF-29-EMP-COR se retira. LIMITACION DECLARADA: no relee MF-13 ni lo toca -esta sellado- y solo comprueba el conteo del gate, no la magnitud de la ventaja del cristal.
ProtocoloProtocol
MEDICION SIN COMPUTO NUEVO sobre datos ya sellados. Lee data/pose_selector_dataset/v2/poses_train.jsonl y clasifica la fuente del top-1 de cada complejo segun la clasificacion de protocolo de RC-F0-V2-EXT, confirmada en molflex.docking_conformero donde la fuente molflex pasa a --ligand el conf{cid}.rigid.pdbqt. Recalcula el gate G2 de MF-13 -fraccion de COLOCACION donde el cristal relajado gana al mejor dock- restringiendo el mejor dock a poses de fuente rigida, que es la comparacion a escala homogenea con su cristal rigido. Script: scripts/analisis_mf13_escala_fuentes.py.
Razón de la decisiónReason for the decision
LA SOSPECHA SE RETIRA: MF-13 no arrastra el desajuste de escala. En 102 de los 116 complejos el top-1 que MF-13 uso viene de la fuente molflex, que docka conf{cid}.rigid.pdbqt -confirmado en molflex.docking_conformero, donde la variable que se pasa a --ligand es rig = w / conf{cid}.rigid.pdbqt-, es decir TORSDOF 0, la MISMA escala que su cristal rigido. Los otros 14 vienen de flexible_redock (12) y ruta_a (2). Restringiendo el mejor dock a poses de fuente rigida, el gate G2 de COLOCACION queda IDENTICO: 23 de 33 = 0.6970 en ambos calculos, MIXTO en los dos. Ni un solo complejo cambia de veredicto, pese a que 6 de los 33 de COLOCACION tenian su top-1 en una fuente flexible. El motivo es aritmetico y va en la direccion correcta: una pose flexible paga la penalizacion torsional y por tanto puntua PEOR, de modo que el minimo por complejo tiende a salir igualmente de una pose rigida; cuando no sale, la ventaja que eso regala al cristal no basta para cruzar ningun umbral en estos datos. CONSECUENCIA: el diagnostico MIXTO de MF-13 -0.697, tres milesimas por debajo de BUSQUEDA- se sostiene tal como esta sellado, y con el se sostiene el ~70% de fallo de busqueda que el paragrafo 8 y la justificacion de la cartera C usan. Queda RETRACTADA la deuda de primera prioridad que se registro en la 12.2 del roadmap al cerrar MF-29-EMP-COR, y corregida la indicacion exploratoria que la acompanaba: aquel 0.396 -> 0.021 comparaba un cristal FLEXIBLE contra poses RIGIDAS, que es el desajuste inverso y tan invalido como el que MF-29-EMP-COR retiro. El error estuvo en suponer la flexibilidad de las poses del conjunto v2 en vez de comprobarla; RC-F0-V2-EXT ya habia medido que el 93.9% viene del protocolo rigido. LO QUE SIGUE EN PIE SIN CAMBIOS: MF-29-EMP-COR es correcto y su lectura no depende de esto, porque alli el desajuste era real -MF-13 rigido contra el brazo masivo de MF-29-EMP, que docka conf0.flex.pdbqt- y quedo medido en 1.055 kcal/mol de salto de escala. LIMITES: no relee MF-13 ni lo toca; solo comprueba el conteo del gate y no la magnitud de la ventaja del cristal, que si esta afectada en los 14 complejos de fuente flexible y no se corrige aqui.

Métricas registradasRecorded metrics

analisis_id
MF-13-ESCALA
tipo
comprobacion de homogeneidad de escala, sin computo nuevo
pregunta
el gate de MF-13 comparaba su cristal RIGIDO contra poses de que protocolo
n_complejos
116
conclusion
MF-13 NO arrastra el desajuste de escala: en la gran mayoria de complejos su top-1 viene de molflex, que docka el PDBQT rigido, la misma escala que su cristal rigido. Restringir el mejor dock a poses rigidas deja el gate identico.

ReproducibilidadReproducibility

commit
4de518238c (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
complejoscomplexes
116
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-29-EMP-COREl testigo comparaba un ligando sin torsiones contra uno con seisHallazgoFindingArtículoPapern=48

Vina divide la afinidad por (1 + w_rot · N_rot). El salto de escala vale 1.055 kcal/mol medianos y el déficit que se estaba leyendo como fallo de búsqueda valía 0.491. Noventa y ocho segundos de cómputo retiraron un instrumento.

MF-29-EMP se quedó INCONCLUSIVE porque sus dos instrumentos preregistrados apuntaban en direcciones opuestas. La cantidad primaria decía que subir el presupuesto no compra nada —3 de 48—. El testigo decía que la búsqueda fallaba en el 70.8% de los complejos.

Cuando dos instrumentos válidos se contradicen, no se elige el que gusta. Se mide si alguno de los dos es válido.

El defecto, en una línea

MF-13 escribía el rigid_str de molflex.escribir_pdbqt —ROOT / átomos / ENDROOT / TORSDOF 0— y MF-29-EMP dockeaba conf0.flex.pdbqt, con hasta seis torsiones activas.

Vina divide la afinidad por (1 + w_rot · N_rot).

Un ligando sin torsiones no paga esa penalización y uno con seis sí, para la misma pose.

Los dos números nunca estuvieron en la misma escala. El «déficit» del cristal contra el brazo masivo mezclaba física con contabilidad de torsiones.

El diseño: cambiar una sola cosa

Se repitió MF-13 con un único cambio —el flex_str en vez del rigid_str— y todo lo demás idéntico: mismo tipado de Meeko, mismo receptor, misma caja de 25 Å, misma semilla 42, mismo binario en el mismo contenedor.

Los umbrales se sellaron en MF-29-EMP-COR-PRE, antes de correr, con el hash del script: ≤0.30 → ARTEFACTO DE ESCALA, ≥0.70 → EL TESTIGO SOBREVIVE, intermedio → MIXTO.

Y antes del primario, dos gates de validez, porque una preparación distinta podría no ser comparable:

GateCriterioResultado
G1TORSDOF del cristal flexible == el de conf0.flex.pdbqt en ≥95%48/48 = 1.0
G2deriva mediana del --local_only ≤ 2.0 Å0.3425 Å

Los 0.3425 Å son casi idénticos a los 0.322 Å que derivó el rígido en MF-13: la relajación local mueve el cristal lo mismo en las dos preparaciones.

Qué salió

CantidadValor
Salto de escala (mismo cristal, flexible − rígido)+1.055 medianos · máx +3.895 · mín −0.293
Déficit que el testigo leía+0.491
Déficit corregido, a igual escala−0.406
Complejos donde el masivo puntúa mejor por >0.1036 de 48
Complejos donde el cristal aún gana4 de 48 → f = 0.0833

f = 0.0833 está por debajo de 0.30: ARTEFACTO DE ESCALA.

El artefacto solo —1.055— cubre de sobra el déficit que se estaba leyendo como fallo de búsqueda —0.491—. Corregido, el signo se invierte: lo que la búsqueda encuentra iguala o supera el valor del cristal relajado a igual escala.

Los cuatro que sobreviven, con su deriva local, que en todos es menor de 0.35 Å:

ComplejoEstratoCristal flexMasivoDéficitDeriva
1k9sRESTO−9.507−8.496+1.0110.237 Å
1addCONTROL−8.916−8.366+0.5500.229 Å
1ax0RESTO−6.513−5.976+0.5370.350 Å
1flrCONTROL−12.257−11.977+0.2800.221 Å

El modelo lo anticipaba, y por eso no bastaba

Con w_rot = 0.05846 y el TORSDOF real de cada complejo, la penalización sola predecía un déficit artefactual de 1.367 medianos, contra los 0.491 observados. Es decir: el artefacto por sí solo predecía más déficit del que había.

Eso motivó el experimento y no lo sustituye. Una decisión de gate no se cambia con un modelo algebraico de la fórmula del motor cuando medirlo cuesta 98 segundos.

Lo que pareció destapar, y no era — corregido el mismo día

Al cerrar este corrigendum se registró la sospecha de que MF-13 arrastraba el mismo desajuste, acompañada de una indicación exploratoria alarmante: sobre los 48 complejos del solapamiento, la fracción «el cristal gana al mejor dock» caía de 0.396 a 0.021.

Esa indicación era inválida y la sospecha se retiró. MF-13-ESCALA lo midió:

Complejos donde el top-1 de MF-13 viene de molflex —que dockea rígido—102 de 116
Gate G2 de COLOCACION, como se midió23/33 = 0.6970
El mismo gate restringido a poses de fuente rígida23/33 = 0.6970
Complejos que cambian de veredicto0

MF-13 comparaba rígido contra rígido: escala homogénea. El error estuvo en suponer que las poses del conjunto v2 eran flexibles en vez de comprobarlo —RC-F0-V2-EXT ya había medido que el 93.9% viene del protocolo rígido—. Y aquel 0.396 → 0.021 comparaba un cristal flexible contra poses rígidas: el desajuste inverso, tan inválido como el que este corrigendum retiró.

El MIXTO de MF-13 se sostiene tal como está sellado.

Nada de esto toca lo que se midió aquí. El desajuste que este corrigendum retiró era real —cristal rígido de MF-13 contra el brazo masivo, que sí dockea flexible— y su magnitud está medida.

Hallazgo lateral, exploratorio

1ew8 puntúa +1.714 preparado flexible: positivo. MF-13 ya lo había señalado —junto a 1fkh— como sistema probablemente mal montado, por su −2.181 rígido, y planteó que faltara un cofactor, un metal o una agua estructural, o que la protonación estuviese mal. Verlo cruzar a positivo refuerza esa hipótesis; no la establece.

Límites declarados

  1. **No reabre la cantidad primaria de MF-29-EMP** —masivo contra producción—, que ningún resultado de aquí puede tocar.
  2. No certifica optimalidad global. MF-29 sigue abierto.
  3. Cohorte de 48 y no 50: el brazo masivo de 1mmr y 1nm6 expiró, y eso lo recupera MF-29-EMP-EXT.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El deficit del testigo de MF-29-EMP es un artefacto de escala torsional: MF-13 puntuo el cristal como PDBQT RIGIDO (TORSDOF 0, sin penalizacion) y MF-29-EMP dockeo conf0.flex.pdbqt FLEXIBLE, y Vina divide la afinidad por (1 + w_rot * N_rot). Preparar el cristal con la MISMA flexibilidad debe eliminar el deficit o dejarlo por debajo del ruido.
Criterio prerregistradoPre-registered criterion
G1 TORSDOF del cristal flexible == el de conf0.flex.pdbqt en >=95%; G2 deriva mediana de --local_only <=2.0 A. PRIMARIA: f = fraccion donde score_cristal_local_FLEX < score_min(masivo) - 0.10. f<=0.30 ARTEFACTO DE ESCALA; f>=0.70 EL TESTIGO SOBREVIVE; intermedio MIXTO.
ProtocoloProtocol
Ver prerregistro sellado MF-29-EMP-COR-PRE, anterior a esta corrida. Repite MF-13 cambiando UNA SOLA COSA: escribe el flex_str de molflex.escribir_pdbqt en vez del rigid_str. Mismo tipado de Meeko, mismo rec.pdbqt, misma caja de 25 A, misma semilla 42, mismo --score_only y --local_only con re-puntuacion de la pose relajada. Contenedor moldesign-lab del servidor con vina 1.2.7, el mismo de MF-13 y MF-29-EMP. Cohorte: los 48 con lectura en MF-29-EMP.
Razón de la decisiónReason for the decision
Lectura ARTEFACTO DE ESCALA por la regla preregistrada en MF-29-EMP-COR-PRE, sellada antes de correr. Los dos gates de validez pasan primero: G1 = 1.0, el TORSDOF del cristal flexible coincide con el de conf0.flex.pdbqt en los 48 de 48, asi que es la misma molecula preparada igual; G2 = 0.3425 A de deriva mediana del --local_only, practicamente identica a los 0.322 A que derivo el rigido en MF-13, asi que el relajado sigue siendo el cristal y no se fue a otro sitio. PRIMARIA: f = 4 de 48 = 0.0833, dentro de la banda <=0.30. El testigo de MF-29-EMP era un artefacto de la escala torsional y no un fallo de busqueda. LA MAGNITUD DEL ARTEFACTO, MEDIDA: preparar el MISMO cristal como flexible en vez de rigido lo empeora 1.055 kcal/mol de mediana -hasta 3.895- porque paga la penalizacion que el TORSDOF 0 no pagaba. Eso cubre de sobra el deficit de 0.491 que el testigo leia. Corregida la escala, el deficit mediano se invierte a -0.406: el brazo masivo puntua MEJOR que el cristal relajado en 36 de 48, y solo 4 -1k9s +1.011, 1add +0.550, 1ax0 +0.537, 1flr +0.280- conservan ventaja para el cristal. La aritmetica previa lo habia anticipado -el modelo con w_rot=0.05846 predecia 1.367 de artefacto contra 0.491 observado- y la medicion la confirma sin depender de ella. CONSECUENCIA REGISTRADA EN MF-29-EMP: su testigo deja de ser instrumento valido, la cantidad primaria masivo-vs-produccion queda sola, y su lectura OBJETIVO se sostiene; su decision pasa de INCONCLUSIVE a GO por esta via y no por haber movido ningun umbral. Tambien queda anulado el confusor del confórmero que MF-29-EMP habia declarado: no hace falta, porque el deficit que se le iba a atribuir no existe. HALLAZGO LATERAL, no preregistrado y por tanto exploratorio: 1ew8 puntua +1.714 preparado flexible, positivo. MF-13 ya lo habia senalado -junto a 1fkh- como sistema probablemente mal montado por su -2.181 rigido; verlo cruzar a positivo refuerza esa hipotesis y no la establece. LIMITES: no reabre la cantidad primaria de MF-29-EMP, que no la toca ningun resultado de aqui; no certifica optimalidad global y MF-29 sigue ABIERTO; cohorte de 48 y no 50 porque el brazo masivo de 1mmr y 1nm6 expiro.

Métricas registradasRecorded metrics

tipo
corrigendum del testigo de MF-29-EMP con regla de lectura preregistrada
duration_seconds
98.37
n_complejos
48
n_ok
48

ReproducibilidadReproducibility

commit
83079e9e5f (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
duraciónduration
2 min
complejoscomplexes
48
hashes SHA-256
4
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-29-EMP-COR-PREEl deficit del testigo de MF-29-EMP es un artefacto de escala: MF-13 puntuo el cristal como PDBQT RIGIDO (TORSDOF 0, sin penalizacion torsional) y MF-29-EMP dockeo conf0.flex.pdbqt FLEXIBLE con hasta 6 torsiones, y Vina normaliza la afinidad dividiendo por (1 + w_rot * N_rot). Preparar el cristal con la MISMA flexibilidad debe eliminar el deficit o dejarlo por debajo del ruido.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El deficit del testigo de MF-29-EMP es un artefacto de escala: MF-13 puntuo el cristal como PDBQT RIGIDO (TORSDOF 0, sin penalizacion torsional) y MF-29-EMP dockeo conf0.flex.pdbqt FLEXIBLE con hasta 6 torsiones, y Vina normaliza la afinidad dividiendo por (1 + w_rot * N_rot). Preparar el cristal con la MISMA flexibilidad debe eliminar el deficit o dejarlo por debajo del ruido.
Criterio prerregistradoPre-registered criterion
GATES DE VALIDEZ PRIMERO. G1: el TORSDOF del cristal flexible coincide con el de conf0.flex.pdbqt en >=95% de los complejos; si no, no son la misma molecula preparada igual y el experimento NO SE LEE. G2: la deriva mediana de --local_only respecto del cristal se mantiene <=2.0 A; si se va, deja de ser el cristal. CANTIDAD PRIMARIA: f = fraccion de los 48 donde score_cristal_local_FLEX < score_min(masivo) - 0.10. TRES LECTURAS ESCRITAS ANTES: (1) f<=0.30 ARTEFACTO DE ESCALA, el testigo no sostiene fallo de busqueda y la cantidad primaria de MF-29-EMP queda como unico instrumento valido, con lo que su lectura OBJETIVO se sostiene sola y su decision pasa a GO; (2) f>=0.70 EL TESTIGO SOBREVIVE, el cristal gana tambien a igual escala y MF-29-EMP se queda INCONCLUSIVE; (3) intermedio MIXTO, se reporta la fraccion y MF-29-EMP se queda INCONCLUSIVE. PROHIBIDO: mover estos umbrales despues de ver f; reabrir la cantidad primaria de MF-29-EMP, que es masivo vs produccion y no la toca ningun resultado de aqui; leer cualquier cosa de esto como certificado de optimalidad global, porque MF-29 sigue ABIERTO.
ProtocoloProtocol
Corrigendum del testigo de MF-29-EMP. Repite MF-13 cambiando UNA SOLA COSA: escribe el flex_str de molflex.escribir_pdbqt en vez del rigid_str. Mismo tipado de Meeko, mismo receptor rec.pdbqt, misma caja de 25 A, misma semilla 42, mismo --score_only y --local_only con re-puntuacion de la pose relajada. Contenedor moldesign-lab del servidor, el mismo de MF-13 y MF-29-EMP, con vina 1.2.7 en /usr/local/bin/vina. Cohorte: los 48 con lectura en MF-29-EMP. Script sellado: scripts/run_mf29cor_escala_torsional.py.
Razón de la decisiónReason for the decision
Prerregistro sellado ANTES de ejecutar, con el hash del script que contiene la regla de lectura. Motivo del corrigendum: el testigo de MF-29-EMP comparo score_cristal_local de MF-13 -PDBQT RIGIDO, TORSDOF 0- contra el mejor score del brazo masivo -conf0.flex.pdbqt, hasta 6 torsiones activas-. Vina divide la afinidad por (1 + w_rot * N_rot), de modo que el rigido puntua sistematicamente mejor PARA LA MISMA POSE y las dos cifras no estan en la misma escala. La aritmetica con w_rot=0.05846 y el TORSDOF real predice un deficit artefactual mediano de 1.367 kcal/mol frente a 0.491 observado, es decir, el artefacto por si solo predice mas deficit del que hay; pero eso es un modelo de la formula y no una medicion, y una decision de gate no se cambia con un modelo cuando medirlo cuesta minutos. Se declaran dos gates de validez antes del primario -G1 mismo TORSDOF que conf0 en >=95%, G2 deriva del local_only <=2.0 A medianos- porque con torsiones libres el relajado puede alejarse mas que los 0.322 A que derivo el rigido de MF-13, y si se aleja deja de ser el cristal. Se declara explicitamente fuera de alcance la cantidad primaria de MF-29-EMP -masivo vs produccion, 3 de 48- que ningun resultado de aqui puede tocar, y se declara que MF-29 sigue ABIERTO pase lo que pase, porque una cota empirica no certifica optimalidad global.

ReproducibilidadReproducibility

commit
83079e9e5f (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-29-EMPSesenta y cuatro veces más búsqueda mueve tres complejos de cuarenta y ochoHallazgoFindingArtículoPapern=50

83.3 horas de CPU contra 4.1, y ninguna ganancia llega a un tercio de kcal/mol. El brazo masivo está saturado, que era justo la condición que le daba sentido a la cota.

Hay una pregunta que precede a todas las demás de esta cartera: ¿el buscador ya encontró lo que hay que encontrar?

Si Vina a exhaustiveness=8 ya está devolviendo el mínimo de su propia función, entonces todo lo que falla es la función, y no hay nada que arreglar en la búsqueda. Si no lo está, hay margen y el diagnóstico cambia por completo.

La forma correcta de contestarla sería certificar el óptimo global. Se intentó: la jerarquía de Lasserre se declaró no implementable en este hardware antes de correr. Lo que queda es una cota empírica —subir el presupuesto hasta que deje de comprar— y una cota empírica no certifica nada. Por eso MF-29, el certificado, sigue abierto.

El diseño: dos brazos sobre el mismo ligando flexible, exh=8 con 5 semillas contra exh=512 con 3. Cohorte de 50 con ≤6 torsiones en el PDBQT, que es la dimensión que Vina realmente busca.

Qué salió

La cantidad primaria se declaró antes: fracción de complejos donde el brazo masivo mejora el score por más de 0.10 kcal/mol, el ruido declarado.

Criterio preregistradoResultado
≥0.30 → BÚSQUEDA · <0.10 → OBJETIVO3/48 = 0.0625 → OBJETIVO

Los tres complejos que se mueven, y el tamaño del movimiento:

ComplejoEstratoTORSDOFProducciónMasivoGanancia
1d7iCOLOCACION2−2.371−2.653+0.282
1m2xRESTO6−5.882−6.120+0.238
1bn1RESTO6−7.143−7.268+0.125

Ninguno llega a un tercio de kcal/mol. En 45 de 48 la diferencia cabe en el ruido, y en 19 el masivo salió peor que producción —nunca por más de 0.05—.

EstratonMejoranGanancia medianaGanancia máxima
COLOCACION710.0030.282
CONTROL1200.0020.039
RESTO2920.0010.238

El coste: 83.3 h de CPU contra 4.1 h. Veinte veces el tiempo —con tres semillas contra cinco— para mover tres complejos menos de un tercio de kcal/mol.

Y la condición que valida la lectura: la desviación estándar entre semillas baja de 0.013 a 0.009 medianos. El brazo masivo está saturado. Si no lo estuviera, «no mejora» sólo significaría «no busqué bastante»; saturado, significa que ahí no hay nada más.

La enmienda: un instrumento se retiró, no un umbral

Esta lectura se selló primero como INCONCLUSIVE, y merece contarse por qué.

Había un segundo instrumento preregistrado, un testigo: MF-13 puntuó el cristal relajado sobre el mismo receptor y la misma caja, y su prerregistro lo declaró cota superior independiente del mínimo global. La regla era «si el cristal puntúa mejor que el brazo masivo, la búsqueda falló». El cruce daba 34 de 48 (70.8%) a favor del cristal, con déficit mediano de 0.49 kcal/mol. Parecía «aterriza en la cuenca y no baja al fondo».

Los dos instrumentos apuntaban en direcciones opuestas, y con dos instrumentos válidos en conflicto la única salida honesta era INCONCLUSIVE.

MF-29-EMP-COR —prerregistrado y sellado antes de correr— midió que uno de los dos no medía lo que decía medir: el testigo comparaba un ligando escrito con TORSDOF 0 contra uno con hasta seis torsiones activas, y Vina divide la afinidad por (1 + w_rot · N_rot). El salto de escala solo es de +1.055 kcal/mol medianos, más del doble del déficit que se estaba leyendo como fallo de búsqueda. Corregido a igual escala, el déficit se invierte: −0.406, el masivo puntúa mejor, y en 36 de 48.

No se movió ningún umbral ni se eligió instrumento después de ver el resultado. Se retiró un instrumento inválido, con un experimento propio, preregistrado, que costó 98 segundos.

Con el testigo fuera, la cantidad primaria queda sola, su lectura preregistrada OBJETIVO se sostiene, y la decisión pasa de INCONCLUSIVE a GO.

Queda anulado, además, el confusor del confórmero que esta lectura había declarado como siguiente paso obligado: no hay que comprobarlo, porque el déficit que se le iba a atribuir no existe.

Cuarenta y ocho y no cincuenta: dos plazos vencidos

1mmr y 1nm6 aparecen como VINA_FALLO en las tres semillas del brazo masivo, con t_total_s: 0, que parece una caída instantánea. No lo es: ese campo sólo suma las corridas con éxito. El tiempo de fila menos el del brazo de producción da 43,200.4 s y 43,200.6 s — exactamente 3 × el timeout=14400 que estaba en duro en el runner.

Es la trampa que este laboratorio ya tenía registrada: un timeout por debajo del tiempo de un complejo produce síntomas idénticos a un fallo real. A exh=512 estos dos necesitan más de cuatro horas por semilla.

MF-29-EMP-EXT los recuperó con el plazo convertido en parámetro. Mejora uno: la unión queda en 4/50 = 0.08, sigue siendo OBJETIVO, y la lectura de aquí no cambia.

Qué autoriza y qué no

Autoriza cerrar la vía de «subir el presupuesto del mismo buscador». Está medido, está saturado, y cuesta 20× para nada. Refuerza lo que MF-25 vio con 16×.

No autoriza declarar resuelto el diagnóstico de MF-13, que quedó MIXTO con un componente de búsqueda flagrante. Ese MIXTO se midió contra el mejor dock del conjunto v2 —otro protocolo, ~751 poses por complejo— y no contra el brazo masivo de aquí. Se comprobó además, en MF-13-ESCALA, que MF-13 no arrastra el desajuste de escala que el corrigendum retiró: su top-1 viene de molflex, que dockea el PDBQT rígido, y su gate queda idéntico —23/33 = 0.6970— al restringirlo a poses rígidas.

No certifica optimalidad global. Una cota empírica no es un certificado, y MF-29 sigue abierto.

No extrapola fuera del régimen de ≤6 torsiones, ni reabre MF-03/04/05/07/12: son parámetros del mismo buscador, y esto es una razón más para no volver ahí.

Nota de registro

El artefacto se creó retroactivamente al cerrar la corrida: el experimento se lanzó al servidor sin manifest, y created_at es del sellado y no del lanzamiento — el mismo caso que MF-14 y MF-19. El prerregistro real es el docstring del script, sellado por hash en assets_hashes, y es anterior a la corrida.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Separar BUSQUEDA de OBJETIVO en el regimen de <=6 torsiones: si un presupuesto 64x no encuentra scores mejores, la busqueda alcanza practicamente el minimo de la funcion de Vina y el fallo es de la funcion (OBJETIVO); si los encuentra, el fallo es del buscador (BUSQUEDA). Es una cota superior EMPIRICA del minimo global, NO un certificado: por eso MF-29-EMP y no MF-29, que sigue ABIERTO.
Criterio prerregistradoPre-registered criterion
Cantidad primaria: fraccion de complejos donde min(score exh=512) < min(score exh=8) - 0.10 kcal/mol, con 0.10 declarado antes como ruido numerico. Lectura preregistrada: >=0.30 BUSQUEDA, <0.10 OBJETIVO, intermedio MIXTO. Testigo declarado antes de correr: el cristal relajado localmente por MF-13 es cota superior independiente; si puntua mejor que el brazo masivo, la busqueda no llego al fondo. El estrato COLOCACION aporta n pequeno: comparacion pareada, nunca mediana por estrato.
ProtocoloProtocol
Prerregistro en el docstring de scripts/run_mf29emp_optimo_global.py. Contenedor moldesign-lab en el servidor local (4 nucleos, 4 workers). Cohorte de 50 complejos con TORSDOF<=6 en el propio PDBQT -la dimension que Vina busca, no el conteo de RDKit-. Ligando conf0.flex.pdbqt flexible, fijo y el mismo en los dos brazos, con su propio receptor y caja de 25 A y num_modes 9. Brazo produccion exh=8 semillas {42,1,2,3,4}; brazo masivo exh=512 semillas {42,7,13}. Se registra el mejor score de cada corrida y, como contexto, el mejor rmsd_pose_pocket. Sustituye a la jerarquia de Lasserre de la seccion 20.11(b) del doc. 49, declarada NO IMPLEMENTABLE en este hardware antes de correr.
Razón de la decisiónReason for the decision
DECISION ENMENDADA EL 2026-08-20 tras MF-29-EMP-COR, que se prerregistro y sello ANTES de correr y cuya regla autoriza este cambio. La decision anterior fue INCONCLUSIVE porque dos instrumentos preregistrados apuntaban en direcciones opuestas: la cantidad primaria leia OBJETIVO (3 de 48 = 0.0625) y el testigo de MF-13 leia fallo de busqueda (34 de 48 = 70.8%). MF-29-EMP-COR midio que el testigo NO ERA UN INSTRUMENTO VALIDO: MF-13 puntuo el cristal como PDBQT RIGIDO con TORSDOF 0 y MF-29-EMP dockeo conf0.flex.pdbqt con hasta 6 torsiones, y Vina divide la afinidad por (1 + w_rot * N_rot), de modo que el rigido puntua mejor PARA LA MISMA POSE. Preparando el mismo cristal como flexible -unico cambio, mismo receptor, caja, semilla y binario- el salto de escala es de 1.055 kcal/mol medianos, que cubre de sobra el deficit de 0.491 que el testigo leia; el deficit corregido se invierte a -0.406 y el brazo masivo puntua MEJOR que el cristal relajado en 36 de 48, quedando solo 4 con ventaja para el cristal (f=0.0833, banda ARTEFACTO DE ESCALA <=0.30). Sus dos gates de validez pasaron antes del primario: G1=1.0 de coincidencia de TORSDOF y G2=0.3425 A de deriva, casi identica a los 0.322 A del rigido en MF-13. No se movio ningun umbral y no se eligio instrumento despues de ver el resultado: se midio que uno de los dos no medía lo que decia medir, y se retiro. La cantidad primaria queda sola y su lectura preregistrada OBJETIVO se sostiene: en el regimen de <=6 torsiones, 64x de presupuesto no encuentra scores mejores, y ahora ademas consta que lo que encuentra iguala o supera el valor del cristal relajado a igual escala. MAS BUSQUEDA DEL MISMO TIPO NO RINDE: el brazo masivo costo 83.3 h de CPU contra 4.1 h -20x el tiempo- para mover tres complejos (1d7i +0.282, 1m2x +0.238, 1bn1 +0.125), ninguno por encima de un tercio de kcal/mol, con 45 de 48 dentro del ruido de 0.10 y 19 en que el masivo salio peor sin pasar de 0.05; la sd entre semillas bajo de 0.013 a 0.009 medianos, que es la saturacion que daba sentido a la cota. QUEDA ANULADO el confusor del confórmero que esta lectura habia declarado: no hace falta comprobarlo porque el deficit que se le iba a atribuir no existe. LO QUE SIGUE SIN AUTORIZAR: esto NO es el certificado de MF-29, que sigue ABIERTO -la jerarquia de Lasserre se declaro NO IMPLEMENTABLE en este hardware antes de correr y una cota empirica no certifica-; el estrato COLOCACION aporta n=7 y se reporta pareado, no por mediana; nada extrapola fuera del regimen de <=6 torsiones. LIMITE de cobertura: n=48 y no 50 porque 1mmr y 1nm6 aparecen como VINA_FALLO en las 3 semillas del brazo masivo y NO son fallos sino plazos vencidos -43200.4 y 43200.6 s, tres veces el timeout de 14400 s en duro-, documentados en failures.jsonl y recuperables por ~12 h de servidor sin efecto en la lectura salvo empate improbable.

Métricas registradasRecorded metrics

tipo
medicion con regla de lectura preregistrada (cota superior empirica)
duration_seconds
122405.18
n_complejos
50
n_ok
48

ReproducibilidadReproducibility

commit
83079e9e5f (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
duraciónduration
34 h
complejoscomplexes
50
fallosfailures
2
hashes SHA-256
4
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-03-PARAMEl contrato que llevaba semanas sin cerrarseMediciónMeasurementArtículoPapern=11

Dos experimentos lo alimentaron y uno de ellos prohibió expresamente concluir sin él. La agregación nunca se ejecutó, y el programa siguió adelante dando su conclusión por hecha.

RS-03-PARAM-A parametrizó los 116 ligandos de entrenamiento con OpenFF Sage y NAGL, pasó los once requisitos primarios del contrato congelado, y terminó su sello con una frase:

«Siguiente: RS-03-PARAM-B (AM1-BCC estratificado) y luego RS-03-PARAM (agregación)».

RS-03-PARAM-B produjo la referencia y cerró el suyo con una prohibición todavía más explícita:

«PROHIBIDO concluir sobre NAGL desde B: la decisión es de RS-03-PARAM agregando A y B contra el contrato del PRE maestro».

La agregación nunca se ejecutó. Durante semanas, el resto del programa usó las cargas nuevas dando la decisión por hecha, mientras el artefacto que debía tomarla no existía.

Este experimento la toma. No calcula ninguna carga: verifica los once requisitos contra los artefactos sellados y emite lo que el contrato define.

El veredicto

Once de once requisitos pasan, evaluados y sellados por A:

ExigidoObtenido
Cobertura global≥ 95%100%
Cobertura por estrato≥ 90% en los 6100% en los 6
Determinismo≤ 1e-62.78e-17
\Σq − carga formal\≤ 1e-41e-15
Fallback silencioso00
Energía finita y serializable100%100%
Mapeo biyectivo + hash de ordenSíSí
Versión y SHA del modeloRegistradosRegistrados

Decisión del contrato: aceptar NAGL como base de cargas, en sustitución del tipado heurístico que nadie había validado.

La asimetría que hace válida esta decisión, y que no puse yo

Viene del contrato congelado, escrito antes de ejecutar nada:

  • AM1-BCC es referencia estratificada, no verdad absoluta;
  • queda prohibido seleccionar NAGL mirando RMSD o Top-1.

Es decir: B caracteriza, no decide.

Y eso importa aquí más que en ningún otro sitio, porque B encontró divergencia sustancial: diferencia de carga mediana de 0.0118 e por átomo, y una diferencia de energía de punto único con mediana de 24.3 kJ/mol y máxima de 216.4 — del orden de lo que un rescoring pretende resolver.

Sin la asimetría declarada de antemano, habría sido natural leer esa divergencia como un suspenso. No lo es:

La divergencia documenta un límite. No reprueba el método.

Reprobarlo exigiría que A fallara un requisito primario, o un experimento de rendimiento que el contrato prohíbe expresamente usar en esta decisión.

Es el mejor ejemplo del programa de por qué se escribe el criterio antes: con los números delante, la tentación de dejar que 216 kJ/mol decidieran habría sido difícil de resistir, y habría sido una decisión tomada por el dato más llamativo en vez de por el criterio acordado.

El caveat que viaja con la aceptación

Aceptar NAGL no significa que las diferencias con AM1-BCC sean irrelevantes.

Son del tamaño del efecto que un rescoring quiere medir. Divergen más en azufre y fósforo. Y crecen con el tamaño y la flexibilidad del ligando — justo donde el programa trabaja.

Cualquier experimento de rescoring físico debe declarar qué juego de cargas usa y por qué. No es una formalidad: es la diferencia entre medir un efecto y medir una elección de parametrización.

Por qué un contrato sin cerrar es un problema

Nada de lo que el programa hizo con esas cargas era incorrecto — A había pasado sus once gates y estaba sellado. Pero durante semanas la afirmación operativa «NAGL sustituye al tipado heurístico» no tenía artefacto que la sostuviera, sólo un experimento que la preparaba y otro que prohibía sacarla de él.

Cerrar el contrato costó dos milisegundos. Dejarlo abierto costó semanas de una conclusión usada sin registro.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La parametrizacion OpenFF Sage + NAGL congelado sobre los 116 ligandos train es una base fisica correcta -cobertura, determinismo, carga, cero fallback- que reemplaza el tipado heuristico de molchamb_v2.py como base de cargas del programa.
Criterio prerregistradoPre-registered criterion
Los once requisitos primarios del contrato congelado (seccion 4 del PRE maestro): version y SHA de Sage/NAGL, cero descargas en ejecucion, carga formal del ligando sanitizado, |suma q - formal| <= 1e-4, mapeo biyectivo con atom_order_hash, cero fallback silencioso, cobertura global >=95%, cobertura >=90% por estrato, energia finita y serializable al 100%, determinismo <=1e-6, y fallos clasificados por quimica nunca convertidos en energia cero. ASIMETRIA DECLARADA EN EL CONTRATO Y NO INTRODUCIDA AQUI: AM1-BCC es referencia estratificada y NO verdad absoluta, y queda PROHIBIDO seleccionar NAGL mirando RMSD o Top-1. B CARACTERIZA, NO DECIDE: una divergencia grande documenta, no reprueba. Reprobar exigiria que A fallara un requisito primario, o un experimento de rendimiento que el contrato prohibe usar aqui.
ProtocoloProtocol
AGREGACION declarada en RS-03-PARAM-PRE y anunciada por RS-03-PARAM-A -'Siguiente: RS-03-PARAM-B y luego RS-03-PARAM (agregacion)'- que nunca se ejecuto. SIN COMPUTO NUEVO: verifica los once requisitos primarios de la seccion 4 del PREREGISTRO maestro contra los artefactos sellados A y B, y emite la decision que el contrato define. Fuente A: RS-03-PARAM-A, que evaluo y sello los once. Fuente B: RS-03-PARAM-B, referencia AM1-BCC estratificada.
Razón de la decisiónReason for the decision
LA DECISION QUE A Y B ALIMENTABAN, EJECUTADA POR FIN. RS-03-PARAM-A la anuncio en su propio sello -'Siguiente: RS-03-PARAM-B y luego RS-03-PARAM (agregacion)'- y RS-03-PARAM-B la exigio con una prohibicion explicita: 'PROHIBIDO concluir sobre NAGL desde B: la decision es de RS-03-PARAM agregando A y B contra el contrato del PRE maestro'. La agregacion nunca se ejecuto y el contrato quedo sin cerrar durante semanas mientras el resto del programa daba por hecha su conclusion. VEREDICTO: los once requisitos primarios PASAN, evaluados y sellados por A -cobertura global 100% y 100% en los seis estratos, determinismo 2.78e-17 frente a un limite de 1e-6, |suma q - formal| maximo 1e-15 frente a 1e-4, mapeo biyectivo con atom_order_hash, cero fallback silencioso, energia finita y serializable en el 100%, y version y SHA del modelo NAGL de produccion registrados-. DECISION DEL CONTRATO: ACEPTAR NAGL como base de cargas, en sustitucion del tipado heuristico de molchamb_v2.py. LA ASIMETRIA QUE HACE VALIDA ESTA DECISION NO SE INTRODUJO AQUI: viene del contrato congelado, que declara AM1-BCC como referencia estratificada y NO verdad absoluta, y que PROHIBE seleccionar NAGL mirando RMSD o Top-1. B caracteriza y no decide. Eso importa porque B encontro divergencia sustancial -|dq| mediana 0.0118 e por atomo, y |dE| de punto unico con mediana 24.3 kJ/mol y maxima 216.4, del orden de lo que un rescoring pretende resolver- y sin la asimetria declarada de antemano habria sido tentador leer esa divergencia como un suspenso. No lo es: documenta un limite, no reprueba el metodo. Reprobarlo exigiria que A fallara un requisito primario, o un experimento de RENDIMIENTO que el contrato prohibe usar en esta decision. CAVEAT QUE VIAJA CON LA ACEPTACION: aceptar NAGL como base de cargas NO significa que las diferencias con AM1-BCC sean irrelevantes. Son del tamano del efecto que un rescoring quiere medir, divergen mas en azufre y fosforo y crecen con tamano y flexibilidad, es decir justo donde el programa trabaja. Cualquier experimento de rescoring fisico debe declarar que juego de cargas usa y por que. Sin computo nuevo: lectura de dos artefactos sellados.

Métricas registradasRecorded metrics

tipo
agregacion contra contrato congelado, sin computo nuevo
duration_seconds
0.002
contrato
RS-03-PARAM-PRE/PREREGISTRO.md seccion 4, 11 requisitos primarios
decision_del_contrato
ACEPTAR NAGL como base de cargas
asimetria_declarada
El contrato define que AM1-BCC es referencia estratificada y NO verdad absoluta, y PROHIBE seleccionar NAGL mirando RMSD o Top-1. B caracteriza, no decide: una divergencia grande documenta, no reprueba. Reprobar exigiria que A fallara un requisito primario, o un experimento de rendimiento que el contrato prohibe usar aqui.

ReproducibilidadReproducibility

commit
60f010fa44 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
duraciónduration
1 s
complejoscomplexes
11
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-19Con el confórmero exacto, congelar las torsiones ganaHallazgoFindingArtículoPapern=48

24 de 33 con el ligando rígido contra 21 con él flexible, y un RMSD mediano cuatro veces mejor. Parece contradecir a MF-33 hasta que se mira qué confórmero entra.

Si al buscador se le entrega el confórmero cristalográfico —la conformación exacta que la molécula adopta al unirse— y se le congelan todas las torsiones, la colocación queda reducida a seis grados de libertad: tres de posición y tres de orientación.

Eso convierte el problema en el más simple posible. Si aun así falla, el fallo es de colocación pura e inculpa al buscador o al paisaje. Si acierta, la colocación en 6 GDL está resuelta y lo que falla es la búsqueda conformacional.

La regla de lectura se declaró en el propio runner, antes de tener el resultado.

Qué salió

Estrato de colocación (n=33)FlexibleRígido
Acierta2124
Acierta en el top-11422
Mejor RMSD mediano1.665 Å0.379 Å

En control: rígido 15 de 15 frente a 13 del flexible, aunque el top-1 se invierte (10 contra 11).

El rígido acierta en la mayoría. Por la regla declarada: la colocación en 6 grados de libertad está resuelta, y el fallo del programa es de búsqueda conformacional.

Ese RMSD mediano de 0.379 Å merece detenerse: dado el confórmero correcto, el motor coloca la molécula con precisión casi cristalográfica. El buscador no es el problema.

La contradicción aparente con MF-33, y su resolución

MF-33 midió sobre los mismos complejos que el docking rígido alcanza 1 de 33 y el flexible 26 de 33. Aquí el rígido gana. Los dos resultados no pueden ser ciertos a la vez... salvo que difieran en algo, y difieren en lo único que importa:

Confórmero de entradaRígido acierta
MF-19Cristalográfico — exacto24 / 33
MF-33ETKDG — el mejor a 1.364 Å de mediana1 / 33

El docking rígido es exquisitamente sensible a la calidad del confórmero. Con el exacto rinde 24 de 33. Con el mejor disponible del ensemble, 1 de 33.

Lo que esto explica del diseño de MolFlex

MolFlex genera un ensemble conformacional y dockea cada confórmero rígidamente. Visto desde aquí, ese diseño era razonable: si el ensemble contuviera el confórmero correcto, dockear rígido sería lo óptimo — menos grados de libertad, búsqueda más eficiente, y una precisión de 0.379 Å.

Y MF-21 midió que el ensemble sí contiene un confórmero a ≤2 Å alineado del bioactivo en 23 de los 30 complejos que fallan.

La pieza que faltaba está en la distancia entre esas dos frases:

«≤2 Å alineado» no es «suficientemente exacto para docking rígido».

Un confórmero a 1.4 Å tiene la forma aproximadamente correcta, y el docking rígido no puede corregir esa aproximación: cada ángulo torsional que sobra es error que se propaga a la colocación entera y que ninguna traslación ni rotación puede compensar.

Con torsiones libres, el motor arregla la conformación mientras coloca. Sin ellas, hereda todo el error del generador.

La prohibición que viaja con el resultado

Declarada en el metrics.json original y sellada con él:

El confórmero de entrada es el cristalográfico. Esto no es una política de producción: mide un techo — qué pasaría si el generador de confórmeros fuera perfecto.

Queda prohibido citar el 24 de 33 como rendimiento alcanzable. Es lo que se conseguiría con un generador que no existe.

Una limitación estructural de este registro

Este artefacto es un registro retroactivo. El experimento se ejecutó y sus resultados quedaron sin manifest mientras el documento del programa lo citaba como evidencia. Sellarlo respalda esa cita, pero:

No existe prerregistro separado. Los gates y la regla de lectura viven en el metrics.json que produjo el runner, y se sellaron tal cual sin reinterpretarse. Eso significa que sus lecturas son post-hoc por construcción, y deben citarse así.

Sellar retroactivamente convierte una cita sin respaldo en una cita con respaldo. No convierte un experimento en uno preregistrado.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Si al buscador se le entrega el conformero CRISTALOGRAFICO y se le congelan las torsiones, la colocacion queda reducida a 6 grados de libertad. Si asi acierta, la colocacion rigida esta resuelta y el fallo del programa es de busqueda conformacional; si falla, el fallo es de colocacion pura e inculpa al buscador o al paisaje, no al conformero.
Criterio prerregistradoPre-registered criterion
Regla de lectura declarada en el propio metrics.json: 'rigido acierta en la mayoria => la colocacion en 6 GDL esta resuelta y el fallo es busqueda conformacional; rigido falla => el fallo es de COLOCACION pura'. PROHIBICION declarada en el metrics.json: el conformero de entrada es el CRISTALOGRAFICO, de modo que esto NO es una politica de produccion y mide un TECHO -que pasaria si el generador de conformeros fuera perfecto-. SIN PRERREGISTRO SEPARADO: sus lecturas son post-hoc por construccion.
ProtocoloProtocol
REGISTRO RETROACTIVO, declarado como tal: ejecutado el 2026-08-19 con scripts/run_mf19_rigido_cristal.py, resultados en scratch/mf19_resultados sin manifest. NO existe prerregistro separado; la regla de lectura y la prohibicion viven en el metrics.json que produjo el runner y se sellan tal cual. Diseno: 48 complejos (33 COLOCACION + 15 CONTROL), dos brazos sobre el MISMO conformero cristalografico -flexible con sus torsiones activas, y rigido con TODAS las torsiones congeladas, 6 GDL-; exh=8, num_modes=9, semilla 42, caja 25 A.
Razón de la decisiónReason for the decision
REGISTRO RETROACTIVO de un experimento ejecutado el 2026-08-19 que el doc 49 citaba en su seccion 20.1 y describia como 'en curso' en la 20.2, sin artefacto. CON EL CONFORMERO CRISTALOGRAFICO, EL RIGIDO GANA AL FLEXIBLE. En COLOCACION: rigido acierta 24 de 33 frente a 21 del flexible, top-1 22 frente a 14, y mejor RMSD mediano 0.379 A frente a 1.665. En CONTROL: rigido 15 de 15 frente a 13, aunque el top-1 se invierte (10 frente a 11). Por la regla de lectura declarada en el propio runner, el rigido acierta en la mayoria y por tanto LA COLOCACION EN 6 GDL ESTA RESUELTA: el fallo del programa es de busqueda conformacional, no de colocacion pura. APARENTE CONTRADICCION CON MF-33, QUE SE RESUELVE Y ES EL HALLAZGO. MF-33 midio que el rigido alcanza 1 de 33 y el flexible 26 de 33 sobre los mismos complejos. Aqui el rigido gana. La diferencia es el CONFORMERO DE ENTRADA: MF-19 usa el CRISTALOGRAFICO -exacto- y MF-33 usa los ETKDG -aproximados, con el mejor a 1.364 A de mediana segun MF-21-. La sintesis es que el docking rigido es EXQUISITAMENTE SENSIBLE A LA CALIDAD DEL CONFORMERO: con el exacto rinde 24 de 33 y con el mejor disponible del ensemble rinde 1 de 33. Eso explica por que el diseno de MolFlex era razonable -si el ensemble contuviera el conformero correcto, dockear rigido seria optimo- y por que aun asi no funciona: MF-21 midio que el ensemble contiene un conformero a <=2 A alineado en 23 de 30 fallos, pero '<=2 A alineado' NO es 'suficientemente exacto para docking rigido'. PROHIBICION QUE VIAJA CON EL RESULTADO, declarada en el metrics.json original: el conformero de entrada es el cristalografico, esto NO es una politica de produccion y mide un TECHO. Queda prohibido citar el 24 de 33 como rendimiento alcanzable. LIMITACION ESTRUCTURAL: sin prerregistro separado, sus lecturas son post-hoc por construccion. Sellarlo respalda la cita del doc 49; no le concede estatus de experimento preregistrado.

Métricas registradasRecorded metrics

tipo
medicion con hipotesis nueva
duration_seconds
3332.39
n_complejos
48
n_ok
48
prohibicion
el conformero de entrada es el cristalografico: NO es una politica de produccion, mide un techo -que pasaria si el generador de conformeros fuera perfecto
lectura
rigido acierta en la mayoria => la colocacion en 6 GDL esta resuelta y el fallo es busqueda conformacional. rigido falla => el fallo es de COLOCACION pura, y eso indicta al buscador o al paisaje, no al conformero

ReproducibilidadReproducibility

commit
6a3caa8ac1 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
duraciónduration
56 min
complejoscomplexes
48
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-14A media ángstrom del mínimo, una de cada cinco poses se pierdeMediciónMeasurementArtículoPapern=48

La cuenca de captura del estrato difícil es un tercio más estrecha que la del control. Y dentro de ella hay barreras: perturbar 0.5 Å basta para que el 22% no regrese.

Un buscador estocástico no necesita aterrizar en el mínimo exacto. Le basta con caer dentro de su cuenca de captura: la región desde la cual una minimización local termina el trabajo y desciende al fondo.

El tamaño de esa cuenca decide cuánta precisión hace falta. Si es amplia y lisa, acercarse basta. Si es estrecha, hay que apuntar fino. Y si es rugosa —con barreras internas—, acercarse no garantiza nada.

Este experimento la mide directamente: coge una pose correcta, la perturba a distancias crecientes, vuelve a minimizar, y cuenta cuántas regresan.

Qué salió

Fracción que regresa a ≤2 Å tras perturbar y re-minimizar, con 6 réplicas por radio:

PerturbaciónColocación (n=33)Control (n=15)
0.5 Å0.7780.967
1.0 Å0.7270.922
2.0 Å0.5100.722
3.0 Å0.3030.400
4.0 Å0.1360.233

r50 mediano: 2.0 Å en el estrato difícil, 3.0 Å en el control. Cuatro complejos del estrato difícil no alcanzan r50 en ningún radio; ninguno del control.

Dos lecturas, y la segunda es peor

La cuenca es un tercio más estrecha donde importa. r50 de 2.0 Å contra 3.0 Å. En los complejos que motivan el programa hay que acercarse más para que la minimización termine el trabajo.

Y es rugosa. Esta es la fila que cuesta digerir:

A 0.5 Å —partiendo prácticamente de la pose correcta— el 22.2% no regresa en el estrato difícil. En control, el 3.3%.

Eso no es estrechez. Una cuenca estrecha pero lisa devolvería casi todo desde media ángstrom. Que una de cada cinco se pierda a esa distancia significa que hay barreras dentro de la propia cuenca.

Un buscador puede estar a media ángstrom del mínimo nativo y caer en otro sitio.

Dónde encaja esto

Con MF-15-EXT, que midió que no hay embudo en el estrato difícil (ρ = 0.186), el cuadro del paisaje queda completo y es desalentador:

  • no hay gradiente que lleve hacia el mínimo nativo desde lejos;
  • y aun estando encima, la cuenca tiene baches que desvían la minimización.

Es un pozo sin señalización, en una meseta, con el fondo agrietado.

Eso descarta más de lo que parece. Cualquier método que asuma «basta con acercarse y refinar» —refinamiento iterativo, minimización local sobre poses aproximadas, la relajación que MF-10 probó— trabaja contra las dos propiedades a la vez.

Una limitación estructural de este registro

Es un registro retroactivo. El experimento se ejecutó y sus resultados quedaron sin manifest en un directorio de trabajo, mientras el documento del programa lo citaba como evidencia — «cuenca de captura r50 ≈ 2 Å y rugosa: 22% escapa desde 0.5 Å».

La cita era correcta. Ahora está respaldada.

Pero no existe prerregistro separado: los gates viven en el metrics.json que produjo el runner, y se sellaron tal cual. Sus lecturas son post-hoc por construcción y deben citarse así.

Sellar retroactivamente convierte una cita sin respaldo en una cita con respaldo. No la convierte en evidencia preregistrada.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La cuenca de captura alrededor de la pose nativa tiene un radio medible: perturbando una pose correcta y volviendo a minimizar, la fraccion que regresa cae con la distancia y define un r50. Si la cuenca es amplia y lisa, el buscador solo necesita acercarse; si es estrecha o rugosa, acercarse no basta.
Criterio prerregistradoPre-registered criterion
Los gates originales estan en el metrics.json sellado. Medicion descriptiva: curva de retorno por radio y r50 por estrato. SIN PRERREGISTRO SEPARADO, de modo que sus lecturas son POST-HOC por construccion y asi deben citarse.
ProtocoloProtocol
REGISTRO RETROACTIVO, declarado como tal: el experimento se ejecuto el 2026-08-18 con scripts/run_mf14_radio_captura.py y sus resultados quedaron en scratch/mf14_resultados sin manifest. Este artefacto los incorpora al registro. NO existe prerregistro separado; la regla de lectura y los gates viven en el propio metrics.json que produjo el runner, y se sellan tal cual sin reinterpretarse. Diseno: 48 complejos (33 COLOCACION + 15 CONTROL), perturbacion de la mejor pose a radios 0.5, 1.0, 2.0, 3.0 y 4.0 A con 6 replicas por radio y rotacion maxima de 30 grados, semilla 42, caja 25 A; se mide la fraccion que regresa a <=2 A tras re-minimizar.
Razón de la decisiónReason for the decision
REGISTRO RETROACTIVO de un experimento ejecutado el 2026-08-18 cuyos resultados llevaban desde entonces en scratch/ sin manifest, mientras el doc 49 seccion 20.1 lo CITABA COMO EVIDENCIA -'cuenca de captura r50 aprox 2 A y rugosa: 22% escapa desde 0.5 A'-. La cita era correcta y ahora esta respaldada. LA CUENCA EXISTE Y ES RUGOSA. En COLOCACION la curva de retorno cae 0.778, 0.727, 0.510, 0.303 y 0.136 para radios de 0.5, 1.0, 2.0, 3.0 y 4.0 A, con r50 mediano de 2.0 A y 4 complejos sin r50. En CONTROL: 0.967, 0.922, 0.722, 0.400 y 0.233, con r50 de 3.0 A y ningun complejo sin r50. DOS LECTURAS. Primera: la cuenca del estrato dificil es un TERCIO mas estrecha que la del control -r50 2.0 frente a 3.0 A- de modo que en los complejos que importan hay que acercarse mas para que la minimizacion termine el trabajo. Segunda y mas incomoda: incluso a 0.5 A, PARTIENDO PRACTICAMENTE DE LA POSE CORRECTA, el 22.2% no regresa en COLOCACION frente al 3.3% en control. Eso no es estrechez, es RUGOSIDAD: hay barreras dentro de la propia cuenca. Un buscador puede estar a media angstrom del minimo nativo y caer en otro sitio. LIMITACION ESTRUCTURAL DE ESTE REGISTRO: no existe prerregistro separado. Los gates y la regla de lectura viven en el metrics.json que produjo el runner, y se sellan tal cual sin reinterpretarse, pero eso significa que sus lecturas son POST-HOC por construccion y deben citarse asi. Sellarlo retroactivamente respalda la cita del doc 49; NO le concede el estatus de un experimento preregistrado.

Métricas registradasRecorded metrics

tipo
medicion con regla de lectura preregistrada
duration_seconds
2484.77
n_complejos
48
n_ok
48

ReproducibilidadReproducibility

commit
6a3caa8ac1
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
duraciónduration
41 min
complejoscomplexes
48
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RC-F0-V2-EXTEl 93.9% del programa se construyó con el protocolo que fallaMediciónMeasurementArtículoPapern=17

De las 34,302 poses del conjunto, sólo 2,087 se generaron con libertad torsional. Diecisiete artefactos sellados consumen el resto. Esto mide el alcance, no invalida nada.

MF-33 midió algo incómodo: sobre los 33 complejos difíciles, el protocolo congelado —docking rígido del ensemble— alcanza 1 de 33, mientras los mismos confórmeros dockeados flexibles alcanzan 26 de 33.

Eso plantea de inmediato una pregunta de alcance que nadie había hecho: ¿qué fracción del material sobre el que descansa el programa salió de ese protocolo?

Se responde leyendo dos artefactos ya sellados. Cero cómputo.

La composición

FuentePoses%Generador
molflex32,21593.9%Rígido, TORSDOF 0
flexible_redock1,5344.5%Flexible
ruta_a5531.6%Flexible

Sólo el 6.1% del conjunto se generó con libertad torsional durante la búsqueda.

Y 17 artefactos sellados consumen ese material, entre ellos RS-14, RS-09, RS-01, RS-01A, MF-02D, FND-02, FND-06 y el propio RC-F0-V2.

Tres cosas que este número NO autoriza a concluir

Se declararon antes de calcularlo, porque un número así invita a leerse mal.

1. No invalida a los 17 consumidores.

MF-33 midió el hueco de cobertura — cuántos complejos tienen alguna pose correcta entre las candidatas. Los experimentos de selección midieron precisión condicional sobre lo cubierto, que es otra cantidad.

Más cobertura significa más complejos evaluables, no un veredicto distinto sobre los ya evaluados. RS-14 concluyó que el selector no supera a vina_score sobre los 92 complejos cubiertos; con más cobertura habría más complejos, y la pregunta de si el selector gana en ellos sigue abierta exactamente igual que antes.

2. El 1 de 33 es del estrato difícil.

En CONTROL el protocolo rígido alcanza 15 de 15, y con la mejor mediana de los tres brazos (0.861 Å). Extrapolar el 1/33 a los 203 sería injustificado.

El protocolo rígido no está roto en general. Falla exactamente en el estrato que motivó el programa.

**3. MF-33 tiene su propio defecto abierto.**

Su brazo ganador conservaba 261 poses de mediana contra 9 del rival, y su magnitud está suspendida hasta que corra MF-33-A3. Citar este alcance como si la comparación estuviera cerrada sería encadenar dos afirmaciones que todavía no lo están.

Lo que sí establece

Una sola cosa, y hay que citarla así:

Cuánto material habría que rehacer si se decidiera medir sobre poses flexibles.

La respuesta es: casi todo. 32,215 de 34,302 poses, y con ellas el denominador de la cartera de rescoring entera.

Eso no es una conclusión científica — es una cifra de planificación. Pero es la que decide si «volver a generar con docking flexible» es un experimento o es un programa, y la respuesta que da es inequívoca: es un programa.

El triaje de los 17 consumidores

La cifra sola invita a la lectura catastrofista. Lo que la vuelve utilizable es separar los consumidores por qué miden, porque no todos están igual de expuestos.

Categoría 1 — miden generación o cobertura: los más expuestos

D-MF-HARD-CURVE, D-MF-HARD-CURVE-VAL, D-MF-HARD-EXH4, D-MF-HARD-EXH4-VAL, MF-02B, MF-02D, RC-F0-V2.

Sus números son propiedades del régimen de generación. La curva de confórmeros, la comparación de brazos generadores, la cobertura del oráculo: todo eso se midió con docking rígido y se remediría distinto con flexible. Son los que habría que rehacer primero.

Categoría 2 — miden selección sobre casos ya cubiertos

RS-01, RS-01A, RS-14, RS-14-PRE.

No quedan invalidados. Compararon un selector contra vina_score dentro del conjunto de complejos cubiertos, y esa comparación pareada sigue siendo válida sobre el material que usó. Lo que queda abierto es otra cosa: si su conclusión generaliza a una cohorte regenerada, con más complejos cubiertos y poses de otra distribución.

Que el selector no supere a vina_score sobre 92 complejos cubiertos con material rígido no prueba que tampoco lo haga sobre 120 con material flexible. Tampoco prueba lo contrario.

Categoría 3 — auditoría, procedencia e infraestructura

FND-02, FND-06, MF-01-UNION, RS-09, y los prerregistros MF-02-PRE y RC-F0-V2-PRE.

Prácticamente no cambian. La fuga entre splits, la trazabilidad de cada pose, la invarianza del selector a rotación y orden, la materialización de la unión — ninguna depende de si la pose se generó rígida o flexible. Un conjunto regenerado heredaría estas propiedades o las volvería a exigir, pero los hallazgos se sostienen.

La formulación correcta

Esa separación evita el error de decir «el 94% del programa está mal». Eso no está demostrado. Lo demostrado es más acotado:

El 94% de las poses históricas viene de una política de generación que ahora sabemos que puede ser muy insuficiente en el estrato difícil.

Y con eso la pregunta de planificación cambia de forma. Ya no es «¿corremos otra variante de MF-33?». Es:

¿Vale la pena reconstruir casi toda la cohorte de poses para cambiar el régimen de generación?

Eso no es un experimento. Es un programa de regeneración y revalidación, y decidirlo exige saber antes qué se gana — que es justo lo que MF-33-A3 todavía no ha dicho.

Por qué merecía un artefacto propio

Podría haber sido una nota al pie de MF-33. No lo es, por dos razones.

La primera es que el número tiene vida propia: cualquiera que en el futuro proponga rehacer el conjunto necesita saber que son 32,215 poses y 17 artefactos, no un par de tablas.

La segunda es que las tres limitaciones de arriba tenían que quedar selladas junto al número. Un dato así, suelto y sin sus condiciones de uso, se convierte en «el 94% del programa está mal» en la primera conversación en que alguien lo repita de memoria.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La fraccion del conjunto de poses del programa que proviene del protocolo RIGIDO es mayoritaria, de modo que el hueco de cobertura que MF-33 midio entre rigido y flexible afecta al material sobre el que descansan varias conclusiones selladas.
Criterio prerregistradoPre-registered criterion
MEDICION DE ALCANCE SIN GATES DE DECISION. Cantidades: fraccion de poses de origen rigido en el conjunto v2, y lista de artefactos sellados que consumen ese material. LIMITACION DECLARADA ANTES Y QUE FORMA PARTE DEL RESULTADO: NO se afirma que las conclusiones de los consumidores sean incorrectas. MF-33 midio el hueco de COBERTURA entre rigido y flexible; los experimentos de seleccion midieron PRECISION CONDICIONAL sobre lo cubierto, que es otra cantidad, y un techo de cobertura mas alto cambia el denominador sin invalidar automaticamente una comparacion pareada hecha dentro de el. Ademas el 1/33 de MF-33 es del estrato DIFICIL: extrapolarlo a los 203 seria injustificado, porque en CONTROL el rigido alcanza 15/15. Lo que se establece es el ALCANCE de lo que habria que rehacer si se decidiera medir sobre material flexible. PROHIBIDO usar este artefacto para declarar invalidada ninguna conclusion sellada.
ProtocoloProtocol
Medicion de alcance SIN COMPUTO NUEVO. Lee la composicion por fuente del conjunto v2 desde RC-F0-V2/metrics.json y clasifica cada fuente por si su generador tuvo libertad torsional durante la busqueda: molflex es RIGIDO -molflex.dock_rigido_archivo, TORSDOF 0-, flexible_redock y ruta_a son flexibles. Despues localiza que artefactos SELLADOS hashean o referencian los ficheros de poses, es decir que conclusiones consumen ese material. Solo lectura.
Razón de la decisiónReason for the decision
EL 93.9% DEL CONJUNTO DE POSES DEL PROGRAMA VIENE DEL PROTOCOLO RIGIDO. De las 34,302 poses del conjunto v2: molflex 32,215 (93.9%), flexible_redock 1,534 (4.5%), ruta_a 553 (1.6%). Solo el 6.1% se genero con libertad torsional durante la busqueda. Diecisiete artefactos sellados consumen ese material, entre ellos RS-14, RS-09, RS-01, RS-01A, MF-02D, FND-02, FND-06 y el propio RC-F0-V2. ESE ES EL ALCANCE de lo que MF-33 destapo: el protocolo que alcanza 1 de 33 en el estrato dificil, mientras los MISMOS conformeros dockeados flexibles alcanzan 26 de 33, produjo casi todo el material sobre el que descansa la cartera D. LO QUE ESTE NUMERO NO AUTORIZA A CONCLUIR, y se declaro antes de calcularlo: (1) NO se afirma que las conclusiones de los 17 consumidores sean incorrectas. MF-33 midio el hueco de COBERTURA; los experimentos de seleccion midieron PRECISION CONDICIONAL SOBRE LO CUBIERTO, que es otra cantidad. Un techo de cobertura mas alto cambia el denominador, no invalida automaticamente una comparacion pareada hecha dentro de el. RS-14 y RS-14-R1 concluyeron que el selector no supera a vina_score sobre los complejos cubiertos, y mas cobertura significa mas complejos evaluables, no un veredicto distinto sobre los ya evaluados. (2) El 1/33 de MF-33 es del estrato DIFICIL. Extrapolarlo a los 203 seria injustificado: en CONTROL el rigido alcanza 15 de 15 y con la MEJOR mediana de los tres brazos (0.861 A). El protocolo rigido no esta roto en general; falla en el estrato que motivo el programa. (3) Ademas MF-33 tiene su propio defecto abierto -el brazo B conserva 261 poses de mediana contra 9- y su magnitud esta suspendida hasta MF-33-A3. Lo que este artefacto establece es una sola cosa y hay que citarla asi: cuanto material habria que rehacer si se decidiera medir sobre poses flexibles. Sin computo nuevo: lectura de dos artefactos sellados.

Métricas registradasRecorded metrics

tipo
medicion de alcance, sin computo nuevo
duration_seconds
0.046
limitacion_declarada
NO se afirma que las conclusiones de los consumidores sean incorrectas. MF-33 midio el hueco de COBERTURA entre rigido y flexible; los experimentos de seleccion midieron PRECISION CONDICIONAL sobre lo cubierto, que es otra cantidad. Un techo de cobertura mas alto cambia el denominador, no invalida automaticamente una comparacion pareada hecha dentro de el. Lo que se establece es el ALCANCE de lo que habria que rehacer si se decidiera medir sobre material flexible. Ademas, el 1/33 de MF-33 es del estrato dificil: extrapolarlo a los 203 seria injustificado, porque en CONTROL el rigido alcanza 15/15.

ReproducibilidadReproducibility

commit
79d00a93a2 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
duraciónduration
1 s
complejoscomplexes
17
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-08-EXTLas aguas no se pierden: se conservan todas, y nadie lo decidióMediciónMeasurementArtículoPapern=203

Buscaba metales desaparecidos y encontré 1,788 aguas cristalográficas dentro del receptor que Vina usa. No es un fallo de la preparación. Es una política de modelado que opera sin estar escrita.

REC-08 comprobó que la preparación del receptor no pierde cadenas del sitio de unión. Quedaba la otra mitad de lo que FEP-02 había contado y nadie había verificado: 52 complejos con metales en el sitio y una mediana de 10 aguas, ninguna documentada como estructural o desplazable.

La pregunta era la misma que en REC-08, con otra entidad: ¿sobreviven a la preparación?

Los metales: cero pérdidas

Complejos con metal en el sitio29
Iones totales42
Conservados42
Perdidos0

Especies implicadas: Ca, Cu, Mg, Mn, Zn.

Es el resultado que esperaba y es una buena noticia aburrida: perder un ion coordinado al ligando habría sido un defecto de producción serio, y no ocurre.

Las aguas: el resultado que no buscaba

1,788 aguas cristalográficas en los sitios de unión, conservadas al 100%.

Y ese «100%» no significa lo que parece. No es que la preparación las respete: es que las mantiene todas.

Lo verifiqué directamente sobre el fichero que Vina usa:

ComplejoÁtomos en rec.pdbqtDe ellos, agua
10gs4,137169
1a302,049216
1bcd2,710213

En 1a30, HOH es el segundo residuo más común del receptor. Vina las trata como parte de la proteína: ocupan volumen y entran en la rejilla de afinidad.

Lo que esto convierte

FEP-02 había dejado esto como documentación pendiente: «ninguna documentada como estructural o desplazable». Sonaba a un hueco que había que rellenar decidiendo algo.

No lo es. Ya hay una decisión operando, y es «conservarlas todas».

El ítem de la cartera deja de ser decidir qué hacer con las aguas y pasa a ser declarar o cambiar una política que lleva tiempo ejecutándose.

Es una decisión de modelado perfectamente legítima —también lo es la contraria, y el campo está dividido— pero es una decisión, tiene consecuencias, y no está escrita en ningún sitio. Un tercero que reciba el paquete no puede saber que se tomó.

El antecedente que lo conecta

REC-07 registró un incidente durante su ejecución: pasar el PDB crudo con sus 387 aguas al preparador devolvió scores positivos de +23 a +33, cifras sin sentido físico. Se corrigió la preparación para ese experimento y se repitió la tanda.

El material de producción de MolFlex sigue conservándolas.

Una hipótesis que no afirmo

Una pose que exija desplazar una agua conservada no puede encontrarse: el agua ocupa el sitio donde tendría que ir un átomo del ligando. Eso convierte a las aguas retenidas en un candidato para parte del déficit de cobertura del estrato difícil.

No lo afirmo, y hay evidencia en contra. MF-33 alcanzó 26 de 33 con este mismo receptor, simplemente dockeando flexible en vez de rígido. Si las aguas fueran el bloqueo principal, ese cambio no habría bastado.

Queda como hipótesis contrastable para los siete que siguen sin cubrirse, no como explicación.

Limitaciones

El emparejamiento entre original y preparado es por coordenada, con 0.5 Å de tolerancia, y no por identidad de residuo — porque la preparación renumera, cosa que REC-08 ya había observado. Un átomo desplazado más de 0.5 Å contaría como perdido, así que el recuento de pérdidas es una cota superior. Salió cero, lo que refuerza el negativo en vez de debilitarlo.

Cobertura 116 de 203: los 87 restantes son todos de valtest y carecen de rec.pdbqt. Es la misma asimetría de material que REC-08 registró, y vuelve a aparecer aquí.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La preparacion del receptor conserva los metales del sitio de union. Perder un ion metalico coordinado al ligando no es documentacion pendiente: es un defecto de produccion, porque el docking se habria hecho contra un bolsillo que no existe.
Criterio prerregistradoPre-registered criterion
MEDICION SIN GATES DE DECISION. Cantidades de interes: numero de iones metalicos del sitio perdidos en la preparacion y complejos afectados, con las especies implicadas; y fraccion de aguas del sitio conservadas. LIMITACION DECLARADA ANTES: el emparejamiento es POR COORDENADA con 0.5 A de tolerancia; un atomo desplazado mas de 0.5 A por la preparacion contaria como perdido, de modo que el recuento de perdidas es una COTA SUPERIOR. ASIMETRIA DE INTERPRETACION, declarada tambien antes: perder un metal del sitio es un DEFECTO DE PRODUCCION y obliga a revisar el pipeline; perder aguas es una decision legitima y frecuente, y lo que se reporta de ellas no es un defecto sino que la decision NO ESTA DECLARADA, que es exactamente el hallazgo de FEP-02.
ProtocoloProtocol
Extension de REC-08, mismo metodo y distinta entidad. REC-08 verifico que no se pierden CADENAS del sitio; queda la otra mitad de lo que conto FEP-02 y nadie verifico: 52 complejos con metales en el sitio y mediana de 10 aguas, ninguna documentada. Para cada complejo, con el radio de 8 A que FEP-02 uso para definir sitio: (1) metales y aguas HETATM a <=8 A de algun atomo pesado del ligando en data/pdbbind/<pid>/<pid>_protein.pdb; (2) cuantos sobreviven en data/molflex_train_v2/<pid>/<pid>/rec.pdbqt, emparejados POR COORDENADA con tolerancia 0.5 A y no por numero de residuo, porque la preparacion renumera -REC-08 ya observo que rec.pdbqt tiene mas pares (cadena,resnum) distintos que el PDB de origen-; (3) la diferencia. Metales reconocidos por elemento o nombre de residuo en una lista de 21 especies. Solo lectura.
Razón de la decisiónReason for the decision
DOS RESULTADOS, Y EL IMPORTANTE NO ES EL QUE BUSCABA. (1) METALES: cero perdidas. 29 complejos tienen metal en el sitio, 42 iones en total -Ca, Cu, Mg, Mn, Zn- y los 42 sobreviven a la preparacion. Igual que en REC-08 con las cadenas, el riesgo de defecto de produccion no se materializa y no hay nada que reparar por esta via. (2) AGUAS, Y AQUI ESTA EL HALLAZGO: 1,788 aguas cristalograficas en los sitios de union, CONSERVADAS AL 100%. No es que no se pierdan: es que el pipeline las MANTIENE TODAS. Verificado directamente sobre rec.pdbqt, que es el receptor que Vina usa: 10gs lleva 169 atomos de HOH de 4,137 totales, 1a30 lleva 216 de 2,049 -HOH es su segundo residuo mas comun- y 1bcd 213 de 2,710. Vina las ve como parte del receptor: ocupan volumen y entran en la rejilla de afinidad. LA POLITICA DE FACTO QUEDA IDENTIFICADA. FEP-02 conto 'mediana de 10 aguas en el sitio, ninguna documentada como estructural o desplazable' y lo dejo como documentacion pendiente. Ahora se sabe cual es la politica que nadie declaro: CONSERVARLAS TODAS. Es una decision de modelado legitima y frecuente -tambien lo es lo contrario- pero es una decision, tiene consecuencias sobre el docking, y no esta escrita en ningun sitio. ANTECEDENTE QUE LO CONECTA: el incidente de REC-07 registro que pasar el PDB crudo con sus 387 aguas devolvio scores positivos de +23 a +33; alli se corrigio la preparacion PARA ESE EXPERIMENTO, y el material de produccion de molflex sigue conservandolas. HIPOTESIS, NO CLAIM: una pose que exija desplazar una agua conservada no puede encontrarse, de modo que las aguas retenidas son un candidato para parte del deficit de cobertura. NO se afirma aqui y hay evidencia en contra: MF-33 alcanzo 26 de 33 con ESTE MISMO receptor dockeando flexible, asi que las aguas no son el bloqueo principal del estrato dificil. Queda como hipotesis contrastable para los 7 que siguen sin cubrirse. LIMITACIONES DECLARADAS ANTES: emparejamiento POR COORDENADA con 0.5 A de tolerancia y no por identidad de residuo, porque la preparacion renumera; un atomo desplazado mas de 0.5 A contaria como perdido, de modo que el recuento de perdidas es COTA SUPERIOR -y salio cero, lo que refuerza el negativo-. Cobertura 116 de 203: los 87 restantes son todos de valtest y carecen de rec.pdbqt, la misma asimetria de material que registro REC-08.

Métricas registradasRecorded metrics

tipo
medicion de defecto de produccion, sin gates de decision
duration_seconds
9.12
n_complejos
203
n_ok
116
n_error
87
limitacion_declarada
El emparejamiento es POR COORDENADA con 0.5 A de tolerancia, no por identidad de residuo, porque la preparacion renumera. Un atomo desplazado mas de 0.5 A por la preparacion contaria como perdido: el recuento de perdidas es una COTA SUPERIOR. Perder un metal del sitio es defecto de produccion; perder aguas es una decision legitima que hoy NO esta declarada, que es el hallazgo de FEP-02.

ReproducibilidadReproducibility

commit
208967defc (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
duraciónduration
9 s
complejoscomplexes
203
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FEP-07Setenta y cinco, o diecinueve, y la diferencia no son defectosMediciónMeasurementArtículoPapern=91

Cinco auditorías contaban piezas sueltas. Cruzarlas cuesta once milisegundos y da el número que ninguna tenía: cuántos cálculos de energía libre se pueden correr hoy.

La cartera de preparación para energía libre tenía tres auditorías, y ninguna respondía la pregunta que decide el trabajo.

FEP-01 contaba ligandos con tautómero ambiguo. FEP-02 contaba receptores con huecos. FEP-03 contaba parejas congenéricas. Cada una mira una pieza — pero un cálculo de energía libre relativa necesita las tres a la vez, y sobre los dos miembros de la pareja. Si un solo extremo tiene el tautómero sin decidir o un hueco en el bolsillo, la pareja no se puede correr.

Este experimento no mide nada nuevo. Une lo ya sellado.

Qué salió

De las 91 parejas que FEP-03 declaró aptas:

EstadoParejas
EJECUTABLE HOY75
Bloqueada sólo por tautómero7
Bloqueada por receptor9

Las 75 abarcan 45 complejos distintos. Declarar los tautómeros de esos 7 sube la cifra a 82, y eso es una decisión química documentada, no modelado estructural.

La segunda cifra, que va obligatoriamente junto a la primera

Bajo el criterio completo de FEP-02 —que exige además cadenas, disulfuros, metales, cofactores y aguas documentados en ambos extremos— quedan 19 parejas.

Setenta y cinco contra diecinueve. Y lo que hay entre medias es lo importante:

La distancia entre 75 y 19 no son defectos. Es documentación ausente.

Ninguna de esas 56 parejas está rota. Lo que les falta es que alguien declare qué hace con las aguas del sitio, con los metales y con las cadenas. Nadie tiene que reparar nada: hay que decidir y escribir.

Esa distinción decide cómo se planifica la cartera, porque documentar y reparar cuestan órdenes de magnitud distintos.

Por qué la vista por pareja sale mejor que la vista por complejo

FEP-01 reportó 19% y FEP-02 un 41% sobre los 203. Aquí sale 75 de 91. Parece contradicción y no lo es:

Las 91 parejas aptas ya son un subconjunto filtrado por FEP-03 —pocas dianas con muchos análogos— y ese subconjunto está mejor preparado que la media del conjunto.

La lección de método es más general que este experimento:

La unidad de inferencia de un cálculo de energía libre es la pareja, no el complejo. Y nadie había contado en esa unidad.

Contar en la unidad equivocada hizo que la cartera pareciera más bloqueada de lo que está.

Lo que este número tiene prohibido

Declarado en el gate antes de correr: «ejecutable hoy» significa sin los dos bloqueos medidos, no «lista para producción». Los 75 son una cota superior y queda prohibido citarlos como «parejas listas para FEP+».

El criterio completo se reportó aparte y deliberadamente no se usó para clasificar. Si se hubiera usado, el experimento diría «19» y escondería que 56 de esas parejas están a una decisión documental de distancia, no a una reparación. Las dos cifras describen cosas distintas y las dos hacen falta.

Coste

Once milisegundos. Cinco artefactos sellados, un cruce, y el número que ordena la cartera.

Es el argumento más claro que tengo a favor de mantener el registro: la información ya estaba pagada. Sólo faltaba preguntarle lo correcto.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Las tres auditorias de la cartera H miran piezas distintas y ninguna responde cuantos calculos FEP+ se pueden correr HOY. Cruzandolas, la cifra ejecutable es sustancialmente menor que las 91 parejas aptas que conto FEP-03, porque un calculo de energia libre relativa necesita las tres condiciones a la vez y sobre LOS DOS miembros de la pareja.
Criterio prerregistradoPre-registered criterion
CRUCE DESCRIPTIVO SIN GATES DE DECISION. Cantidades de interes: numero de parejas EJECUTABLE_HOY y su fraccion sobre las 91 aptas; numero que se desbloquearia solo con declarar tautomeros, que es una decision quimica documentada y no modelado estructural; numero de complejos distintos implicados en las ejecutables. LIMITACION DECLARADA ANTES: 'ejecutable hoy' significa SIN LOS DOS BLOQUEOS MEDIDOS, no 'lista para produccion'. FEP-02 exige ademas documentar cadenas, disulfuros, metales, cofactores y aguas; ese criterio completo se reporta APARTE y NO se usa para clasificar, porque lo cumplen muy pocos y absorberia toda la senal. La cifra es por tanto una COTA SUPERIOR de lo ejecutable. PROHIBIDO citarla como 'parejas listas para FEP+'.
ProtocoloProtocol
Cruce de artefactos ya sellados, SIN COMPUTO NUEVO. Fuentes: FEP-03/parejas.jsonl (las 91 con apta_fep=true), FEP-01-EXT (ligandos donde el proton se mueve, es decir con decision de tautomero pendiente), FEP-02-EXT (receptores con hueco EN EL SITIO, es decir con reparacion estructural pendiente) y FEP-02 (documentado_para_fep, el criterio completo de receptor). Una pareja se clasifica EJECUTABLE_HOY si ninguno de sus dos extremos tiene tautomero pendiente ni hueco en el sitio; BLOQUEADA_POR_TAUTOMERO si el unico defecto es de tautomero; BLOQUEADA_POR_RECEPTOR si algun extremo necesita reparacion estructural. El orden de precedencia es deliberado: el receptor domina porque su arreglo es mas caro.
Razón de la decisiónReason for the decision
EL NUMERO QUE NINGUNA DE LAS CINCO AUDITORIAS ANTERIORES CONTENIA. De las 91 parejas congenericas que FEP-03 declaro aptas: 75 EJECUTABLES HOY -ningun extremo con tautomero pendiente ni con hueco en el sitio-, 7 bloqueadas solo por tautomero y 9 por receptor. Las 75 abarcan 45 complejos distintos. Declarar los tautomeros de esos 7 sube la cifra a 82, y es una decision quimica documentada, no modelado estructural. LAS DOS CIFRAS HAY QUE DARLAS JUNTAS, Y LA SEGUNDA ES LA INCOMODA: bajo el criterio COMPLETO de FEP-02 -documentado_para_fep en ambos extremos, que exige ademas cadenas, disulfuros, metales, cofactores y aguas- solo quedan 19 parejas. La distancia entre 75 y 19 NO son defectos: es DOCUMENTACION AUSENTE. Ninguna de esas 56 parejas esta rota; lo que les falta es que alguien declare que hace con las aguas del sitio, con los metales y con las cadenas. Esa distincion decide como se planifica H2, porque documentar y reparar cuestan ordenes de magnitud distintos. POR QUE LA VISTA POR PAREJA ES MAS FAVORABLE QUE LA VISTA POR COMPLEJO: FEP-01 y FEP-02 reportan 19% y 41% sobre los 203, pero las 91 parejas aptas ya son un subconjunto filtrado por FEP-03 -pocas dianas con muchos analogos- y ese subconjunto esta mejor preparado que la media. No es contradiccion entre auditorias: es que la unidad de inferencia de un calculo FEP+ es la PAREJA y no el complejo, y nadie habia contado en esa unidad. LIMITACION DECLARADA ANTES DE CORRER: 'ejecutable hoy' significa SIN LOS DOS BLOQUEOS MEDIDOS, no 'lista para produccion'. Los 75 son una COTA SUPERIOR y queda PROHIBIDO citarlos como 'parejas listas para FEP+'. El criterio completo se reporto aparte y no se uso para clasificar precisamente porque lo cumplen tan pocos que absorberia toda la senal. Sin computo nuevo: cruce de cinco artefactos ya sellados, 0.011 s.

Métricas registradasRecorded metrics

tipo
cruce de artefactos sellados, sin computo nuevo
duration_seconds
0.011
n_parejas_aptas
91
limitacion_declarada
Ejecutable HOY significa 'sin los dos bloqueos medidos', no 'lista para produccion'. FEP-02 exige ademas documentar cadenas, disulfuros, metales, cofactores y aguas, y ese criterio completo (documentado_para_fep) se reporta aparte sin usarse para clasificar, porque lo cumplen muy pocos y absorberia toda la senal. El numero es una COTA SUPERIOR de lo ejecutable.

ReproducibilidadReproducibility

commit
beee39bffe (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
duraciónduration
1 s
complejoscomplexes
91
hashes SHA-256
4
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-08El sitio inter-cadena sobrevive a la preparaciónMediciónMeasurementArtículoPapern=203

Veintiséis complejos tienen el bolsillo formado por varias cadenas, uno de ellos por cuatro. Ninguno pierde una sola cadena al preparar el receptor. El riesgo anotado hace meses no se materializa.

FEP-02 midió que 43 de 203 complejos tienen el sitio de unión repartido entre más de una cadena, y su propio código dejó anotado el riesgo concreto: que la función que detecta la cadena dominante recorte una sola y destruya un sitio inter-cadena.

Ese riesgo llevaba meses escrito y nunca se comprobó. Si se materializara, no sería un problema de documentación como el resto de la cartera H: sería un defecto de producción, y todo lo medido sobre los complejos afectados arrastraría un error no declarado.

Comprobarlo resultó costar once segundos, porque el material ya existía.

Qué se comparó

Para cada complejo, dos lecturas y una resta:

  1. Cadenas que forman el sitio — las que aportan algún residuo con un átomo a ≤ 8 Å de algún átomo pesado del ligando cristalográfico, medido sobre el PDB original.
  2. Cadenas presentes en el receptor preparado — el rec.pdbqt, que es el que Vina realmente usa.
  3. Pérdida — cadenas de (1) ausentes de (2).

El radio de 8 Å se reusó de FEP-02 en lugar de elegir uno nuevo, para que las dos mediciones sean comparables.

Qué salió

0 de 116 complejos tienen el sitio mutilado.

Y donde más podría haber dolido:

Complejos con sitio formado por más de una cadena26
Máximo de cadenas en un mismo sitio4
De esos 26, cuántos pierden alguna cadena0

El riesgo no ocurre. Es un negativo limpio, y es buena noticia: no hay nada que reparar por esta vía.

La limitación que sí importa

Cobertura: 116 de 203, el 57%.

Los 87 restantes son **todos de valtest, y fallan por una causa única: no existe rec.pdbqt para ellos**. El receptor preparado sólo se generó para train.

Eso no es un fallo del análisis — es una asimetría real del material. La afirmación vale para train y **no se extiende a val ni a test**.

Queda anotado porque cualquier experimento futuro que compare receptores preparados entre splits se va a topar con lo mismo, y conviene saberlo antes de diseñarlo que después de ejecutarlo.

Lo que este resultado NO dice

Se compara presencia de cadena, no identidad residuo a residuo. Una cadena presente pero recortada en su extremo, o con residuos ausentes en medio, no se detecta con este criterio.

El resultado es una cota inferior del daño: dice que no se pierden cadenas enteras, no que el receptor preparado sea idéntico al original en la región del sitio.

Medirlo exigiría comparación residuo a residuo. Es el paso natural si alguna vez aparece sospecha de recorte fino, y no hay motivo para darlo mientras no aparezca.

Por qué merecía ejecutarse aunque saliera negativo

Era un identificador declarado en la cartera de receptor que llevaba meses sin tocarse, con un riesgo documentado y sin medir. Un riesgo escrito y no comprobado tiene el peor de los dos comportamientos posibles: no protege de nada y sigue apareciendo en cada revisión como una duda abierta.

Once segundos lo cerraron.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La preparacion del receptor conserva todas las cadenas que forman el sitio de union. Si alguna se pierde, ese complejo se dockeo contra un bolsillo incompleto y todo lo medido sobre el arrastra un error no declarado.
Criterio prerregistradoPre-registered criterion
MEDICION SIN GATES DE DECISION. Cantidad de interes: numero y fraccion de complejos con SITIO MUTILADO -alguna cadena que aporta residuos al sitio ausente del receptor preparado-, con el recuento de residuos de sitio perdidos y el cruce contra los que FEP-02 marco como sitio inter-cadena. LIMITACION DECLARADA ANTES: se compara PRESENCIA DE CADENA, no identidad residuo a residuo; una cadena presente pero recortada en su extremo no se detecta con este criterio, de modo que el resultado es una COTA INFERIOR del dano. A diferencia del resto de la cartera H, esto no es documentacion: un sitio mutilado es un defecto de PRODUCCION y su hallazgo obliga a revisar el pipeline de preparacion, no solo a declararlo.
ProtocoloProtocol
ID declarado en la cartera B del doc 49 y nunca ejecutado. Version barata que responde la pregunta con material ya existente. FEP-02 midio 43 de 203 complejos con el sitio repartido entre varias cadenas y su docstring dejo anotado el riesgo de que _detect_dominant_chain recorte una sola cadena y destruya un sitio inter-cadena; ese riesgo nunca se comprobo. Para cada uno de los 203: (1) cadenas que forman el sitio = las que aportan algun residuo con un atomo a <=8 A de algun atomo pesado del ligando cristalografico, medido sobre data/pdbbind/<pid>/<pid>_protein.pdb; (2) cadenas presentes en el receptor PREPARADO, data/molflex_train_v2/<pid>/<pid>/rec.pdbqt, que es el que Vina realmente usa; (3) perdida = cadenas de (1) ausentes de (2), con el recuento de residuos de sitio que se van con ellas. El radio de 8 A se reusa de FEP-02 para que las mediciones sean comparables. Solo lectura.
Razón de la decisiónReason for the decision
EL RIESGO NO SE MATERIALIZA. 0 de 116 complejos tienen el sitio mutilado: ninguna cadena que aporta residuos al sitio de union desaparece en el receptor preparado. 26 de los 116 tienen sitio formado por mas de una cadena -hasta 4 cadenas en un caso- y los 26 conservan todas. El riesgo que FEP-02 dejo anotado en su docstring -que _detect_dominant_chain recorte una sola cadena y destruya un sitio inter-cadena- no ocurre en el material examinado. Es un negativo limpio y es buena noticia: no hay defecto de produccion que reparar por esta via. COBERTURA, QUE ES LA LIMITACION PRINCIPAL: 116 de 203, el 57%. Los 87 restantes son TODOS de valtest y fallan por la misma causa unica -no existe data/molflex_train_v2/<pid>/<pid>/rec.pdbqt para ellos-, no por un fallo del analisis. El receptor preparado solo se genero para train, de modo que la afirmacion vale para train y NO se extiende a val ni a test. Esto NO es una excusa metodologica: es una asimetria real del material que conviene tener presente en cualquier experimento futuro que compare receptores preparados entre splits. LIMITACION DECLARADA ANTES DE CORRER: se compara PRESENCIA DE CADENA, no identidad residuo a residuo. Una cadena presente pero recortada en su extremo, o con residuos ausentes en medio, NO se detecta con este criterio. El resultado es por tanto una COTA INFERIOR del dano: dice que no se pierden cadenas enteras, no que el receptor preparado sea identico al original en la region del sitio. Medir eso exigiria comparacion residuo a residuo y es el paso natural si alguna vez se sospecha del recorte fino. El radio de 8 A se reuso de FEP-02 en vez de elegir uno nuevo, para que ambas mediciones sean comparables.

Métricas registradasRecorded metrics

tipo
medicion de defecto de produccion, sin gates de decision
duration_seconds
11.17
n_complejos
203
n_ok
116
n_error
87
radio_sitio_A
8.0
limitacion_declarada
Se compara presencia de CADENA, no identidad residuo a residuo. Una cadena presente pero recortada en su extremo no se detecta aqui. El resultado es una COTA INFERIOR del dano.

ReproducibilidadReproducibility

commit
7fe43084cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
duraciónduration
11 s
complejoscomplexes
203
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FEP-02-EXTEsta vez medir la consecuencia casi no ayudóMediciónMeasurementArtículoPapern=203

El mismo movimiento que redujo los tautómeros a un tercio apenas divide los huecos de cadena por dos: 41 de los 86 están justo en el bolsillo. Esperaba lo contrario, y esperarlo habría sido extrapolar sin medir.

FEP-02 midió que 86 de 203 receptores (42%) tienen huecos de numeración — tramos de cadena ausentes en la estructura. Ese número quedó como una de las dos razones por las que sólo 83 de 203 estarían documentados para energía libre.

Pero contaba existencia, no relevancia. Un tramo ausente a cincuenta residuos del bolsillo no afecta a un cálculo de energía libre de unión; uno que corta el propio sitio, sí. El propio FEP-02 lo declaró: «los 86 son candidatos, no defectos confirmados».

Este experimento aplica a los huecos el mismo tratamiento que FEP-01-EXT aplicó a los tautómeros.

Qué salió

Cada hueco se clasificó por la distancia mínima de sus dos residuos flanqueantes a cualquier átomo pesado del ligando. El radio de 8 Å no se eligió nuevo: es el mismo con el que FEP-02 definió «sitio» al contar cadenas, metales y aguas.

ClasificaciónComplejos
EN EL SITIO (≤ 8 Å)41
Periférico (8–15 Å)29
Lejano (> 15 Å)16

86 de 86 analizables, cero errores, 1.9 segundos.

Lo informativo es que no se repitió el resultado anterior

Contado por el originalAccionable de verdad
FEP-01-EXT — tautómeros16454 (un tercio)
FEP-02-EXT — huecos8641 (casi la mitad)

Yo esperaba la misma reducción drástica. No se produjo, y asumirla habría sido extrapolar de un experimento a otro sin medir — exactamente el error que MF-26 cometió al declarar una especificación desde una curva de train.

Casi la mitad de los huecos está justo donde importa. Este problema es más real de lo que el de los tautómeros resultó ser.

La asimetría entre huecos y complejos

Hay 337 huecos en total y sólo 55 están en el sitio: un 16% por hueco, frente a un 48% por complejo.

La razón es aritmética y merece anotarse porque cambia qué se reporta: basta un hueco cerca del bolsillo para que el complejo sea accionable. Contar huecos subestima el problema; la unidad correcta es el complejo.

Lo que gana la cartera H

Deja de tener una lista de 86 y pasa a tener tres grupos con acción distinta:

  • 41 hay que reparar antes de poder declarar el receptor;
  • 29 son frontera y exigen mirar caso por caso;
  • 16 basta con declararlos.

El control que existía y ya no se puede ejecutar

FEP-02 había verificado algo notable: los 9 complejos que fallaron la parametrización con error de plantilla en MF-10 tienen huecos de cadena, 9 de 9, contra una tasa base del 42.4% — probabilidad de coincidencia ≈ 0.0004.

Comprobar si esos huecos están en el sitio habría validado el criterio de este experimento contra un fallo real, independiente y ya observado. Era el mejor control disponible y era gratis.

No se pudo: **el failures.jsonl de MF-10 está vacío** y los identificadores no son recuperables desde el artefacto.

Es una instancia concreta de lo que FND-08 encontró sobre dato crudo ausente, y el coste se paga aquí. No es una molestia abstracta de contabilidad: es un control que existía, que no costaba nada, y que ya no se puede hacer.

Lo que este experimento tiene prohibido concluir

Declarado antes de correr: un hueco lejano no garantiza que la estructura sea utilizable — puede romper el plegamiento o la dinámica global. Lo medido es qué fracción tiene el defecto en la región que decide la unión, que es la única que obliga a reparar antes de declarar el receptor.

Un hueco lejano se declara. Uno en el sitio se arregla.

Y queda expresamente prohibido concluir que los 16 lejanos están listos para energía libre: FEP-02 exige además documentar cadenas, disulfuros, metales, cofactores y aguas, y nada de eso se toca aquí.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Los 86 receptores con huecos de numeracion que conto FEP-02 no son 86 defectos accionables: la mayoria tiene el hueco lejos del sitio de union, donde no afecta a un calculo de energia libre. La fraccion que obliga a reparar antes de declarar el receptor es sustancialmente menor.
Criterio prerregistradoPre-registered criterion
MEDICION SIN GATES DE DECISION, declarada como tal. Cantidades de interes: (a) fraccion de los receptores con huecos cuya clasificacion es EN_EL_SITIO; (b) reparto EN_EL_SITIO / PERIFERICO / LEJANO por complejo y por hueco individual; (c) distancia minima al ligando. LIMITACION DECLARADA ANTES: un hueco LEJANO no garantiza que la estructura sea utilizable -puede romper plegamiento o dinamica global-; lo que se mide es que fraccion tiene el defecto EN la region que decide la union, que es la unica que obliga a reparar ANTES de declarar el receptor. Un hueco lejano se declara; uno en el sitio se arregla. PROHIBIDO concluir que los receptores clasificados LEJANO estan listos para FEP+: FEP-02 exige ademas documentar cadenas, disulfuros, metales, cofactores y aguas, y eso no se toca aqui.
ProtocoloProtocol
Extension de FEP-02 sobre su misma cohorte de 203, aplicando a los huecos el mismo tratamiento que FEP-01-EXT aplico a los tautomeros: medir CONSECUENCIA en vez de EXISTENCIA. Para cada receptor con huecos se leen los residuos del PDB original de PDBBind (solo ATOM, sin aguas ni heteros), se detectan los saltos de numeracion por cadena, y cada hueco se clasifica por la distancia MINIMA de sus dos residuos flanqueantes a cualquier atomo pesado del ligando cristalografico: EN_EL_SITIO si <=8 A, PERIFERICO si <=15 A, LEJANO si mas. El radio de 8 A NO se elige nuevo: se reusa el mismo con el que FEP-02 definio 'sitio' al contar cadenas, metales y aguas. Solo lectura.
Razón de la decisiónReason for the decision
MEDICION SIN GATES. 86 de 86 analizables, cero errores, 1.9 s de computo. EL RESULTADO ES OPUESTO AL DE FEP-01-EXT, Y ESA ES LA PARTE INFORMATIVA. Alli medir consecuencia en vez de existencia redujo el trabajo a un tercio (164 -> 54). Aqui apenas lo divide por dos: de los 86 receptores con huecos, 41 (47.7%) tienen el hueco EN EL SITIO -a 8 A o menos de algun atomo pesado del ligando-, 29 son perifericos (8-15 A) y solo 16 son lejanos. La mitad de los huecos esta justo en el bolsillo. Yo esperaba la misma reduccion que en tautomeros y no se produjo; asumirla habria sido extrapolar de un experimento a otro sin medir. ASIMETRIA ENTRE HUECOS Y COMPLEJOS: hay 337 huecos en total y solo 55 estan en el sitio, o sea el 16% por hueco frente al 48% por complejo. La razon es que basta UN hueco cerca del sitio para que el complejo sea accionable, de modo que contar huecos subestima el problema y contar complejos es la unidad correcta. CONSECUENCIA OPERATIVA PARA H2: la cartera queda con tres grupos y no con una lista de 86. 41 complejos hay que REPARAR antes de poder declarar el receptor; 29 son frontera y exigen mirar caso por caso; 16 basta con DECLARARLOS. LIMITACION DECLARADA ANTES DE CORRER: un hueco LEJANO no garantiza que la estructura sea utilizable -puede romper plegamiento o dinamica global-; lo medido es que fraccion tiene el defecto en la region que decide la union. Queda PROHIBIDO concluir que los 16 lejanos estan listos para FEP+: FEP-02 exige ademas documentar cadenas, disulfuros, metales, cofactores y aguas, y nada de eso se toca aqui. EL RADIO NO SE ELIGIO NUEVO: se reuso el mismo de 8 A con el que FEP-02 definio 'sitio' al contar cadenas, metales y aguas, para que las dos mediciones sean comparables. CRUCE QUE NO SE PUDO HACER: FEP-02 verifico que los 9 complejos que fallaron la parametrizacion en MF-10 tienen huecos de cadena 9 de 9; comprobar si esos huecos estan EN EL SITIO habria validado el criterio de este experimento contra un fallo real e independiente, pero el failures.jsonl de MF-10 esta VACIO y los pid no son recuperables desde el artefacto. Es una instancia concreta del hallazgo de FND-08 sobre dato crudo ausente, y el coste de esa deuda se paga aqui.

Métricas registradasRecorded metrics

tipo
medicion de consecuencia, sin gates de decision
duration_seconds
1.91
n_complejos
203
n_con_huecos_segun_FEP02
86
n_analizables
86
n_error
0
fraccion_en_el_sitio
0.4767
huecos_totales
337
huecos_en_el_sitio
55
limitacion_declarada
Un hueco LEJANO no garantiza que la estructura sea utilizable: puede romper plegamiento o dinamica global. Se mide que fraccion tiene el defecto EN la region que decide la union, que es la que obliga a reparar antes de declarar el receptor. Un hueco lejano se declara; uno en el sitio se arregla.

ReproducibilidadReproducibility

commit
7fe43084cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
duraciónduration
2 s
complejoscomplexes
203
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FEP-01-EXTDe 164 problemas a 54, en ocho segundosMediciónMeasurementArtículoPapern=203

La ambigüedad tautomérica que bloqueaba la cartera H se reduce a un tercio cuando se mide su consecuencia en vez de su existencia. Y contar donadores y aceptores habría dado cero señal donde sí la hay.

FEP-01 dejó el cuello identificado: 164 de 203 ligandos (81%) tienen más de un tautómero enumerable y el pipeline no declara cuál usa. Para docking apenas importa; para energía libre es determinante, porque el tautómero decide qué átomos donan y cuáles aceptan puentes de hidrógeno.

Pero ese número contaba ambigüedad, no consecuencia. Que existan varios tautómeros posibles no significa que el que hay en el fichero sea distinto del que alguien elegiría.

Este experimento mide la diferencia.

La medición que casi hago mal

La forma obvia de comparar dos tautómeros es contar donadores y aceptores de puente de hidrógeno. Un sondeo previo sobre cinco ligandos la descartó:

Ligando¿Canónico ≠ actual?HBDHBA
10gsSí5 → 55 → 5
1apvSí6 → 66 → 6

Tautómero distinto, totales idénticos. El protón se mueve de un átomo a otro y la suma no cambia.

Contar habría medido cero señal donde sí la hay. La comparación correcta es átomo por átomo: cuántos hidrógenos lleva cada átomo pesado antes y después. Eso localiza el protón, que es la cantidad físicamente relevante.

Qué salió

Sobre los 203, con validez 203/203:

nde 203
SMILES canónico distinto del fichero8441.4%
El protón se mueve de átomo5426.6%
Desacuerdo sin mover ningún protón3014.8%

Mediana de 2 átomos afectados; máximo 4.

Esos 30 son instructivos: el canonicalizador reordena o kekuliza la molécula sin cambiar dónde está el hidrógeno. Un SMILES distinto no implica un tautómero distinto en el sentido que importa.

La bandera de FEP-01 no tiene falsos negativos

De los 54 donde el protón se mueve, los 54 estaban marcados como ambiguos por FEP-01. Cero complejos no marcados lo mueven.

La bandera es conservadora y sana. Su exceso —110 marcados sin desacuerdo— son casos donde el fichero ya coincide con el canónico. Eso no prueba que sean correctos; prueba que no hay conflicto de decisión.

Consecuencia operativa

Declarar tautómero para 54 complejos, no 164. Un tercio del trabajo, con la lista identificada por pid: 30 en train, 24 en valtest.

Ese es el desbloqueo concreto del primer punto de la cartera H.

Un patrón que no buscaba

Los tres con más átomos afectados son 1m0n, 1m0o y 1m0q: 4 átomos movidos cada uno, con patrón N/N/O idéntico entre ellos.

Son análogos de la misma serie química. El defecto es de la serie, no del complejo — lo que cambia cómo se arregla: una decisión química para la serie entera, en vez de tres decisiones independientes que podrían salir inconsistentes entre sí.

Es también, de paso, la clase de estructura que FEP-03 echaba en falta: series congenéricas de verdad dentro del conjunto.

Lo que este experimento tiene prohibido concluir

Declarado en el gate antes de correr, y repetido en el sello:

El tautómero canónico no es «el correcto». Es una heurística de puntuación, no una predicción de la población dominante a pH fisiológico.

Es la misma limitación que FEP-01 declaró para su enumeración. Lo medido es desacuerdo entre el fichero y un canonicalizador estándar, no error.

Queda expresamente prohibido concluir desde aquí que las poses dockeadas de esos 54 son incorrectas. Lo que se concluye es más modesto y más útil: en 54 complejos hay una decisión química que nadie tomó explícitamente, y para energía libre esa decisión hay que tomarla y declararla.

Incidencia registrada

RDKit emitió avisos de kekulización en unos pocos ligandos. Ninguno produjo error ni salió del denominador, pero su canonicalización pudo estar degradada y no se comprobó uno a uno. Queda anotado en lugar de silenciado.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La ambiguedad tautomerica que FEP-01 conto (164 de 203) tiene CONSECUENCIA medible: en una fraccion sustancial de los ligandos el tautomero que el pipeline lee del fichero coloca los protones en atomos distintos de los que elegiria un canonicalizador estandar, de modo que el patron donador/aceptor con el que se dockeo no es el que se declararia para FEP+.
Criterio prerregistradoPre-registered criterion
MEDICION SIN GATES DE DECISION, declarada como tal. G1 validez: >=95% de los 203 procesables. G2 descriptivo: fraccion con SMILES canonico distinto del actual. G3 LA CANTIDAD DE INTERES: fraccion donde algun atomo pesado cambia su numero de hidrogenos, con la mediana de atomos afectados. Cruce obligatorio con FEP-01: cuantos de los que ese experimento marco ambiguos mueven realmente el proton, y -mas importante- cuantos que NO marco ambiguos si lo mueven. LIMITACION QUE FORMA PARTE DEL RESULTADO Y SE DECLARA ANTES: el tautomero canonico NO es 'el correcto'; es una heuristica de puntuacion, no una prediccion de la poblacion dominante a pH fisiologico, la misma limitacion que FEP-01 declaro para la enumeracion. Se mide DESACUERDO entre el fichero y un canonicalizador estandar, NO error. Un desacuerdo alto no significa que el docking este mal: significa que hay una decision que nadie tomo explicitamente y que para FEP+ hay que tomar y declarar. PROHIBIDO concluir que las poses dockeadas son incorrectas a partir de este experimento.
ProtocoloProtocol
Extension de FEP-01 sobre su misma cohorte de 203. Para cada ligando se compara el tautomero TAL COMO ESTA EN EL FICHERO -el que lee mf.leer_ligando y dockea el pipeline- contra el canonico de rdMolStandardize.TautomerEnumerator.Canonicalize. LA COMPARACION ES ATOMO POR ATOMO, no por conteo de HBD/HBA: un sondeo previo sobre 5 ligandos mostro casos con tautomero distinto y los MISMOS totales de donadores y aceptores, porque el proton se mueve de un atomo a otro sin cambiar la suma. Se compara GetTotalNumHs() por atomo pesado, que localiza el proton. Si el canonicalizador no preserva la indexacion en algun ligando se declara INDEXACION_NO_PRESERVADA y ese caso sale del denominador en vez de compararse mal. Solo lectura; cero escrituras fuera del directorio del experimento.
Razón de la decisiónReason for the decision
MEDICION SIN GATES, declarada como tal. Validez 203/203. LA AMBIGUEDAD DE FEP-01 SE REDUCE A UN TERCIO CUANDO SE MIDE SU CONSECUENCIA. FEP-01 conto 164 de 203 con mas de un tautomero enumerable. Aqui: 84 de 203 (41.4%) tienen SMILES canonico distinto del que hay en el fichero, pero solo en 54 de 203 (26.6%) EL PROTON SE MUEVE REALMENTE de atomo -mediana 2 atomos afectados, maximo 4-. Los otros 30 son desacuerdo sin consecuencia: el canonicalizador reordena o kekuliza sin cambiar donde esta el hidrogeno. LA COMPARACION POR CONTEO HABRIA FALLADO. Un sondeo previo sobre 5 ligandos mostro casos con tautomero distinto y los MISMOS totales de HBD y HBA, porque el proton se mueve de un atomo a otro sin cambiar la suma; por eso la medicion es GetTotalNumHs por atomo pesado y no un conteo agregado. Contar donadores y aceptores habria dado cero senal donde si la hay. LA BANDERA DE FEP-01 NO TIENE FALSOS NEGATIVOS: de los 54 donde el proton se mueve, los 54 estaban marcados como ambiguos; cero complejos no marcados mueven el proton. La bandera es conservadora y sana, y su exceso -110 marcados sin desacuerdo- son casos donde el fichero YA coincide con el canonico. CONSECUENCIA OPERATIVA PARA H2: declarar tautomero para 54 complejos es un tercio del trabajo que sugeria FEP-01, y la lista esta identificada por pid. 30 de los 54 estan en train y 24 en valtest. Los tres con mas atomos afectados son 1m0n, 1m0o y 1m0q, con 4 atomos movidos cada uno y patron N/N/O identico entre ellos: son analogos de la misma serie, de modo que el defecto es de la serie y no del complejo. LIMITACION DECLARADA ANTES DE CORRER Y QUE FORMA PARTE DEL RESULTADO: el tautomero canonico NO es 'el correcto'. Es una heuristica de puntuacion, no una prediccion de la poblacion dominante a pH fisiologico -la misma limitacion que FEP-01 declaro para la enumeracion-. Lo medido es DESACUERDO entre el fichero y un canonicalizador estandar, NO error. Queda expresamente PROHIBIDO concluir desde aqui que las poses dockeadas de esos 54 son incorrectas: lo que se concluye es que en 54 complejos hay una decision quimica que nadie tomo explicitamente. INCIDENCIA REGISTRADA: RDKit emitio avisos de kekulizacion en unos pocos ligandos; ninguno produjo error ni salio del denominador, pero su canonicalizacion pudo estar degradada y no se ha comprobado uno a uno.

Métricas registradasRecorded metrics

tipo
medicion de consecuencia, sin gates de decision
duration_seconds
8.36
n_complejos
203
n_ok
203
n_error
0
limitacion_declarada
El tautomero canonico NO es 'el correcto': es una heuristica de puntuacion, no una prediccion de la poblacion dominante a pH fisiologico. Se mide DESACUERDO entre el fichero y un canonicalizador estandar, no error.

ReproducibilidadReproducibility

commit
c578cc6757 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
duraciónduration
8 s
complejoscomplexes
203
hashes SHA-256
2
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FND-08Le pedimos al registro que se sostuviera solo, y en diez sitios no lo hacíaRefutaciónRefutationArtículoPapern=94

Auditoría de solo lectura sobre los 94 artefactos sellados. Fallan tres de los cuatro criterios, y el hallazgo principal no era ninguno de ellos: diez artefactos guardan sus datos bajo un nombre que el contrato no declara.

El programa promete algo concreto: que cualquiera pueda reconstruir sus resultados sin memoria de sesión. El experimento que debería probarlo —un tercero reconstruyendo el paquete de transferencia— depende de un export que todavía no existe.

Pero hay una pregunta anterior que no depende de nada, y que tiene que responderse antes de que ningún tercero mire nada:

¿El registro se sostiene por sí solo?

Esta auditoría lo comprueba mecánicamente. Cuesta segundos y no escribe nada: sólo lee.

Los cuatro criterios y el resultado

GateQué exigeResultado
G1Todo artefacto sellado valida sus hashes93 / 94
G2El n declarado coincide con las filas de su registro23 / 23
G3Todo artefacto con resultados tiene dato crudo no vacío60 / 64
G4El script que produjo el resultado está hasheado63 / 64

Tres de cuatro fallan. NO_GO, y ese es el resultado útil: una auditoría que pasa a la primera normalmente significa que no miró lo suficiente.

El hallazgo principal no era ninguno de los gates

Diez artefactos guardan su dato crudo bajo un nombre distinto del canónico:

ArtefactoDónde vive realmente el dato
D-MF-HARDcohort.jsonl
FEP-03parejas.jsonl
MF-01-UNIONunion_candidates_*.jsonl, union_labels_*.jsonl
MF-02Ecorridas.jsonl, pocket_frame.jsonl
MF-08corridas.jsonl
MF-10-CALbrazo_a.jsonl, brazo_b.jsonl
MF-11-R2per_complex_{train,val,test}.jsonl
MF-15, MF-20per_complex_train.jsonl
RS-01cache_train_only_view.jsonl

El contrato declara per_complex.jsonl, y en los diez casos ese fichero sigue en el directorio, vacío, junto al que sí tiene los datos.

A un tercero se le dice que busque un archivo que está vacío. No hay pérdida de información —los datos están ahí— pero es incumplimiento de contrato, y es exactamente la fricción que hace fracasar una transferencia: el que llega mira donde se le dijo, ve cero filas, y concluye que el artefacto está vacío.

La corrección no es renombrar. Renombrar rompería hashes sellados. Se resuelve con un índice aditivo —scripts/artifacts_science/_datos_crudos.json— que dice para cada artefacto dónde vive su dato realmente.

Los fallos, uno a uno

**FND-01-SMOKE no valida, y no es reparable.** Selló experiment_manifest.py como dataset. Cuando la herramienta se amplió con el subcomando maintain, el hash dejó de coincidir — y maintain rechaza tocar dataset_hashes por diseño, porque los datasets son inmutables.

La causa raíz es una mala clasificación: código sellado como dato. Es un artefacto cuya hipótesis literal dice «smoke test» y no sostiene ninguna cifra del programa, pero el fallo es real y queda declarado en lugar de silenciado.

Cuatro artefactos declaran resultados sin ningún fichero de datos por unidad: FND-04, MF-26, REC-03-PRE y RS-01A-R1. Los cuatro son re-análisis o corrigenda sobre material ya sellado, y sus scripts sí están hasheados. De modo que:

Son reproducibles por re-ejecución. No son verificables por lectura.

Esa distinción existía de facto y no estaba declarada en ningún sitio. Ahora sí.

**FND-02 declara resultados sin ningún script hasheado.** No se corrige a posteriori: añadir hashes a un sello es reescribir lo que se garantizó en su momento. Se documenta.

Cero hashes apuntan a ficheros ausentes. Eso sí salió limpio, y es el chequeo que más me preocupaba.

Nota de método: la auditoría se equivocó dos veces antes de sellar

Vale la pena contarlo porque es la parte instructiva.

Primera versión. Buscaba el dato crudo en una lista fija de nombres de fichero. Reportó 8 fallos de G3, cinco de ellos falsos: el dato existía, sólo que bajo un nombre que la lista no contemplaba.

Segunda versión. Comparó el n declarado contra el .jsonl más largo del directorio. Produjo 6 falsos positivos en G2, porque varios artefactos llevan ficheros auxiliares —cohortes, parejas, brazos— con más filas que complejos tiene la cohorte.

Ambos criterios se corrigieron antes de sellar. Si se hubiera publicado la primera versión, habría enviado a arreglar cinco cosas que estaban bien.

Una auditoría mal calibrada es peor que ninguna: gasta credibilidad en defectos que no existen.

Es el mismo error que la auditoría persigue —afirmar algo que el dato no sostiene— cometido por el instrumento que iba a detectarlo.

Qué habilita esto

Ninguno de estos defectos invalida un resultado científico. Todos son de contrato: el registro promete una estructura y en algunos sitios entrega otra.

Pero son justo los que un evaluador externo encuentra en los primeros diez minutos, y son baratos de arreglar ahora y caros de descubrir cuando los encuentre otro. Arreglarlos es la precondición de que FEP-06 —el dry-run con un tercero de verdad— tenga alguna probabilidad de salir bien.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
El registro experimental se sostiene por si solo: un tercero que reciba unicamente el repositorio puede verificar las cifras de cada artefacto sellado sin re-ejecutar nada y sin conocer la sesion.
Criterio prerregistradoPre-registered criterion
G1 integridad del sello: 100% de los artefactos sellados validan. G2 consistencia del recuento: si el artefacto declara n_complejos, coincide con las filas de su registro por unidad. G3 existencia del dato crudo: todo artefacto con resultados tiene al menos un archivo de datos no vacio, de modo que sus cifras sean verificables sin re-ejecutar. G4 trazabilidad del codigo: el script que produjo el resultado esta hasheado en el sello, no solo mencionado en prosa. GO exige los cuatro.
ProtocoloProtocol
Auditoria mecanica de SOLO LECTURA sobre los artefactos sellados, con scripts/auditoria_reproducibilidad.py. Es el precursor de FEP-06, que pide que un tercero reconstruya el paquete de transferencia: ese experimento depende de FEP-05, que no existe, pero la pregunta de si el registro se sostiene NO depende de nada. G2 y G3 solo aplican a artefactos con metrics.json; prerregistros y documentales quedan fuera del denominador. Cero escrituras fuera del propio directorio del experimento.
Razón de la decisiónReason for the decision
NO_GO: fallan tres de los cuatro gates, y ese es el resultado util. Precursor de FEP-06, que depende de FEP-05 y por tanto no es ejecutable todavia; la pregunta de si el registro se sostiene por si solo NO depende de nada y se responde aqui. Coste: segundos, solo lectura. G1 INTEGRIDAD DEL SELLO 93/94. Falla FND-01-SMOKE: sello scripts/experiment_manifest.py como DATASET, y cuando la herramienta se amplio con el subcomando maintain el hash dejo de coincidir. La causa raiz es una mala clasificacion -codigo sellado como dato- y maintain NO puede repararlo por diseno, porque rechaza tocar dataset_hashes. Es un artefacto cuya hipotesis literal es 'smoke test' y no sostiene ninguna cifra del programa, pero el fallo es real y queda declarado en vez de silenciado. G2 CONSISTENCIA DEL RECUENTO 23/23. Todo artefacto que declara n_complejos y tiene per_complex.jsonl con contenido coincide con el. G3 EXISTENCIA DE DATO CRUDO 60/64. Fallan FND-04, MF-26, REC-03-PRE y RS-01A-R1: declaran resultados sin ningun fichero de datos por unidad, de modo que un tercero no puede verificar sus cifras sin re-ejecutar. Los cuatro son re-analisis o corrigenda sobre material ya sellado y sus scripts SI estan hasheados, asi que son reproducibles por re-ejecucion; lo que no son es verificables por lectura. La distincion importa y no estaba declarada. G4 TRAZABILIDAD DEL CODIGO 63/64. Falla FND-02: declara resultados sin ningun script hasheado en el sello. HALLAZGO PRINCIPAL, QUE NO ERA NINGUN GATE: 10 artefactos tienen su dato crudo bajo un nombre distinto del canonico -cohort.jsonl, parejas.jsonl, corridas.jsonl, brazo_a.jsonl, union_candidates_*.jsonl- mientras la seccion 17 declara per_complex.jsonl y el skeleton vacio de ese nombre sigue en el directorio. A un tercero se le dice que busque un fichero que esta vacio junto a otro que si tiene los datos. No hay perdida de informacion, hay no conformidad de contrato, y es exactamente el tipo de friccion que hace fracasar una transferencia. CERO hashes apuntan a ficheros ausentes. NOTA DE METODO: la primera version de esta auditoria uso una lista fija de nombres de fichero y reporto 8 fallos de G3, cinco de ellos falsos porque el dato existia bajo otro nombre; y la segunda comparo n contra el mayor .jsonl del directorio y produjo 6 falsos positivos en G2 por ficheros auxiliares mas largos que la cohorte. Ambos criterios se corrigieron ANTES de sellar. Una auditoria mal calibrada es peor que ninguna, porque gasta credibilidad en defectos inexistentes.

Métricas registradasRecorded metrics

tipo
auditoria de reproducibilidad, solo lectura
n_artefactos_sellados
94
nota
G2 y G3 solo aplican a artefactos con metrics.json; los prerregistros y los documentales no declaran resultados y quedan fuera del denominador.

ReproducibilidadReproducibility

commit
b01064130e (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
duraciónduration
2 min
complejoscomplexes
94
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-A3-PRELa ventaja del ensemble medida en MF-33 y MF-33-A2 se explica por el numero de POSES CONSERVADAS y no por la diversidad conformacional. Igualando poses, corridas y CPU, un solo conformero alcanza lo que alcanza el ensemble.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La ventaja del ensemble medida en MF-33 y MF-33-A2 se explica por el numero de POSES CONSERVADAS y no por la diversidad conformacional. Igualando poses, corridas y CPU, un solo conformero alcanza lo que alcanza el ensemble.
Criterio prerregistradoPre-registered criterion
PRIMARIO A3 vs B pareado en COLOCACION (n=33), McNemar exacto bilateral. DIRECCIONES DEFINIDAS EXPLICITAMENTE, porque la redaccion ambigua ya costo dos veces en esta serie: se llama g_A3 al numero de complejos donde A3 alcanza <=2 A y B no, y g_B al numero donde B alcanza y A3 no. TRES LECTURAS ESCRITAS ANTES: (1) LA VENTAJA ERA EL CONTEO DE POSES si A3 y B son equivalentes -diferencia de complejos dentro de +-4-; entonces la diversidad conformacional NO aporta, el claim de MF-33 sobre la magnitud COLAPSA y la cartera C no se reabre por esta via; (2) LA DIVERSIDAD CONFORMACIONAL ES REAL si g_B >= 6 con g_A3 = 0; entonces MF-33 sobrevive con su magnitud corregida y el claim externo se autoriza; (3) MIXTA en cualquier otro caso, incluido g_B >= 6 con g_A3 >= 1: se reporta la fraccion y NO se autoriza atribucion causal limpia. SECUNDARIO descriptivo: A3 vs A2, que separa 'muchas corridas poco profundas' de 'una corrida muy profunda' a igual CPU y distinto conteo de poses. PROHIBIDO: reinterpretar MF-33 o MF-33-A2 sin sellar el corrigendum correspondiente; elegir el conformero por RMSD; cambiar num_modes respecto de B.
ProtocoloProtocol
Corrigendum y etapa 3 de MF-33. DEFECTO QUE MOTIVA ESTE EXPERIMENTO: la metrica es de oraculo -mejor RMSD entre las poses que el brazo CONSERVA- y num_modes=9 limita las poses escritas POR CORRIDA, no las buscadas. El brazo B hace 29 corridas (mediana) y conserva 261 poses; los brazos A y A2 hacen una y conservan 9. B extrae su oraculo de 29x mas muestras, de modo que ganaria aunque la busqueda fuese identica. BRAZO A3: K corridas INDEPENDIENTES de Vina desde el MISMO conf0.flex.pdbqt, con K = n_docks del brazo B en ese complejo, exh=8, num_modes=9 y SEMILLAS DISTINTAS por corrida (42, 43, ... 42+K-1). Oraculo sobre las K*9 poses. Eso iguala a B en las tres variables confundidas -corridas independientes, poses conservadas y CPU aproximada- dejando como UNICA diferencia la conformacion de partida. Brazos A, A2, B y C se REUSAN de MF-33 y MF-33-A2 sin recomputo. Cohorte: los mismos 48.
Razón de la decisiónReason for the decision
Prerregistro de la etapa 3 sellado ANTES de ejecutar, junto con el runner que lo implementa (hash registrado). Declara el DEFECTO que motiva el experimento -el brazo B conserva 261 poses de mediana contra 9 de A y A2, de modo que gana el oraculo aunque la busqueda sea identica-, el diseno que lo corrige -K corridas independientes desde el mismo conformero, igualando corridas, poses conservadas y CPU, dejando la conformacion de partida como unica diferencia- y las TRES lecturas posibles. TERCERA VEZ QUE SE REDACTA UN GATE DE ESTA SERIE Y PRIMERA EN QUE LAS DIRECCIONES SE DEFINEN EXPLICITAMENTE: g_A3 = complejos donde A3 alcanza y B no; g_B = donde B alcanza y A3 no. Las dos anteriores costaron una aclaracion a posteriori en MF-33 y una lectura estricta forzada en MF-33-A2. Se sella GO por convencion al declararse, NO por haber superado nada. NO EJECUTADO: coste previsto ~42.6 CPU-h (4-6 h con 10 workers, CPU al 90% sostenido); se pospone deliberadamente para no encadenar tres experimentos largos en la misma maquina el mismo dia.

ReproducibilidadReproducibility

commit
b5c11ab245 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-A2-PRELa brecha de 14 complejos que MF-33 midio entre el brazo A (1 conformero flexible) y el brazo B (K conformeros flexibles) se debe al ENSEMBLE y no al PRESUPUESTO. Si igualando la CPU un solo conformero alcanza lo que alcanza el ensemble, la brecha era CPU y MolFlex vuelve a ser redundante.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La brecha de 14 complejos que MF-33 midio entre el brazo A (1 conformero flexible) y el brazo B (K conformeros flexibles) se debe al ENSEMBLE y no al PRESUPUESTO. Si igualando la CPU un solo conformero alcanza lo que alcanza el ensemble, la brecha era CPU y MolFlex vuelve a ser redundante.
Criterio prerregistradoPre-registered criterion
PRIMARIO A2 vs B pareado en COLOCACION (n=33), McNemar exacto bilateral, con las mismas cifras declaradas en MF-33. TRES LECTURAS ESCRITAS ANTES: (1) LA BRECHA ERA CPU si A2 alcanza equivalencia con B -CI95 de la diferencia dentro de +-4 complejos-; entonces el ensemble NO aporta, MolFlex vuelve a ser redundante y la cartera C NO se reabre pese al resultado de MF-33; (2) LA BRECHA ERA EL ENSEMBLE si B sigue superando a A2 con 6 o mas discordantes a favor de B y 0 en contra; entonces la reapertura de la cartera C queda confirmada y el claim externo se autoriza; (3) MIXTA si A2 recupera parte de la brecha sin alcanzar equivalencia; se reporta la fraccion recuperada y NO se autoriza ningun claim de atribucion causal limpia. SECUNDARIO descriptivo: A2 vs A, que mide cuanto compra el presupuesto solo. PROHIBIDO: cambiar el conformero, elegirlo por RMSD, o reinterpretar MF-33 en funcion de este resultado sin sellar un corrigendum.
ProtocoloProtocol
Etapa 2 declarada como condicional en MF-33-PRE y activada porque B supero a A (14 discordantes a favor, 0 en contra, p=0.0001). Brazo A2: conf0.flex.pdbqt -el MISMO ligando del brazo A, primero por indice sin mirar RMSD- con exhaustiveness escalado POR COMPLEJO hasta igualar la CPU medida del brazo B: exh_A2 = round(8 * cpu_B / cpu_A), acotado a [8, 1024] y registrando cuando el tope actua. Vina escala aproximadamente lineal en exhaustiveness, asi que ese cociente iguala presupuesto sin tener que medirlo por ensayo y error. Todo lo demas congelado: semilla 42, num_modes=9, caja 25 A, mismo receptor, metrica rmsd_pose_pocket sin alineamiento, oraculo por brazo. Los brazos A y B se REUSAN de MF-33 sin recomputo. Cohorte: los mismos 48 (33 COLOCACION + 15 CONTROL).
Razón de la decisiónReason for the decision
Prerregistro de la etapa 2 declarado ANTES de ejecutar: brazo A2 con exhaustiveness escalado por complejo para igualar la CPU de B, y las TRES lecturas posibles escritas con antelacion (CPU / ENSEMBLE / MIXTA). Se sella GO por convencion al declararse, NO por haber superado nada. El resultado activo la lectura (3).

ReproducibilidadReproducibility

commit
b5c11ab245 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-A2La brecha de 14 complejos que MF-33 midio entre el brazo A (1 conformero flexible) y el brazo B (K conformeros flexibles) se debe al ENSEMBLE y no al PRESUPUESTO. Si igualando la CPU un solo conformero alcanza lo que alcanza el ensemble, la brecha era CPU y MolFlex vuelve a ser redundante.InconclusoInconclusiven=48

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
InconclusoInconclusive · Ejecutado y declarado sin conclusión. No se reclasifica a posteriori.Executed and declared without a conclusion. It is not reclassified afterwards.
Decisión del manifestManifest decision
INCONCLUSIVE
HipótesisHypothesis
La brecha de 14 complejos que MF-33 midio entre el brazo A (1 conformero flexible) y el brazo B (K conformeros flexibles) se debe al ENSEMBLE y no al PRESUPUESTO. Si igualando la CPU un solo conformero alcanza lo que alcanza el ensemble, la brecha era CPU y MolFlex vuelve a ser redundante.
Criterio prerregistradoPre-registered criterion
PRIMARIO A2 vs B pareado en COLOCACION, McNemar exacto. (1) LA BRECHA ERA CPU si equivalencia dentro de +-4 complejos; (2) LA BRECHA ERA EL ENSEMBLE si 6 o mas discordantes a favor de B con 0 en contra; (3) MIXTA en otro caso: se reporta la fraccion recuperada y NO se autoriza atribucion causal limpia. SECUNDARIO: A2 vs A, cuanto compra el presupuesto solo.
ProtocoloProtocol
MF-33-A2-PRE. Etapa 2 declarada condicional en MF-33-PRE y activada porque B supero a A (14 discordantes a favor, 0 en contra, p=0.0001). Brazo A2: el MISMO conf0.flex.pdbqt del brazo A -primero por indice, sin mirar RMSD- con exhaustiveness escalado POR COMPLEJO hasta igualar la CPU medida de B: exh_A2 = round(8 * cpu_B / cpu_A), acotado a [8,1024]. Vina escala aproximadamente lineal en exhaustiveness. Todo lo demas congelado: semilla 42, num_modes=9, caja 25 A, mismo receptor, rmsd_pose_pocket sin alineamiento, oraculo por brazo. Brazos A y B REUSADOS de MF-33 sin recomputo. Cohorte: los mismos 48.
Razón de la decisiónReason for the decision
LECTURA MIXTA, la tercera de las tres declaradas antes. La brecha de 14 complejos que MF-33 midio entre A y B se parte casi por la mitad: el presupuesto compra 7 (A 12/33 -> A2 19/33) y el ensemble aporta los otros 7 (A2 19/33 -> B 26/33). PARIDAD DE CPU VERIFICADA: la razon CPU(A2)/CPU(B) es 0.975 en COLOCACION y 0.941 en CONTROL, y el tope de exhaustiveness=1024 NO se activo en ningun complejo, de modo que el escalado exh_A2 = round(8*cpu_B/cpu_A) igualo el presupuesto sin dejar ningun complejo en desventaja no declarada. A2 vs B en COLOCACION: 1 discordante a favor de A2 contra 8 a favor de B, McNemar exacto p=0.0391, delta 7 complejos. En CONTROL no hay diferencia (14/15 contra 15/15, p=1.0). POR QUE INCONCLUSIVE Y NO GO. El gate (2) exigia '6 o mas discordantes a favor de B Y 0 en contra'. Observado: 8 a favor, 1 EN CONTRA. La condicion literal NO se cumple. El criterio estadistico que motivaba ese MDE si se cumple -p=0.0391 < 0.05- pero esta es la SEGUNDA vez que la redaccion de un gate propio se queda corta y, a diferencia de la primera (MF-33, detectada y declarada con 8 filas sobre la mesa y antes del resultado completo), esta ambiguedad se descubrio DESPUES de ver los datos. Cuando eso ocurre la unica salida honesta es tomar la lectura MAS ESTRICTA, que es la (3). Por la regla preregistrada de la lectura (3) se reporta la fraccion recuperada y NO se autoriza atribucion causal limpia. LO QUE SI QUEDA ESTABLECIDO Y ES DEFENDIBLE: a paridad de CPU medida el ensemble mantiene 7 complejos de ventaja sobre un solo conformero, con 8 victorias pareadas contra 1 y p=0.0391. La pregunta 'controlaste el computo' tiene respuesta afirmativa documentada, con el control disenado y preregistrado ANTES de ejecutarlo. CONFUNDIDO RESIDUAL, DECLARADO: B no solo aporta diversidad conformacional, aporta K REINICIOS INDEPENDIENTES de busqueda; A2 tiene UNO solo con mas exhaustiveness. Este diseno NO separa 'diversidad de conformaciones de partida' de 'numero de reinicios independientes' -la misma variable que toco MF-02F- y esa es la pregunta que sigue. CONSECUENCIA PARA MF-33: su decision GO no cambia, el ensemble sigue aportando; lo que cambia es la MAGNITUD del claim, de 14 complejos a 7. Cualquier cita de MF-33 debe acompanarse de este numero. No se toco val, test ni D-RC-CONFIRM.

Métricas registradasRecorded metrics

tipo
control de confundido (paridad de CPU)
duration_seconds
19698.25
n_complejos
48
n_ok
48

ReproducibilidadReproducibility

commit
b5c11ab245 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
20 de agosto de 2026August 20, 2026
duraciónduration
5 h 28 min
complejoscomplexes
48
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33-PREEl ensemble conformacional de MolFlex NO aporta cobertura una vez que la busqueda tiene libertad torsional: dockear UN solo conformero de forma flexible alcanza la misma cobertura que dockear los K del ensemble. Si es cierto, MolFlex no esta roto sino que es REDUNDANTE, y la cartera C no debe reabrirse. Si es falso, el ensemble si aporta y la cartera se justifica con diana medible.PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El ensemble conformacional de MolFlex NO aporta cobertura una vez que la busqueda tiene libertad torsional: dockear UN solo conformero de forma flexible alcanza la misma cobertura que dockear los K del ensemble. Si es cierto, MolFlex no esta roto sino que es REDUNDANTE, y la cartera C no debe reabrirse. Si es falso, el ensemble si aporta y la cartera se justifica con diana medible.
Criterio prerregistradoPre-registered criterion
PRIMARIO A vs B pareado sobre COLOCACION (n=33), McNemar exacto bilateral. TRES LECTURAS DECLARADAS ANTES, con margen de equivalencia porque el resultado interesante es la ausencia de diferencia y esa NO se demuestra con un test de superioridad: (1) EQUIVALENCIA / ENSEMBLE NO APORTA si el CI95 de la diferencia pareada cae ENTERO dentro de +-4 complejos (+-12 pp) — MolFlex es redundante y la cartera C NO se reabre; (2) ENSEMBLE APORTA si b>=6 con c=0 (MDE por McNemar exacto, 2*0.5^6=0.031) — la cartera se justifica y la etapa 2 pasa a ser OBLIGATORIA antes de cualquier claim; (3) NO CONCLUYENTE en cualquier otro caso, y se reporta como tal, nunca como tendencia. SECUNDARIO descriptivo sin gate: C vs A y C vs B, que cuantifican cuanto cuesta la rigidez. CANDIDATO A CORRIGENDUM DE MF-09: si C queda muy por debajo de A y B, la conclusion de MF-09 -en 30 de 33 no existe pose <=2 A- mide una limitacion del PROTOCOLO congelado y no del espacio alcanzable, y MF-09 debe corregirse. PROHIBIDO: elegir conformero por RMSD; leer el score para elegir brazo; tocar val, test o D-RC-CONFIRM.
ProtocoloProtocol
Reapertura de la cartera C bajo la 19.1 declarando cambio de GENERADOR (rigido -> flexible), no de arquitectura ni de semilla. Cohorte congelada: los 48 de MF-02F/cohorte.json (33 COLOCACION + 15 CONTROL), la misma de MF-28 y MF-25. TRES BRAZOS, todos exh=8 semilla 42 num_modes=9 caja 25 A, mismo receptor: (A) conf0.flex.pdbqt, UN solo conformero flexible; (B) todos los conf*.flex.pdbqt, REUSADO SIN RECOMPUTO del brazo de control de MF-28 -CPU ya cronometrada, 42.6 CPU-h-; (C) todos los conf*.rigid.pdbqt con regex estricta que excluye *.relax.rigid.* (leccion del corrigendum de MF-21), que es el protocolo congelado de MolFlex. ELECCION DE conf0 DECLARADA: se toma el primer conformero ETKDG por indice, SIN mirar su RMSD al cristal; elegir el mejor conformero seria informacion de oraculo y esta prohibido. Metrica: rmsd_pose_pocket sin alineamiento, oraculo por brazo (mejor pose entre todas las del brazo). CPU medida en los tres brazos. ETAPA 2 CONDICIONAL, solo si B supera a A: brazo A2, un conformero con exhaustiveness escalado hasta igualar la CPU de B por complejo, para separar 'aporta el ensemble' de 'aporta la CPU'.
Razón de la decisiónReason for the decision
Prerregistro declarado ANTES de ejecutar: hipotesis, tres brazos, margen de equivalencia de +-4 complejos, MDE de 6 discordantes con 0 en contra, eleccion de conf0 por indice sin mirar RMSD, y etapa 2 condicional. Se sella GO por convencion al declararse, NO por haber superado nada. Deja constancia de una ambiguedad de redaccion propia: el gate escribio 'b>=6 con c=0' sin definir la direccion; se corrige reportando ambos numeros en MF-33.

ReproducibilidadReproducibility

commit
b5c11ab245 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-33La idea era correcta; dockearla rígido era el errorHallazgoFindingArtículoPapern=48

Los mismos confórmeros convierten 1 de 33 dockeados rígidos y 26 de 33 dockeados flexibles. Un defecto detectado después suspendió la magnitud durante dos días, y el experimento que lo midió la devolvió intacta.

## Defecto declarado el 2026-08-19, resuelto el 2026-08-21 La magnitud de este experimento estuvo suspendida y vuelve a ser citable. Lo que la suspendía: la comparación entre el brazo A y el brazo B está confundida por el número de poses que cada brazo conserva. La métrica es de oráculo: el mejor RMSD entre las poses que el brazo conserva. Y num_modes=9 limita cuántas poses escribe Vina por corrida, no cuántas busca. | Brazo | Corridas | Poses conservadas | |---|---:|---:| | A — 1 confórmero | 1 | 9 | | B — K confórmeros | 29 (mediana) | 261 | El brazo B extrae su oráculo de 29 veces más poses. Aunque la calidad de búsqueda fuera idéntica, ganaría sólo por conservar más muestras. No es un mecanismo: es un artefacto de medición, y afectaba igual a la etapa 2 (MF-33-A2). [MF-33-A3](#) lo midió igualando corridas, poses (261) y CPU —gastó un 20% más que B— y aun así perdió 26 a 19, con g_B = 7, g_A3 = 0 y McNemar exacto p = 0.0156. El secundario lo cierra: A2 con 9 poses y A3 con 261 dan el mismo 19. Multiplicar por 29 las poses conservadas desde el mismo confórmero no mueve un solo complejo. La etiqueta defecto-abierto queda levantada, y la magnitud de abajo —1/33, 12/33, 26/33— es citable. Lo que sigue sin resolver es la atribución entre ensemble y presupuesto, que es otra cosa y se discute al final de esta ficha.

Este experimento se diseñó para matar una cartera, y acabó reabriéndola.

El brazo de control de otro experimento había medido algo que nadie preguntó: dockeando flexibles los mismos confórmeros que el protocolo congelado dockea rígidos, la cobertura del estrato difícil subía de forma llamativa. Y no eran datos distintos — molflex.py escribe las dos codificaciones desde el mismo objeto:

rigid_str, flex_str, mapa, _err = escribir_pdbqt(setups[0])
conf{cid}.rigid.pdbqt   <- un solo ROOT, TORSDOF 0
conf{cid}.flex.pdbqt    <- árbol de torsiones

Misma geometría, mismo receptor, misma caja. Dos formas de escribir el mismo confórmero.

Eso dejaba abierta la pregunta que decidía si MolFlex tenía arreglo o sobraba: si un solo confórmero flexible alcanza lo mismo que los K del ensemble, MolFlex no está roto — es redundante, y no hay nada que mejorar, hay algo que borrar.

La hipótesis que se preregistró fue esa: que el ensemble no aportaría nada.

Qué pasó

Tres brazos, misma cohorte de 48, mismo motor a exhaustiveness=8, semilla 42.

Estrato de colocación, n=33:

BrazoQué esConvierteRMSD medianoCPU mediana
CK confórmeros, rígido — el protocolo congelado1 / 333.238 Å575 s
A1 confórmero, flexible12 / 333.056 Å140 s
BK confórmeros, flexible26 / 331.184 Å3,822 s

Comparación pareada A contra B: 14 discordantes a favor de B, cero en contra, McNemar exacto p = 0.0001.

La hipótesis queda refutada. El margen de equivalencia declarado antes era de ±4 complejos; el delta observado es 14. No hay lectura bajo la cual el ensemble sea redundante.

Los dos factores se componen

Ninguno de los dos basta por separado, y esa es la forma del resultado:

  • rígido → flexible, con un solo confórmero: 1 → 12
  • añadir el ensemble encima de la flexibilidad: 12 → 26

La libertad torsional aporta más que el ensemble, pero los dos son grandes. Un ensemble sin flexibilidad convierte casi nada; flexibilidad sin ensemble se queda a mitad de camino.

Y en el estrato fácil el protocolo actual está perfectamente bien

BrazoConvierteRMSD mediano
C — rígido15 / 150.861 Å
A — 1 flexible14 / 151.325 Å
B — K flexible15 / 151.010 Å

El brazo rígido no sólo cubre los 15: tiene la mejor mediana de los tres. MolFlex no falla en general — falla exactamente en el estrato que motivó todo el programa.

Eso explica por qué el defecto sobrevivió tanto tiempo sin detectarse. En todo lo que funcionaba, funcionaba bien.

Corrigendum de MF-09

MF-09 concluyó que en 30 de 33 complejos difíciles no existe ninguna pose ≤2 Å entre una mediana de 751 candidatas, y de ahí salió la frase que sostuvo el cierre de la cartera C: «el generador no visita la región correcta».

Ese material provenía de docking rígido —molflex.dock_rigido_archivo, TORSDOF 0—. Con los mismos confórmeros dockeados flexibles, la pose existe en 26 de 33.

MF-09 midió una limitación del protocolo, no del espacio alcanzable.

La región correcta sí es alcanzable. Lo que no la alcanzaba era la forma de pedirla.

Lo que este resultado NO dice por sí solo, y es lo más importante de esta ficha

La atribución causal de los 14 complejos no la resuelve este diseño.

El brazo B consume 27 veces la CPU del brazo A —3,822 s contra 140 s de mediana—. La brecha admite dos explicaciones que estos tres brazos no separan: puede ser el ensemble, o puede ser el presupuesto.

El prerregistro declaró por eso una etapa 2 obligatoria antes de cualquier claim —un confórmero con exhaustiveness escalado hasta igualar la CPU de B—. Corrió como MF-33-A2, y partió la brecha casi por la mitad:

Alcanza ≤2 Å en COLOCACION
A — 1 confórmero, exh=812 / 33
A2 — 1 confórmero, CPU igualada a B19 / 33
B — K confórmeros26 / 33

El presupuesto compra 7 complejos y el ensemble aporta los otros 7. La paridad de CPU se verificó —razón A2/B de 0.975 en colocación— y el tope de exhaustiveness=1024 no se activó en ningún complejo. MF-33-A2 quedó sellado INCONCLUSIVE por un detalle de redacción de su propio gate, no por el dato: pedía «6 o más discordantes a favor de B y 0 en contra», y salió 8 a favor con 1 en contra, con McNemar p = 0.0391.

Y MF-33-A3 cerró después la explicación alternativa que quedaba —que la ventaja de B fuese conteo de poses— igualando también las poses conservadas y gastando un 20% más de CPU que B: 19 contra 26, con g_A3 = 0.

La frase defendible, ahora con las tres etapas sobre la mesa:

De los 14 complejos de brecha entre A y B, unos 7 los compra el presupuesto y unos 7 los aporta la diversidad conformacional, medidos a CPU igualada y con las poses conservadas igualadas. Con n=33 eso detecta la contribución; no la cuantifica con precisión.

Una ambigüedad de mi propio prerregistro, declarada antes del resultado completo

El gate escribió «ENSEMBLE APORTA si b≥6 con c=0» sin definir b y c. El runner los define como b = gana A, c = gana B. Leído literalmente, el gate pediría que ganara A para declarar que el ensemble aporta — lo contrario de la intención.

Se detectó y se dejó por escrito con 8 filas sobre la mesa, antes del resultado completo. La corrección es reportar ambos números con su significado explícito —b = 0, c = 14— de modo que la dirección no dependa de una elección posterior a los datos. El umbral de 6 discordantes con 0 en contra es simétrico y no cambia qué pasa el gate.

Es exactamente el tipo de detalle que un prerregistro existe para blindar, y se coló.

Un complejo que no aporta información

1l83 tiene un solo confórmero. Los tres brazos son, para él, el mismo experimento: dan 1.383 Å los tres, en 3 segundos. No contribuye a la comparación pareada y queda registrado como tal en lugar de contarse como un empate informativo.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El ensemble conformacional de MolFlex NO aporta cobertura una vez que la busqueda tiene libertad torsional: dockear UN solo conformero flexible alcanza lo mismo que dockear los K del ensemble. Si es cierto, MolFlex es REDUNDANTE y la cartera C no se reabre.
Criterio prerregistradoPre-registered criterion
PRIMARIO A vs B pareado en COLOCACION (n=33), McNemar exacto bilateral. EQUIVALENCIA si el CI95 de la diferencia cae dentro de +-4 complejos; ENSEMBLE APORTA si hay 6 o mas discordantes a favor de B con 0 en contra (MDE, 2*0.5^6=0.031); NO CONCLUYENTE en cualquier otro caso. SECUNDARIO descriptivo sin gate: C vs A y C vs B, que cuantifican el coste de la rigidez.
ProtocoloProtocol
MF-33-PRE. Reapertura de la cartera C bajo la 19.1 por cambio de GENERADOR (rigido -> flexible). Cohorte congelada de 48 (33 COLOCACION + 15 CONTROL) de MF-02F/cohorte.json. Tres brazos, todos exh=8 semilla 42 num_modes=9 caja 25 A y mismo receptor: (A) conf0.flex.pdbqt, un solo conformero, elegido PRIMERO POR INDICE sin mirar su RMSD al cristal; (B) todos los conf*.flex.pdbqt, REUSADO del brazo de control de MF-28 sin recomputo; (C) todos los conf*.rigid.pdbqt con regex estricta que excluye *.relax.rigid.* (leccion del corrigendum de MF-21), que es el protocolo congelado de MolFlex. Metrica rmsd_pose_pocket sin alineamiento, oraculo por brazo. CPU medida en los tres.
Razón de la decisiónReason for the decision
EL ENSEMBLE APORTA, Y LA HIPOTESIS DE PARTIDA QUEDA REFUTADA. En COLOCACION (n=33): brazo A (un conformero flexible) 12/33, brazo B (K conformeros flexibles) 26/33, brazo C (K conformeros RIGIDOS, el protocolo congelado de MolFlex) 1/33. La comparacion pareada A vs B da 14 discordantes a favor de B y CERO en contra, McNemar exacto p=0.0001, muy por encima del MDE de 6 declarado antes. La lectura de EQUIVALENCIA se descarta sin ambiguedad: el delta es 14 complejos frente a un margen declarado de +-4. En CONTROL los tres brazos funcionan (A 14/15, B 15/15, C 15/15), de modo que MolFlex no falla en general: falla exactamente en el estrato que importa. AMBIGUEDAD DE REDACCION DEL PRERREGISTRO, DECLARADA ANTES DE VER EL RESULTADO COMPLETO: el gate escribio 'b>=6 con c=0' sin definir la direccion, y el runner define b=gana A. Literalmente leido b=0 no lo cumple; con la direccion explicita B gana 14 a 0. Se reportan ambos numeros para que la direccion no dependa de una eleccion posterior a los datos. El umbral de 6 discordantes con 0 en contra es simetrico y no cambia que pasa el gate. DESCOMPOSICION: los dos factores importan y se componen. Rigido->flexible con un conformero lleva de 1 a 12; anadir el ensemble encima lleva de 12 a 26. Ninguno solo basta. CANDIDATO A CORRIGENDUM DE MF-09 CONFIRMADO: MF-09 concluyo que en 30 de 33 complejos NO EXISTE pose <=2 A entre ~751 candidatas y de ahi salio 'el generador no visita la region correcta'. Ese material provenia de docking RIGIDO (molflex.dock_rigido_archivo, TORSDOF 0). Con los MISMOS conformeros dockeados flexibles existen 26 de 33. MF-09 midio una limitacion del PROTOCOLO, no del espacio alcanzable, y debe corregirse. LIMITE QUE PROHIBE CUALQUIER CLAIM EXTERNO HOY: la atribucion causal de la brecha de 14 complejos entre ensemble y CPU esta SIN RESOLVER. El brazo B consume ~28x la CPU del brazo A (42.6 CPU-h contra 1.5). El prerregistro declara la etapa 2 (brazo A2, un conformero con exhaustiveness escalado hasta igualar la CPU de B) OBLIGATORIA antes de cualquier claim, y lo sigue siendo. Un sondeo sobre los 5 complejos que solapan con MF-29-EMP -que corre conf0.flex a exh=8 contra exh=512, es decir A contra un A2 mas exigente- muestra 1 de 5 convirtiendo solo por presupuesto; escalado a 33 serian ~6-7 de los 14, aproximadamente la mitad de la brecha. Con n=5 no concluye nada, pero basta para impedir afirmar que los 14 son del ensemble. DEFECTO REGISTRADO: el complejo 1l83 tiene un solo conformero, de modo que A, C y B son el mismo experimento (los tres dan 1.383 en 3 s) y no aporta informacion a la comparacion pareada. NO se toco val, test ni D-RC-CONFIRM.

Métricas registradasRecorded metrics

tipo
comparacion pareada de tres brazos (aporta el ensemble?)
duration_seconds
3002.77
n_complejos
48
n_ok
48

ReproducibilidadReproducibility

commit
b5c11ab245 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
duraciónduration
50 min
complejoscomplexes
48
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-02EMaterial de poses para val y test generado con el pipeline congelado, equivalente al de MF-02D para trainMediciónMeasurement

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Material de poses para val y test generado con el pipeline congelado, equivalente al de MF-02D para train
Criterio prerregistradoPre-registered criterion
medicion sin gates; insumo de RC-F0-V2
ProtocoloProtocol
generacion de material: molflex congelado sobre los complejos de val y test; pocket_frame por complejo
Razón de la decisiónReason for the decision
Artefacto de generacion de material que quedo sin sellar y que RC-F0-V2 consume: sus porcentajes de cobertura coinciden exactamente con los medidos por la via independiente sobre MF-02D/MF-02E, y esa coincidencia fue la verificacion del gate G5 de aquel experimento. Se sella ahora para cerrar la cadena de procedencia del conjunto v2.

Métricas registradasRecorded metrics

duration_seconds
3473.18
n_complejos
87
n_ok
87
nota_metrica
Las cifras de exito de este runner usan el RMSD ALINEADO heredado de molflex y NO son el resultado: la cobertura se mide en marco de pocket sobre el material, igual que en MF-02D.
nota_cuarentena
Generacion con protocolo congelado; no se ajusta nada ni se miran etiquetas. D-RC-CONFIRM no se toca.
decision
GO

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-02AEl eje conformacional esta agotado: anadir conformeros no mejora la disponibilidad de la conformacion bioactivaMediciónMeasurementn=116

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El eje conformacional esta agotado: anadir conformeros no mejora la disponibilidad de la conformacion bioactiva
Criterio prerregistradoPre-registered criterion
medicion sin gates
ProtocoloProtocol
medicion declarada en MF-02-PRE seccion 4; curva de RMSD minimo ALINEADO (GetBestRMS) del ensemble ETKDG frente al cristal, sobre los 116 de train
Razón de la decisiónReason for the decision
Artefacto que quedo sin sellar en su momento y se sella ahora para cerrar la trazabilidad de la linea. Midio la curva del techo conformacional sobre los 116 de train y concluyo saturacion entre 60 y 90 conformeros. CORRECCION POSTERIOR YA SELLADA: MF-02A-EXT rehizo la medicion sobre 5,316 complejos de PDBBind y mostro que la saturacion declarada aqui era en parte artefacto del tamano de muestra -sobre 4,636 complejos la curva sigue subiendo 86.2 -> 87.2 -> 88.1%- y que train es mas dificil que PDBBind (77.6% frente a 83.9% a K30). La conclusion cualitativa se mantiene; "satura" era demasiado fuerte.

Métricas registradasRecorded metrics

duration_seconds
457.09
n_total
116
n_ok
116
n_fallos
0
frac_conformacion_disponible_1A
0.5345
frac_conformacion_disponible_2A
0.8017
nota
Mide el techo conformacional, no la cobertura del oraculo. Un complejo con conformacion disponible y sin pose buena es fallo de busqueda o colocacion, no del ensemble: eso lo decide MF-02B.

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
complejoscomplexes
116
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FEP-04Una pose que sabe cuándo no confiar en sí mismaMediciónMeasurementArtículoPapern=203

Tres señales gratuitas predicen si la pose entregada es correcta. Abstenerse en el 75% menos confiable casi duplica la precisión del resto: de 0.330 a 0.620.

Un programa de docking entrega una pose y no dice nada más. El químico que la recibe tiene que decidir si construir encima de ella, y no tiene con qué. Si el motor acierta un tercio de las veces —que es aproximadamente lo que acierta el nuestro, y lo que acierta la mayoría— entonces dos de cada tres decisiones que se tomen sobre su salida serán decisiones tomadas sobre una pose equivocada, y nada en la interfaz lo advierte.

Este experimento pregunta si la propia salida del motor ya contiene la advertencia.

La pregunta

Cuando Vina termina, además de la pose ganadora deja un rastro: los otros ocho modos que consideró, sus puntuaciones, y cuánto se parecen entre sí. Ese rastro se descarta. La hipótesis es que no debería descartarse, porque un motor que duda deja huellas de que duda.

Se midieron tres señales, todas calculables sin conocer la respuesta y sin entrenar ningún modelo:

  • el margen de score entre modos geométricamente distintos;
  • la dispersión del top-5, es decir cuánto se dispersan las cinco mejores poses;
  • el número de modos empatados dentro de 1 kcal/mol.

Qué pasó

Las tres funcionan. Sobre los 203 complejos, la precisión del top-1 global es 0.330. Si se ordenan los casos por confianza y se descarta el 75% menos confiable, la precisión del cuarto restante sube a:

SeñalPrecisión al 25% más confiable
Modos empatados a 1 kcal/mol0.620
Margen de score0.600
Dispersión del top-50.580

Los intervalos de Wilson de los dos extremos apenas se tocan —[0.269, 0.398] contra [0.482, 0.741]—, así que la separación no es ruido.

Lo que hace que esto importe es que las tres señales son gratis. Se calculan de poses que ya se generaron. No hay modelo que entrenar, ni información cristalográfica, ni un segundo pase de cómputo.

El segundo hallazgo, que era un efecto colateral

Midiendo lo anterior apareció algo con consecuencia más inmediata:

Qué se entregaPrecisión
Top-1, una sola pose0.330
Top-5, cinco alternativas0.465
Oráculo (la mejor pose que existe entre las generadas)0.615

Entregar cinco candidatas en vez de una sube la cobertura útil 13 puntos sin tocar el motor de búsqueda. Y el oráculo en 0.615 marca dónde está el techo: el material bueno ya se está generando, lo que falla es escogerlo.

Es un cambio de diseño, no de investigación: dejar de entregar una pose y empezar a entregar K con su confianza.

Lo que este resultado no dice

Tres límites, declarados aquí porque forman parte del resultado:

  1. La curva es optimista. Las señales se observan sobre los mismos datos donde se mide su utilidad. Un uso real exige calibrar en train y medir en val/test, y ese experimento todavía no se ha hecho.
  2. A cobertura del 25% quedan n=50, con un intervalo de confianza de ±13 puntos. La forma de la curva es sólida; el valor puntual de 0.620 no lo es.
  3. Las tres señales no se combinaron. Se midieron por separado.

Y una nota posterior que conviene leer junto a este resultado: FND-03 midió después que la varianza entre semillas llega a 4 Å de rango en algunos complejos. Una confianza honesta debería incorporar repeticiones, y esta no lo hace.

Por qué está en la columna de la izquierda

Porque es el único resultado del programa que se traduce directamente en algo que un usuario nota. No hace al motor mejor. Hace que el motor deje de mentir sobre lo que sabe.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Se puede acompanar la pose entregada de una confianza que calibra: abstenerse en los casos menos confiables sube la precision del resto
Criterio prerregistradoPre-registered criterion
medicion sin gates; metrica primaria de incertidumbre segun la seccion 5 del doc. 49
ProtocoloProtocol
medicion sobre los 203: tres senales calculables sin conocer la respuesta (margen de score entre modos distintos, dispersion del top-5, modos empatados a 1 kcal/mol) y curva riesgo-cobertura
Razón de la decisiónReason for the decision
LAS TRES SENALES FUNCIONAN. Precision del top-1 global 0.330; abstenerse en el 75% menos confiable la sube a 0.620 con modos empatados, 0.600 con margen y 0.580 con dispersion del top-5. Los intervalos de Wilson de los extremos apenas se solapan ([0.269,0.398] frente a [0.482,0.741]). Las tres son GRATIS: se calculan de las poses ya generadas, sin modelo entrenado ni informacion del cristal. Segundo hallazgo con consecuencia de producto: top-1 acierta 0.330, top-5 acierta 0.465 y el oraculo es 0.615. Entregar cinco alternativas en vez de una sube la cobertura util 13 puntos sin tocar el motor. Es un cambio de diseno, no de investigacion: dejar de entregar una pose y entregar K con confianza. Limitaciones: la curva es OPTIMISTA porque las senales se observan sobre los mismos datos donde se mide -un uso en produccion exige calibrar en train y medir en val/test-; a cobertura 25% quedan n=50 con CI de +-13 puntos, asi que la forma de la curva es solida pero el valor puntual no; y no se combinaron las tres senales. Nota posterior: FND-03 midio rangos por semilla de hasta 4 A por complejo, asi que esta confianza deberia incorporar repeticiones.

Métricas registradasRecorded metrics

tipo
medicion (lectura de material sellado, sin computo nuevo)
duration_seconds
1.81
n_complejos
203
n_ok
200
precision_top1_global
0.33
precision_top5_global
0.465
cobertura_oraculo
0.615
limitacion
las senales se observan sobre los mismos datos en que se mide la curva: es OPTIMISTA. Un uso en produccion exige calibrar en train y medir en val/test

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
complejoscomplexes
203
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FEP-03El conjunto se armó para lo contrario de lo que hace faltaMediciónMeasurementArtículoPaper

91 parejas utilizables sobre 18 dianas, de 487 evaluadas. Y la razón no es un defecto: el conjunto se construyó para maximizar diversidad de dianas, que es justo lo opuesto a lo que necesita FEP+.

Los métodos de energía libre no calculan afinidades absolutas: calculan diferencias entre moléculas parecidas. Necesitan series congenéricas — varios análogos de la misma diana, que difieran en poco. Cuanto más pequeña la perturbación, más fiable el cálculo.

Esta auditoría cuenta cuántas parejas del material actual servirían.

Qué salió

91 parejas utilizables sobre 18 dianas, de 487 evaluadas. Un 19%.

Varias son de manual: tres pares con subestructura común de 26 a 33 átomos y perturbación cero. Esas son exactamente el caso ideal.

Pero la estructura del conjunto es la equivocada, y esa es la conclusión real:

Dianas distintas104
Complejos203
Complejos que son la única entrada de su dianala mitad
Cobertura de subestructura común (mediana)0.50
Perturbación (mediana)27 átomos

Una perturbación mediana de 27 átomos no es una perturbación: es otra molécula.

Por qué no es un defecto

Este es el punto que hace la auditoría útil en lugar de deprimente. El conjunto se armó para entrenar un selector de poses, y para eso lo correcto es maximizar la diversidad de dianas: cuantos más contextos distintos vea el modelo, mejor generaliza.

Energía libre quiere lo contrario: pocas dianas con muchos análogos.

No hay nada roto. Hay un conjunto optimizado para un objetivo, evaluado contra otro. La implicación de diseño es que demostrar la ruta completa exige cohortes construidas al revés, y esas existen: la base de datos de origen las tiene, y el grupo mayor disponible aquí ya tiene 23 miembros.

Es una tarea de construcción de cohorte, no de investigación.

Un error propio, encontrado y corregido

La primera pasada dio una cobertura de subestructura de 1.11 y una perturbación de −2. Ambas son imposibles: la cobertura es una fracción y no puede pasar de 1, y una perturbación no puede ser negativa.

La causa: la función que busca la subestructura común contaba un hidrógeno retenido que la función de conteo de átomos pesados no contaba. Dos formas de contar átomos que no coincidían.

Corregido, las parejas aptas bajaron de 96 a 91.

Vale la pena señalar qué detectó el error: no una revisión de código, sino que el resultado era imposible. Una fracción mayor que 1 no se puede explicar de ninguna manera. Los valores fuera de rango físico son el detector de defectos más barato que existe, y sólo funcionan si alguien mira los rangos.

Por qué 91 es una cota superior

La agrupación de dianas se hizo por similitud de secuencia, y eso tiene dos sesgos, ambos en la misma dirección:

  • no distingue mutantes puntuales, que para energía libre sí serían dianas distintas;
  • puede unir isoformas que tampoco son intercambiables.

Los dos inflan el conteo. Así que 91 es un techo, no una estimación central, y el número real de parejas realmente utilizables es menor.

Declararlo así evita que la cifra se cite después como si fuera el suelo.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El material contiene series congenericas suficientes para que la ruta FEP+ sea aplicable
Criterio prerregistradoPre-registered criterion
auditoria sin gates; se cuenta cuantas parejas serian utilizables por FEP+
ProtocoloProtocol
auditoria sin docking: agrupacion de los 203 por identidad de secuencia (k-meros, umbral 0.90) y MCS por pareja dentro de cada diana; umbrales declarados antes (cobertura MCS >=0.70, perturbacion <=10 atomos)
Razón de la decisiónReason for the decision
La ruta FEP+ es aplicable pero solo en una fraccion: 91 parejas utilizables sobre 18 dianas, de 487 evaluadas (19%). Varias son de libro -1fkg/1fkh, 1dhi/1dhj, 1if7/1if8 con MCS de 26-33 atomos y perturbacion 0-. Pero el material NO esta construido para eso: 104 dianas distintas para 203 complejos, o sea la mitad de los complejos son la unica entrada de su diana; y la mediana global es cobertura MCS 0.50 con perturbacion de 27 atomos. Implicacion de diseno: el conjunto se armo para entrenar un selector de poses -maximizar diversidad de dianas- y eso es lo contrario de lo que necesita FEP+, que quiere pocas dianas con muchos analogos. Demostrar la ruta completa exigiria cohortes construidas al reves; PDBBind las tiene (el grupo mayor aqui es de 23 miembros). Se corrigio un bug propio: la primera pasada dio cobertura 1.11 y perturbacion -2, ambas imposibles, porque FindMCS contaba el hidrogeno retenido que GetNumHeavyAtoms no; con RemoveAllHs las parejas aptas bajaron de 96 a 91. Limitacion: la agrupacion por k-meros no distingue mutantes puntuales (que para FEP+ SI serian dianas distintas) y puede unir isoformas; ambos sesgos inflan el conteo, asi que 91 es una COTA SUPERIOR.

Métricas registradasRecorded metrics

tipo
auditoria (sin docking)
duration_seconds
20.02
limitacion
la agrupacion por k-meros no distingue mutantes puntuales (que para FEP+ SI serian dianas distintas) y puede unir isoformas; el MCS con timeout puede ser suboptimo. Ambos sesgos SOBREESTIMAN las parejas: la cifra es una COTA SUPERIOR

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FEP-02Los nueve que fallaron tienen huecos de cadena, nueve de nueveMediciónMeasurementArtículoPapern=203

41% de los receptores quedarían documentados. Y de paso la auditoría verificó un diagnóstico que llevaba meses siendo una conjetura razonable: p ≈ 0.0004.

La mitad de un complejo proteína-ligando es la proteína, y sus defectos son menos visibles que los del ligando. Una cadena con residuos ausentes, un sitio de unión repartido entre dos cadenas, un metal sin coordinar, una decena de aguas cuyo papel nadie decidió: todo eso se procesa sin error y sale con aspecto normal.

Esta auditoría cuenta cuántos de los 203 receptores tendrían documentado lo necesario para un cálculo de energía libre.

Qué salió

83 de 203 (41%) quedarían documentados. Y el desglose de lo que falta:

DefectoComplejos
Huecos de numeración en la cadena86 (42%)
Sitio repartido entre más de una cadena43 (21%)
Metales en el sitio52
Aguas en el sitio (mediana)10, ninguna clasificada

Ese 21% con el sitio repartido entre cadenas es un modo de fallo que el propio documento de limitaciones del proyecto marcaba como conocido — y que nadie había contado. Estaba en la lista de cosas sabidas, sin número al lado, que es una forma cómoda de no saber.

Las aguas merecen mención aparte: mediana de 10 por sitio, ninguna documentada como estructural (parte del sitio, hay que conservarla) o desplazable (el ligando la echa al unirse). Esa decisión cambia el resultado de un cálculo de energía libre, y hoy la toma por omisión quien escribió el preparador.

La verificación que no se buscaba

Meses antes, un experimento de campo de fuerza había fallado la parametrización en 9 complejos, todos con el mismo error de plantilla. El diagnóstico propuesto entonces fue que tenían cortes de cadena dejados como extremos sin capar. Era una explicación plausible y nadie podía comprobarla.

Esta auditoría, que se hacía por otro motivo, la comprueba:

Los 9 complejos que fallaron tienen huecos de cadena. 9 de 9. Tasa base en el conjunto: 42.4%. Probabilidad de que salga así por azar: 0.424⁹ ≈ 0.0004.

El diagnóstico queda confirmado, y con él la decisión que dependía de él: no volver a correr aquel experimento para recuperar esos 9 complejos, porque su fallo no informaba sobre el campo de fuerza sino sobre la preparación del receptor.

Es un buen ejemplo de por qué vale la pena registrar los diagnósticos aunque no se puedan comprobar en su momento: escrito con precisión, un diagnóstico se puede verificar después por un experimento que no existía cuando se formuló.

La limitación, declarada

Un salto en la numeración de residuos no siempre es un hueco físico: hay convenciones de numeración no consecutiva, sobre todo en estructuras alineadas a una referencia.

Así que los 86 son candidatos, no defectos confirmados. Cada uno exige mirar la estructura.

Los 9 del caso anterior sí lo eran, lo cual da alguna confianza en el criterio pero no lo valida en general. La cifra honesta es «86 estructuras a revisar», no «86 estructuras rotas».

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La integridad del receptor (cadenas, huecos, disulfuros, metales, cofactores, aguas) esta documentada en el material actual
Criterio prerregistradoPre-registered criterion
auditoria sin gates; verificacion adicional del diagnostico de MF-10
ProtocoloProtocol
auditoria sin docking sobre los 203; huecos de numeracion, sitios entre cadenas, disulfuros y contenido del sitio
Razón de la decisiónReason for the decision
83 de 203 complejos (41%) quedarian documentados. 86 de 203 (42%) tienen huecos de numeracion y 43 (21%) tienen el sitio repartido entre mas de una cadena -modo de fallo que 19_LIMITATIONS marcaba como conocido y que nadie habia contado-. 52 tienen metales en el sitio y la mediana de aguas en el sitio es 10, ninguna documentada como estructural o desplazable. VERIFICACION DEL DIAGNOSTICO DE MF-10: los 9 complejos que fallaron con error de plantilla de OpenMM tienen huecos de cadena, los 9 de 9, frente a una tasa base del 42.4%. La probabilidad de que salga asi por azar es 0.424^9 ~ 0.0004. El diagnostico -cortes de cadena dejados como terminos- queda CONFIRMADO, y con el la decision de no re-correr MF-10 para recuperarlos. Limitacion: un salto de numeracion no siempre es hueco fisico (hay convenciones de numeracion no consecutiva); los 86 son candidatos, no defectos confirmados, aunque los 9 de MF-10 si lo eran.

Métricas registradasRecorded metrics

tipo
auditoria (sin docking)
duration_seconds
5.91
limitacion
un salto de numeracion no siempre es hueco fisico: hay convenciones de numeracion no consecutiva. Se marca CANDIDATO, no defecto

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
complejoscomplexes
203
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FEP-01El cuello es el tautómero, y nadie lo había contadoMediciónMeasurementArtículoPapern=203

Sólo 39 de 203 complejos pasan la auditoría química. Pero el estéreo está impecable —0 sin asignar— y el cuello real es que 164 ligandos tienen tautómero ambiguo y el pipeline no declara cuál usa.

Los métodos de energía libre son el patrón de oro para predecir afinidad, y son implacables con la calidad de la entrada: si el ligando entra con la química mal especificada, el cálculo produce un número preciso y equivocado.

Esta auditoría cuenta cuántos de los 203 complejos del programa tendrían declarada su química: estereoquímica, tautómero, protonación, carga y correspondencia de átomos. No si son correctos —eso exige juicio experto caso por caso— sino si están declarados en vez de dejados al azar de la implementación.

El resultado global

39 de 203 (19%) pasan hoy los cuatro campos.

Es un número bajo, y la parte interesante es cómo se reparte.

Dos sospechas de partida que resultaron infundadas

La estereoquímica está limpia. 138 ligandos tienen centros quirales y cero están sin asignar.

Eso contradice directamente lo que sugería el código: el pipeline llama a la función de conversión con la opción de permitir estéreo indefinido activada. Esa bandera hace saltar la alarma de cualquiera que la lea, porque permite pasar moléculas cuya quiralidad no está determinada — y la quiralidad decide si una molécula se une o no.

La bandera permite algo que en la práctica no ocurre nunca. El riesgo estaba, la realización no. Sin contar, la conclusión razonable habría sido la contraria.

La correspondencia de átomos es biyectiva y cubre los átomos pesados en los 203 complejos. Eso importa más allá de esta auditoría: es la base sobre la que se calculan todos los RMSD del programa, y hasta aquí nunca se había verificado. Si esa correspondencia estuviera rota en algún complejo, sus distancias medidas compararían átomos distintos.

El cuello real

164 de 203 (81%) tienen más de un tautómero enumerable, y 48 alcanzan el tope de 10 que se permitió a la enumeración.

El pipeline no declara cuál usa.

Para docking con Vina eso apenas importa: la función de puntuación es lo bastante tosca como para que la diferencia se pierda en el ruido. Para energía libre es determinante, porque el tautómero define exactamente qué átomos donan puentes de hidrógeno y cuáles los aceptan — que es la interacción que domina el reconocimiento molecular.

Es un problema silencioso: nunca produce un error, sólo un resultado calculado sobre una molécula que puede no ser la que existe en solución.

La limitación, declarada

La enumeración usada es una heurística de transformaciones químicas, no un cálculo de poblaciones. Que un ligando tenga más de un tautómero enumerable no significa que esté mal: significa que hay una ambigüedad no declarada.

La distinción importa porque marca qué trabajo hay que hacer. No es corregir 164 moléculas — es declarar, para cada una, cuál se usa y por qué.

Por qué esta auditoría era la que faltaba

El proyecto llevaba tiempo asumiendo que estar listo para energía libre era cuestión de formato de exportación. Esta auditoría dice que el formato es lo de menos: el trabajo real está en decidir y documentar química que hoy se decide sola, dentro de una biblioteca, sin que nadie registre qué eligió.

Es el elemento con más apalancamiento de la cartera: declarar tautómeros sube este 19% por encima del 80% de un solo golpe.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La integridad quimica del ligando (estereo, tautomero, protonacion, carga, atom mapping) esta declarada en el material actual
Criterio prerregistradoPre-registered criterion
auditoria sin gates; se cuenta cuantos complejos pasarian los cuatro campos
ProtocoloProtocol
auditoria sin docking sobre los 203 de train+val/test; centros quirales sin asignar, dobles sin estereo, enumeracion de tautomeros y biyectividad del index_map
Razón de la decisiónReason for the decision
Solo 39 de 203 complejos (19%) pasan hoy los cuatro campos. Dos campos estan LIMPIOS y contradicen la sospecha de partida: 138 ligandos tienen centros quirales y CERO estan sin asignar, pese a que el pipeline llama a Molecule.from_rdkit con allow_undefined_stereo=True -ese flag permite algo que en la practica no ocurre-; y el atom mapping es biyectivo y cubre los pesados en los 203, lo que verifica por primera vez la base de todos los RMSD del programa. El cuello es el TAUTOMERO: 164 de 203 (81%) tienen mas de un tautomero enumerable y 48 alcanzan el tope de 10. El pipeline no declara cual usa. Para docking con Vina apenas importa; para FEP+ es determinante, porque el tautomero define que atomos donan y cuales aceptan puentes de hidrogeno. Limitacion: la enumeracion de RDKit es heuristica de transformaciones, no calculo de poblaciones; >1 senala AMBIGUEDAD NO DECLARADA, no error.

Métricas registradasRecorded metrics

tipo
auditoria (sin docking)
duration_seconds
1.83
decision_silenciosa_auditada
run_mf10_relax_insitu.construir_sistema llama a Molecule.from_rdkit(molh, allow_undefined_stereo=True): el pipeline ACEPTA estereoquimica indefinida y deja que la biblioteca elija
limitacion
la enumeracion de tautomeros de RDKit es heuristica de transformaciones, no calculo de poblaciones: >1 senala AMBIGUEDAD NO DECLARADA, no error. Dimensiona el hueco, no lo corrige

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
complejoscomplexes
203
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-04El pipeline toma decisiones de protonacion en silencio, y eso es la causa numero uno de fallo en un paquete FEP+MediciónMeasurementn=116

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El pipeline toma decisiones de protonacion en silencio, y eso es la causa numero uno de fallo en un paquete FEP+
Criterio prerregistradoPre-registered criterion
auditoria sin gates; dimensiona el hueco, no lo corrige
ProtocoloProtocol
auditoria sin docking sobre los 116 de train: hidrogenos del receptor, residuos titulables en el sitio, carga formal del ligando y grupos ionizables por SMARTS
Razón de la decisiónReason for the decision
Parte sin computo de REC-04 e insumo de FEP-01/FEP-02. Hallazgo de partida: el provenance del pipeline declara receptor.protonation = "pdb_original", es decir NO se toma ninguna decision de protonacion, se hereda la del fichero de PDBBind. Receptor mejor de lo temido: los 116 traen hidrogenos y solo 17 tienen una histidina en el sitio (mediana de titulables en sitio: 1). Ligando: 87 de 116 tienen grupo ionizable y 64 llegan con carga formal 0 pese a contener acidos carboxilicos, aminas o amidinas que a pH 7.4 estarian ionizados. Mas frecuentes: amina secundaria (42), acido carboxilico (33), amina primaria (31), fosfato/sulfato (17), amidina/guanidina (16). Para docking con Vina es casi inocuo -su funcion apenas ve los hidrogenos-; para FEP+ es descalificante, porque cambia la carga neta del sistema. Limitacion: los SMARTS de ionizables son heuristica gruesa, no un predictor de pKa; los 64 son CANDIDATOS a revision, no errores confirmados. Y no se mide el efecto sobre el ranking: eso es REC-04 completo y exige re-dockear.

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
complejoscomplexes
116
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-11-R2El umbral de deduplicacion de MF-11-R1 (1.5 A, derivado sobre v1) no es transferible al conjunto v2, 6.9x mas densoCorrigendumCorrection notice

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
CorrigendumCorrection notice · Corrección de un resultado propio cuyo valor principal es la corrección.Correction of an own result whose main value is the correction.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El umbral de deduplicacion de MF-11-R1 (1.5 A, derivado sobre v1) no es transferible al conjunto v2, 6.9x mas denso
Criterio prerregistradoPre-registered criterion
G1 validez; G2 existe un umbral con 0 perdidas de cobertura, degradacion mediana <=0.1 A y reduccion >=10%; se elige el MAYOR que cumpla las tres
ProtocoloProtocol
MF-11-R1 contrato heredado literal (diametro controlado, medoid geometrico, umbrales 0.5-2.0); solo cambia el conjunto; train, val y test por separado
Razón de la decisiónReason for the decision
Entregable 9 del programa, pendiente desde el 2026-08-17. Umbral elegido 2.0 A en los tres splits, frente a 1.5 A de v1: reduccion 31.7% en train (18,812 -> 12,852 poses), 37.7% en val y 38.2% en test, con 0 perdidas de cobertura. RC-F0-V2 tenia razon al exigir la re-derivacion. TENSION DECLARADA: 2.0 A es TAMBIEN el umbral de exito. Un cluster de diametro 2.0 puede contener una pose a 1.9 A del cristal y otra a 3.9 A, y si el medoid cae del lado malo se pierde cobertura. En train no ocurrio, pero el margen es fino y la regla solo restringe la mediana, no la cola (p90 = 0.358 A). Para produccion, 1.5 A es la eleccion conservadora aunque la regla preregistrada seleccione 2.0. ANOMALIA REGISTRADA: val pierde 1 complejo a U=1.5 y 0 a U=2.0 -no monotono-, porque al cambiar el umbral cambia toda la particion y el medoid de otra particion puede ser mejor pose. Las "0 perdidas" a 2.0 son en parte suerte de particion, no garantia.

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-32Tres ataques contra nuestros propios resultadosInconclusoInconclusiveArtículoPapern=48

Uno prospera, uno se cae en su test decisivo, y el tercero no era contrastable — así que motivó el experimento que faltaba. Ninguno de los tres se diseñó para salir bien.

Los resultados de una línea de investigación entera dependían de tres supuestos que nadie había atacado. Este experimento los ataca deliberadamente, con los criterios de éxito de cada ataque escritos antes de ejecutarlo — de modo que no se pudiera declarar superviviente lo que no lo era.

Ataque 1 — «el umbral de 2.0 Å hace todo el trabajo»

La acusación: que las conversiones se cuenten con un corte en 2.0 Å es arbitrario, y con otro corte las conclusiones cambiarían.

Resultado: PROSPERA PARCIALMENTE.

Moviendo el umbral a 2.5 Å las conversiones se multiplican por tres o más: un brazo pasa de 3 a 10, otro de 1 a 9. Y hay 12–13 complejos por brazo en la franja de 2.0 a 3.0 Å, esperando justo al otro lado de la línea.

Lo que no cambia: el orden de los brazos se mantiene en los cuatro umbrales probados, y el patrón de fondo persiste — a 2.5 Å el mejor brazo sigue fallando en 23 de 33.

Consecuencia adoptada: reportar la curva completa de umbrales y dejar de tratar 2.0 Å como si fuera una constante física. Es una convención útil, no una propiedad de la naturaleza.

Ataque 2 — «es regresión a la media»

La acusación: la cohorte se seleccionó por tener malos resultados, así que cualquier segunda medición mejoraría sola, sin que la intervención haga nada.

Primera parte: PROSPERA. La firma clásica está ahí: correlación de 0.390 en el estrato difícil y 0.533 global entre el resultado de partida y la mejora observada. Cuanto peor empezaba un complejo, más mejoró. Exactamente lo que predice la regresión a la media.

Segunda parte, el test decisivo: EL ATAQUE SE CAE.

Si fuera regresión pura, los complejos de control —seleccionados por el extremo opuesto, por ser buenos— tendrían que empeorar. Es la predicción que distingue regresión a la media de un efecto real, y no admite escapatoria.

No empeoran. Mejoran levemente: −0.042 con intervalo [−0.126, −0.002], repartidos 5 a 4.

El efecto sobrevive, atenuado. La correlación era real y la explicación que proponía, no.

Este es el punto más valioso del experimento: la primera parte del ataque daba un número convincente, y sólo un test diseñado para poder refutar la hipótesis del atacante lo resolvió.

Ataque 3 — «es la varianza por semilla»

La acusación: los efectos de ~0.8 Å podrían ser ruido del propio motor entre semillas.

Resultado: no contrastable con el material disponible. Habría hecho falta ejecutar el docking muchas veces, y este experimento era de reanálisis.

Se registró como el hueco más grave del programa, y esa constancia motivó ejecutar el experimento que faltaba. Su respuesta llegó después: desviación mediana de 0.283 Å, error estándar de la mediana de 0.049 Å, de modo que los efectos de ~0.8 Å son 15.8 veces ese error.

El ataque no prospera a nivel agregado. Pero dejó dicho algo que sí se sostiene: con rangos por semilla de hasta 4 Å en algunos complejos, las afirmaciones sobre un complejo individual basadas en una sola corrida no son fiables.

Por qué el veredicto global es «inconcluso»

Porque eso es lo que fue: un ataque prospera parcialmente, otro se cae en su test decisivo, y el tercero no se podía contestar aquí. Sellarlo como GO habría sugerido que la línea salió indemne, y no salió indemne del primero.

La utilidad de un ejercicio así no está en el veredicto. Está en que produjo una regla nueva —reportar la curva de umbrales— y un experimento que faltaba desde el primer día.

Ficha del registro selladoSealed record sheet

CategoríaCategory
InconclusoInconclusive · Ejecutado y declarado sin conclusión. No se reclasifica a posteriori.Executed and declared without a conclusion. It is not reclassified afterwards.
Decisión del manifestManifest decision
INCONCLUSIVE
HipótesisHypothesis
La lectura de la linea C sobrevive a una auditoria adversarial: umbral arbitrario, regresion a la media y varianza por semilla
Criterio prerregistradoPre-registered criterion
medicion sin gates; cada ataque prospera o no segun criterios declarados
ProtocoloProtocol
auditoria adversarial: reanalisis de MF-08 desde la posicion de un revisor hostil; sensibilidad al umbral, regresion a la media y degradacion de controles
Razón de la decisiónReason for the decision
Tres ataques, tres resultados distintos. ATAQUE 1 (el umbral de 2.0 A hace el trabajo): PROSPERA PARCIALMENTE. Mover el umbral a 2.5 A multiplica las conversiones por tres o mas (B_ADAPT de 3 a 10, B20 de 1 a 9) y hay 12-13 complejos en la banda 2.0-3.0 A por brazo. Pero el ORDEN de los brazos se mantiene en los cuatro umbrales y el patron "mejora que no basta" persiste: a 2.5 A el mejor brazo sigue fallando en 23 de 33. Obliga a reportar la curva completa y a dejar de tratar 2.0 A como si fuera fisico. ATAQUE 2a (regresion a la media): PROSPERA. rho 0.390 en COLOCACION y 0.533 global entre el oraculo de partida y la mejora, la firma clasica. ATAQUE 2b (test decisivo): EL ATAQUE SE CAE. Si fuera regresion a la media pura, los controles -seleccionados por el extremo opuesto- tendrian que EMPEORAR. No lo hacen: mejoran levemente (-0.042, CI [-0.126,-0.002]) y se reparten 5/4. El efecto sobrevive, atenuado. ATAQUE 3 (varianza por semilla): no contrastable sin ejecutar Vina; se identifico como el hueco mas grave y motivo la ejecucion de FND-03, que despues lo respondio: sd mediana 0.283 A y error estandar de la mediana 0.049 A, de modo que los efectos de ~0.8 A son 15.8x ese error y el ataque no prospera a nivel agregado.

Métricas registradasRecorded metrics

tipo
auditoria adversarial (reanalisis de MF-08, sin computo nuevo)
postura
no busca confirmar la lectura de la linea C; busca refutarla
ataque3_no_contrastable_aqui
varianza por semilla de Vina: todas las comparaciones usan seed 42 y nadie ha medido la varianza entre semillas en esta cohorte. FND-03 la declara P0 y NO tiene artefacto. Es el hueco mas grave de la linea y exige ejecutar Vina
lectura
ataque 1 prospera si el orden de brazos o el recuento cambian mucho al mover el umbral. ataque 2 prospera si la mejora correlaciona fuerte con el punto de partida Y los controles empeoran; si los controles NO empeoran, la regresion a la media no explica el efecto

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
complejoscomplexes
48
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-31Correlaciona, predice, y aun así no es la palancaRefutaciónRefutationArtículoPapern=48

La ocupación de caja correlaciona con el fallo (ρ=0.384) y sirve para predecirlo. Pero el test de dosis-respuesta da ρ=-0.054: apretar más no mejora más. Es un marcador, no una causa.

Había una historia limpia y era casi seguramente falsa, así que valía la pena comprobarla.

La historia: los ligandos que fallan la colocación ocupan una fracción pequeña de la caja de búsqueda. Tienen sitio de sobra para deslizarse dentro del bolsillo, la búsqueda se pierde en ese volumen vacío, y por eso no encuentra la pose correcta. Si eso fuera cierto, apretar la caja sería una palanca directa: menos volumen inútil, mejor búsqueda.

La correlación existía y era fuerte. La pregunta era si era causal.

Cómo se distingue un marcador de una palanca

Una correlación transversal no basta. Que los complejos con baja ocupación fallen más puede deberse a que la ocupación causa el fallo, o a que ambas cosas son consecuencia de otra —por ejemplo, que los ligandos grandes y flexibles fallan más y además llenan la caja de otra forma.

Lo que distingue las dos es la dosis-respuesta pareada: dentro de cada complejo, si se cambia la ocupación, ¿cambia el resultado en proporción?

Este experimento aprovecha que MF-08 ya había producido el material necesario. Su intervención de cajas —144 corridas con cajas de 20 Å, 30 Å y adaptativa— cambia la ocupación en distinta medida para cada complejo, porque la caja adaptativa se ajusta al tamaño del ligando. Eso da variación pareada gratis, sin cómputo nuevo.

Qué pasó

El test transversal confirma la correlación: ρ = 0.384 entre ocupación y oráculo sobre las 144 corridas. La historia parecía sostenerse.

El test pareado de dosis-respuesta la derriba:

Grupoρ (dosis-respuesta)
Global−0.054
Estrato colocación+0.150 ← signo contrario al predicho
Estrato control−0.216

Los tres cerca de cero, y sin coherencia de signo. En el estrato que importa, el efecto va en la dirección opuesta a la hipótesis.

Lo desconcertante: apretar la caja sí funciona

Y aquí está lo que hace este resultado más interesante que un simple negativo. Apretar la caja sí mejora el oráculo:

  • delta mediano −0.379 Å, CI95 [−0.713, −0.204]
  • mejoran 27 de 48 complejos

El efecto es real. Pero no es proporcional a cuánto se aprieta.

Eso resuelve algo que MF-08 había dejado colgando sin explicación. MF-08 convirtió 3 de 33 complejos moviendo la mediana 0.82 Å, y nadie sabía por qué el beneficio era tan disperso. La respuesta es esta: si la ocupación fuera la palanca, la ganancia se habría concentrado en los complejos donde la caja se apretó más. No lo hizo. La mejora viene de otra cosa que la caja pequeña arrastra consigo, no del volumen en sí.

Qué sobrevive de todo esto

**El clasificador de MF-12 no queda invalidado.** Su predictor dominante es precisamente la ocupación del confórmero, y este experimento acaba de decir que la ocupación no es causal. Pero predecir no requiere causalidad. Un marcador es perfectamente válido para triage: si quiero saber qué complejos van a fallar para no gastar cómputo en ellos, me da igual que la variable sea causa o síntoma.

Lo que este resultado prohíbe es lo otro: usar la ocupación como intervención. Diseñar el pipeline para maximizar ocupación de caja, esperando que el rendimiento suba en proporción, no funcionaría. La correlación no se transfiere a la manipulación.

Es una distinción que suena académica hasta que alguien construye un producto sobre el lado equivocado de ella.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
La ocupacion de caja gobierna el fallo: es una palanca, no solo un marcador
Criterio prerregistradoPre-registered criterion
medicion sin gates; rho negativo y sustancial en el test pareado => palanca; rho ~0 => marcador
ProtocoloProtocol
medicion: reanalisis de la intervencion sellada de MF-08 (144 corridas, cajas 20/30/adaptativa); test transversal y test pareado de dosis-respuesta
Razón de la decisiónReason for the decision
LA OCUPACION ES UN MARCADOR, NO UNA PALANCA. El test transversal da rho 0.384 entre ocupacion y oraculo sobre 144 corridas, confirmando la correlacion. Pero el test pareado de dosis-respuesta -B30 a B_ADAPT, donde el cambio de ocupacion VARIA entre complejos porque la caja adaptativa se ajusta al ligando- da rho -0.054 global, +0.150 en COLOCACION (signo CONTRARIO al predicho) y -0.216 en CONTROL. Los tres cerca de cero y sin coherencia de signo. Y sin embargo apretar la caja SI mejora el oraculo: delta mediano -0.379 A con CI95 [-0.713, -0.204] y mejoran 27 de 48. El efecto es real pero NO es proporcional a cuanto se aprieta. Eso explica el resultado que MF-08 dejo sin explicar: convirtio 3 de 33 moviendo la mediana 0.82 A; si la ocupacion fuera la palanca, la ganancia se habria concentrado donde la caja se apreto mas, y no lo hizo. No invalida MF-12: predecir no requiere causalidad y un marcador sirve perfectamente para triage.

Métricas registradasRecorded metrics

tipo
medicion (reanalisis de la intervencion sellada de MF-08, sin computo nuevo)
definicion
ocupacion = volumen de la esfera envolvente del ligando / volumen de caja
n_corridas
144
n_pares_B30_vs_BADAPT
48
lectura
rho negativo y sustancial en el test 2 => reducir la ocupacion MEJORA el oraculo y la ocupacion es una PALANCA. rho ~0 => es un MARCADOR de dificultad y no una palanca: predice el fallo pero moverla no lo arregla, coherente con que MF-08 solo convirtiera 3 de 33

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
complejoscomplexes
48
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-27Dentro del grupo de alta flexibilidad, algo distinto de las torsiones separa a los que conviertenMediciónMeasurement

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Dentro del grupo de alta flexibilidad, algo distinto de las torsiones separa a los que convierten
Criterio prerregistradoPre-registered criterion
medicion sin gates; MDE declarado 0.227 para n=52
ProtocoloProtocol
medicion: pool train + val+test (203 complejos), subgrupo con >=13 torsiones, contraste de predictores entre convertidos y no
Razón de la decisiónReason for the decision
En el grupo de >=13 torsiones (52 complejos, 14 convierten) las TORSIONES dejan de discriminar (15.5 frente a 16.0, cociente 0.97). Las dos senales grandes son ocupacion de caja (0.55) y calidad del conformero (0.59). El radio de giro (0.83) discrimina mas que el numero de atomos (0.89): no es el tamano del ligando sino cuanto se extiende. 1b2h tiene 21 torsiones -el maximo del grupo- y convierte, con enterramiento 2.52 y radio de giro bajo. Se junto train con val+test deliberadamente para no repetir el error de MF-26. Advertencias: MDE 0.227 con n=52, asi que solo las senales de cociente ~0.5 son fiables; ocupacion de caja y radio de giro son casi la misma variable (una es el cubo de la otra normalizada) y no cuentan como dos evidencias.

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-26Declaré una especificación el mismo día que escribí la regla que lo prohíbeRefutaciónRefutationArtículoPaper

En train la colocación colapsa por encima de 5 torsiones, con intervalos disjuntos. En val y test no colapsa: sube. El acantilado era un sesgo de cohorte, no una propiedad del método.

Una curva limpia en train decía algo útil y accionable: la tasa de colocación cae de 0.792 en la banda de 3–5 torsiones a 0.375 en la de 6–8, y sigue bajando a 0.217 en la de 9–12. Los intervalos de Wilson de las bandas extremas son disjuntos, así que no es ruido.

De ahí salió una especificación de producto: «MolFlex coloca de forma fiable hasta unas 5 torsiones». Un número concreto, con evidencia estadística detrás, listo para documentar.

Es falsa.

Qué pasó al mirar fuera de train

Banda de torsionesTasa en trainTasa en val+test
3 – 50.7920.600
6 – 80.3750.632
9 – 120.2170.550

Fuera de train la curva sube de la primera a la segunda banda, y en la de 9–12 da 0.550 frente a 0.217. Los intervalos de confianza de esa última comparación no se solapan: [0.097, 0.419] contra [0.342, 0.742].

El coste de colocación cuenta la misma historia: llega a 6.45 Å de mediana en train y no pasa de 1.97 Å en val+test.

El acantilado no generaliza. La especificación queda retirada.

Por qué ocurre, y por qué debería haberlo visto venir

Es coherente con dos resultados que ya estaban sellados y que no conecté a tiempo:

  • MF-02A-EXT midió que **train es más difícil que PDBBind**: 77.6% frente a 83.9% de cobertura conformacional.
  • RC-F0-V2 documentó el gradiente train < val < test — 79.3 / 87.5 / 97.9 — porque la división por scaffold concentró los scaffolds difíciles en train.

El acantilado de torsiones es otra cara del mismo sesgo de cohorte. Los ligandos con muchas torsiones de train son difíciles por razones que se correlacionan con el número de torsiones sin ser causadas por él.

La lección de método, que es lo que hace este registro incómodo

Medí una curva en train y declaré una especificación sin validarla fuera.

Eso es exactamente el error que la sección de método del programa propone evitar. Y lo cometí el mismo día en que se escribió esa sección.

No hay una lectura amable de eso. Escribir la regla y violarla en la misma jornada significa que tener la regla escrita no basta: hace falta que algo la compruebe antes de que un número salga del cuaderno. De aquí salió la práctica de que ninguna especificación se declara sin un dato fuera del conjunto donde se midió la curva.

Lo que sí sobrevive

Un resultado del mismo experimento aguanta el cambio de split, y por eso vale más que el que se cayó: el enterramiento del sitio favorece a los complejos que convierten en 3 de 4 bandas en train y en 4 de 4 en val+test. Sobrevive a la estratificación por tamaño y al cambio de conjunto.

No es un acantilado ni una especificación. Es una asociación estable, que es bastante más de lo que se puede decir del hallazgo con el que este experimento empezó.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
Existe un umbral operativo de torsiones por encima del cual la colocacion colapsa
Criterio prerregistradoPre-registered criterion
medicion sin gates; se busca la FORMA de la curva, no el valor de un punto
ProtocoloProtocol
medicion: reanalisis de MF-24 por bandas de torsiones con intervalos de Wilson; validacion externa en val+test
Razón de la decisiónReason for the decision
EL ACANTILADO NO GENERALIZA. En train la tasa cae de 0.792 (3-5 torsiones) a 0.375 (6-8) y sigue a 0.217 (9-12), con CI de Wilson de las bandas extremas disjuntos. En val+test SUBE de 0.600 a 0.632 y en 9-12 da 0.550 frente a 0.217 de train, con intervalos que NO se solapan ([0.097,0.419] vs [0.342,0.742]). El coste de colocacion mediano llega a 6.45 A en train y no pasa de 1.97 A en val+test. La especificacion declarada a partir de train -"MolFlex coloca fiable hasta ~5 torsiones"- NO es valida. Es coherente con dos resultados ya sellados que no se conectaron a tiempo: MF-02A-EXT midio que train es mas dificil que PDBBind (77.6% vs 83.9%) y RC-F0-V2 documento el gradiente train<val<test (79.3/87.5/97.9). El acantilado es otra cara del sesgo de cohorte de train. Lo que SI sobrevive: el enterramiento favorece a los que convierten en 3 de 4 bandas en train y en 4 de 4 en val+test, sobreviviendo a la estratificacion por tamano y al cambio de split. Leccion de metodo registrada: se midio una curva en train y se declaro especificacion sin validarla fuera, que es el error que la seccion 20.9 propone evitar, cometido el mismo dia que se escribio esa seccion.

Métricas registradasRecorded metrics

tipo
medicion (reanalisis de MF-24, sin computo nuevo)
n_complejos
116
enterramiento_veredicto
el efecto del enterramiento favorece a los que convierten en 3 de 4 bandas con muestra suficiente
limitacion
bandas con 10-30 complejos: los CI de Wilson son anchos y ninguna banda individual soporta un claim. Se busca la FORMA de la curva. Correlacional: la banda se observo, no se asigno
veredicto
EL ACANTILADO NO GENERALIZA
correccion
La especificacion declarada a partir de train -'MolFlex coloca fiable hasta ~5 torsiones'- NO es valida. En train la tasa cae de 0.792 (3-5 torsiones) a 0.375 (6-8); en val+test SUBE de 0.600 a 0.632, y en 9-12 da 0.550 frente a 0.217 de train, con intervalos de Wilson que NO se solapan ([0.097,0.419] vs [0.342,0.742]). El coste de colocacion mediano llega a 6.45 A en train y no pasa de 1.97 A en val+test. Es coherente con dos resultados ya sellados que no se conectaron a tiempo: MF-02A-EXT midio que train es mas dificil que PDBBind (77.6% vs 83.9% de disponibilidad conformacional) y RC-F0-V2 documento el gradiente train<val<test (79.3/87.5/97.9). El acantilado es otra cara del sesgo de cohorte de train, donde torsiones y dificultad estan confundidas, no una propiedad del motor de docking.
leccion_de_metodo
se midio una curva en train y se declaro especificacion sin validarla fuera. Es exactamente el error que la seccion 20.9 propone evitar, cometido el mismo dia que se escribio esa seccion

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-24Existen predictores del coste de colocacion calculables antes de dockear, medibles sin la circularidad de la cohorte estratificadaMediciónMeasurementn=116

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Existen predictores del coste de colocacion calculables antes de dockear, medibles sin la circularidad de la cohorte estratificada
Criterio prerregistradoPre-registered criterion
medicion sin gates; correlacional, ordena candidatos y no identifica causas
ProtocoloProtocol
medicion correlacional sobre los 116 de train (no seleccionados por desenlace) y despues sobre los 87 de val+test; seis predictores
Razón de la decisiónReason for the decision
El coste de colocacion escala con el tamano y la flexibilidad del ligando: los que convierten tienen 5 torsiones y 16 pesados; los que fallan, 12 y 31. Correlaciones con el coste: rmsd_conf 0.581, torsiones 0.530, n_conformeros 0.515, pesados 0.509, radio de giro 0.480, ocupacion de caja 0.451. El ENTERRAMIENTO va en direccion contraria (rho -0.308): los que convierten estan MAS enterrados (1.87 frente a 1.46 contactos por atomo). Un bolsillo cerrado restringe la busqueda y ayuda; uno abierto la deja vagar. Es el unico predictor que no es tamano disfrazado. Se salio deliberadamente de la cohorte de 48 porque se estratifico POR desenlace de colocacion, lo que hace circular cualquier comparacion de coste entre sus estratos. Limitacion: seis predictores fuertemente correlacionados entre si y n=116; no se ajusto ningun modelo multivariante ni se derivo umbral operativo.

Métricas registradasRecorded metrics

tipo
medicion correlacional sobre los 116 de train (sin seleccion por desenlace)
duration_seconds
3.09
por_que_los_116
la cohorte de 48 se estratifico POR desenlace de colocacion, asi que comparar coste de colocacion entre sus estratos es circular; los 116 de train no se seleccionaron por desenlace
n_complejos
116
n_ok
116
n_convierten
50
n_no_convierten
66
coste_colocacion_mediano
1.649
limitacion
correlacional, seis predictores correlacionados entre si y n=116: ordena candidatos para un experimento posterior, NO identifica causas

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
complejoscomplexes
116
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-22Siete confórmeros casi perfectos, cero poses correctasRefutaciónRefutationArtículoPapern=48

La teoría del presupuesto de error decía que un confórmero mediocre consume el margen de 2 Å. Se probaron siete con conformación prácticamente exacta: ninguno produjo una pose correcta.

El umbral de éxito en docking es un RMSD de 2 Å, y ese margen tiene que repartirse entre dos errores que se suman: el de conformación —la forma interna de la molécula— y el de colocación —dónde y cómo se sitúa en el bolsillo.

De ahí salía una teoría con aspecto de ser correcta: si el confórmero de partida ya está a 1.36 Å del bioactivo, se ha consumido casi todo el presupuesto antes de empezar, y la colocación tiene menos de un ángstrom de margen para no fallar. Bajo esa teoría, el remedio es obvio: mejores confórmeros.

Qué pasó

Se ordenaron los confórmeros por su error conformacional de partida y se midió la tasa de conversión en cada banda.

En el estrato de control, la teoría funciona perfectamente. La curva es monótona y da una especificación usable:

Error conformacional de partidaTasa de conversión
0.0 – 0.5 Å0.947
0.5 – 1.0 Å0.870
1.0 – 1.5 Å0.581
> 1.5 Å0.000

Corte alrededor de 1.5 Å, y una colocación que cuesta casi nada: 0.55–0.78 Å.

En el estrato difícil, la tasa de conversión es CERO en todas las bandas. Incluida la primera. Siete confórmeros con conformación prácticamente perfecta —error de partida por debajo de 0.5 Å— y ninguno produjo una pose bajo 2 Å.

Eso mata la teoría para el caso que importa. Si el problema fuera el presupuesto, entregar material perfecto tendría que convertir. No convierte.

Lo que sí separa a los dos estratos

No es el confórmero. Es el coste de colocación:

EstratoCoste de colocación
Control0.741 Å
Difícil3.847 Å

Cinco veces más. Con el mismo motor, la misma caja y confórmeros de calidad comparable.

Ese número es el que después dio origen a MF-25, que preguntó si ese coste respondía al presupuesto de búsqueda. No respondía.

Dos incidentes que forman parte del registro

El experimento planeado ya existía. El MF-22 del plan original era dockear rígidamente cada confórmero. Al ir a implementarlo se descubrió que eso ya es el pipeline: la función de docking del proyecto dockea conf{cid}.rigid.pdbqt con TORSDOF 0, que es exactamente docking rígido. El experimento se rediseñó para medir el presupuesto de error en su lugar. Queda anotado porque significa que el plan contenía un identificador que describía algo ya construido.

Una violación de la física, detectada y corregida. En 70 de 970 confórmeros el RMSD de la pose salía menor que el del confórmero alineado, lo cual es imposible para un cuerpo rígido: alinear libremente no puede ser peor que colocar en el sitio. La causa era un hidrógeno retenido que el lector de moléculas deja en 6 complejos, contaminando el conteo de átomos pesados. Tras corregirlo, 0 violaciones de 970.

Ese chequeo no estaba en el plan. Lo detectó una comprobación de cordura contra un teorema que tenía que cumplirse. Sin él, el experimento habría reportado números con un 7% de filas físicamente imposibles.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
El presupuesto de error explica el fallo: el error conformacional y el de colocacion se suman, y un conformero a 1.36 A consume casi todo el margen de 2 A
Criterio prerregistradoPre-registered criterion
medicion sin gates; curva de conversion frente al error conformacional de partida
ProtocoloProtocol
medicion: cruce por conformero del RMSD alineado de entrada con el mejor RMSD en marco de pocket que ESE conformero produjo; sin computo nuevo
Razón de la decisiónReason for the decision
HIPOTESIS REFUTADA para el estrato dificil. En COLOCACION la tasa de conversion es CERO en todas las bandas, incluida 0.0-0.5 A (7 conformeros con conformacion practicamente perfecta y ninguno produjo una pose <=2 A). Lo que separa a los estratos es el COSTE DE COLOCACION: 0.741 A en control frente a 3.847 A en los dificiles, cinco veces mas. En CONTROL el modelo SI funciona y da una especificacion usable: curva monotona (0.947 / 0.870 / 0.581 / 0) con corte alrededor de 1.5 A de error conformacional, y colocacion casi gratis (0.55-0.78 A). Hallazgo de diseno registrado: el MF-22 planeado -dockear rigido cada conformero- YA es el pipeline (molflex.dockear_conformero dockea conf{cid}.rigid.pdbqt con TORSDOF 0), asi que se rediseno para medir el presupuesto de error. Se detecto y corrigio una violacion del teorema de cuerpo rigido (pose < alineado, imposible) en 70 de 970 conformeros, causada por el hidrogeno retenido que MolFromMolFile deja en 6 complejos; tras corregir con RemoveAllHs, 0 violaciones de 970.

Métricas registradasRecorded metrics

tipo
medicion correlacional (cruce de material sellado, sin computo nuevo)
duration_seconds
1.15
hallazgo_de_diseno
el MF-22 planeado -dockear rigido cada conformero- YA es el pipeline: molflex.dockear_conformero dockea conf{cid}.rigid.pdbqt con TORSDOF 0. Se redisenio para medir el presupuesto de error
n_complejos
48
limitacion
correlacional sobre lo ya dockeado; describe lo que paso, no prueba que reducir el error conformacional CAUSE la conversion

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
complejoscomplexes
48
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-21El confórmero bueno está, pero diluido entre los malosCorrigendumCorrection noticeArtículoPapern=48

En 23 de los 30 complejos que fallan, el ensemble ya contiene un confórmero a ≤2 Å del bioactivo. La mediana de confórmeros buenos por complejo es 1. Y el primer intento medía poses ya dockeadas.

Si el docking flexible falla, una explicación posible es que la molécula nunca adopte la forma correcta durante la búsqueda. Otra es que la forma correcta ya esté disponible desde el principio, en el ensemble de confórmeros generado antes de dockear, y que la búsqueda la descarte.

La diferencia es operativa: si el material bueno ya existe, el problema es la búsqueda; si no existe, el problema es el generador de confórmeros.

Qué pasó

En 23 de los 30 complejos que fallan (77%), el ensemble sí contiene un confórmero a 2 Å o menos del bioactivo, con mediana del mejor en 1.364 Å.

El material está. Lo que cambia entre estratos es la densidad:

EstratoMediana del mejor confórmeroConfórmeros bajo 1.5 Å
Control0.360 Å6
Los que fallan1.364 Å1

En los complejos que fallan, el confórmero bueno está diluido: hay uno, entre decenas. En los que funcionan hay seis. La búsqueda tiene seis oportunidades de encontrar la correcta frente a una.

Ese es el hallazgo, y es lo que da nombre al experimento: el techo del docking rígido está más alto de lo que parecía, porque el material de partida es mejor de lo que se creía.

El corrigendum, incluido en este sello

La primera versión de este experimento usó un patrón de archivos que también capturaba ficheros llamados conf{N}.relax.rigid.pdbqt. Esos no son confórmeros de entrada: son poses ya dockeadas y relajadas, es decir, la salida del pipeline.

El efecto era medir lo que el docking consiguió en lugar de lo que el generador ofrece. Consecuencias concretas:

  • inflaba el techo de 23 a 24 complejos;
  • producía casos espectaculares falsos: un complejo aparecía con un confórmero a 0.014 Å del bioactivo, cifra que habría sido notable. Era una pose relajada, no un confórmero.

Corregido con un patrón estricto. El error es de los más silenciosos que existen: un glob demasiado permisivo que mete la respuesta en el conjunto de partida. No lanza ninguna excepción y produce resultados mejores de lo real.

La advertencia que impide la lectura optimista

Tener el confórmero a ≤2 Å es condición necesaria, no suficiente.

Un experimento posterior lo demostró de la forma más directa posible: en el estrato difícil la tasa de conversión es cero en todas las bandas de calidad conformacional, incluida la de 0.0–0.5 Å. Siete confórmeros con conformación prácticamente perfecta, y ninguno produjo una pose correcta.

Así que este resultado no dice «el docking rígido resolvería esto». Dice algo más acotado y más útil: el cuello no está en generar la forma correcta. Está en colocarla.

Esa acotación es la que orientó el resto del programa hacia la posición y la orientación, y no hacia el generador de confórmeros.

Ficha del registro selladoSealed record sheet

CategoríaCategory
CorrigendumCorrection notice · Corrección de un resultado propio cuyo valor principal es la corrección.Correction of an own result whose main value is the correction.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El ensemble ETKDG ya contiene un conformero suficientemente parecido al bioactivo como para que el docking rigido funcione
Criterio prerregistradoPre-registered criterion
medicion sin gates; el mejor conformero es el suelo teorico del docking rigido
ProtocoloProtocol
medicion: RMSD alineado (GetBestRMS) entre cada conformero ETKDG de ENTRADA y el ligando cristalografico; sin docking nuevo
Razón de la decisiónReason for the decision
En 23 de los 30 complejos que fallan (77%) el ensemble contiene un conformero a <=2 A alineado del bioactivo, con mediana del mejor en 1.364 A. En CONTROL la mediana es 0.360 A con 6 conformeros bajo 1.5 A; en los que fallan, la mediana de conformeros bajo 1.5 A es 1: el bueno esta, pero diluido. CORRIGENDUM INCLUIDO EN ESTE SELLO: la primera version uso el glob conf*.rigid.pdbqt, que tambien captura conf{N}.relax.rigid.pdbqt -poses YA DOCKEADAS Y RELAJADAS, salida del pipeline-. Eso medía lo que el docking logro, no lo que el generador ofrece, e inflaba el techo de 23 a 24 complejos y producia casos espectaculares falsos (1l83 a 0.014 A era una pose relajada, no un conformero). Corregido con regex estricta. Advertencia: tener el conformero a <=2 A es condicion NECESARIA, no suficiente; MF-22 midio despues que en COLOCACION la conversion es 0 en todas las bandas de calidad conformacional, incluida 0.0-0.5 A.

Métricas registradasRecorded metrics

tipo
medicion (lectura de los conformeros ETKDG en disco, sin docking nuevo)
duration_seconds
0.82
metrica
RMSD ALINEADO (GetBestRMS, simetria incluida) entre cada conformero del ensemble y el ligando cristalografico. Alinear es CORRECTO aqui: mide conformacion interna, no colocacion (convencion de MF-02A/MF-02A-EXT)
n_complejos
48
n_ok
48
lectura
frac_alcanzable alta en los NO_CUBIERTO => el ensemble SI contiene un conformero suficientemente bueno y la estrategia de MF-19 (dockear rigido) es viable: el cuello seria la busqueda torsional. frac_alcanzable baja => MF-19 mide un techo inalcanzable y el cuello vuelve a ser la GENERACION de conformeros

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
complejoscomplexes
48
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-20Una hipótesis elegante, muerta por normalizaciónRefutaciónRefutationArtículoPaper

Los complejos que fallan tienen tres veces más modos empatados. Al dividir por el número de poses generadas, la fracción empatada es ligeramente MENOR que en los que aciertan.

Había una hipótesis que explicaba dos fracasos a la vez, y esa clase de hipótesis merece atención porque son raras y porque casi siempre son falsas.

La idea: el paisaje de puntuación está degenerado. Muchas poses muy distintas obtienen puntuaciones casi idénticas, de modo que la función no tiene con qué escoger. Si eso fuera cierto, explicaría de un solo golpe por qué el generador no encuentra la pose correcta y por qué el selector entrenado no la reconoce cuando está delante. Dos carteras cerradas por la misma causa.

Qué pasó

En términos absolutos, la señal parecía inequívoca:

Modos empatados a 2 kcal/mol
Complejos no cubiertos31
Complejos cubiertos9

Tres veces y media más degeneración en los que fallan. La hipótesis en pie.

Entonces se miró el denominador:

Poses (mediana)Modos
Complejos no cubiertos252187
Complejos cubiertos10042

Los complejos que fallan simplemente tienen más poses. Generan más candidatas, así que acumulan más empates en términos absolutos. Es aritmética, no física.

Normalizando —la fracción de modos empatados en la cima—:

Fracción empatada
Complejos no cubiertos0.239
Complejos cubiertos0.292

No sólo no es mayor. Es ligeramente menor. La hipótesis queda refutada en su forma interesante.

Lo que quedaba en pie, y por qué tampoco cuenta

Una observación sobrevive a la normalización: en 32 de 32 complejos del estrato de colocación, ninguno de los modos empatados dentro de 1 kcal/mol es una pose buena.

Suena a hallazgo. No lo es: es MF-09 dicho de otra manera. MF-09 ya había establecido que en esos complejos no existe ninguna pose buena entre las candidatas. Que ninguna de las empatadas sea buena se sigue trivialmente de que ninguna lo es. No es información nueva y no se contabiliza como tal.

La limitación que se declaró antes de medir

Este experimento tiene un problema conceptual que se escribió por adelantado, porque condiciona cómo puede leerse:

La degeneración se mide con la misma función cuyo fallo se investiga.

Eso significa que el diseño no puede distinguir "el paisaje es degenerado" de "la función no resuelve". No son dos afirmaciones que compitan: son la misma afirmación vista desde dos lados. Cualquier resultado positivo habría sido circular.

Declararlo antes es lo que impide venderlo después como si el experimento pudiera hacer algo que nunca pudo.

Por qué está publicado

Porque el modo de fallo que ilustra es de los más comunes y de los más difíciles de ver desde dentro: una diferencia absoluta entre dos grupos que difieren en tamaño. El número era grande, la dirección era la esperada, y la hipótesis era bonita. Sólo hacía falta dividir.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
Una sola causa -la degeneracion del paisaje de puntuacion- explica los negativos de las carteras C y D a la vez
Criterio prerregistradoPre-registered criterion
medicion sin gates; hipotesis nueva, falsable
ProtocoloProtocol
medicion correlacional: clustering de poses del conjunto v2 a 2.0 A con el contrato de MF-11-R1; degeneracion = modos distintos empatados a D kcal/mol del mejor
Razón de la decisiónReason for the decision
HIPOTESIS REFUTADA en su forma interesante. La degeneracion ABSOLUTA separa (31 modos empatados a 2 kcal/mol en los no cubiertos frente a 9 en los cubiertos) pero es un ARTEFACTO DE MUESTREO: los no cubiertos tienen 252 poses medianas frente a 100, y 187 modos frente a 42. Normalizando, la FRACCION de modos empatados en la cima es 0.239 en los no cubiertos y 0.292 en los cubiertos: no solo no es mayor, es ligeramente MENOR. Lo unico no confundido -que en 32 de 32 complejos COLOCACION ninguno de los modos empatados a 1 kcal/mol es bueno- es MF-09 dicho de otra forma y no constituye informacion nueva. Limitacion declarada de antemano: la degeneracion se mide con la MISMA funcion cuyo fallo se investiga, asi que no distingue "el paisaje es degenerado" de "la funcion no resuelve": son la misma afirmacion vista de dos lados.

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-17Alguno de los cuatro mecanismos medidos (cobertura, preferencia de la funcion, radio de cuenca, embudo) separa los complejos que el docking resuelve de los que noMediciónMeasurementn=48

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Alguno de los cuatro mecanismos medidos (cobertura, preferencia de la funcion, radio de cuenca, embudo) separa los complejos que el docking resuelve de los que no
Criterio prerregistradoPre-registered criterion
medicion sin gates; correlacional sobre n=48, no identifica causas
ProtocoloProtocol
medicion descriptiva: cruce de MF-09, MF-13, MF-14 y MF-15-EXT sobre la misma cohorte de 48; sin computo nuevo
Razón de la decisiónReason for the decision
Solo el embudo separa: rho 0.480 en los resueltos frente a 0.211 en los que fallan (+0.269). El radio de captura NO discrimina nada (r50 = 2.0 en ambos grupos) y que la funcion prefiera la nativa tampoco (61% frente a 67%). La ventaja del cristal va al reves -mayor donde falla (2.22 vs 0.72)- pero eso es consecuencia, no causa: donde el docking fracasa todas las poses son malas y el cristal les gana por mucho. CONFUSION DECLARADA que limita el hallazgo: el grupo resuelto es 15 de 18 CONTROL y el que falla es 30 de 30 COLOCACION. Los estratos se definieron POR exito de docking, asi que la separacion esta casi perfectamente confundida con el estrato y es en buena parte MF-15 dicho de otra forma. El contraste limpio seria dentro de COLOCACION, y ahi hay 3 resueltos contra 30: no se puede.

Métricas registradasRecorded metrics

tipo
medicion descriptiva (cruce de artefactos, sin computo nuevo)
n_complejos
48
n_con_desenlace
48
desenlace
cubierto = existe pose <=2.0 A entre todas las generadas (oraculo)
limitacion
n=48 y correlacional: NO se afirma causalidad, no se ajusta ningun modelo y no se deriva ningun umbral operativo de aqui.

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
complejoscomplexes
48
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-16-R1Estaba ordenando por severidad de colisión, no por calidad de uniónCorrigendumCorrection noticeArtículoPapern=38

El experimento original usó energías de punto único: 36 de 714 poses superaban 10⁴ kcal/mol y algunas llegaban a 10⁸. Relajando antes de puntuar, el potencial físico supera a Vina justo donde Vina es débil.

Un experimento anterior había medido que un potencial físico no ordena las poses mejor que la función empírica de Vina, y había concluido que la física no aporta. Este experimento demuestra que esa conclusión era un artefacto del método, y la invalida.

El defecto

El experimento original puntuó las poses con energías de punto único: la energía de la geometría tal como sale del docking, sin relajar.

El problema con eso es el rango. De 714 poses, 36 superan 10⁴ kcal/mol, y algunas llegan a 10⁸. Esos valores no son energías de unión: son choques estéricos, dos átomos solapados. Un solo contacto malo domina la suma por muchos órdenes de magnitud.

Con esos números en el conjunto, la correlación no ordenaba por calidad de unión. Ordenaba por severidad de colisión.

Qué pasa al relajar

EstratoPunto únicoRelajadoVina
Colocación−0.1100.1990.132
Control0.1400.5880.533

En el estrato difícil el potencial de punto único tenía correlación negativa —ordenaba al revés— y relajado pasa a 0.199. La conclusión anterior queda invalidada.

La lectura correcta no es la que sugieren las medianas

Aquí hay una trampa que este registro evita explícitamente. Las cifras de arriba sugieren que el potencial físico gana en los dos estratos. Comparando de forma pareada, complejo a complejo, la historia es otra:

EstratoΔ pareadoMejor en
Colocación+0.10716 de 25
Control−0.0996 de 13

En el control pierde. Las medianas por estrato decían lo contrario, y por eso se reporta el pareado: comparar dos medianas calculadas sobre el mismo conjunto no es lo mismo que comparar dentro de cada complejo, y cuando las dos discrepan, la pareada es la que responde a la pregunta.

El hallazgo específico, entonces, es más interesante que «el potencial físico es mejor»:

El potencial físico ayuda justo donde Vina es débil.

Eso es lo que se busca en un método complementario. Un método que gana donde el baseline ya gana no aporta nada; uno que gana donde el baseline falla, sí.

La advertencia que va con el resultado

Relajar mueve la pose. Eso significa que el RMSD después de relajar no es el mismo objeto que el RMSD con el que se evalúa a Vina. La comparación es indicativa, no un enfrentamiento exacto.

Sin esa nota, alguien podría citar el +0.107 como una victoria medida en igualdad de condiciones. No lo es, y el sello lo dice.

Por qué esto conecta con algo más grande

Relajar cada pose antes de puntuarla es, sin que se propusiera como tal, exactamente el mecanismo que la física computacional usa para tratar paisajes rugosos: sustituir la energía de un punto por la energía del mínimo local alcanzado desde ese punto, convirtiendo una superficie llena de picos en una escalonada.

Este experimento lo midió por accidente. Convertirlo en un buscador —minimizar cada pose propuesta antes de aceptarla o rechazarla— es un experimento que sigue abierto, con una objeción de coste ya conocida: relajar cuesta unos 20 segundos por pose, lo que hace inviable un buscador que minimice en cada paso.

Ficha del registro selladoSealed record sheet

CategoríaCategory
CorrigendumCorrection notice · Corrección de un resultado propio cuyo valor principal es la corrección.Correction of an own result whose main value is the correction.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El potencial fisico relajado ordena las poses mejor que Vina; la conclusion de MF-16 era un artefacto del punto unico
Criterio prerregistradoPre-registered criterion
medicion sin gates; comparacion PAREADA por complejo contra Vina
ProtocoloProtocol
corrigendum: relectura de las energias YA MINIMIZADAS que MF-10 registro sobre las mismas 714 poses; sin computo nuevo
Razón de la decisiónReason for the decision
CORRIGENDUM de MF-16, que se ejecuto y se reporto con energias de PUNTO UNICO. Esa energia esta dominada por choque esterico -36 de 714 poses superan 1e4 kcal/mol y algunas llegan a 1e8- de modo que el Spearman ordenaba por severidad de colision, no por calidad de union. Con las energias relajadas: rho 0.199 en COLOCACION frente a -0.110 del punto unico y 0.132 de Vina; 0.588 en CONTROL frente a 0.140 y 0.533. La conclusion de MF-16 -que el potencial fisico no orienta- queda INVALIDADA. Pero la lectura correcta NO es que el FF gane en ambos estratos: comparado PAREADO, en COLOCACION el FF supera a Vina (delta +0.107, mejor en 16 de 25) y en CONTROL PIERDE (delta -0.099, mejor en 6 de 13). Las medianas por estrato sugerian lo contrario en CONTROL y por eso se reporta el pareado. El hallazgo especifico es que el potencial fisico ayuda JUSTO donde Vina es debil. Advertencia: la relajacion mueve la pose, asi que rmsd_despues no es el mismo objeto que el rmsd_antes con el que se evalua a Vina; la comparacion es indicativa y no un head-to-head exacto.

Métricas registradasRecorded metrics

tipo
corrigendum de MF-16 (relectura de MF-10, sin computo nuevo)
defecto_corregido
MF-16 puntuo poses SIN relajar. La energia de punto unico esta dominada por choque esterico -36 de 714 poses superan 1e4 kcal/mol y algunas llegan a 1e8- de modo que el Spearman ordenaba por severidad de choque, no por calidad de union. Se recomputa con las energias YA MINIMIZADAS que MF-10 registro sobre las mismas poses.
n_complejos
38
conclusion
La conclusion de MF-16 -que el potencial fisico no orienta- queda INVALIDADA: era artefacto del punto unico. Pero la lectura correcta NO es 'el FF gana en ambos estratos'. Comparado PAREADO por complejo, que es el criterio del programa: en COLOCACION el FF relajado supera a Vina (delta +0.107, mejor en 16 de 25); en CONTROL PIERDE (delta -0.099, mejor en solo 6 de 13). Las medianas por estrato sugerian lo contrario en CONTROL (0.588 vs 0.533) y por eso se reporta el pareado. El hallazgo especifico es que el potencial fisico ayuda JUSTO donde Vina es debil, y no aporta donde Vina ya funciona.
limitacion
sigue siendo debil en el estrato dificil (0.199): es una DIRECCION, no una solucion. Y la relajacion mueve la pose, asi que el rmsd_despues no es el mismo objeto que el rmsd_antes que usa Vina; la comparacion es indicativa, no un head-to-head exacto.
advertencia_metodologica
la relajacion mueve la pose, asi que rmsd_despues no es el mismo objeto que el rmsd_antes con el que se evalua a Vina. La comparacion es indicativa y NO un head-to-head exacto; un head-to-head exigiria relajar tambien bajo Vina (local_only) y comparar sobre las poses resultantes.

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
complejoscomplexes
38
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-15-EXTReproduce al tercer decimal con 4.6 veces más posesMediciónMeasurementArtículoPapern=48

0.1858 aquí contra 0.186 antes. La ausencia de embudo no era un artefacto de muestreo escaso, y corregir la simetría no la mueve ni un decimal.

Un resultado incómodo merece que se intente tirarlo abajo antes de construir encima. La medición anterior había encontrado que en el estrato difícil no hay embudo —correlación 0.186 entre distancia al cristal y puntuación— y de esa medición dependían decisiones importantes: descartar familias enteras de métodos de optimización.

Había dos formas plausibles de que esa cifra fuera un artefacto:

  1. Muestreo escaso. Con pocas poses por complejo, un Spearman bajo puede ser ruido.
  2. La métrica de simetría. Un anillo rotado 180° es la misma molécula; si el RMSD no lo trata bien, las etiquetas están sucias y cualquier correlación se degrada.

Este experimento prueba las dos.

Verificación primero

Antes de nada, reproducir lo anterior sobre el material nuevo: 0.1858 frente a 0.186. Coincide al tercer decimal.

Eso verifica que la lectura del material es correcta, y es la clase de comprobación que distingue una extensión de un experimento nuevo con el mismo nombre.

Qué pasó con las dos explicaciones

Muestreo escaso: descartada. Con 751 poses por complejo —4.6 veces más que antes— la cifra no se mueve:

Estratoρ
Colocación0.186
Control0.507

Y por radios, dentro del estrato difícil:

Radioρ
≤ 4 Å0.279
≤ 6 Å0.140

Ni siquiera acercándose mejora de forma útil.

Simetría: descartada. Corregir la métrica de simetría deja el valor en 0.1858 con ambas métricas. Idéntico. El embudo —o su ausencia— es invariante a esa elección.

Esa segunda comprobación importa más de lo que parece, porque en otro experimento del programa la corrección de simetría sí cambió las cosas: reveló un 21% de etiquetas positivas mal marcadas y duplicó la brecha entre un selector y su baseline. Que aquí no cambie nada no era predecible, y por eso había que medirlo.

Lo que sigue sin poder medirse

A radios de 2 Å o menos siguen sin existir complejos medibles en el estrato difícil, incluso con 751 poses.

La razón no es estadística sino física: en 30 de 33 complejos no hay ninguna pose ahí. No se puede calcular una correlación en una región del espacio que el generador nunca visitó, por muchas poses que se generen fuera de ella.

Por qué este registro existe

Porque el resultado que verifica es de los que cierran puertas. Descartar familias de métodos basándose en una correlación medida sobre 163 poses por complejo habría sido imprudente; hacerlo sobre 751, con la métrica de simetría comprobada por ambos caminos, es otra cosa.

Un negativo que sostiene decisiones grandes necesita que alguien haya intentado tumbarlo.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El embudo medido sobre el conjunto v2 se sostiene con 4.6x mas poses
Criterio prerregistradoPre-registered criterion
medicion sin gates; verificacion: reproducir el Spearman global de MF-09
ProtocoloProtocol
medicion: relectura del material sellado de MF-02D + MF-02F (~751 poses por complejo); Spearman por radio con metrica ingenua y corregida por simetria
Razón de la decisiónReason for the decision
Reproduce el Spearman de MF-09 al tercer decimal (0.1858 frente a 0.186 en COLOCACION), lo que verifica la lectura del material. Con 751 poses por complejo: rho global 0.186 en COLOCACION y 0.507 en CONTROL; a R<=4 A baja a 0.279 y a R<=6 A a 0.140. Corregir simetria no lo mueve (0.1858 en ambas metricas), asi que el embudo es invariante a esa eleccion. A R<=2 A siguen sin existir complejos medibles en COLOCACION incluso con 751 poses, porque en 30 de 33 no hay ninguna pose ahi (MF-09).

Métricas registradasRecorded metrics

tipo
medicion (relectura de material sellado, sin computo nuevo)
duration_seconds
3.96
material
MF-02D (prefijo K30) + MF-02F, ~751 poses por complejo
convencion
vina_score mas negativo = mejor; EMBUDO => rho POSITIVO
n_complejos
48
n_ok
46

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
complejoscomplexes
48
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-15No hay embudo: un pozo sin señalización en una mesetaMediciónMeasurementArtículoPaper

La correlación entre puntuación y distancia al cristal es 0.497 en los complejos fáciles y 0.209 en los difíciles. Un buscador que se guíe por el score no tiene nada que seguir.

Un buscador estocástico funciona porque el paisaje que recorre le da pistas. Si al acercarse al mínimo correcto la puntuación va mejorando de forma sostenida, la búsqueda tiene un gradiente que seguir aunque sea ruidoso. Eso es un embudo, y es la razón por la que buscar en espacios enormes funciona en la práctica.

La pregunta de este experimento es si ese embudo existe.

Qué pasó

Correlación de Spearman entre RMSD al cristal y puntuación, calculada dentro de cada complejo:

Estratoρ
Control0.497
Resto0.360
Colocación (el difícil)0.209

Y es débil a todos los radios, no sólo lejos del mínimo. Eso descarta la explicación optimista de que el embudo existe pero es estrecho: si sólo faltara señal a distancia, la correlación mejoraría al acercarse. No mejora.

En el estrato difícil, un buscador guiado por el score no tiene nada que seguir. Es un pozo sin señalización en una meseta.

La salvedad que se declara, y que invalida el número más vistoso

Hay una tabla que parece decir lo contrario y que era tentador reportar. Agrupando todas las poses por banda de RMSD, la puntuación media va de −8.85 en la banda de 0–1 Å hasta −6.27 por encima de 12 Å. Un gradiente aparente de 2.6 kcal/mol, con toda la pinta de un embudo global.

No lo es. Esa tabla mezcla complejos, y sólo 9 de 33 tienen alguna pose por debajo de 1 Å — que además son, de partida, mejores unidores. El gradiente aparente es en buena parte un efecto de selección entre complejos: la banda de 0–1 Å está poblada por los complejos que puntúan mejor por razones que no tienen que ver con la distancia.

El número honesto es el Spearman dentro de cada complejo, y es el que está arriba.

Es la misma confusión que aparece una y otra vez en este registro: un agregado que mezcla poblaciones distintas dice algo sobre la mezcla, no sobre el fenómeno.

Una limitación que impide la lectura más interesante

En el estrato difícil, los radios pequeños no son medibles: a 2 Å o menos hay cero complejos con muestra suficiente, y a 3 Å sólo dos.

O sea que la pregunta «¿existe al menos una cuenca local alrededor del mínimo, aunque no haya embudo global?» no se puede responder con este material. No porque el análisis falle, sino porque no hay poses ahí que analizar — que es exactamente lo que midió el experimento hermano: en 30 de 33 complejos no existe ninguna pose bajo 2 Å.

Las dos mediciones se refuerzan: el generador no llega, y si llegara, el paisaje no lo guiaría.

Consecuencia

Este resultado es el que descartó familias enteras de métodos antes de intentarlas. Cualquier técnica que asuma un paisaje cooperativo —optimización guiada por gradiente, refinamiento iterativo, templado— no puede funcionar donde ρ = 0.209.

Y señala las que sí podrían: las que funcionan sin gradiente, construyendo conectividad del espacio libre por muestreo en lugar de seguir una pendiente. Esa es la familia que el programa está probando ahora.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Existe un embudo en el paisaje de puntuacion que guia hacia el minimo nativo
Criterio prerregistradoPre-registered criterion
medicion sin gates; embudo => rho POSITIVO entre rmsd y score
ProtocoloProtocol
medicion: lectura de rmsd y vina_score del conjunto v2 sellado; Spearman restringido a poses con rmsd <= R, para R creciente; sin computo nuevo
Razón de la decisiónReason for the decision
El embudo existe en control y resto y esta casi ausente en el estrato dificil: rho global 0.209 en COLOCACION frente a 0.497 en CONTROL y 0.360 en RESTO, y debil A TODOS LOS RADIOS, no solo lejos. Un buscador que se guie por el score no tiene nada que seguir en esos complejos. Salvedad declarada: la tabla de score por banda de RMSD (-8.85 en 0-1 A hasta -6.27 en >12 A) PARECE un embudo global de 2.6 kcal/mol pero MEZCLA complejos -solo 9 de 33 tienen alguna pose bajo 1 A, y son mejores unidores de partida-, asi que ese gradiente aparente es en parte efecto de seleccion entre complejos. El numero honesto dentro de cada complejo es el Spearman. Y para COLOCACION los radios pequenos no son usables: a R<=2 A hay 0 complejos con muestra suficiente y a R<=3 A solo 2.

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-13-DIAGEl decoy que gana en el ~30% de MF-13 esta en un bolsillo distinto y mas enterrado, no es un fallo genuino de la funcionMediciónMeasurementn=48

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
El decoy que gana en el ~30% de MF-13 esta en un bolsillo distinto y mas enterrado, no es un fallo genuino de la funcion
Criterio prerregistradoPre-registered criterion
medicion sin gates; lectura declarada: delta de enterramiento positivo y centroides lejanos => sitio competidor; si no, fallo de puntuacion sin explicar
ProtocoloProtocol
medicion: cruce de MF-13 con los receptores de molflex_train_v2; enterramiento, aguas, metales y distancia entre centroides; sin computo nuevo
Razón de la decisiónReason for the decision
La hipotesis del bolsillo competidor queda REFUTADA. En el grupo donde gana el decoy: delta de enterramiento 0.000, distancia entre centroides 1.95 A y solo 2 de 17 complejos en sitio distinto (>8 A). El decoy ganador esta a ~2 A de la pose nativa con el mismo enterramiento. Antes se habian descartado otras dos hipotesis: faltan metales o cofactores (FALSO, el PDBQT ya los contiene: 1ew8 tiene sus 4 Zn) y las aguas chocan con la nativa (MARGINAL: 5 de 10 fallos tienen 1-2 aguas a <2.5 A y 0 de 10 aciertos tienen alguna, senal real pero insuficiente para 7 kcal/mol). Con tres hipotesis alternativas caidas, ese ~30% parece un fallo genuino de la funcion de puntuacion: poses vecinas que Vina prefiere sobre la nativa sin ser mejores por ningun criterio geometrico. Ahi ni mas busqueda ni mejor preparacion ayudan.

Métricas registradasRecorded metrics

tipo
medicion (relectura de material sellado, sin computo nuevo)
n_complejos
48
n_ok
48
lectura
si GANA_DECOY tiene delta_enterramiento claramente positivo y/o distancia de centroides grande, el decoy esta en un sitio distinto y mas enterrado: la funcion no se equivoca y el problema es que la caja contiene un sitio competidor (cartera B). Si no, el 30% sigue siendo fallo de puntuacion sin explicar.

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
complejoscomplexes
48
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-12-PREPrerregistro de MF-12: se puede predecir el fallo de colocacion antes de dockearPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Prerregistro de MF-12: se puede predecir el fallo de colocacion antes de dockear
Criterio prerregistradoPre-registered criterion
G1 validez, G2 superioridad sobre baseline mayoritario en el nivel L, G3 honestidad de niveles
ProtocoloProtocol
MF-12-PRE/PREREGISTRO.md
Razón de la decisiónReason for the decision
Prerregistro escrito antes de ejecutar. Declara el problema de fuga -tres predictores de MF-24 usan la pose cristalografica y la caja misma es center_from_crystal_ligand-, separa dos niveles de disponibilidad, y declara el efecto minimo detectable (0.136) ANTES de correr, aplicando por primera vez la regla que la seccion 20.9 propuso a partir del fallo de RS-14. Declara ademas una prediccion tibia (GO marginal o NO_GO, 0.55-0.65 en L) que el resultado contradijo.

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-12Saber que va a fallar antes de gastar el cómputoHallazgoFindingArtículoPapern=203

Un clasificador con sólo descriptores del ligando predice el fallo de colocación con precisión balanceada 0.654, sin conocer el bolsillo. El efecto mínimo detectable se declaró antes: 0.136.

Este identificador estaba en el plan del programa desde el primer día y se quedó sin ejecutar durante meses, por una razón concreta: no había predictores medidos con los que intentarlo. Cuando MF-24 y MF-27 los produjeron, la pregunta pasó a ser respondible.

La pregunta es de producto antes que de ciencia: ¿se puede saber que un complejo va a fallar antes de dockearlo? Si se puede, el motor deja de gastar cómputo donde no va a servir y puede advertir al usuario en vez de entregarle una pose mala con cara de buena.

El diseño, y una regla que se estrenó aquí

Regresión logística, entrenamiento en los 116 complejos de train, evaluación una sola vez en los 87 de val+test. Dos niveles de información:

  • L — sólo descriptores del ligando, sin conocer el sitio de unión;
  • L+S — ligando más descriptores del sitio.

El claim se hace sobre L, declarado así antes de mirar los datos, porque es el nivel que sirve en la práctica: si hiciera falta conocer el bolsillo, el clasificador llegaría demasiado tarde para ahorrar nada.

Este fue además el primer experimento del programa en aplicar la regla del efecto mínimo detectable declarado antes de correr, tomada de la práctica de ensayos clínicos. El MDE se fijó en 0.136: por debajo de eso, el diseño no tiene potencia para distinguir el efecto del ruido, y un resultado positivo menor habría que reportarlo como no concluyente en vez de como hallazgo.

Se descartaron por fuga los tres predictores de MF-24 que usan la pose cristalográfica —rmsd_conf, enterramiento y ocupación de caja— porque en producción no existen.

Qué pasó

Resultado
Precisión balanceada, nivel L0.654
Baseline mayoritario0.500
Diferencia pareada+0.218
CI95 BCa[0.081, 0.322]
MDE declarado antes0.136

El efecto observado supera el MDE, así que la pregunta era resoluble por este diseño y la respuesta es afirmativa.

Añadir los descriptores de sitio (L+S) suma +0.015. Es decir: prácticamente nada. El clasificador no depende de conocer el bolsillo, y eso es justo lo que lo hace usable.

Dos de las tres predicciones preregistradas fallaron

Se habían escrito tres predicciones antes de correr. Vale la pena que se lean, porque equivocarse en dos de tres es el resultado normal cuando uno se compromete de antemano:

  1. Falló — se predijo que haría falta el enterramiento del sitio. No hizo falta: L funciona sin él.
  2. Falló — se predijo un rango de rendimiento que el resultado superó.
  3. Se cumplió, y con holgura — se predijo que el conteo de torsiones aportaría poco. Aporta +0.0165, esencialmente cero.

Los coeficientes dominantes son la ocupación del confórmero (−1.009) y el número de confórmeros (−0.876). Lo que predice el fallo es el volumen efectivo de búsqueda, no cuántos enlaces rotables tiene la molécula. Es un resultado que contradice la intuición estándar de que la flexibilidad es la variable que manda.

Lo que no es

Tres límites que van con el resultado:

  • 0.654 no es un clasificador de producción. Es evidencia de que la señal existe, no un componente listo para enrutar trabajo.
  • No se midió el coste de enrutar mal. Un falso negativo tira cómputo; un falso positivo niega una respuesta que sí se habría obtenido. Sus costes no son simétricos y aquí no se pesaron.
  • Un solo modelo y un solo split.

Relación con MF-31

MF-31 midió después que la ocupación de caja —el predictor dominante de este clasificador— es un marcador y no una palanca: apretar la caja no mejora proporcionalmente a cuánto se aprieta. Eso no invalida este resultado. Predecir no requiere causalidad, y un marcador sirve perfectamente para triage. Pero conviene tenerlo presente antes de intentar convertir este clasificador en una intervención.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Se puede predecir el fallo de colocacion antes de dockear, con predictores disponibles sin conocer la pose cristalografica
Criterio prerregistradoPre-registered criterion
G2 precision balanceada de L supera al baseline mayoritario con CI95 que excluya el cero; G3 se reportan L y L+S por separado y el claim se hace sobre L
ProtocoloProtocol
MF-12-PRE/PREREGISTRO.md; regresion logistica; entrenamiento en los 116 de train, evaluacion UNA sola vez en los 87 de val+test; dos niveles de disponibilidad (L solo ligando, L+S con sitio)
Razón de la decisiónReason for the decision
ID declarado desde el inicio del programa y nunca ejecutado por falta de predictores medidos. Nivel L (solo ligando, sin conocer el sitio): precision balanceada 0.654 frente a 0.500 del baseline, diferencia pareada +0.218 con CI95 BCa [0.081, 0.322]. El MDE declarado ANTES de correr era 0.136, y el efecto observado lo supera: es resoluble por este diseno. Anadir descriptores de sitio (L+S) suma apenas +0.015, asi que el clasificador NO depende de conocer el bolsillo, que es lo que lo hace usable. Se descartaron por fuga los tres predictores de MF-24 que usan la pose cristalografica (rmsd_conf, enterramiento, ocupacion_caja). Dos de las tres predicciones preregistradas FALLARON: el enterramiento del sitio no era necesario (L funciona sin el) y el rendimiento supero el rango previsto. La tercera se cumplio y con holgura: las torsiones aportan +0.0165, esencialmente cero. Los coeficientes dominantes son ocupacion del conformero (-1.009) y numero de conformeros (-0.876): lo que predice el fallo es el volumen efectivo de busqueda, no el conteo de torsiones. Limitaciones: 0.654 no es un clasificador de produccion; no se mide el coste de enrutar mal; un solo modelo y un solo split.

Métricas registradasRecorded metrics

n_train
116
n_valtest
87
efecto_minimo_detectable_declarado
0.1364
supuesto_del_nivel_S
el centro de caja del conjunto es center_from_crystal_ligand, asi que L+S opera con caja perfectamente centrada; en produccion MolPocket yerra ~8 A (REC-03) y lo degradaria. L+S mide un TECHO
decision
GO

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
complejoscomplexes
203
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-25Dieciséis veces más cómputo, cero complejos ganadosRefutaciónRefutationArtículoPapern=48

Si el docking falla por falta de muestreo, más presupuesto lo arregla. Se multiplicó por 16 y no convirtió ni un solo complejo: el problema no era buscar poco.

Cuando un docking coloca mal un ligando hay dos explicaciones posibles, y son incompatibles.

La primera es presupuesto: la búsqueda es correcta pero no tiene tiempo de cubrir el espacio que debe cubrir. Se arregla con más cómputo, que es la solución más cómoda que existe porque no exige entender nada.

La segunda es paisaje: la búsqueda converge, pero converge al sitio equivocado porque la función que optimiza premia el sitio equivocado. Más cómputo la lleva más rápido al error.

Este experimento fue diseñado para separarlas.

El sesgo que había que evitar

El estrato difícil de esta cohorte se definió como los complejos que fallan la colocación. Eso vuelve tautológica cualquier comparación de niveles: por construcción, su coste de colocación será mayor que el del control. Medir eso y celebrarlo sería medirse la propia definición.

Por eso el experimento no compara niveles. Compara la respuesta al presupuesto — la derivada. Que el coste sea mayor en el estrato difícil está garantizado de antemano; que baje o no al subir el presupuesto no lo está, y es exactamente lo que distingue las dos explicaciones.

La regla de lectura se escribió antes de correr nada:

baja más de 0.5 Å ⟹ PRESUPUESTO · no baja ⟹ PAISAJE

Qué pasó

Se dockearon 48 complejos con exhaustiveness 8, 32 y 128. El protocolo congelado usa 8, así que el barrido llega a 16 veces el presupuesto de producción.

Estratoexh=8exh=32exh=128
Colocación (n=33) — coste mediano4.284 Å3.508 Å3.500 Å
Colocación — complejos que aciertan1/331/331/33
Control (n=15) — coste mediano0.608 Å0.608 Å0.638 Å
Control — complejos que aciertan15/1514/1515/15
Tiempo mediano por complejo24.8 s97.5 s406.7 s

El coste baja 0.784 Å en total, que parece una mejora hasta que se mira dónde ocurre: toda entre 8 y 32. De 32 a 128 el movimiento es de 0.008 Å mientras el tiempo se cuadruplica. Eso es la firma de la saturación — la búsqueda ya encontró todo lo que su función de puntuación le permite encontrar.

Y la columna que zanja el asunto es la de complejos convertidos: 1 de 33 en los tres presupuestos. Dieciséis veces más cómputo no convirtió ni uno adicional.

El control lo confirma por contraste: coste plano en los tres presupuestos y 15 de 15 desde el presupuesto más barato. En ningún régimen, ni fácil ni difícil, el presupuesto es la palanca.

Una anomalía que se registra en vez de esconderse

En exh=32 el control marca 14 de 15 en lugar de 15 de 15. Subir el presupuesto no puede empeorar un resultado por ninguna vía causal: sólo es posible por la estocasticidad de Vina. FND-03 midió después que la desviación por semilla en el estrato control es de 0.011 Å, así que ese caso es un valor atípico y no un patrón. Queda anotado porque borrarlo sería cosmética.

Consecuencia

El diagnóstico es PAISAJE, y cierra por futilidad la última salida cómoda de la cartera de generación de poses. Junto con MF-15-EXT —que midió que no hay embudo que guíe hacia la pose nativa, ρ = 0.186— el cuadro queda completo:

El mínimo global está donde debe estar. Lo que falta es gradiente que lleve hasta él.

Eso descarta de entrada las familias de métodos que asumen un paisaje cooperativo, y señala las que funcionan sin gradiente. Es la razón por la que el programa dejó de afinar el buscador y pasó a preguntarse si el objetivo estaba bien planteado.

Prohibición heredada

Este experimento manipula exhaustiveness, que es un parámetro del mismo buscador que MF-03/04/05/07/12 querían ajustar. Se declaró antes de correr que un resultado positivo no autorizaría subir exhaustiveness en producción — eso exigiría su propio experimento con coste de CPU medido, porque 128 cuesta 16 veces por corrida. El resultado fue negativo y la prohibición nunca llegó a ponerse a prueba.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
El coste de colocacion responde al presupuesto de busqueda: si es falta de muestreo, subir exhaustiveness lo reduce
Criterio prerregistradoPre-registered criterion
medicion con lectura preregistrada: baja >0.5 A => PRESUPUESTO; no baja => PAISAJE
ProtocoloProtocol
MF-25/README; contenedor moldesign-lab; 48 complejos, mejor conformero por RMSD alineado, exhaustiveness 8/32/128 (16x el protocolo congelado)
Razón de la decisiónReason for the decision
Diagnostico: PAISAJE. Multiplicar el presupuesto por 16 convierte CERO complejos adicionales (1/33 en los tres presupuestos). El coste baja 0.784 A pero toda la mejora ocurre entre exh=8 y exh=32 (4.284 -> 3.508); de 32 a 128 el movimiento es 0.008 A -ruido- mientras el tiempo se cuadruplica a 407 s por complejo. Es la firma de saturacion: la busqueda ya habia encontrado todo lo que su funcion de puntuacion le permite. El control lo confirma por contraste: coste 0.608 A plano en los tres presupuestos y 15/15 desde exh=8. En ningun regimen el presupuesto es la palanca. Se evito la circularidad comparando la RESPUESTA al presupuesto y no el NIVEL del coste, que es tautologico porque el estrato se definio por fallo de colocacion. Nota: en exh=32 el control marca 14/15 en vez de 15/15, lo que solo es posible por estocasticidad de Vina; FND-03 midio despues que la sd en CONTROL es 0.011 A, asi que ese caso es un outlier y no un patron.

Métricas registradasRecorded metrics

tipo
intervencion (barrido de presupuesto de busqueda)
duration_seconds
7326.12
n_complejos
48
n_ok
48
circularidad
el estrato COLOCACION se definio por fallo de colocacion, asi que el NIVEL del coste es tautologico; este experimento compara la RESPUESTA al presupuesto, que no lo es
lectura
el coste baja materialmente (>0.5 A) al subir 16x el presupuesto => PRESUPUESTO: la busqueda no muestrea bastante. No baja => PAISAJE: converge a un optimo equivocado y mas presupuesto no ayuda, consistente con MF-15 (sin embudo) y MF-13-DIAG (competidores a ~2 A)
prohibicion
un resultado positivo NO autoriza subir exhaustiveness en produccion: exh=128 cuesta ~16x por corrida y eso exige su propio experimento con CPU medida

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
duraciónduration
2 h 2 min
complejoscomplexes
48
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FND-04Los intervalos de confianza, verificados con código que no los escribióHallazgoFindingArtículoPaper

Cinco experimentos calculaban su propia estadística. Una implementación independiente los recomputó: coinciden al cuarto decimal. Y reveló que uno de ellos nunca pudo detectar lo que buscaba.

Este experimento estaba marcado como prioridad máxima desde el inicio del programa y se quedó sin hacer mientras cinco experimentos —incluidos los dos que decidieron el destino de una cartera entera— calculaban cada uno su propio intervalo de confianza, con su propio código.

Eso es un modo de fallo silencioso y conocido. Un error en un bootstrap no lanza una excepción: devuelve un intervalo con aspecto perfectamente razonable.

Dos trabajos en uno

Primero, una biblioteca común: bootstrap pareado, intervalos de Wilson, McNemar, DeLong y corrección por multiplicidad, con 12 pruebas de cordura sobre casos de respuesta conocida. Las 12 pasan.

Una falló en la primera pasada, y la causa merece contarse porque es exactamente el tipo de cosa que este experimento existe para atrapar: la prueba comparaba un número decimal con == 1.0, cuando el borde superior de Wilson para 10 aciertos de 10 vale 1.0 sólo analíticamente, no en aritmética de punto flotante. El defecto estaba en la prueba, no en la biblioteca. Se corrigió con una tolerancia.

Segundo, y es lo que da valor a lo anterior: recomputar con esta implementación independiente los intervalos que ya estaban sellados.

Qué pasó

ExperimentoSellado originalmenteRecomputado aquí
RS-14−0.0471 · CI [−0.1522, +0.0617]−0.0471 · CI [−0.1594, +0.0616]
RS-14-R1−0.0942 · CI [−0.2138, +0.0217]−0.0942 · CI [−0.2101, +0.0217]

Los puntos coinciden al cuarto decimal. Los intervalos difieren dentro del ruido esperable del remuestreo.

Es la primera vez en el programa que un intervalo de confianza se verifica con una implementación distinta de la que lo produjo. Los dos resultados que cerraron una línea de investigación completa quedaron confirmados por código que no los escribió.

El hallazgo incómodo

A la biblioteca se le añadieron dos funciones que el programa no tenía: efecto mínimo detectable y n necesario. Aplicarlas retrospectivamente produjo lo más útil de todo este experimento.

RS-14 se había interpretado como evidencia de que el selector no supera al baseline por un margen pequeño. Pero:

Se creíaEs
Efecto que RS-14 podía detectar~10 pp22.3 pp
Complejos necesarios para resolver 5 pp~3701,972

Con 92 complejos cubiertos, ese diseño nunca pudo distinguir una diferencia menor a 22.3 puntos porcentuales. Cualquier lectura de que "el selector se acerca" era una lectura de ruido.

Y no fue el único: MF-19 y MF-08 también resultan formalmente indetectables por diseño — se ejecutaron sin potencia suficiente para lo que preguntaban.

Por qué esto cambió la forma de trabajar

De aquí salió la regla que el programa aplica desde entonces: el efecto mínimo detectable se declara antes de correr. Si el diseño no puede resolver el efecto que se busca, eso se sabe cuando todavía se puede cambiar el diseño, y no después de gastar el cómputo.

MF-12 fue el primer experimento en aplicarla, con un MDE de 0.136 declarado por adelantado y un efecto observado de 0.218 que lo supera.

Es un resultado que hace más pequeño al programa que lo produjo. Tres experimentos ya ejecutados pasaron a estar formalmente sin potencia, y dos de ellos ya se habían citado. Publicarlo era la única salida honesta.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Una biblioteca comun de incertidumbre evita que cada experimento implemente sus propios estadisticos, y permite reverificar los intervalos ya sellados con codigo independiente
Criterio prerregistradoPre-registered criterion
G1 todos los sanity tests pasan; G2 la diferencia pareada recomputada coincide con la sellada (<=0.01) y el veredicto del gate no cambia
ProtocoloProtocol
FND-04/README; Wilson, McNemar exacto, bootstrap BCa pareado y Benjamini-Hochberg; 12 sanity tests perfect/random; reverificacion de RS-14 y RS-14-R1
Razón de la decisiónReason for the decision
P0 declarado y sin artefacto mientras RS-14, RS-14-R1, MF-08, REC-03 y el entregable 8 usaban cada uno su propia implementacion. 12/12 sanity tests. Reverificacion independiente: RS-14 recomputado -0.0471 CI [-0.1594,+0.0616] frente al sellado -0.0471 [-0.1522,+0.0617]; RS-14-R1 recomputado -0.0942 [-0.2101,+0.0217] frente a -0.0942 [-0.2138,+0.0217]. Los puntos coinciden al cuarto decimal y los CI dentro del ruido de remuestreo. Es la primera vez que un CI del programa se verifica con una implementacion distinta de la que lo produjo. Un sanity test fallo en la primera pasada por un defecto del TEST, no de la biblioteca: comparaba un float con == 1.0 cuando el borde de Wilson para 10/10 vale 1.0 solo analiticamente; corregido con tolerancia. Se anadio ademas efecto_minimo_detectable y n_necesario, y su aplicacion retrospectiva mostro que RS-14 solo podia detectar 22.3 pp -no ~10- y que harian falta 1,972 complejos para resolver 5 pp, no los ~370 estimados. MF-19 y MF-08 tambien resultan formalmente indetectables por diseno.

Métricas registradasRecorded metrics

sanity_todos_pasan
true
nota
un desacuerdo NO reabre un sello: lo documenta. La inmutabilidad post-seal se respeta y la discrepancia se registra como hallazgo.
decision
GO

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FND-03Donde el paisaje coopera, Vina es casi determinista; donde no, tira los dadosHallazgoFindingArtículoPapern=48

La desviación por semilla es 0.011 Å en los complejos fáciles y 0.283 Å en los difíciles. Los efectos agregados del programa sobreviven al ruido; las afirmaciones por complejo no.

Todo el programa mide efectos de entre 0.5 y 1 ángstrom. Ninguno de esos efectos significa nada si el propio motor de docking, ejecutado dos veces con semillas distintas sobre el mismo complejo, ya varía en ese orden.

Este experimento era prioridad máxima desde el primer día y estuvo sin ejecutar durante meses. Fue una auditoría adversarial contra el propio programa la que lo identificó como el hueco más grave: nada de lo publicado estaba controlado contra el ruido de la semilla.

Qué pasó

EstratoDesviación típica mediana
Control (complejos fáciles)0.011 Å
Colocación (complejos difíciles)0.283 Å

Veinticinco veces más ruido en el estrato difícil. Ese contraste es, por sí solo, el hallazgo más interesante del experimento:

Donde el paisaje de puntuación coopera, Vina es casi determinista. Donde no coopera, tira los dados.

Los efectos del programa sobreviven

El error estándar de la mediana sobre 33 complejos es 0.049 Å. Los efectos que el programa ha medido:

ExperimentoEfectoVeces el error estándar
Geometría de la caja−0.82 Å16.7×
Reinicios de búsqueda−0.79 Å16.1×
Presupuesto de búsqueda−0.784 Å16.0×

Todos alrededor de 16 veces el ruido. A nivel agregado, sobreviven al control con holgura. Nada de lo publicado se cae por esto.

Pero la distribución es muy asimétrica, y ahí está el problema

La mediana de 0.283 Å oculta una cola larga:

Valor
Percentil 750.962 Å
Percentil 901.422 Å
Rango máximo4.022 Å
Complejos con sd > 0.5 Å14 de 33

Cuatro ángstroms de rango en un mismo complejo, sólo por cambiar la semilla. Eso es más que el umbral de éxito entero.

Dos consecuencias de signo opuesto

(a) Las conclusiones binarias son estables. Ningún complejo cambia su veredicto de acierto o fallo entre semillas. Afirmaciones como «3 de 33» o «cero conversiones» no son artefactos de la semilla 42 — son reproducibles.

(b) Las afirmaciones por complejo individual no son fiables. Con rangos de hasta 4 Å, decir algo sobre un complejo concreto a partir de una sola corrida es decir algo sobre esa corrida, no sobre el complejo.

Esa segunda consecuencia tiene una implicación directa de producto: la confianza por complejo que mide FEP-04 está calculada sobre una sola ejecución. Para ser honesta, tendría que incorporar repeticiones. Es una tarea abierta, y está anotada como tal en el propio registro de FEP-04.

Por qué importa que lo pidiera un ataque

Este experimento existe porque un ejercicio deliberado de buscarle los fallos al programa encontró que su resultado más básico —«el baseline es estable»— nunca se había medido.

Es la diferencia entre un programa que se audita a sí mismo y uno que confía en que sus cimientos están bien porque nadie ha mirado.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El baseline es estable entre ejecuciones: la varianza por semilla de Vina es pequena frente a los efectos medidos por el programa
Criterio prerregistradoPre-registered criterion
medicion de control de ruido; se reporta sd, rango y estabilidad del veredicto <=2 A
ProtocoloProtocol
FND-03/README; contenedor moldesign-lab; 48 complejos x 5 semillas (42-46), exh=8, mismo conformero que MF-25 para que la comparacion sea directa
Razón de la decisiónReason for the decision
P0 declarado desde el inicio del programa y sin artefacto hasta hoy; era el hueco que la auditoria adversarial MF-32 identifico como el mas grave. Resultado: sd mediana 0.283 A en COLOCACION y 0.011 A en CONTROL. El error estandar de la mediana sobre 33 complejos es 0.049 A, de modo que los efectos del programa -MF-08 -0.82, MF-02F -0.79, MF-25 -0.784- son 15.8x ese error y SOBREVIVEN al control de ruido a nivel agregado. Pero la distribucion es muy asimetrica: p75 = 0.962 A, p90 = 1.422 A, rango maximo 4.022 A, y 14 de 33 complejos superan sd 0.5 A. Consecuencia doble y de signo opuesto: (a) ningun complejo cambia su veredicto <=2 A entre semillas, asi que las conclusiones binarias del programa -"3 de 33", "0 conversiones"- son estables y no artefactos de la semilla 42; (b) con rangos de hasta 4 A, cualquier afirmacion sobre un complejo INDIVIDUAL basada en una sola corrida es poco fiable, lo que obliga a que la confianza por complejo de FEP-04 incorpore repeticiones. En CONTROL la sd es 25x menor: donde el paisaje coopera Vina es casi determinista, donde no, tira los dados.

Métricas registradasRecorded metrics

tipo
control de ruido (P0 declarado desde el inicio, sin artefacto hasta hoy)
duration_seconds
1922.41
n_complejos
48
n_ok
48
lectura
sd mediana >= 0.4 A => los efectos de ~0.8 A de la cartera C estan al borde del ruido de una sola corrida. sd << 0.4 A => los efectos son reales y las lecturas se sostienen. veredictos inestables > 0 => la confianza por complejo NO se puede vender sin repeticiones

ReproducibilidadReproducibility

commit
6bae87c3cd (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
19 de agosto de 2026August 19, 2026
duraciónduration
32 min
complejoscomplexes
48
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-13La funcion de puntuacion de Vina prefiere la pose nativa cuando se la entregan; separar fallo de busqueda de fallo de puntuacionInconclusoInconclusiven=116

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
InconclusoInconclusive · Ejecutado y declarado sin conclusión. No se reclasifica a posteriori.Executed and declared without a conclusion. It is not reclassified afterwards.
Decisión del manifestManifest decision
INCONCLUSIVE
HipótesisHypothesis
La funcion de puntuacion de Vina prefiere la pose nativa cuando se la entregan; separar fallo de busqueda de fallo de puntuacion
Criterio prerregistradoPre-registered criterion
G1 >=95% con score finito; G2 fraccion de COLOCACION donde el cristal relajado gana al mejor dock: >=0.70 BUSQUEDA, <=0.30 PUNTUACION, intermedio MIXTO
ProtocoloProtocol
MF-13-PRE/PREREGISTRO.md; contenedor moldesign-lab; 116 complejos de train; score_only y local_only sobre la pose cristalografica en su propio receptor y caja
Razón de la decisiónReason for the decision
Diagnostico MIXTO: 23 de 33 = 0.6970, tres milesimas por debajo del umbral de 0.70 preregistrado para BUSQUEDA. Se predijo BUSQUEDA y no se acerto; el prerregistro prohibe mover el umbral tras ver la fraccion, asi que queda MIXTO y la decision es INCONCLUSIVE respecto a la pregunta binaria. G1 pasa con 116/116. Pero MIXTO aqui no significa "no sabemos": la banda 0.30-0.70 estaba preregistrada precisamente para el caso en que los dos modos de fallo conviven, y eso es lo que se midio. En ~70% de los complejos dificiles el fallo es de BUSQUEDA y es flagrante: el percentil mediano del cristal es 0.0 en los tres estratos -en el complejo mediano la pose cristalografica puntua mejor que TODAS las dockeadas-, la ventaja mediana es +2.39 kcal/mol llegando a +8.80, y la deriva local de 0.322 A confirma que el cristal es un minimo local estable de la funcion. En ~30% el decoy gana y ahi ninguna busqueda ayuda. Pista registrada como hipotesis y no como conclusion: un cristal que puntua -1.63 (1fkh) o -2.18 (1ew8) kcal/mol no es fallo de puntuacion sino sistema mal montado -cofactor, metal o agua estructural ausente, o protonacion incorrecta-, lo que apunta a REC-04/REC-05 de la cartera B. Comprobacion de cordura declarada y cumplida: CONTROL da 0.533 frente a 0.697 de COLOCACION, la inversion predicha. El prerregistro prohibe leer el componente de busqueda como permiso para reabrir MF-03/04/05/07/12: esos ajustan parametros del mismo buscador y MF-02F ya mostro que triplicar reinicios no basta; justifica un buscador distinto, no mas parametros del mismo.

Métricas registradasRecorded metrics

tipo
medicion con regla de lectura preregistrada
duration_seconds
605.47
n_complejos
116
n_ok
116
diagnostico
MIXTO

ReproducibilidadReproducibility

commit
23ac6d11cf (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
duraciónduration
10 min
complejoscomplexes
116
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-14-R1Arreglar el error hizo la derrota más grandeRefutaciónRefutationArtículoPapern=116

Se encontró un defecto que ensuciaba las etiquetas del selector. Corregirlo no lo salvó: la brecha contra el baseline se duplicó, porque quien más ganaba con la corrección era el rival.

Durante meses, la apuesta central de una de las líneas del programa fue que un selector entrenado podía escoger mejor pose que la puntuación cruda de Vina. RS-14 la midió y dijo que no, por poco: precisión condicional 0.4312 frente a 0.4783 del baseline, con un intervalo que cruzaba el cero.

Entonces RC-F0-SYM encontró un defecto real. Las etiquetas se calculaban con un RMSD que no trataba correctamente la simetría molecular: un anillo de benceno rotado 180° es la misma molécula, pero el cálculo ingenuo lo contaba como un error de varios ángstroms. El defecto marcaba mal un +21.0% de las poses positivas en train.

Eso abre una puerta que las reglas del laboratorio dejan explícitamente abierta: un resultado negativo no cuenta si se explica por un defecto de implementación corregido. Este experimento es esa corrección, con todo lo demás congelado.

Qué pasó

SelectorBaseline vina_score
RS-14 (con el defecto)0.43120.4783
**RS-14-R1** (corregido)0.46010.5543
Ganancia por la corrección+2.9 pp+7.6 pp

Diferencia pareada: −0.0942, CI95 BCa [−0.2138, +0.0217], sobre los mismos 92 complejos cubiertos.

La corrección funcionó: los dos brazos mejoraron. Pero mejoró mucho más el baseline — siete complejos frente a los tres del selector.

El defecto de simetría estaba ocultando cuánto mejor es ya vina_score.

La brecha pasó de −0.0471 a −0.0942. Se duplicó.

Las tres predicciones se cumplieron

Antes de ejecutar se escribieron tres predicciones cuantitativas. Las tres acertaron, lo cual es relevante porque significa que el resultado no fue una sorpresa que luego se racionalizó:

Predicción declaradaObservado
Selector en [0.45, 0.58]0.4601 ✓
Diferencia en [−0.15, +0.05]−0.0942 ✓
Test de permutación pasa con holgura0.4601 frente a p95 de 0.1848, p empírico 0.0 ✓

Ese tercer punto merece atención, porque es lo que hace que este resultado sea interesante en vez de trivial: el selector sí aprende señal real. Rinde casi 2.5 veces por encima del nulo por permutación. No está memorizando ruido.

Lo que aprende, simplemente, no añade nada sobre lo que ya sabe la función de Vina.

Por qué esto cierra una línea entera

El prerregistro declaró, antes de ejecutar, qué significaría cada resultado posible. La regla del laboratorio dice que un corrigendum reinicia el contador de futilidad sólo si cambia la decisión. No la cambió. En consecuencia:

  • la cartera de rescoring queda cerrada de forma definitiva;
  • tres experimentos que dependían de ella quedan bloqueados permanentemente bajo este diseño;
  • cualquier reapertura futura debe declarar un denominador en número de complejos — aproximadamente cuatro veces más—, no en más features, más semillas ni etiquetas más limpias. Las tres vías se probaron y ninguna movió la aguja.

El sesgo que va en contra del resultado

De las 18,812 poses, 1,143 (6.1%) conservan el RMSD ingenuo porque su corrección no pudo completarse. Ese sesgo residual empuja en la dirección de un resultado favorable al selector, no en contra. Es decir: si algo, la brecha real es todavía mayor que la medida.

val y test quedaron intactos.

Qué se aprende de esto

Que la corrección honesta de un error propio puede empeorar la propia posición, y que hay que publicarla igual. La tentación de dejar el defecto sin arreglar —o de arreglarlo sólo en el brazo propio— es exactamente el mecanismo por el que la literatura de este campo acumula resultados que no se replican.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
Corregidas las etiquetas por simetria, el selector supera al baseline vina_score en precision condicional
Criterio prerregistradoPre-registered criterion
G1 validez, G2 superioridad con CI95 BCa pareado excluyendo cero, G3 nulo por permutacion
ProtocoloProtocol
RS-14-R1-PRE/PREREGISTRO.md; v2 train; etiquetas rmsd_sym; protocolo de RS-14 congelado e importado
Razón de la decisiónReason for the decision
Precision condicional 0.4601 frente a 0.5543 del baseline, diferencia pareada -0.0942 con CI95 BCa [-0.2138, +0.0217] sobre los mismos 92 complejos cubiertos. Corregir el defecto ENSANCHO la brecha: de -0.0471 en RS-14 a -0.0942 aqui, porque el baseline gano +7.6 pp (7 complejos) y el selector solo +2.9 pp. El defecto de simetria estaba ocultando cuanto mejor es ya vina_score. Las tres predicciones preregistradas se cumplieron: selector en [0.45, 0.58] -> 0.4601; diferencia en [-0.15, +0.05] -> -0.0942; G3 pasa con holgura -> 0.4601 frente a p95 0.1848 con p empirico 0.0. El selector SIGUE aprendiendo senal real, casi 2.5x el nulo, pero lo que aprende no anade nada sobre el score de Vina. Por la regla de cierre declarada en el prerregistro antes de ejecutar, este NO_GO cierra la cartera D de forma definitiva: el corrigendum no cambio la decision, asi que por la §19.1 no reinicia el contador de futilidad, y RS-11/12/13 quedan bloqueados permanentemente bajo este diseno. Limitacion declarada: 1,143 de 18,812 poses (6.1%) conservan RMSD ingenuo, sesgo que va EN CONTRA de un GO. Val y test intactos.

Métricas registradasRecorded metrics

duration_seconds
2935.77
n_ajustes
1348
decision
NO_GO

ReproducibilidadReproducibility

commit
23ac6d11cf (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
duraciónduration
49 min
complejoscomplexes
116
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RC-F0-SYMCorregir la simetria en la metrica de pose cambia la cobertura del oraculo del conjunto v2 y por tanto el denominador de la cartera DMediciónMeasurementn=203

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Corregir la simetria en la metrica de pose cambia la cobertura del oraculo del conjunto v2 y por tanto el denominador de la cartera D
Criterio prerregistradoPre-registered criterion
medicion sin gates; verificacion obligatoria: el RMSD ingenuo recomputado debe reproducir el almacenado
ProtocoloProtocol
medicion: relectura del material de RC-F0-V2 con la metrica corregida de la §5.1; 32,215 poses de fuente molflex emparejadas por (pid, file_stem, model_idx); sin computo nuevo y sin evaluar ningun selector
Razón de la decisiónReason for the decision
Medicion valida: el RMSD ingenuo recomputado reproduce el almacenado con error maximo de 0.0005 A -el redondeo del fichero- en los tres splits, 203 de 203 complejos. Resultado principal: la cobertura del oraculo NO se mueve ni un complejo (train 79.31%, val 87.50%, test 97.87%; cero complejos ganan en ninguno), lo que ACOTA el dano del defecto: las cifras de RC-F0-V2, el denominador de RS-14 y la tabla de factibilidad de la §9 se sostienen exactamente. Pero a nivel de pose las etiquetas si estan mal: positivas 357 -> 432 en train (+21.0%), 187 -> 196 en val (+4.8%), 216 -> 252 en test (+16.7%), con tasas de corrupcion distintas por split. Eso habilito RS-14-R1 bajo la condicion 2 de la §19.1. Alcance declarado: solo el 94% de las poses es recomputable, y como corregir solo puede bajar el RMSD, la cobertura reportada es una cota inferior.

Métricas registradasRecorded metrics

tipo
medicion (relectura del material de RC-F0-V2, sin computo nuevo, sin selector)
duration_seconds
7.89
umbral_A
2.0
alcance
solo poses de fuente molflex (94% del conjunto) son recomputables; las de flexible_redock y ruta_a conservan su RMSD ingenuo, por lo que la cobertura corregida es una COTA INFERIOR
n_complejos
203
n_ok
203

ReproducibilidadReproducibility

commit
23ac6d11cf (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
complejoscomplexes
203
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-09-SYMCorregir la simetria en la metrica de pose cambia la conclusion de MF-09 de que en 30 de 33 complejos dificiles no existe pose <=2 AMediciónMeasurementn=48

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Corregir la simetria en la metrica de pose cambia la conclusion de MF-09 de que en 30 de 33 complejos dificiles no existe pose <=2 A
Criterio prerregistradoPre-registered criterion
medicion sin gates de aceptacion; verificacion obligatoria: reproducir MF-09 bajo la metrica ingenua
ProtocoloProtocol
medicion: relectura del material sellado de MF-02D + MF-02F, misma cohorte y mismo umbral, cambiando una sola cosa (minimo sobre automorfismos del RMSD sin alinear); sin computo nuevo
Razón de la decisiónReason for the decision
Medicion valida: reproduce MF-09 linea a linea bajo la metrica ingenua (751 poses medianas, oraculo 2.961 A, 3 de 33 cubiertos, top-1 0/33 y 7/15) antes de cambiar nada. Corregida la simetria sobre 21,692 poses: la conclusion de MF-09 SOBREVIVE -30 de 33 pasa a 29 de 33, gana 1l83 cuya mejor pose mide 2.106 A ingenua y 0.942 A corregida- y sigue siendo muestreo, no puntuacion. Pero el top-1 de Vina es mejor de lo que se midio (9 de 15 controles en vez de 7, 1 de 33 en vez de 0) y el margen del selector del control baja de 8 a 6 de 15: una cuarta parte de ese margen no era margen, era la metrica penalizando un anillo girado. Solo 14 de 21,692 poses (0.06%) cruzan el umbral al corregir, pero caen donde mas pesa.

Métricas registradasRecorded metrics

tipo
medicion (relectura de material sellado, sin computo nuevo)
duration_seconds
3.32
umbral_A
2.0
metrica_ingenua
rmsd_pose_pocket (indice a indice, sin alinear)
metrica_corregida
minimo sobre automorfismos del RMSD sin alinear
n_complejos
48
n_ok
48
n_poses_total
21692

ReproducibilidadReproducibility

commit
23ac6d11cf (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
complejoscomplexes
48
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-10-CALLos dos controles que convierten un negativo en una respuestaHallazgoFindingArtículoPaper

Antes de creerse un «no funciona» hay que descartar que el instrumento estuviera ciego. El suelo es 0.401 Å y el minimizador estaba convergido: el negativo era real.

Un experimento anterior había medido que relajar las poses con un campo de fuerza bien parametrizado no convierte ningún complejo. Antes de aceptar ese resultado hay dos preguntas que un negativo obliga a responder, y que casi nadie responde:

  1. ¿Tenía resolución el instrumento? Si el proceso de medición mueve las cosas tanto como el efecto buscado, no puede detectarlo.
  2. ¿Estaba convergido el minimizador? Si se paró antes de tiempo, el «no se mueve» sólo significa «no le dio tiempo».

Un negativo sin estos dos controles es indistinguible de un experimento mal montado. Este los ejecuta.

Control 1 — el suelo del instrumento

Se sometió la propia pose cristalina al protocolo idéntico de relajación. El cristal ya está en la conformación correcta, así que cuánto se mueve mide el ruido que el procedimiento introduce por sí solo.

Desplazamiento del cristal
Mediana0.401 Å
Percentil 900.787 Å
Máximo1.939 Å

El efecto que había que detectar era de aproximadamente 1 Å. El suelo está muy por debajo. El instrumento tenía resolución de sobra, y el negativo es un negativo real, no ceguera del aparato.

Control 2 — la convergencia del minimizador

Se multiplicó el presupuesto de minimización por 20: de 500 a 10,000 iteraciones. Si el minimizador se hubiera estado parando antes de tiempo, aquí se vería.

Mejora del delta mediano: 0.061 Å, por debajo del umbral de 0.1 Å que se había fijado antes. El experimento original midió con el minimizador esencialmente convergido.

El matiz que forma parte del sello

El efecto del presupuesto no es exactamente cero, y decirlo importa. Con las primeras 5 a 7 poses parecía nulo; con las 21 válidas se ve pequeño pero real. Y aun a 10,000 iteraciones el delta llega como mucho a −0.111 Å.

Un orden de magnitud corto de lo necesario. Es decir: la dirección es correcta, el minimizador sí mejora las poses, y la mejora es del tamaño equivocado. Eso refuerza el negativo en lugar de debilitarlo, pero es una afirmación distinta de «el presupuesto no hace nada», y se registra como tal.

Un diagnóstico confirmado de paso

Los 9 complejos que fallan la parametrización son exactamente los mismos que en el experimento original, con el mismo error de plantilla. Que el fallo se reproduzca idénticamente al cambiar el presupuesto confirma que la causa es la preparación del receptor y no algo estocástico del minimizador.

Ese diagnóstico se verificó después de forma independiente: los 9 tienen huecos de cadena, 9 de 9, contra una tasa base del 42.4%.

Por qué este registro es de los que más valen

Es un experimento cuyo único propósito es comprobar que otro experimento medía algo. No produce ningún hallazgo sobre docking. Lo que produce es el derecho a creerse un negativo.

La mayoría de los resultados negativos publicados en este campo no tienen su equivalente, y por eso no se distinguen de un montaje que no funcionaba.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El suelo del instrumento y la convergencia del minimizador determinan si el NO_GO de MF-10 es una medicion valida
Criterio prerregistradoPre-registered criterion
C1 reportar la deriva del cristal, C2 deriva mediana < 1.0 A, C3 mejora <= 0.1 A al multiplicar por 20 el presupuesto
ProtocoloProtocol
MF-10-CAL-PRE/PREREGISTRO.md; contenedor moldesign-lab; constructor de sistema de MF-10 reutilizado por import
Razón de la decisiónReason for the decision
Los tres gates pasan. C1/C2: el cristal minimizado bajo el protocolo identico de MF-10 se desplaza 0.401 A de mediana (p90 0.787, max 1.939), muy por debajo del ~1 A que MF-10 habria necesitado convertir; el instrumento tenia resolucion de sobra y el NO_GO de MF-10 es un negativo real, no ceguera del aparato. C3: multiplicar el presupuesto por 20 (500 -> 10000 iteraciones) mejora el delta mediano solo 0.061 A, por debajo del umbral preregistrado de 0.1 A, asi que MF-10 midio con el minimizador esencialmente convergido. Matiz que forma parte del sello: el efecto del presupuesto NO es cero -con 5-7 poses parecia nulo y con las 21 validas se ve pequeno pero real-, y aun a 10000 iteraciones el delta llega a -0.111 A, un orden de magnitud corto. Los 9 complejos que fallan son los mismos que en MF-10 con el mismo error de plantilla, lo que confirma que la causa es la preparacion del receptor.

Métricas registradasRecorded metrics

duration_seconds
2631.1
lectura
C3 PASS => MF-10 midio con el minimizador convergido y su NO_GO es una medicion del campo de fuerza. C3 FAIL => MF-10 midio con el presupuesto agotado y su G3 debe releerse como inconcluso.

ReproducibilidadReproducibility

commit
23ac6d11cf (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
duraciónduration
44 min
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-10La última palanca de la hipótesis original, y también dice que noRefutaciónRefutationArtículoPapern=48

Relajar la pose dentro del bolsillo con un campo de fuerza bien parametrizado no convirtió ningún complejo. Ninguna pose se movió más de 0.725 Å, y hacía falta cerca de 1 Å.

La sospecha era razonable y llevaba tiempo en pie: las poses que Vina entrega están tensionadas. Vina optimiza una función empírica rápida, no física real, y su geometría interna es aproximada. Si se relajara cada pose con un campo de fuerza serio —uno que trate correctamente los enlaces, los ángulos y las cargas parciales— quizá se asentaría en la conformación bioactiva que el docking rozó sin alcanzar.

Esta era la tercera y última palanca de la hipótesis original sobre por qué el generador no coloca. Las otras dos —la geometría de la caja y el número de reinicios de búsqueda— ya habían dicho que no.

Montarla costó trabajo: un contenedor con amber14 para la proteína, Sage 2.2.1 para el ligando y cargas NAGL, con la relajación hecha in situ, dentro del bolsillo, no en vacío.

Qué pasó

Cero complejos convertidos.

Nueve poses cruzan el umbral de 2.0 Å tras relajar, y al mirarlas de cerca no son lo que parecen: pertenecen a 7 complejos que ya tenían una pose bajo el umbral antes de relajar, y 8 de las 9 son del estrato de control. Ninguna es una conversión real.

Lo que cierra el argumento no es el conteo sino la magnitud del movimiento:

Valor
Desplazamiento máximo de cualquier pose0.725 Å
Poses que se mueven más de 0.5 Å11 de 714
Movimiento necesario para convertir~1 Å

La relajación no se queda corta por poco. Se queda corta por una escala entera. Y la mediana del cambio de RMSD es +0.007 Å — es decir, ni siquiera mejora en promedio.

El fallo que no era del campo de fuerza

Un gate falla por una razón que no informa sobre la hipótesis: sólo el 81.3% de las poses obtuvieron energía finita, por debajo del 95% exigido. La causa está concentrada en 9 complejos que fallaron 20 de 20 veces con el mismo error de plantilla de OpenMM, en cortes de cadena del receptor.

Eso es un fallo de preparación, no del campo de fuerza. Y se verificó después: FEP-02 comprobó que esos 9 complejos tienen huecos de cadena, 9 de 9, contra una tasa base del 42.4% en el conjunto — la probabilidad de que eso sea coincidencia es de aproximadamente 0.0004.

La merma de cohorte tampoco sesga hacia el resultado negativo: los 8 complejos del estrato difícil que se perdieron estaban más lejos de convertir que los que quedaron (4.450 Å frente a 4.024 Å). Si hubieran entrado, el resultado habría sido igual o peor.

Los controles que faltaban

Antes de sellar se hizo una auditoría propia que descartó seis riesgos —incluido el más peligroso, que la métrica se estuviera calculando de forma distinta antes y después de relajar, con una discrepancia máxima de 0.0005 Å— y detectó dos controles ausentes.

Se ejecutaron aparte, y son los que hacen que este negativo signifique algo:

  1. ¿Tenía resolución el instrumento? Sí: el suelo medido es de 0.401 Å, muy por debajo del ~1 Å que había que detectar. Si el efecto hubiera existido, se habría visto.
  2. ¿Estaba convergido el minimizador? Sí: multiplicar su presupuesto por 20 mejora 0.061 Å. No se estaba parando antes de tiempo.

Sin esos dos controles, este resultado sería indistinguible de un experimento mal montado. Con ellos, es una respuesta.

La predicción cuadró sin residuo

Se había declarado antes: 67 poses en la banda crítica de 2–3 Å, de las cuales 3 se perderían por parametrización, dejando 64 medibles. Salió exactamente eso.

Consecuencia

Con esto, las tres palancas de la hipótesis original quedan cerradas: la caja, los reinicios y el campo de fuerza. Y MF-09 explica por qué ninguna podía funcionar: en 30 de 33 complejos difíciles no existe una pose bajo 2 Å entre las ~751 candidatas generadas. No hay nada que relajar hacia el sitio correcto, porque el sitio correcto nunca se visitó.

Refinar mejor una pose que está en el sitio equivocado la deja en el sitio equivocado con mejor geometría.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
Una minimizacion local dentro del bolsillo con un force field bien parametrizado (amber14 + Sage 2.2.1 + cargas NAGL) acerca la pose dockeada a la conformacion bioactiva
Criterio prerregistradoPre-registered criterion
G1 capacidad, G2 >=95% con energia finita, G3 mediana de delta RMSD negativa, G4 >=5 poses de la banda 2-3 A cruzan el umbral
ProtocoloProtocol
MF-10-PRE/PREREGISTRO.md; contenedor moldesign-lab; 878 poses top-20 por score de 48 complejos; proteina restringida k=100 kcal/mol/A2, ligando libre, 500 iteraciones
Razón de la decisiónReason for the decision
Cero complejos convertidos. Las 9 poses que cruzan 2.0 A pertenecen a 7 complejos que YA tenian una pose bajo el umbral antes de relajar, y 8 de las 9 son del estrato CONTROL. G2 falla (81.3%) por un fallo de PREPARACION concentrado en 9 complejos que fallaron 20/20 con el mismo error de plantilla de OpenMM en cortes de cadena; no informa sobre el campo de fuerza. G3 falla con mediana +0.007 A. La magnitud cierra el argumento: ninguna pose se mueve mas de 0.725 A y solo 11 de 714 pasan de 0.5 A, frente al ~1 A necesario. La prediccion declarada cuadro sin residuo: 67 poses en la banda, 3 perdidas por parametrizacion, 64 medidas. La merma de cohorte NO sesga hacia el NO_GO: los 8 complejos COLOCACION perdidos estaban mas lejos de convertir (4.450 A frente a 4.024 A). Auditoria previa al sello en AUDITORIA.md: seis riesgos descartados -incluida la consistencia de la metrica antes/despues, con discrepancia maxima de 0.0005 A- y dos controles ausentes ejecutados como MF-10-CAL, que confirman que el instrumento tenia resolucion (suelo 0.401 A) y que el minimizador estaba convergido (0.061 A de mejora al multiplicar el presupuesto por 20). Es la ultima palanca sin probar de la hipotesis original del maintainer, y responde que no.

Métricas registradasRecorded metrics

duration_seconds
26035.34
n_complejos
48
n_poses_relajadas
714
n_errores
164
cruzan_umbral
9
energias_finitas
714
decision
NO_GO

ReproducibilidadReproducibility

commit
23ac6d11cf (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
duraciónduration
7 h 14 min
complejoscomplexes
48
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-14-R1-PRECorregidas las etiquetas por simetria, el selector supera al baseline vina_score en precision condicional sobre los complejos cubiertosPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Corregidas las etiquetas por simetria, el selector supera al baseline vina_score en precision condicional sobre los complejos cubiertos
Criterio prerregistradoPre-registered criterion
G1 validez de los 348 ajustes LOCO, G2 superioridad con CI95 BCa pareado excluyendo cero, G3 nulo por permutacion, G4 determinismo
ProtocoloProtocol
RS-14-R1-PRE/PREREGISTRO.md; conjunto v2 train (18,812 poses, 116 complejos); etiquetas rmsd_sym de RC-F0-SYM; protocolo de RS-14 congelado e importado, no copiado: features, contrato v0.6, hiperparametros, LOCO y nulo identicos
Razón de la decisiónReason for the decision
Prerregistro escrito antes de ejecutar, con hash SHA-256 registrado en anterioridad.json para que el sello pueda probar que precede a los resultados. Legal bajo la condicion 2 de la §19.1: corrige un defecto de implementacion documentado (RC-F0-SYM midio +21.0% de positivas mal etiquetadas en train), no una arquitectura, una perdida ni una seed. Declara por adelantado el baseline corregido ya medido (0.5543 frente a 0.4783), la prediccion NO_GO, y la regla de cierre: un NO_GO cierra la cartera D de forma definitiva.

ReproducibilidadReproducibility

commit
23ac6d11cf (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-13-PRELa funcion de puntuacion de Vina prefiere la pose nativa cuando se la entregan; separar fallo de busqueda de fallo de puntuacion en la cohorte dificilPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La funcion de puntuacion de Vina prefiere la pose nativa cuando se la entregan; separar fallo de busqueda de fallo de puntuacion en la cohorte dificil
Criterio prerregistradoPre-registered criterion
G1 >=95% de complejos con score finito; G2 fraccion de COLOCACION donde el cristal relajado gana al mejor dock: >=0.70 BUSQUEDA, <=0.30 PUNTUACION, intermedio MIXTO
ProtocoloProtocol
MF-13-PRE/PREREGISTRO.md; contenedor moldesign-lab; 116 complejos de train; score_only y local_only sobre la pose cristalografica en su propio receptor y su propia caja, los mismos del docking v2
Razón de la decisiónReason for the decision
Prerregistro escrito antes de ejecutar. MF-09 midio que el buscador no PRODUCE la pose nativa, pero nadie pregunto si la funcion la RECONOCERIA si se la entregaran. Son dos fallos con consecuencias opuestas: si la funcion prefiere la nativa la palanca es el muestreo; si no, ninguna palanca de muestreo puede funcionar. Se declaran los umbrales 0.70/0.30 y la prediccion BUSQUEDA antes de ver datos, y se declara el sondeo de 3 complejos que descubrio y corrigio un defecto del montaje (local_only no escribe REMARK VINA RESULT y la pose relajada hay que re-puntuarla).

ReproducibilidadReproducibility

commit
23ac6d11cf (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-10-CAL-PREEl suelo del instrumento y la convergencia del minimizador determinan si el NO_GO de MF-10 es una medicion valida del campo de fuerza o un artefactoPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El suelo del instrumento y la convergencia del minimizador determinan si el NO_GO de MF-10 es una medicion valida del campo de fuerza o un artefacto
Criterio prerregistradoPre-registered criterion
C1 reportar la deriva del cristal, C2 deriva mediana < 1.0 A, C3 mejora <= 0.1 A al multiplicar por 20 el presupuesto
ProtocoloProtocol
MF-10-CAL-PRE/PREREGISTRO.md; contenedor moldesign-lab; brazo A control positivo minimizando el cristal de los 48 complejos; brazo B barrido maxIterations 500/2000/10000 sobre 24 poses de la banda 2-3 A elegidas por score
Razón de la decisiónReason for the decision
Prerregistro escrito antes de ejecutar. Cubre los dos controles ausentes que la auditoria de MF-10 identifico: no habia control positivo (nunca se minimizo el cristal, asi que no se conocia el suelo del instrumento) y no se registraba la convergencia (la correlacion entre caida de energia y movimiento del ligando fue 0.134, compatible con presupuesto agotado en los hidrogenos de proteina). Se declara la prediccion de deriva en (0, 1.0) A y la regla de lectura de C3 antes de ver resultados: C3 PASS deja el G3 de MF-10 como medicion legitima, C3 FAIL lo convierte en inconcluso.

ReproducibilidadReproducibility

commit
23ac6d11cf (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-14El selector aprende señal real, y aun así no sirveRefutaciónRefutationArtículoPapern=116

Rinde tres veces por encima del azar, así que no memoriza ruido. Pero lo que aprende no añade nada sobre la puntuación cruda de Vina, y el diseño no podía detectar menos de 10 puntos.

La apuesta era vieja y razonable: Vina puntúa poses con una función empírica de 2009. Un modelo entrenado sobre 233 características por pose debería poder ordenarlas mejor.

Un intento anterior había fallado, y el diagnóstico fue que el problema era el denominador: con unos 9 candidatos por complejo apenas había nada que ordenar. La regla del laboratorio exige que, para reabrir una línea cerrada, se declare qué cambia en el denominador. RC-F0-V2 lo cambió: reconstruyó el conjunto entero, subió la cobertura de 67.2% a 79.3% y llevó la tarea de ordenar ~9 candidatos a ordenar ~169.

Este experimento es la reapertura.

Qué pasó

Precisión condicional
Selector0.4312
Baseline vina_score0.4783
Diferencia pareada−0.0471
CI95[−0.1522, +0.0617]

El gate exigía superioridad demostrada con un intervalo que excluyera el cero. No la hay.

Tres matices que el NO_GO no debe ocultar

1. El selector sí aprende señal real. Con 200 permutaciones que barajan las etiquetas dentro de cada complejo, el nulo tiene media 0.104 y percentil 95 en 0.163. El selector alcanza 0.431, con p empírico 0.0 — casi tres veces por encima del azar. En el régimen p > n que temíamos, el modelo no está memorizando ruido.

2. El intervalo cruza el cero. La lectura honesta no es «el selector pierde», es «el selector empata dentro del ruido» y el gate exigía ganar. Así se preregistró.

3. Lo que aprende no añade nada sobre el score de Vina. Esa es la conclusión, y es distinta de las dos anteriores.

El hallazgo operativo, que resultó valer más que el resultado

Con 92 complejos cubiertos, la diferencia observada equivale a 4.3 complejos y un intervalo de ±0.10 equivale a 9. Es decir:

Este diseño no puede detectar diferencias menores a unos 10 puntos porcentuales.

Y más semillas, más features o más árboles no lo arreglan, porque la incertidumbre viene del número de complejos, no del modelo. La variabilidad entre semillas —0.467, 0.380, 0.446— tiene un rango de 0.087, casi el doble de la diferencia con el baseline. Es otra manifestación del mismo límite.

Harían falta unas cuatro veces más complejos para resolver diferencias de 5 puntos. Eso confirma cuantitativamente lo que la regla de futilidad afirmaba cualitativamente: la palanca es multiplicar complejos, no señales.

FND-04 afinó después este número con una implementación independiente y lo empeoró: el diseño sólo podía detectar 22.3 pp, no ~10, y harían falta 1,972 complejos, no ~370.

El contraste que duele

MF-09 había medido que en el estrato de control 8 de 15 complejos tienen la pose correcta disponible, el top-1 por score no la elige, pero sí está entre las cinco primeras.

O sea: el margen existe. Está ahí, en los datos, esperando a que alguien lo capture. Y el selector no lo captura.

Lo que sí lo captura es entregar cinco poses en vez de una — que es lo que FEP-04 midió después y lo que se convirtió en decisión de producto. La solución no era un modelo mejor. Era dejar de fingir que hay que elegir una.

Consecuencia

La cartera se reabrió con el denominador corregido, que era la condición exigida, y el resultado es que el problema no era el denominador: el espacio de características actual está agotado frente a vina_score.

No se tocaron val ni test. Un NO_GO en train no consume el confirmatorio.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
Con el denominador corregido (conjunto v2, cobertura 79.3%), un selector bajo el protocolo congelado de v0.6 supera al baseline de vina_score en precision condicional, evaluado leave-one-complex-out
Criterio prerregistradoPre-registered criterion
G1 validez, G2 condicional > baseline con CI95 pareado excluyendo cero, G3 condicional > percentil 95 del nulo
ProtocoloProtocol
RS-14-PRE sellado; datos RC-F0-V2 solo train; 233 features con la transformacion de v0.6; XGBRanker con hiperparametros congelados; LOCO 116x3 semillas; nulo por permutacion dentro de complejo
Razón de la decisiónReason for the decision
Falla G2: la precision condicional del selector es 0.4312 frente a 0.4783 del baseline de vina_score, con diferencia pareada -0.0471 y CI95 [-0.1522, +0.0617] sobre los 92 complejos cubiertos. TRES MATICES QUE EL NO_GO NO DEBE OCULTAR. (1) El selector SI aprende senal real: con 200 permutaciones que barajan etiquetas dentro de cada complejo, el nulo tiene media 0.104 y percentil 95 en 0.163, y el selector alcanza 0.431 con p empirico 0.0, casi tres veces por encima; en el regimen p>n que temiamos, el modelo no memoriza ruido. (2) El CI CRUZA EL CERO, asi que la lectura honesta no es que el selector pierda sino que empata dentro del ruido y el gate exigia superioridad demostrada, tal como se preregistro. (3) Lo que aprende no anade nada sobre el score de Vina. HALLAZGO OPERATIVO: con 92 complejos cubiertos la diferencia observada equivale a 4.3 complejos y el intervalo de mas menos 0.10 equivale a 9, de modo que este diseno NO PUEDE detectar diferencias menores a unos 10 puntos porcentuales, y mas semillas, features o arboles no lo arreglan porque la incertidumbre viene del numero de complejos. Confirma cuantitativamente lo que la seccion 19.1 afirmaba: la palanca es multiplicar complejos, no senales; harian falta unas 4 veces mas para resolver diferencias de 5 puntos. La variabilidad entre semillas (0.467, 0.380, 0.446) tiene un rango de 0.087, casi el doble de la diferencia con el baseline, que es otra manifestacion del mismo limite de potencia. Contraste con MF-09: el margen existe -8 de 15 complejos del control tienen la pose correcta disponible y el top-1 por score no la elige pero si esta entre las cinco primeras- y el selector no lo captura. La cartera D se reabrio con el denominador corregido, que era la condicion de la seccion 19.1, y el resultado es que el problema NO era el denominador: el espacio de features actual esta agotado frente a vina_score. No se tocaron val ni test: un NO_GO en train no consume el confirmatorio.

Métricas registradasRecorded metrics

duration_seconds
1890.71
n_ajustes
1348
decision
NO_GO

ReproducibilidadReproducibility

commit
1dc3ba88df (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
duraciónduration
32 min
complejoscomplexes
116
hashes SHA-256
7
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-10-PREUna minimizacion local dentro del bolsillo con un force field bien parametrizado (amber14 + Sage 2.2.1 + cargas NAGL) acerca la pose dockeada a la conformacion bioactiva; es la unica palanca de la hipotesis original sin probar tras agotar caja y reiniciosPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Una minimizacion local dentro del bolsillo con un force field bien parametrizado (amber14 + Sage 2.2.1 + cargas NAGL) acerca la pose dockeada a la conformacion bioactiva; es la unica palanca de la hipotesis original sin probar tras agotar caja y reinicios
Criterio prerregistradoPre-registered criterion
G1 capacidad por sondeo, G2 >=95% con energia finita, G3 mediana de delta RMSD negativa, G4 >=5 poses de la banda 2-3 A cruzan el umbral
ProtocoloProtocol
MF-10-PRE/PREREGISTRO.md; contenedor moldesign-lab del servidor; 878 poses top-20 por score de los 48 complejos de MF-08/MF-02F; proteina restringida k=100 kcal/mol/A2, ligando libre, 500 iteraciones
Razón de la decisiónReason for the decision
Prerregistro sellado antes de la corrida completa; solo el sondeo de capacidad se ejecuto y queda declarado. Es la unica palanca de la hipotesis original del maintainer que sigue sin probarse: el multi-modo ya estaba saturado con num_modes=9 y la flexibilidad de receptor apuntaba a complejos con fallo conformacional. Las dos palancas geometricas se agotaron sobre la misma cohorte, convirtiendo 3 de 33 cada una y moviendo la mediana 0.8 A. NO PUEDE CORRER EN LOCAL: la fase 3 de molflex degrada a vina --local_only porque Python 3.14 bloquea openff-toolkit, diagnostico documentado en la biblioteca del proyecto original; el contenedor tiene Python 3.11 y RS-03-PARAM-A ya valido la parametrizacion ahi. Sus datos NO se degradan con RS-14 porque son magnitudes fisicas -RMSD antes y despues, y energias- que no dependen de que modelo estadistico gane: con GO son mejores candidatas para el mismo selector y con NO_GO siguen siendo la medicion de si el campo de fuerza acerca la pose. El sondeo descubrio tres dependencias ausentes del contenedor (openmmforcefields, pdbfixer, lxml) que se anadieron a la imagen antes de preregistrar; si hubiera fallado, ese habria sido el resultado, porque la pregunta se responde con un no rotundo si el FF no se puede parametrizar. Prediccion declarada: 67 de las 878 poses caen en la banda 2-3 A, la unica donde una minimizacion local puede plausiblemente convertir, y la banda no se redefine despues. G3 y G4 son distintos a proposito: un FF puede acercar sistematicamente sin convertir a nadie, o convertir a unos pocos por azar sin tendencia. Advertencia declarada: minimizar optimiza hacia el minimo del campo de fuerza y no hacia el cristal, asi que se reporta cuantas poses empeoran.

ReproducibilidadReproducibility

commit
a052e413e5 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
hashes SHA-256
6
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-14-PRECon el denominador corregido (conjunto v2, cobertura del oraculo 79.3% y MolFlex aplicado a 116 de 116), un selector entrenado bajo el protocolo congelado de v0.6 supera al baseline de vina_score en precision condicional, evaluado leave-one-complex-outPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Con el denominador corregido (conjunto v2, cobertura del oraculo 79.3% y MolFlex aplicado a 116 de 116), un selector entrenado bajo el protocolo congelado de v0.6 supera al baseline de vina_score en precision condicional, evaluado leave-one-complex-out
Criterio prerregistradoPre-registered criterion
G1 validez de los 348 ajustes, G2 condicional > baseline con CI95 BCa pareado excluyendo cero, G3 condicional observada > percentil 95 del nulo, G4 determinismo
ProtocoloProtocol
RS-14-PRE/PREREGISTRO.md; datos RC-F0-V2 solo train; features 224 raw con la transformacion documentada de v0.6; XGBRanker rank:pairwise con sus hiperparametros; LOCO 116 x 3 semillas; nulo por permutacion dentro de complejo
Razón de la decisiónReason for the decision
Prerregistro de la REAPERTURA de la cartera D, autorizada por el maintainer, sellado antes de ejecutar. Declara lo que la seccion 19.1 exige: que cambio en el denominador. MolFlex pasa de aplicarse a 13 de 116 complejos a los 116; la cobertura del oraculo de train sube de 67.2 a 79.3 por ciento; las poses por complejo pasan de ~9 a ~162 y el conjunto de train de 2739 a 18812 poses. No es mas de lo mismo: en 38 complejos de v1 no existia pose que seleccionar y los experimentos que fallaron midieron Top-1 global sobre ese universo. La expectativa esta acotada por MF-09, que midio a nivel de pose que en los complejos cubiertos el top-1 por score acierta 7 de 15 y el top-5 acierta 14, es decir 8 de 15 recuperables. Diseno: solo train, val y test intactos; features 224 raw con la transformacion exacta de v0.6 (z por columna dentro de cada complejo mas rangos percentiles sobre las 9 de PCT_RAW); XGBRanker rank:pairwise con los hiperparametros congelados; leave-one-complex-out 116 por semilla, tres semillas. El gate se evalua sobre la PRECISION CONDICIONAL y no sobre Top-1 global, como exige la seccion 9, con la cobertura declarada como covariable. Control de nulo imprescindible por el regimen p mayor que n: 200 permutaciones que barajan las etiquetas DENTRO de cada complejo, preservando grupos y numero de poses, y la condicional observada debe superar el percentil 95. Prohibido comparar con cifras de v1 porque v0.6 se entreno sobre v1 y la tarea cambio de 9 a 162 candidatos.

ReproducibilidadReproducibility

commit
0bf3cd2621 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
hashes SHA-256
5
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-02A-EXTDije «satura» con 116 complejos; con 4,636 sigue subiendoMediciónMeasurementArtículoPapern=4636

El techo conformacional generaliza: un 12% de PDBBind no tiene la conformación bioactiva ni con 150 confórmeros. Y el plateau que había declarado era en parte artefacto del tamaño de muestra.

Antes de decidir cuántos confórmeros generar hay que saber qué se compra con cada uno. Una medición previa sobre los 116 complejos de entrenamiento había dado una curva que se aplanaba, y de ahí salió una decisión: satura alrededor de 60 confórmeros, más allá no compensa.

Este experimento repite la medición sobre 4,636 complejos de PDBBind.

La curva

Disponibilidad conformacional a ≤2 Å del bioactivo:

ConfórmerosDisponibilidad
575.2%
1581.2%
3083.9%
6086.2%
9087.2%
15088.1%

Tres lecturas

1. El techo generaliza. Alrededor del 12% de PDBBind no tiene la conformación bioactiva en el ensemble ni con 150 confórmeros. Eso no es una peculiaridad de la cohorte del programa: es una propiedad del método de generación de confórmeros.

Es un límite duro que ningún ajuste de docking puede superar, porque el material correcto nunca se produce.

Y hay un número más que conviene no perder: 680 complejos de los 5,316 (12.8%) fallaron el embebido y no pasan ni la primera fase del generador. Ese 12.8% es distinto del 12% anterior y se suma a él.

2. Corrige mi propia conclusión anterior. Sobre los 116 la curva se aplanaba en 80.2% desde 60 confórmeros, y declaré saturación. Sobre 4,636 sigue subiendo alrededor de un punto por cada duplicación: 86.2 → 87.2 → 88.1.

El plateau era en parte artefacto del tamaño de muestra. Con 116 complejos, un punto de diferencia son 1.2 complejos, indistinguible del ruido; con 4,636 se ve.

La conclusión cualitativa sobrevive —hay rendimientos decrecientes, y multiplicar el coste por 5 de 30 a 150 confórmeros compra 4.2 puntos— pero la palabra «satura» era demasiado fuerte, y estaba respaldada por menos datos de los necesarios para usarla.

3. El conjunto de entrenamiento es más difícil que PDBBind en general. A 30 confórmeros la disponibilidad es 83.9% en PDBBind frente a 77.6% en los 116.

Eso es coherente con el gradiente que otro experimento encontró entre los conjuntos de entrenamiento, validación y test, y sugiere un sesgo en cómo se armó la cohorte. No es una casualidad: es la misma sombra que aparece en varios resultados del programa, y explica por qué algunas curvas medidas en entrenamiento no se replican fuera.

Por qué una medición descriptiva merece un registro

Este experimento no tiene criterio de aceptación. No decide nada: mide.

Su valor está en las dos correcciones que produjo. Retiró una palabra que se había usado para justificar una decisión de configuración, y puso número a una sospecha sobre el sesgo de la cohorte que hasta entonces era intuición.

Ninguna de las dos habría aparecido sin extender la medición a cuarenta veces más complejos, que era la clase de trabajo que resultaba fácil no hacer porque la respuesta ya parecía conocida.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El techo conformacional del ensemble ETKDG medido en los 116 de train generaliza al conjunto de PDBBind, y su curva permite saber cuanto compra anadir conformeros a escala
Criterio prerregistradoPre-registered criterion
Sin gates de aceptacion: es una medicion descriptiva del generador
ProtocoloProtocol
Declarado en MF-02-PRE seccion 4, sellado antes de ejecutar; mismo metodo que MF-02A (ETKDG seed 42, prune 0.4, GetBestRMS alineado, curva acumulada sobre un unico embebido de 150) en el contenedor Ubuntu
Razón de la decisiónReason for the decision
Medicion descriptiva sin gates, declarada en MF-02-PRE seccion 4 antes de ejecutar. Sobre 4636 complejos de PDBBind medidos (de 5316; 680 fallaron el embebido de RDKit, un 12.8 por ciento que no pasa ni la primera fase del generador), la curva de disponibilidad conformacional a <=2 A es 75.2, 81.2, 83.9, 86.2, 87.2 y 88.1 por ciento para K5, K15, K30, K60, K90 y K150. TRES LECTURAS. (1) El techo generaliza: alrededor del 12 por ciento de PDBBind no tiene la conformacion bioactiva en el ensemble ETKDG ni con 150 conformeros, y eso es propiedad del metodo de embebido y no de la cohorte de 116. (2) CORRIGE A MF-02A: sobre los 116 la curva se aplanaba en 80.2 por ciento desde K60 y declare saturacion; sobre 4636 sigue subiendo alrededor de 1 punto por duplicacion (86.2 a 87.2 a 88.1), de modo que el plateau aparente era en parte artefacto del tamano de muestra. La conclusion cualitativa se mantiene -rendimientos decrecientes, 5x de coste de K30 a K150 para 4.2 puntos- pero la palabra satura era demasiado fuerte. (3) El conjunto de train es MAS DIFICIL que PDBBind en general: a K30 la disponibilidad es 83.9 por ciento en PDBBind frente a 77.6 en los 116, coherente con el gradiente train menor que val menor que test que encontro RC-F0-V2, lo que sugiere sesgo en como se armo la cohorte y no en el generador. Junto con MF-09, que mostro que en 30 de 33 complejos dificiles no existe pose buena entre 751 candidatas, las dos mediciones acotan el problema por ambos lados: el material conformacional suele estar disponible y el docking no lo coloca.

Métricas registradasRecorded metrics

duration_seconds
24898.03
n_total
5316
n_ok
4636
n_fallos
680
frac_conformacion_disponible_1A
0.6247
frac_conformacion_disponible_2A
0.8814
nota
Mide el techo conformacional, no la cobertura del oraculo. Un complejo con conformacion disponible y sin pose buena es fallo de busqueda o colocacion, no del ensemble: eso lo decide MF-02B.

ReproducibilidadReproducibility

commit
e3df898ab2 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
duraciónduration
6 h 55 min
complejoscomplexes
4636
fallosfailures
680
hashes SHA-256
5
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-09En 30 de 33 complejos, la pose correcta no está entre las 751 candidatasMediciónMeasurementArtículoPapern=48

Es muestreo, no puntuación. Ningún selector puede elegir algo que no existe. Y en el control ocurre lo contrario: la pose buena está y el score no la pone primera en 8 de 15.

Tras agotar las palancas geométricas —caja, reinicios, campo de fuerza— quedaba una pregunta que nadie había separado limpiamente. Cuando un complejo falla, puede ser por dos razones incompatibles:

  • Muestreo: entre todas las poses generadas no hay ninguna correcta. Ningún selector puede arreglarlo, porque no hay nada que elegir.
  • Puntuación: la pose correcta está ahí y el score no la elige. Hay margen de mejora en la selección.

Este experimento no computa nada nuevo. Lee el material ya sellado, sin parámetros libres, y responde.

La respuesta

Es muestreo.

En 30 de los 33 complejos dominados por colocación no existe ninguna pose a ≤2 Å entre una mediana de 751 candidatas.

Complejos que aciertan
Mirando el top-1 por score0
Mirando las 20 mejores2

No hay nada que seleccionar. Eso cierra la línea geométrica de golpe: ni la caja, ni los reinicios, ni el score son el factor limitante en esa cohorte. Con 86 confórmeros, 9 modos por corrida y tres tamaños de caja probados, el generador no visita la región correcta.

El hallazgo colateral, que vale más que la respuesta

En el estrato de control la historia es exactamente la opuesta:

Control (n=15)
Complejos con pose buena disponible15 de 15
Acierta el top-1 por score7
Acierta mirando el top-514

Hay un margen de selección de 8 complejos de 15 donde la pose correcta está disponible, el score no la pone primera, pero sí la deja entre las cinco primeras.

Y la correlación entre score y RMSD lo confirma: 0.483 en el control frente a 0.186 en la cohorte difícil.

El score ordena razonablemente donde hay señal, y es casi ciego donde no la hay.

Por qué esto reparte el esfuerzo al revés de como se venía haciendo

Esta es, medida por primera vez a nivel de pose, la descomposición que el programa exigía: el rendimiento global es el producto de dos factores independientes —cobertura del generador y precisión condicional del selector— y mejorarlos requiere trabajos distintos.

Durante meses se estuvo midiendo al selector sobre complejos que el generador nunca cubrió. En esos casos el selector no podía hacer nada, y su fracaso no informaba sobre el selector.

La conclusión operativa es concreta: mejorar el generador donde falla, y el selector donde hay material. Son dos problemas, no uno.

Ese margen de 8 de 15 es además el que después se convirtió en decisión de producto: entregar cinco poses en lugar de una sube la cobertura útil 13 puntos sin tocar el motor. La solución no era un selector mejor. Era dejar de fingir que hay que elegir una sola.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Tras agotar las palancas geometricas, separar las dos causas del fallo de colocacion: si entre todas las poses generadas no existe ninguna a <=2 A el problema es de muestreo y ningun selector puede arreglarlo; si existe pero el score no la elige, hay margen de seleccion
Criterio prerregistradoPre-registered criterion
Sin gates de aceptacion: es una medicion descriptiva
ProtocoloProtocol
Medicion sobre el material sellado de MF-02D + MF-02F, sin computo nuevo ni parametros libres; umbral 2.0 A y rmsd_pose_pocket heredados de la linea
Razón de la decisiónReason for the decision
Medicion descriptiva sin gates de aceptacion, declarada como tal: lee el material sellado de MF-02D y MF-02F sin computo nuevo ni parametros libres. RESPUESTA: es MUESTREO, no puntuacion. En 30 de los 33 complejos dominados por colocacion NO EXISTE ninguna pose a <=2 A entre una mediana de 751 candidatas, de modo que ningun selector puede elegir algo que no esta; el top-1 por score acierta en 0 y solo 2 complejos aciertan mirando las 20 mejores. Eso cierra la linea geometrica: ni la caja, ni los reinicios, ni el score son el factor limitante en esa cohorte — el generador no visita la region correcta con 86 conformeros, 9 modos y tres tamanos de caja probados. HALLAZGO COLATERAL DE MAS VALOR: en el control cubierto la historia es la opuesta. Los 15 tienen pose buena, el top-1 por score acierta en 7 y el top-5 en 14, de modo que hay un MARGEN DE SELECCION de 8 de 15 complejos donde la pose correcta esta disponible y el score no la pone primera pero si entre las cinco primeras. El Spearman entre score y RMSD es 0.483 en el control frente a 0.186 en la cohorte dificil: el score ordena razonablemente donde hay senal y es casi ciego donde no. Esto es la descomposicion cobertura por precision condicional de la seccion 9 medida por primera vez A NIVEL DE POSE, y reparte el esfuerzo al reves de como venia haciendose: mejorar el generador donde falla y el selector donde hay material, en vez de medir al selector sobre complejos que el generador nunca cubrio. Incidencia registrada: la primera version del analisis leia solo el directorio de MF-02F y perdia la mitad de las poses; corregida, el oraculo mediano coincide exactamente con el que MF-02F reporto por su propia via, y esa coincidencia verifica la union.

Métricas registradasRecorded metrics

duration_seconds
1.24
material
data\molflex_reinicios
umbral_A
2.0
n_complejos
48
n_ok
48

ReproducibilidadReproducibility

commit
a9934a2008 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
complejoscomplexes
48
hashes SHA-256
6
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-02FPasa el gate por el mínimo exacto, y el dosis-respuesta no acompañaHallazgoFindingArtículoPapern=48

El criterio exigía recuperar 3 complejos de 33. Recuperó exactamente 3. Un complejo menos habría sido NO_GO, y con n=3 el intervalo no soporta ninguna afirmación de tamaño de efecto.

MolFlex dockea cada confórmero por separado. Eso significa que el número de confórmeros no es sólo diversidad de formas: es también el número de reinicios de búsqueda independientes. Triplicarlo debería recuperar complejos cuyo fallo es de colocación y no de conformación, porque cada reinicio es otra oportunidad de caer en la cuenca correcta.

Es una relectura del mismo parámetro, y una de las pocas ideas que quedaban sin probar.

Qué pasó

El criterio preregistrado exigía recuperar al menos 3 de los 33 complejos dominados por colocación al pasar de 30 a 90 confórmeros.

Recuperó exactamente 3.

Pasa. Y hay que decir con claridad lo que eso vale: un solo complejo menos habría sido NO_GO. Con n=3 sobre 33, el intervalo de confianza no soporta ninguna afirmación sobre el tamaño del efecto. Es un GO que toca el listón, no que lo supera.

Tres advertencias que van con el sello

1. El punto de partida es tautológico. La cohorte se definió como los complejos que fallan con la configuración base, así que ese brazo marca 0 de 33 por construcción, no por medición. Es el mismo defecto que arrastraba MF-08, heredado al reutilizar la cohorte.

2. El dosis-respuesta no es suave, y eso debería preocupar:

SaltoComplejos recuperadosMovimiento de la mediana
29 → 58 confórmeros00.08 Å
58 → 86 confórmeros30.70 Å

Duplicar el número de reinicios no recuperó nada. El siguiente salto, más pequeño, recuperó tres. Con estos tamaños no se distingue un mecanismo con umbral del ruido de muestreo. Si el mecanismo fuera el postulado, la respuesta debería crecer de forma gradual con el número de reinicios, y no lo hace.

3. El coste se duplica —601 s por complejo— para recuperar el 9% de una cohorte difícil.

La coincidencia que parecía un hallazgo y no lo es

Los complejos recuperados por la intervención de caja (1d7i, 1ew9, 1l83) y los recuperados por esta (1ela, 1fkg, 1mu8) son disjuntos. La lectura tentadora es que las dos intervenciones son complementarias y que sumadas convertirían 6.

No lo es. La probabilidad de que dos conjuntos de 3 extraídos de 33 sean disjuntos por puro azar es 0.744. El solapamiento vacío es el resultado esperado bajo independencia, no evidencia de complementariedad. Y sumarlos a 6 está además prohibido por el prerregistro, precisamente para que no se hiciera esta cuenta.

Lo que sí es informativo, y apuntaba al final

La convergencia. Dos intervenciones ortogonales —una que reduce el espacio, otra que multiplica los intentos— sobre la misma cohorte mejoran la mediana del oráculo en 0.82 Å y 0.79 Å respectivamente, y ambas convierten exactamente 3.

Dos palancas distintas, mismo resultado, mismo techo. Eso no es coincidencia: es la firma de que las dos chocan contra el mismo obstáculo, que ninguna de ellas toca.

El obstáculo se identificó poco después: en 30 de esos 33 complejos no existe una pose correcta entre las ~751 candidatas. No hay nada que recuperar con más intentos ni con menos espacio, porque la región correcta nunca se visita.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
En MolFlex cada conformero es una corrida de docking independiente, de modo que n_conf es tambien el numero de reinicios de busqueda; subir de K30 a K90 debe recuperar complejos cuyo fallo es de colocacion
Criterio prerregistradoPre-registered criterion
G1 validez >=95%, G2 K90 recupera >=3 de 33 sobre K30 (umbral derivado de D-MF-HARD-CURVE), G3 saturacion informativa, G5 anidamiento exacto
ProtocoloProtocol
MF-02F-PRE sellado (f31823c); prefijos anidados de un unico ensemble de 90; K30 = material sellado de MF-02D
Razón de la decisiónReason for the decision
Pasa G2 por el MINIMO EXACTO: K90 recupera 3 de los 33 dominados por colocacion y el gate preregistrado exigia 3. Un solo complejo menos habria sido NO_GO, y con n=3 sobre 33 el intervalo de confianza no soporta ninguna afirmacion de tamano de efecto. Tres advertencias que acompanan al GO: (1) K30=0/33 es TAUTOLOGICO porque la cohorte se definio como los complejos que fallan con la configuracion base, mismo defecto que en MF-08 y arrastrado al reutilizar la cohorte; (2) el dosis-respuesta no es suave: duplicar de 29 a 58 conformeros no recupero NADA y movio la mediana 0.08 A, mientras pasar de 58 a 86 recupero 3 y la movio 0.70 A, y con estos n no se distingue un mecanismo con umbral del ruido de muestreo; (3) el coste se duplica (601 s por complejo) para recuperar el 9 por ciento de una cohorte dificil. Los conjuntos recuperados por MF-08 (1d7i, 1ew9, 1l83) y por MF-02F (1ela, 1fkg, 1mu8) son DISJUNTOS, pero eso NO es evidencia de complementariedad: la probabilidad de que dos conjuntos de 3 extraidos de 33 sean disjuntos por azar es 0.744, de modo que el solapamiento vacio es el resultado esperado bajo independencia. Sumarlos a 6 esta ademas prohibido por el prerregistro. La convergencia si es informativa: dos intervenciones ortogonales sobre la misma cohorte mejoran la mediana del oraculo 0.82 y 0.79 A respectivamente y ambas convierten exactamente 3; las poses se quedan en torno a 3 A y necesitan bajar de 2.0. Restringir la geometria y triplicar el presupuesto de muestreo chocan contra el mismo techo, lo que apunta a que el factor limitante no es la caja ni el numero de intentos, sino la funcion de puntuacion o el espacio que el generador explora. Este GO NO justifica subir K a 90 en produccion.

Métricas registradasRecorded metrics

duration_seconds
4237.3
n_complejos
48
n_ok
48
nota_monotonia
Con prefijos anidados K90 contiene a K60 y este a K30: la cobertura solo puede subir. La monotonia es tautologica y NO es evidencia (PRE seccion 4).
decision
GO

ReproducibilidadReproducibility

commit
6faec4dc24 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
duraciónduration
1 h 11 min
complejoscomplexes
48
hashes SHA-256
10
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-08El mecanismo existe, y le falta un orden de magnitudRefutaciónRefutationArtículoPaper

Apretar la caja de búsqueda sí mueve las poses en la dirección predicha, de forma monótona. Recupera 3 de 33 complejos cuando hacían falta 7, y ya no hay caja más pequeña que probar.

Cuando un ligando no acaba donde debe, una explicación natural es que tuvo demasiado sitio para deslizarse. La caja de búsqueda de un docking es un cubo alrededor del bolsillo, y si ese cubo es mucho mayor que la molécula, la búsqueda gasta su presupuesto explorando volumen que ninguna pose real ocuparía.

La predicción era concreta: apretar la caja hasta el mínimo que contiene al ligando con margen de solvatación debería recuperar al menos 7 de los 33 complejos que fallan.

Un defecto de diseño que se declara antes de dar el resultado

La cohorte se definió como los complejos que fallan bajo la caja de 25 Å. Eso hace que el brazo de 25 Å marque 0 de 33 por construcción, no por medición. Es un punto fijo tautológico, y su presencia invalida parcialmente el gate de monotonía que lo incluía.

Debí excluir ese brazo del gate, o definir la cohorte con un criterio independiente del brazo de referencia. No lo hice.

La decisión de este experimento no depende de ese defecto: el gate que falla es el de conversión, que se evalúa sobre brazos que no intervinieron en seleccionar la cohorte y no tiene sesgo de selección. Pero el defecto queda escrito aquí porque forma parte del registro.

Qué pasó

El gate falla. La caja adaptativa recupera 3 de los 33 complejos, frente a los 7 exigidos. La predicción declarada era que dejaría el subsitio fuera en 21 de 33; la distancia entre lo que parecía abordable y lo que se convirtió resultó mucho mayor de lo anticipado.

Y sin embargo, sobre los tres brazos limpios, el mecanismo es real y va en la dirección predicha:

BrazoMargen de deslizamientoOráculo mediano
Caja adaptativa2.83 Å3.180 Å
Caja de 20 Å3.62 Å3.224 Å
Caja de 30 Å8.60 Å4.004 Å

Monótono. Apretar la caja mejora 0.82 Å de 30 Å a adaptativa. La física que se postuló está ahí.

El problema es la escala. Esas poses están a 3.18 Å y necesitan bajar de 2.0 Å. Falta más de un ángstrom, y no hay caja menor que probar: la adaptativa ya es el mínimo que contiene al ligando con margen de solvatación. La palanca se agotó estando a un orden de magnitud del objetivo.

El mecanismo existe. Simplemente no es lo bastante grande.

Dos hallazgos útiles que no eran la pregunta

Apretar la caja no rompe nada. El estrato de control marca 15 de 15 en los cuatro brazos. Cero regresión.

Y es un 23% más barato: 425 s frente a 554 s por complejo.

Ese ahorro, sin embargo, sólo es cobrable si antes se resuelve otra cosa. REC-03 midió que el bolsillo top-1 que propone nuestro detector está a 8 Å de mediana del ligando real. Una caja apretada alrededor del centro equivocado es peor que una caja ancha alrededor del centro equivocado. La optimización de tamaño depende de una precisión de centro que todavía no tenemos.

Consecuencia para el programa

El fallo de colocación no es espacio para deslizarse. Esta era una de las tres palancas de la hipótesis original sobre por qué el generador no coloca, y queda cerrada.

Lo que quedaba era dar más intentos en vez de menos espacio, y eso lo probó MF-02F: recuperó otros 3 de 33 con una mediana de −0.79 Å. Casi el mismo resultado por un camino independiente, contra el mismo techo. Que dos palancas distintas mejoren lo mismo y se detengan en el mismo sitio fue la primera señal de que el obstáculo no era ninguna de las dos.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
El fallo de cobertura esta dominado por colocacion; apretar la caja reduce el margen de deslizamiento del ligando dentro del bolsillo y debe recuperar poses, con la caja adaptativa por ligando como mejor brazo
Criterio prerregistradoPre-registered criterion
G1 validez >=95%, G2 B_ADAPT recupera >=7 de 33, G3 monotonia en el margen de deslizamiento, G4 B_ADAPT pierde <=1 del control
ProtocoloProtocol
MF-08-PRE-R1 sellado (e6c551f); molflex congelado salvo BOX_SIZE parcheado dentro del worker; B25 reutiliza el material sellado de MF-02D
Razón de la decisiónReason for the decision
Falla G2: la caja adaptativa recupera 3 de los 33 dominados por colocacion frente a los 7 exigidos, cuando la prediccion declarada era que dejaria el subsitio fuera en 21 de 33. Excluir el decoy era necesario pero no suficiente, y asi estaba dicho, pero la brecha entre lo abordable y lo convertido es mucho mayor de lo anticipado. DEFECTO DE DISENO QUE SE DECLARA: la cohorte se definio como los complejos que fallan bajo B25, de modo que B25=0/33 es TAUTOLOGICO y no una medicion, lo que invalida parcialmente el gate G3 de monotonia por incluir un punto fijo por construccion; debi excluir B25 del gate o definir la cohorte con un criterio independiente del brazo de referencia. La decision NO_GO no depende de ese defecto: G2 falla por si solo y no tiene sesgo de seleccion. RESULTADO LIMPIO sobre los tres brazos que no intervinieron en seleccionar la cohorte: la mediana del oraculo es monotona en el margen de deslizamiento -3.18 A con B_ADAPT (margen 2.83), 3.224 con B20 (3.62), 4.004 con B30 (8.6)-, de modo que el mecanismo EXISTE y va en la direccion predicha, mejorando 0.82 A de B30 a B_ADAPT, pero es insuficiente por un orden de magnitud: esas poses estan a 3.18 A y necesitan bajar de 2.0, y no hay caja menor que probar porque B_ADAPT ya es el minimo que contiene al ligando con margen de solvatacion. Dos hallazgos utiles para produccion: apretar la caja NO rompe nada (15/15 del control en los cuatro brazos, cero regresion) y es 23 por ciento mas barato (425 s frente a 554 s), aunque el ahorro solo es cobrable si antes se resuelve la precision del centro, porque REC-03 midio el top-1 de MolPocket a 8 A de mediana del ligando. Consecuencia: el fallo de colocacion no es espacio para deslizarse; queda MF-02F, que da mas intentos en vez de menos espacio.

Métricas registradasRecorded metrics

duration_seconds
6856.66
n_corridas
144
n_ok
144
decision
NO_GO

ReproducibilidadReproducibility

commit
2cbd932fc9 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
duraciónduration
1 h 54 min
hashes SHA-256
9
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RC-F0-V2Reconstruir el conjunto entero para poder confiar en élHallazgoFindingArtículoPapern=203

34,302 poses sobre 203 complejos. Antes de añadir una sola se reprodujo el conjunto anterior línea a línea, y las 2,087 heredadas se recalcularon en vez de copiarse del caché.

Un conjunto de datos que crece por acumulación deja de ser un conjunto de datos y pasa a ser un sedimento. Las poses viejas vienen de una versión del generador, las nuevas de otra, y nadie puede decir qué parte de una diferencia medida se debe al método y qué parte a la geología.

Este experimento reconstruye el conjunto entero aplicando el generador congelado a los tres cortes de datos, para que todo lo que hay dentro venga del mismo sitio.

Los dos gates que sostienen los demás

Antes de generar nada nuevo hubo que demostrar dos cosas, y son las que dan valor a todo lo que vino después.

Reproducir el conjunto anterior línea a línea. Desde los registros intermedios, sin mirar el resultado final: 2,739 / 730 / 831 filas idénticas en los tres cortes, incluida la división por scaffold con su semilla. Si eso hubiera fallado, el conjunto anterior —y todo lo medido sobre él— habría quedado en entredicho.

Recalcular las poses heredadas en vez de copiarlas. Las 2,087 poses que sobreviven del conjunto anterior se volvieron a extraer desde el material crudo. Coincidieron 2,087 de 2,087.

Reusar el caché habría sido mucho más barato. Recalcular es lo que demuestra que el extractor sigue produciendo lo mismo hoy que el día que se ejecutó.

Qué pasó

Los siete gates pasan. El conjunto v2 tiene 34,302 poses con 224 características cada una, sobre 203 complejos: 2,087 conservadas y 32,215 nuevas.

La cobertura del oráculo —la fracción de complejos donde existe una pose correcta entre las candidatas— sube en los tres cortes:

CorteAntesDespués
train67.2%79.3%
val75.0%87.5%
test87.2%97.9%

Estas cifras coinciden exactamente con las medidas por una vía independiente sobre el material crudo: dos caminos de código distintos, el mismo número.

Tres consecuencias que se declaran, y una de ellas es incómoda

1. v2 no es v1 ampliado. La tarea cambia de ordenar unos 9 candidatos a ordenar unos 169. Queda prohibido comparar cifras del selector entre las dos versiones sin reentrenarlo: no es la misma tarea con más datos, es otra tarea.

2. El gradiente train < val < test persiste, y no es una buena noticia. 79.3 < 87.5 < 97.9. La división por scaffold concentró los scaffolds difíciles en train. Eso significa que un selector entrenado ahí y evaluado en test tiene el generador a favor, y esa ventaja no es suya. Cualquier cifra de rendimiento en test está inflada por una propiedad del corte de datos, no del modelo.

**3. test queda casi saturado**, con 46 de 47 complejos cubiertos. Ahí ya no hay techo de generación que ganar; lo que se mida será selección pura.

Lo que deliberadamente no se hizo

No se entrena ni evalúa ningún selector aquí. Este experimento construye el terreno; medir sobre él es otro experimento, y mezclarlos habría permitido ajustar el terreno en función del resultado.

Y no se aplicó la deduplicación de poses que ya estaba disponible, aunque habría hecho el conjunto más manejable. Su umbral de 1.5 Å se eligió sobre una unión 6.9 veces menos densa, y reusarlo aquí sería extrapolarlo a otro régimen sin comprobarlo. La re-derivación se hizo después, en su propio experimento, y dio un umbral distinto —2.0 Å— lo que confirma que aplicar el viejo habría sido un error.

Epílogo

Este conjunto se construyó para dar una segunda oportunidad al selector de poses: la hipótesis era que su fracaso anterior se debía a tener pocos candidatos que ordenar.

Se le dio 6.9 veces más material, y volvió a perder contra la puntuación cruda de Vina. El denominador no era el problema. Pero eso sólo se pudo afirmar porque el conjunto sobre el que se midió era reproducible línea a línea.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Reconstruir el conjunto de poses aplicando el generador congelado a los tres splits produce un conjunto homogeneo, con el contrato original reproducido linea a linea y cobertura del oraculo medible
Criterio prerregistradoPre-registered criterion
G1 reproduccion v1, G2 integridad cache, G2b reproduccion del extractor, G3 split conservado, G4 poses v1 intactas, G5 cobertura, G6 completitud
ProtocoloProtocol
RC-F0-V2-PRE sellado; build_pose_selector_dataset.py + ruta_c_fase1_5_v05.py reutilizados sin reimplementar; material de MF-02D y MF-02E
Razón de la decisiónReason for the decision
Los siete gates pasan. El conjunto v2 tiene 34302 poses con 224 features cada una: 2087 conservadas de v1 (flexible_redock 1534, ruta_a 553) y 32215 nuevas de molflex, sobre 203 complejos. Cobertura del oraculo: train 67.2 a 79.3, val 75.0 a 87.5, test 87.2 a 97.9 por ciento; las cifras coinciden EXACTAMENTE con las medidas por la via independiente sobre el material crudo, dos caminos de codigo distintos con el mismo numero. Los dos gates de reproduccion son los que sostienen todo lo demas: antes de anadir una sola pose se reprodujo el conjunto v1 linea a linea desde los registros intermedios (2739/730/831 identicos, incluida la division por scaffold con semilla 42), y las 2087 poses heredadas se RECALCULARON en vez de copiarse del cache, coincidiendo 2087/2087. Reusar el cache habria sido mas barato; recalcular demuestra que el extractor sigue produciendo lo mismo. Consecuencias declaradas: la tarea cambia de rankear ~9 candidatos a ~169, de modo que v2 no es v1 ampliado y queda prohibido comparar cifras de v0.6 entre ambos sin re-entrenar; el gradiente train < val < test persiste (79.3 < 87.5 < 97.9) porque el split por scaffold concentro los scaffolds dificiles en train, asi que un selector entrenado ahi y evaluado en test tiene el generador a favor y esa ventaja no es suya; y test queda casi saturado con 46 de 47, donde ya no hay techo de generacion que ganar. Fuera de alcance: no se entrena ni evalua ningun selector, y NO se aplica la deduplicacion de MF-11-R1 porque su umbral de 1.5 A se eligio sobre una union 6.9 veces menos densa y reusarlo sin re-derivarlo seria extrapolarlo a otro regimen.

Métricas registradasRecorded metrics

fuera_de_alcance
No se entrena ni evalua ningun selector. La deduplicacion de MF-11-R1 NO se aplica: su umbral de 1.5 A se eligio sobre la union v1 (2739 poses de train) y la v2 es 6.9x mas densa (18812); reusar el codigo es reutilizacion, reusar el umbral sin re-derivarlo seria extrapolarlo a otro regimen.
decision
GO

ReproducibilidadReproducibility

commit
95c44c64df (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
complejoscomplexes
203
hashes SHA-256
10
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-02F-PREEn MolFlex cada conformero es una corrida de docking independiente, de modo que n_conf es tambien el numero de reinicios de busqueda; subir de K30 a K90 debe recuperar complejos cuyo fallo es de colocacionPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
En MolFlex cada conformero es una corrida de docking independiente, de modo que n_conf es tambien el numero de reinicios de busqueda; subir de K30 a K90 debe recuperar complejos cuyo fallo es de colocacion
Criterio prerregistradoPre-registered criterion
G1 validez >=95%, G2 K90 recupera >=3 de 33 (umbral derivado de D-MF-HARD-CURVE), G3 saturacion informativa, G4 determinismo, G5 anidamiento exacto
ProtocoloProtocol
MF-02F-PRE/PREREGISTRO.md; corrige la lectura de MF-02A sobre el eje de muestreo; K30 reutiliza el material sellado de MF-02D via anidamiento verificado de prefijos ETKDG
Razón de la decisiónReason for the decision
Prerregistro sellado antes de ejecutar, y nace de una correccion de mi propia lectura. MF-02A midio el techo CONFORMACIONAL y de ahi escribi en docs/49 que anadir conformeros es la palanca equivocada; eso era demasiado fuerte y el registro sellado lo contradice. En MolFlex cada conformero es una corrida de docking independiente, de modo que n_conf tiene dos papeles y MF-02A solo midio uno. D-MF-HARD-CURVE mide el otro: cobertura hard 5.9 a 17.6 a 23.5 por ciento en K5/K15/K30, ganancia pareada K15 a K30 de -0.289 A con CI95 BCa que excluye el cero, y declara que NO hay saturacion; los controles saturan en K15 y los hard no. Nadie ha medido K60/K90 con docking, y el modo de fallo dominante es la colocacion, sobre la que mas reinicios es una intervencion legitima. Se verifico ANTES de disenar que el ensemble de 30 es prefijo byte-identico del de 90 en los complejos de prueba, lo que permite reutilizar el material sellado de MF-02D como brazo K30 sin recomputar y reduce el coste en un tercio. Se declara por adelantado lo que NO es evidencia: con prefijos anidados la cobertura solo puede subir, asi que la monotonia esta garantizada por construccion y presentarla como hallazgo seria describir una tautologia; lo informativo es la magnitud y el coste por complejo recuperado. El umbral de G2 se deriva del prior sellado y no se inventa: D-MF-HARD-CURVE gano 5.9 puntos al duplicar K15 a K30, y de K30 a K90 hay 1.58 duplicaciones, que a la misma tasa dan 3 de 33. Comparte cohorte con MF-08 y queda prohibido asumir que los efectos de ambos se suman.

ReproducibilidadReproducibility

commit
e6c551f78a (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
hashes SHA-256
7
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-08-PRE-R1Lo que la caja recorta es MARGEN DE DESLIZAMIENTO del ligando dentro del bolsillo, no un sitio competidor lejano; por eso la cobertura debe ser monotona en ese margen y la caja adaptativa por ligando (dimension + 4 A) debe ser el mejor brazoPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Lo que la caja recorta es MARGEN DE DESLIZAMIENTO del ligando dentro del bolsillo, no un sitio competidor lejano; por eso la cobertura debe ser monotona en ese margen y la caja adaptativa por ligando (dimension + 4 A) debe ser el mejor brazo
Criterio prerregistradoPre-registered criterion
G1 validez >=95%, G2 B_ADAPT recupera >=7 de 33, G3 monotonia B_ADAPT>=B20>=B25>=B30 en el margen de deslizamiento, G4 B_ADAPT pierde <=1 del control, G5 determinismo
ProtocoloProtocol
MF-08-PRE-R1/PREREGISTRO.md; sustituye a MF-08-PRE sin ejecutar; brazo B_ADAPT tomado de moldesign-app/docs/propuestas_de_mejora.md seccion 3 (julio 2026, anterior a estos resultados)
Razón de la decisiónReason for the decision
Sustituye a MF-08-PRE antes de ejecutarlo. El brazo adaptativo sale de la biblioteca del proyecto original (moldesign-app/docs/propuestas_de_mejora.md seccion 3, julio 2026): el mismo criterio fisico que MF-08-PRE derivo de forma independiente para descartar la caja de 15 A, pero mejor operacionalizado como lado por ligando en vez de fijo. El orden temporal importa: el criterio es anterior a los resultados, asi que incorporarlo no es ajustar el diseno mirando el desenlace. B_ADAPT excluye el subsitio en 21 de 33 frente a 19 de B20, no deja ningun ligando fuera, y ademas los 4 complejos excluidos a priori por no caber en 20 A si caben. G3 gana poder al pasar de tres a cuatro puntos ordenados por una variable fisica continua, el margen de deslizamiento (2.83 < 3.62 < 6.12 < 8.6 A). Se reformula el mecanismo con honestidad: los desplazamientos medidos son de 3 a 6 A, que no es acoplarse en otro sitio sino deslizarse dentro del mismo bolsillo; y se registran dos hipotesis alternativas REFUTADAS con datos antes de ejecutar -cofactores ausentes (16% de fallos vs 29% de cubiertos) y copia simetrica en multimero (30% vs 41%)-.

ReproducibilidadReproducibility

commit
ac242eec7e (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
hashes SHA-256
6
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-08-PREEl fallo de cobertura esta dominado por colocacion y no por conformacion; una caja de 25 A centrada en el ligando admite subsitios competidores que puntuan mejor, de modo que encoger a 20 A debe recuperar poses y agrandar a 30 A debe empeorarlasPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El fallo de cobertura esta dominado por colocacion y no por conformacion; una caja de 25 A centrada en el ligando admite subsitios competidores que puntuan mejor, de modo que encoger a 20 A debe recuperar poses y agrandar a 30 A debe empeorarlas
Criterio prerregistradoPre-registered criterion
G1 validez >=95%, G2 B20 recupera >=6 de 33, G3 monotonia B20>=B25>=B30 (mecanismo), G4 B20 pierde <=1 del control de 15, G5 determinismo
ProtocoloProtocol
MF-08-PRE/PREREGISTRO.md; refina MF-08 del doc 49 invirtiendo la direccion de la hipotesis; molflex congelado salvo BOX_SIZE; B25 reutiliza el material sellado de MF-02D
Razón de la decisiónReason for the decision
Prerregistro sellado antes de ejecutar, con la geometria computada y declarada. La descomposicion del error de la mejor pose alcanzable en los 116 de train muestra que en los 50 fallidos la colocacion domina en 33: mediana de colocacion 2.53 A frente a conformacion 1.89 A, con casos como 1dgm (conformacion 0.90, colocacion 3.85) donde el ligando tiene la forma correcta y esta en otro sitio. Eso invierte el enunciado original de MF-08: la caja no limita, es demasiado generosa. La caja de 15 A queda descartada POR FISICA y no por resultados: con radio mediano de ligando de 7.04 A, 32 de 116 ligandos no caben y se excluiria tambien la pose nativa. Con 20 A el subsitio decoy queda fuera en 19 de los 33, lista declarada por nombre; excluirlo es necesario pero no suficiente, asi que se espera menos de 19 y el gate exige 6. Se incluye el brazo B30 como PRUEBA DE FALSACION: si el mecanismo es competencia de sitios, agrandar debe empeorar, y si B30 no empeora el mecanismo es falso aunque B20 mejore. Cuatro complejos quedan excluidos a priori por no caber en 20 A. Declarado tambien que un GO NO transfiere a produccion: la caja esta centrada en el ligando cristalografico y REC-03 midio que el top-1 de MolPocket esta a 8 A de mediana del ligando, de modo que con ese error de centro una caja mas ajustada perderia la pose nativa mas a menudo.

ReproducibilidadReproducibility

commit
3e07fe51f4 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
hashes SHA-256
7
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER
mantenimientomaintenance
1 mantenimiento(s) declarados. El hash actual no acredita qué código produjo la cifra original.1 declared maintenance action(s). The current hash does not establish which code produced the original figure.

Enlace a este expedienteLink to this record

RC-F0-V2-PREEl conjunto de poses v1 se construyo con distinta politica de generacion segun el complejo (MolFlex en 13 de 116); reconstruirlo aplicando el generador congelado a los tres splits produce un conjunto homogeneo cuya cobertura del oraculo es medible y cuya tarea de ranking es la de produccionPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El conjunto de poses v1 se construyo con distinta politica de generacion segun el complejo (MolFlex en 13 de 116); reconstruirlo aplicando el generador congelado a los tres splits produce un conjunto homogeneo cuya cobertura del oraculo es medible y cuya tarea de ranking es la de produccion
Criterio prerregistradoPre-registered criterion
G1 reproduccion linea a linea de v1, G2 integridad del cache de features, G3 conservacion de split, G4 conservacion de etiquetas y features base de las poses v1 conservadas, G5 cobertura >= 79.3% en train y >= v1 por split, G6 cero poses sin features y cero NaN
ProtocoloProtocol
RC-F0-V2-PRE/PREREGISTRO.md; contrato original build_pose_selector_dataset.py + ruta_c_fase1_5_v05.py; gate de reproduccion superado antes de anadir poses
Razón de la decisiónReason for the decision
Prerregistro sellado antes de reconstruir. Declara tres decisiones de diseno y sus consecuencias: (1) se regenera en los TRES splits porque anadir poses solo a train pondria train y val/test en regimenes distintos -numero de candidatos, distribucion de cluster_density que no es invariante de escala, dificultad del ranking- y un selector medido asi mediria el cambio de regimen y no su capacidad; generar poses en val/test no es fuga porque no se ajusta nada ni se miran etiquetas para decidir, y D-RC-CONFIRM no se toca. (2) Entran TODAS las poses dockeadas, que es el contrato que ya tenia la fuente S2, con la consecuencia declarada de que la tarea cambia de rankear ~9 candidatos a ~180: v2 no es v1 ampliado sino una tarea distinta y mas parecida a produccion, y queda PROHIBIDO comparar cifras de v0.6 entre v1 y v2 sin re-entrenar. (3) La fuente molflex se regenera entera desde MF-02D/E porque el receptor con el que se calcularon las poses molflex de v1 ya no existe en disco y mezclarlas meteria una firma de procedencia dentro de una misma fuente. Dos gates ya estan superados y declarados: la reproduccion linea a linea de los tres splits v1 desde los registros intermedios (2739/730/831 identicos, incluida la division por scaffold con semilla 42) y la integridad del cache de 4300x215 features, cuyos SHA de splits coinciden. Fuera de alcance explicito: no se entrena ni evalua ningun selector.

ReproducibilidadReproducibility

commit
3e07fe51f4 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
hashes SHA-256
9
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-02B-R1El mismo dato de MF-02B, juzgado con la metrica que corresponde a poses dockeadas (rmsd_pose_pocket, sin alinear), da una recuperacion menor; el gate preregistrado de >=10 de 38 decide si la decision GO se sostieneCorrigendumCorrection noticen=50

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
CorrigendumCorrection notice · Corrección de un resultado propio cuyo valor principal es la corrección.Correction of an own result whose main value is the correction.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El mismo dato de MF-02B, juzgado con la metrica que corresponde a poses dockeadas (rmsd_pose_pocket, sin alinear), da una recuperacion menor; el gate preregistrado de >=10 de 38 decide si la decision GO se sostiene
Criterio prerregistradoPre-registered criterion
G2 original de MF-02B intacto: A8 recupera >=10 de los 38 sin cobertura, evaluado con la metrica corregida
ProtocoloProtocol
MF-02B-R1/PREREGISTRO.md; corrigendum de MF-02B (1af5dab) sobre el material de MF-02D, que lo reprodujo 38/38 sin discrepancias; nada se reejecuta
Razón de la decisiónReason for the decision
La decision GO de MF-02B se sostiene y su magnitud se corrige a la mitad. El gate preregistrado (A8 recupera >=10 de los 38) se evalua con la metrica corregida sin tocar el umbral: 14 recuperados, PASA. MF-02B habia contado 30 porque midio con rmsd_best_to_crystal de molflex, calculado con AllChem.GetBestRMS, que ALINEA las moleculas y mide geometria interna, mientras el conjunto de poses etiqueta con rmsd_pose_pocket, sin alinear, que mide si la pose esta en el sitio. El repositorio tenia la advertencia escrita desde el 2026-08-14 en el docstring de la funcion correcta. El sesgo mediano es 1.002 A y tiene signo conocido: 16 complejos pierden el estatus de recuperados y NINGUNO lo gana. Se recalculo sobre una definicion MAS generosa que la de MF-02B -minimo sobre las 17596 poses dockeadas en vez del top-K entregado- y aun asi el numero baja de 30 a 14, de modo que la correccion no depende de haber elegido un criterio mas estricto. Nada se reejecuto: MF-02D reprodujo MF-02B 38/38 sin discrepancias y conservo las poses. Cobertura del oraculo en train corregida: 67.2% -> 79.3% (+12 puntos, no +26). Sigue siendo cierto que MolFlex se habia aplicado a 13 de 116 complejos y que el conjunto sobre el que se evaluaron RS-01, RS-04-OOF y RS-08 estaba incompleto. MF-02A no esta afectado: alli el alineamiento es correcto a proposito porque mide disponibilidad conformacional, y asi se declaro antes de ejecutar. MF-02B queda sellado con sus cifras; este corrigendum dice cuales las sustituyen.

Métricas registradasRecorded metrics

corrigendum_de
MF-02B
material
MF-02D (reproduce MF-02B 38/38 sin discrepancias)
metrica_corregida
min rmsd_pose_pocket sobre TODAS las poses dockeadas (mas generosa que el top-K de MF-02B)
umbral_A
2.0
gate_G2_original
A8 recupera >=10 de los 38 sin cobertura
recuperados_mf02b_alineado
30
recuperados_corregido
14
de
38
gate_G2_pass_corregido
true
decision_mf02b_se_sostiene
true
control_alineado
9
control_corregido
8
sesgo_mediano_A
1.002
nota_sesgo
El RMSD alineado es siempre <= el de pocket: MF-02B solo podia sobreestimar.

ReproducibilidadReproducibility

commit
284db6b3e9 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
complejoscomplexes
50
hashes SHA-256
7
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER
mantenimientomaintenance
1 mantenimiento(s) declarados. El hash actual no acredita qué código produjo la cifra original.1 declared maintenance action(s). The current hash does not establish which code produced the original figure.

Enlace a este expedienteLink to this record

MF-02DLa métrica que alineaba las moléculas y borraba 12 complejosRefutaciónRefutationArtículoPapern=116

La cobertura estaba medida con un RMSD que alinea las dos moléculas antes de compararlas. Eso oculta desplazamientos: una pose a 7.83 Å del sitio real reportaba 2.755 Å.

Este experimento tenía que ser rutinario: aplicar el pipeline congelado a los 116 complejos de entrenamiento, dejar el material en disco, y reproducir un resultado anterior para demostrar que el pipeline no tiene variabilidad oculta.

Cuatro de sus cinco criterios pasan, y el producto se entrega: 116 de 116 complejos con material en disco, 17,596 poses dockeadas, mediana de 171 por complejo, cada una con su mapa de índices y su receptor.

La reproducción salió perfecta: 38 de 38 complejos comparables idénticos, sin ninguna discrepancia. El pipeline es determinista.

El quinto criterio falló, y ahí está lo que importa.

El número que no se sostuvo

El gate exigía una cobertura del oráculo de al menos 90%. Salió 79.3%.

El umbral del 90% se había fijado sobre una medición anterior que daba 93.1%. Esa cifra estaba mal medida.

La causa es una elección de métrica que parece inocua y no lo es. Hay dos formas de comparar una pose con el cristal:

MétricaQué haceQué oculta
RMSD con alineamientoSuperpone las dos moléculas antes de medirDónde está la pose
RMSD en marco de pocketCompara coordenada a coordenada, receptor fijoNada

La primera responde «¿tiene la forma correcta?». La segunda responde «¿está en el sitio correcto?». Para conformación libre, la primera es la adecuada. Para una pose dockeada, es justo la pregunta equivocada.

El caso que lo ilustra: el complejo 10gs reportaba 2.755 Å con alineamiento. Su pose entregada está a 7.83 Å del sitio bioactivo. La molécula tenía la forma correcta, en el sitio equivocado, y la métrica sólo miraba la forma.

La corrección, en números

Recalculando con la métrica correcta sobre el conjunto que realmente consume el pipeline:

Con la métrica equivocadaCon la correcta
Cobertura de train93.1%79.3%
Complejos recuperados3014
Ganancia declarada+26 puntos+12 puntos

Doce complejos que la métrica alineada contaba como cubiertos no se sostienen. La ganancia real es menos de la mitad de la anunciada.

Lo incómodo: ya estaba documentado

El repositorio tenía esto anotado como lección de una auditoría anterior. La advertencia estaba escrita, con el nombre de la función culpable, semanas antes de que este experimento la confirmara en datos.

Estaba escrita y no estaba comprobada por nada. Un aviso en un documento no impide que alguien llame a la función equivocada; sólo lo impide un test o una función única que haga lo correcto por defecto. De aquí sale la práctica de que la métrica de pose del programa tiene una sola implementación, documentada con la razón de por qué no usa alineamiento, y que cualquier implementación nueva se verifica contra ella.

Qué sobrevive y qué no

El material entregado es válido y no depende de la métrica: son poses en disco, con su procedencia. Nada de eso cambia.

Lo que no sobrevive es el número. Y como el número era la base de todo lo que se construyó encima —la reconstrucción del conjunto, la precisión condicional, la reapertura de la cartera de rescoring— todo eso tuvo que partir de 79.3% en vez de 93.1%.

Un NO_GO que entrega su producto y corrige la contabilidad del programa entero vale más que un GO que la deja mal.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
Aplicar el pipeline MolFlex congelado a los 116 de train conservando las poses produce el material de referencia del programa y reproduce el hallazgo de MF-02B
Criterio prerregistradoPre-registered criterion
G1 validez >=95%, G2 material en disco, G3 reproduccion de MF-02B sin discrepancias, G4 no regresion, G5 cobertura >=90%
ProtocoloProtocol
MF-02D-PRE sellado; molflex congelado docs/40 con --keep; metrica primaria rmsd_pose_pocket sobre todas las poses dockeadas
Razón de la decisiónReason for the decision
Cuatro de cinco gates pasan y el experimento entrega su producto: 116/116 complejos con material en disco (17596 poses dockeadas, mediana 171 por complejo, con index_map y receptor) y reproduccion EXACTA de MF-02B en los 38 complejos comparables, 38/38 sin discrepancias, lo que demuestra que el pipeline no tiene variabilidad oculta. Falla G5: la cobertura del oraculo de train con la union es 79.3%, por debajo del 90% exigido. El umbral se fijo sobre la cifra de MF-02B (93.1%), que estaba mal medida: MF-02B consumio rmsd_best_to_crystal de molflex, calculado con AllChem.GetBestRMS, que ALINEA las moleculas y oculta desplazamientos, mientras el dataset etiqueta con rmsd_pose_pocket, sin alinear. El repositorio ya lo tenia documentado como leccion de auditoria del 2026-08-14 y este experimento lo confirma en datos: 10gs reporta 2.755 A alineado y su pose entregada esta a 7.83 A del sitio bioactivo. Con la metrica correcta, sobre todas las poses dockeadas que es el conjunto que consume build_pose_selector_dataset fuente S2, la cobertura pasa de 67.2% a 79.3% (78 -> 92 de 116) y los recuperados son 14 y no 30; 12 complejos que la metrica alineada contaba no se sostienen. La ganancia real es de +12 puntos y no de +26. El material entregado es valido y no depende de la metrica; lo que no sobrevive es el numero, y todo lo que se construya encima -reconstruccion del dataset, precision condicional, reapertura de la cartera D- debe partir de 79.3%.

Métricas registradasRecorded metrics

duration_seconds
4842.55
n_complejos
116
n_ok
116
fuera_de_alcance
No reconstruye poses_train.jsonl con features ni evalua ningun selector: produce el material y mide la cobertura.
decision
NO_GO

ReproducibilidadReproducibility

commit
284db6b3e9 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
18 de agosto de 2026August 18, 2026
duraciónduration
1 h 21 min
complejoscomplexes
116
hashes SHA-256
11
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER
mantenimientomaintenance
1 mantenimiento(s) declarados. El hash actual no acredita qué código produjo la cifra original.1 declared maintenance action(s). The current hash does not establish which code produced the original figure.

Enlace a este expedienteLink to this record

MF-02D-PREAplicar el pipeline MolFlex congelado a los 116 de train conservando las poses produce el material de referencia del programa y reproduce el hallazgo de MF-02BPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Aplicar el pipeline MolFlex congelado a los 116 de train conservando las poses produce el material de referencia del programa y reproduce el hallazgo de MF-02B
Criterio prerregistradoPre-registered criterion
G1 validez >=95%, G2 material en disco, G3 reproduccion de MF-02B sin discrepancias, G4 no regresion, G5 cobertura >=90%
ProtocoloProtocol
MF-02D-PRE/PREREGISTRO.md; refina MF-02-PRE (a09b770); sustituye a MF-02C-PRE que no llego a ejecutarse; molflex congelado docs/40 con --keep
Razón de la decisiónReason for the decision
Prerregistro sellado antes de ejecutar. Corre los 116 y no solo los 66 que faltaban porque el pipeline es determinista y la reproduccion de MF-02B se convierte en gate G3, no en subproducto: un experimento que produce el material de referencia del programa debe demostrar que reproduce el hallazgo que lo motivo. Documenta que MF-02C-PRE queda sellado y sin ejecucion porque su runner descartaba las poses, y que un prerregistro superado se documenta y no se reescribe. Declara fuera de alcance la reconstruccion del dataset de features y toda evaluacion de selector.

ReproducibilidadReproducibility

commit
1af5dab5b2 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
hashes SHA-256
5
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-02C-PRECompletar la aplicacion del pipeline MolFlex congelado a los 66 complejos de train que no corrieron en MF-02B deja el conjunto homogeneo sin degradar la cobertura del oraculoPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Completar la aplicacion del pipeline MolFlex congelado a los 66 complejos de train que no corrieron en MF-02B deja el conjunto homogeneo sin degradar la cobertura del oraculo
Criterio prerregistradoPre-registered criterion
G1 validez >=95%, G2 no regresion de la union, G3 cobertura de train >=90%
ProtocoloProtocol
MF-02C-PRE/PREREGISTRO.md; refina MF-02-PRE sellado (a09b770); reutiliza sin modificar el runner sellado de MF-02B (1af5dab)
Razón de la decisiónReason for the decision
Prerregistro sellado antes de ejecutar: cohorte de 66 (los de train que no corrieron en MF-02B), protocolo byte-identico por reutilizacion del runner sellado, metrica de union nunca sustitucion, y tres gates. Se declara explicitamente fuera de alcance la reconstruccion de poses_train.jsonl con features y cualquier medicion de precision condicional o de selector, para que el GO no se lea como que el dataset ya esta reconstruido.

ReproducibilidadReproducibility

commit
1af5dab5b2 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-02BAplicar el pipeline MolFlex congelado a los complejos de train que nunca lo recibieron recupera cobertura del oraculo que el conjunto sellado no teniaMediciónMeasurementn=50

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Aplicar el pipeline MolFlex congelado a los complejos de train que nunca lo recibieron recupera cobertura del oraculo que el conjunto sellado no tenia
Criterio prerregistradoPre-registered criterion
G1 validez >=95%, G2 recuperacion >=10 de 38 con A8, G3 no regresion de la union, G4 determinismo, G5 coste descriptivo
ProtocoloProtocol
MF-02-PRE sellado (a09b770, maintain cd1c39a); molflex.py protocolo congelado docs/40 con n_conf=30, caja 25 A, exhaustiveness=8, semillas 42; Vina 1.2.7 local
Razón de la decisiónReason for the decision
Los cinco gates pasan. G2 primario: A8 entrega pose <=2.0 A en 30 de los 38 complejos sin cobertura, muy por encima del umbral preregistrado de 10. La cobertura del oraculo de train sube de 67.2% a 93.1% (78/116 -> 108/116) ejecutando el pipeline MolFlex CONGELADO, sin cambiar un parametro. En los 38, el mejor RMSD entregado baja de mediana 4.234 A a 1.433 A (mejora mediana 2.56 A, maxima 8.92 A); de los 32 que no tenian ninguna pose de MolFlex en el conjunto sellado se recuperan 27. Control: A8 entrega <=2 A en 9 de 12, mejora el mejor RMSD en 7 de 12 y no pierde cobertura en ninguno, confirmando que la fuente se anade a la union y no la sustituye. Determinismo exacto 2/2, validez 50/50, coste mediana 344 s por complejo (11 h de CPU para reconstruir los 116, ~1.1 h de reloj con 10 procesos). Los 8 no recuperados son casi-aciertos entre 2.2 y 3.1 A y todos mejoran sobre el dataset; dos de ellos (1a4w, 1elb) ya estaban marcados por MF-02A como techo conformacional duro. Consecuencia registrada: el conjunto de poses sobre el que se evaluaron RS-01, RS-04-OOF y RS-08 se construyo sin la salida de MolFlex en el 89% de los complejos, de modo que esos experimentos midieron Top-1 global sobre un universo con un tercio inganable por construccion. No los reabre —cada uno tiene su gate sellado— pero cambia el denominador que la seccion 19.1 exige para reabrir la cartera. Declarado antes de ejecutar y se repite aqui: anadir una fuente a una union SOLO puede subir la cobertura; el hallazgo es cuanto sube, a que coste, y que la fuente no estaba. Este GO no dice nada sobre el selector: la precision condicional sobre el conjunto ampliado sigue sin medirse y exige su propio prerregistro.

Métricas registradasRecorded metrics

duration_seconds
2536.01
n_corridas
50
n_ok
50
recuperados_A8
30
de_sin_cobertura
38
recuperados_A32
0
control_A8_entrega
9
control_n
12
cobertura_oraculo_antes
0.6724
cobertura_oraculo_despues_A8
0.931
decision
GO

ReproducibilidadReproducibility

commit
cd1c39ac34 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
duraciónduration
42 min
complejoscomplexes
50
hashes SHA-256
9
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-02-PRELa falta de pose buena en 38 de 116 complejos de train se descompone en techo conformacional (el ensemble ETKDG nunca tuvo la conformacion bioactiva) y fallo de aplicacion/busqueda del generador; medirlos por separado decide donde esta la palancaPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La falta de pose buena en 38 de 116 complejos de train se descompone en techo conformacional (el ensemble ETKDG nunca tuvo la conformacion bioactiva) y fallo de aplicacion/busqueda del generador; medirlos por separado decide donde esta la palanca
Criterio prerregistradoPre-registered criterion
MF-02A y MF-02A-EXT son mediciones sin gates. MF-02B: G1 validez >=95%, G2 recuperacion >=10 de 38 con A8, G3 no regresion de la union, G4 determinismo, G5 coste descriptivo
ProtocoloProtocol
MF-02-PRE/PREREGISTRO.md refina MF-02 del doc 49 seccion 8; MF-02A ejecutado y declarado como condicion de partida (precedente REC-07 seccion 6); MF-02A-EXT en contenedor Ubuntu; MF-02B con Vina local
Razón de la decisiónReason for the decision
Prerregistro maestro sellado antes de ejecutar MF-02A-EXT y MF-02B. Declara como condicion de partida dos mediciones ya hechas: (1) la descomposicion obligatoria del doc 49 seccion 9, calculada por primera vez — cobertura del oraculo 67.2% en train y 87.2% en test, precision condicional 61.5% y 61.0%, de modo que toda la diferencia de Top-1 entre train y test la explica el generador y no el selector, y en 38 de 116 complejos no existe pose que seleccionar; (2) MF-02A, el techo conformacional del ensemble ETKDG, que satura entre 60 y 90 conformeros: pasar de 30 a 150 compra 2.6 puntos, y de los 38 sin cobertura 32 YA tienen la conformacion disponible con n_conf=30, solo 1 se rescata con 150 y 5 tienen techo duro. Ademas el grupo sin cobertura tiene MEJOR disponibilidad conformacional que el cubierto (84% vs 74%): la disponibilidad conformacional no discrimina. Tercera condicion declarada: MolFlex solo se aplico a 13 de los 116 complejos, y en el caso de calibracion 1nki —listado sin cobertura, mejor pose del dataset 2.067 A— el pipeline congelado entrega hoy 0.199 A en 6.4 s. Queda prohibido concluir del eje conformacional nada sobre el selector y usar la disponibilidad conformacional como filtro de cohortes futuras sin declararlo.

ReproducibilidadReproducibility

commit
99b630cbf1 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
hashes SHA-256
8
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER
mantenimientomaintenance
1 mantenimiento(s) declarados. El hash actual no acredita qué código produjo la cifra original.1 declared maintenance action(s). The current hash does not establish which code produced the original figure.

Enlace a este expedienteLink to this record

REC-03Reparar el catálogo rompió dos objetivos sanosRefutaciónRefutationArtículoPapern=31

El grid por predicción de pocket repara 6 de los objetivos accionables. En el control pierde dos que funcionaban, y no los pierde por poco: de 1.338 Å a 61.07 Å.

La auditoría del catálogo había encontrado 57 objetivos con la caja de búsqueda mal colocada. La pregunta natural es si se pueden reparar automáticamente: sustituir el grid del catálogo por uno derivado de predicción de pocket, que no necesita conocer el ligando.

Si funcionara, sería un arreglo de una sola pasada para un problema de curación manual que de otro modo se hace objetivo por objetivo.

Qué pasó

El criterio de reparación pasa. El grid por predicción repara 6 de los objetivos accionables. El techo geométrico declarado antes era de 9 sobre los 19 evaluables, así que alcanza el 67% de lo que la geometría permitía.

Y repara donde tenía sentido: 5 de las 6 reparaciones son de casos donde la caja del catálogo contenía parcialmente el ligando. Donde la caja estaba completamente fuera, no repara nada. El mecanismo se comporta como se esperaba.

El criterio de no regresión falla, y falla mal. En el grupo de control, el grid nuevo conserva 4 de los 6 objetivos que el catálogo tenía bien, por debajo de los 5 exigidos.

Las dos pérdidas no son marginales:

ObjetivoCon el catálogoCon el grid nuevo
2H021.338 Å61.07 Å
7JVU1.976 Å13.09 Å

Sesenta y un ángstroms. No es una degradación: es colocar el ligando en otra parte de la proteína.

Esa asimetría es la que decide. Un arreglo automático que repara 6 y destruye 2 de forma catastrófica no es un arreglo — es cambiar un conjunto conocido de fallos por uno desconocido.

El fallo de validez, y por qué no se interpretó

La validez salió en 87.1% (324 de 372), por debajo del 98% exigido. Pero no falló de forma difusa, que sería lo preocupante: falló entera y exclusivamente en 4 objetivos que perdieron sus 12 corridas cada uno, mientras los otros 27 dieron 324 de 324 válidas.

Las causas están diagnosticadas una a una:

  • 3MG0 lleva boro, y Vina no tiene tipo de átomo para B. Es un límite del motor, no del experimento.
  • 6MWA (37 torsiones), 7E2Y (43) y 4CA8 (20 torsiones, 56 átomos) agotaron el tiempo límite de 1800 s.

Como los 4 caen igual en los cuatro brazos, no distorsionan la comparación. Aun así el prerregistro es explícito: un fallo de validez obliga a repetir, no a interpretar. Así que no se emite ningún claim positivo sobre el criterio de reparación, aunque haya pasado.

Es la clase de regla que cuesta respetar cuando el resultado que se pierde es favorable.

Una calibración que nadie buscaba

Como control se dockeó con la caja exacta del catálogo, centrada a 0.00 Å del ligando — la mejor caja posible por construcción. El re-docking acierta en 6 de 8 objetivos sanos.

Un 75% con información perfecta sobre dónde está el ligando. Ese techo es del motor, no del catálogo. Ninguna mejora de grids puede superarlo, y conviene tenerlo presente antes de atribuir a la caja fallos que son del docking.

Conclusión registrada

La reparación automática global del catálogo por predicción de pocket no es viable con este motor. Los objetivos accionables siguen siendo deuda de curación manual, uno a uno.

Es coherente con REC-07, que había llegado a lo mismo desde el otro lado: la geometría del grid no es buen predictor de la calidad del docking, ni para condenar un grid ni para reemplazarlo.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
Un grid derivado de prediccion de pocket ligando-libre (MolPocket) repara el docking que el catalogo pierde en la cohorte accionable de REC-01-R1, sin degradar los targets sanos
Criterio prerregistradoPre-registered criterion
5 gates: G1 validez >=98%, G2 solo lectura del catalogo, G3 reparacion >=5 de 25 accionables, G4 no regresion >=70% del control, G5 determinismo
ProtocoloProtocol
REC-03-PRE sellado (78bb65d, maintain ff806cc); entradas selladas REC-01-R1 y geometria_preflight.json; Vina 1.2.7 local, 4 cajas por target, 3 semillas
Razón de la decisiónReason for the decision
Fallan dos gates. G4 (no regresion) FAIL: en el control G_MP_SCORE conserva 4 de los 6 targets que repara G_CAT, por debajo de los 5 exigidos, y las dos perdidas son catastroficas (2H02 pasa de 1.338 a 61.07 A; 7JVU de 1.976 a 13.09 A). G1 (validez) FAIL: 87.1% (324/372), por debajo del 98% exigido. La validez no fallo de forma difusa: fallo entera y exclusivamente en 4 targets que perdieron sus 12 corridas cada uno mientras los otros 27 dieron 324/324 validas; como los 4 caen igual en los 4 brazos no distorsionan la comparacion, pero el prerregistro es explicito en que un fallo de validez obliga a repetir y no a interpretar, de modo que NO se emite claim. Causas diagnosticadas: 3MG0 lleva boro y Vina no tiene tipo de atomo para B (limite del motor); 6MWA (37 torsiones), 7E2Y (43) y 4CA8 (20 torsiones, 56 atomos) agotaron el timeout de 1800 s. G3 (reparacion) PASS: G_MP_SCORE repara 6 accionables, y de los 19 evaluables el techo geometrico declarado era 9, de modo que alcanza el 67% de lo que la geometria permitia; se repara donde el catalogo contenia parcialmente el ligando (5 de 6 son S2_GRAVE) y no donde la caja estaba completamente fuera. G_CAT repara 0 de 21 accionables, resultado ya determinado por construccion y declarado en el prerregistro. G5 determinismo PASS 4/4 identicos. Calibracion no buscada: con la caja exacta del catalogo, centrada a 0.00 A del ligando, el re-docking solo acierta en 6 de 8 targets sanos (75%): ese techo es del motor, no del catalogo. Conclusion registrada: la reparacion automatica global del catalogo por prediccion de pocket NO es viable con este motor; los 25 accionables siguen siendo deuda de curacion por target. Coherente con REC-07: la geometria del grid no es buen predictor de la calidad del docking, ni para condenar un grid ni para reemplazarlo.

Métricas registradasRecorded metrics

duration_seconds
17309.67
n_corridas
372
n_validas
324
decision
NO_GO

ReproducibilidadReproducibility

commit
ff806cc9f6 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
duraciónduration
4 h 49 min
complejoscomplexes
31
fallosfailures
54
hashes SHA-256
10
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-03-PARAM-BDos métodos de carga, y hasta 216 kJ/mol de diferenciaHallazgoFindingArtículoPapern=115

El método rápido y el de referencia difieren 0.0118 e por átomo de mediana. Traducido a energía: 24.3 kJ/mol de mediana y 216.4 de máximo, que es del orden de lo que un rescoring pretende resolver.

El experimento anterior parametrizó los 116 ligandos con un método de cargas rápido, basado en red neuronal. Este los parametriza otra vez con el método de referencia —lento, semi-empírico, el estándar del campo— y compara.

La comparación tiene una regla escrita antes de empezar, y es lo primero que hay que decir:

Prohibido concluir sobre el método rápido desde este experimento. Esto es caracterización, no selección. La decisión se toma en un tercer experimento que agrega ambos contra el contrato declarado.

Sin esa regla, este experimento sería un juez que se nombra a sí mismo: se elige un método de referencia, se mide la discrepancia, y luego se decide a posteriori qué discrepancia era aceptable.

El mapeo, verificado en vez de asumido

Comparar cargas átomo por átomo exige saber qué átomo de un cálculo corresponde a qué átomo del otro. La versión anterior del código lo asumía por índice, que funciona hasta que un preparador reordena los átomos y entonces compara silenciosamente el carbono 3 con el oxígeno 7.

Aquí se verificó elemento a elemento y por coordenadas: 115 de 115, con desplazamiento máximo de 0.0005 Å. Ese cambio de «asumido» a «verificado» es la razón por la que las cifras de abajo significan algo.

Qué salió

Diferencia de carga por átomoValor
Media0.0142 e
Mediana0.0118 e
Máximo0.4255 e
Ligandos con algún átomo por encima de 0.2 e13 de 115

Traducido a energía de punto único:

Valor
Mediana24.3 kJ/mol
Máximo216.4 kJ/mol

Ese número es el que importa, y por eso está en el titular: 24 kJ/mol de mediana es del orden de magnitud de lo que un rescoring pretende resolver. La elección de método de cargas no es un detalle de implementación — es comparable al efecto que se quiere medir.

Dónde divergen más

La discrepancia no es uniforme, y su estructura es químicamente sensata:

EstratoDiferencia media por átomo
Azufre y fósforo0.0168 e ← contiene el máximo global
Resto0.0125 e
Fragmentos0.0107 e
Drug-like0.0155 e
Menos de 5 enlaces rotables0.0113 e
Más de 10 rotables0.0157 e

La divergencia crece con el tamaño y la flexibilidad, y es mayor en los elementos de la tercera fila. Eso es coherente con lo que se sabe de estos métodos: los modelos entrenados generalizan peor en química menos representada y en moléculas más grandes.

Es decir: divergen más justo donde el proyecto trabaja.

Los fallos, separados por causa

Uno solo es real: un ligando donde el método de referencia no converge. Es un fallo químico, no de presupuesto, y se declara como tal.

Los otros cuatro no eran fallos. Fueron tiempos de espera agotados en la primera ejecución, y se diagnosticaron como artefacto de haber lanzado tres particiones simultáneas en cuatro núcleos. Ejecutados en solitario con más margen, se recuperaron los cuatro.

Distinguir esas dos categorías importa: contar los cuatro como fallos químicos habría inflado la tasa de fallo del método de referencia y sesgado la comparación a favor del rápido.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La referencia AM1-BCC estratificada (antechamber+sqm) caracteriza descriptivamente las cargas NAGL nativas de RS-03-PARAM-A sobre los 116 ligandos train, sin ser selector ni criterio de aceptacion
Criterio prerregistradoPre-registered criterion
Completitud del reporte (no aceptacion/rechazo de NAGL): cohorte de A, conservacion de carga reportada, |q_NAGL - q_AM1BCC| por atomo sobre mapeo biyectivo verificado, carga molecular, dipolo, estabilidad de energias, todo estratificado por los 6 estratos; prohibido concluir sobre NAGL desde B
ProtocoloProtocol
RS-03-PARAM-B-PRE sellado (147abb1) que refina el PRE maestro RS-03-PARAM-PRE (7dfa3b8); contenedor Ubuntu moldesign-science en <host-interno>, 3 shards disjuntos + 1 shard de reintento
Razón de la decisiónReason for the decision
Gate de completitud del reporte cumplido (B es caracterizacion, no selector): cobertura 115/116 (99.14%) de la cohorte de A; mapeo biyectivo VERIFICADO elemento a elemento y por coordenadas en 115/115 con max|dr|=0.0005 A, no asumido por indice como en el runner anterior; conservacion de carga de AM1-BCC max |sum q - formal| = 0.006 e; energia finita y serializable con Sage 2.2.1 en 115/115 para ambos juegos de cargas; dipolo reportado para NAGL y AM1-BCC; todo estratificado por los 6 estratos del PRE maestro. Diferencia NAGL vs AM1-BCC: |dq| por atomo medio 0.0142 e, mediana 0.0118 e, maximo 0.4255 e, con 13 de 115 ligandos por encima de 0.2 e en algun atomo; |dE| de punto unico mediana 24.3 kJ/mol y maxima 216.4 kJ/mol, que es del orden de lo que un rescoring pretende resolver. Estratos: azufre/fosforo divergen mas (0.0168 vs 0.0125 e) y contienen el maximo global; la divergencia crece con tamano y flexibilidad (fragmentos 0.0107 -> drug-like 0.0155; <5 rotables 0.0113 -> >10 rotables 0.0157). El unico fallo, 1nw5, es quimico real (sqm no converge) y no de presupuesto. Los 4 timeouts de la primera fusion eran artefacto de la contencion de 3 shards en 4 cores y se recuperaron en solitario con 2400 s. PROHIBIDO concluir sobre NAGL desde B: la decision es de RS-03-PARAM agregando A y B contra el contrato del PRE maestro.

Métricas registradasRecorded metrics

decision
GO
cohorte
116 ligandos train (PASS de RS-03-PARAM-A)
n_total
116
n_passed
115
n_failed
1
coverage_vs_a
0.9914
global_abs_dq_mean_e
0.0142
global_abs_dq_max_e
0.4255
max_delta_q_am1bcc_vs_formal_e
0.006
max_delta_mol_charge_e
0.006003
n_atom_order_match
115
max_atom_order_dr_angstrom
0.0005
n_energy_finite
115
mean_delta_dipolo_debye
0.711696
max_delta_dipolo_debye
3.738964
mean_abs_delta_energy_kjmol
33.616575
max_abs_delta_energy_kjmol
216.359104
nota_fusion
Union de 3 shards disjuntos (RS-03-PARAM-B-S1..S3), 116 pids sin solapamiento, mas el shard de reintento S4 en solitario (timeout 2400 s) para los ligandos que agotaron 1200 s bajo la contencion de los 3 shards simultaneos. Un PASS del reintento solo sustituye a un FAIL previo del mismo pid. Recalculo completo tras la incidencia de sobreescritura del 2026-08-17.
nota_selector
AM1-BCC es referencia estratificada, no verdad absoluta. PROHIBIDO seleccionar NAGL por RMSD ni Top-1 (PRE maestro §4). Sin gate de aceptacion/rechazo de NAGL.
garantia_cuarentena
cero val40/test/D-RC-CONFIRM; cohorte = 116 train PASS de A

ReproducibilidadReproducibility

commit
9e92df4382 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
duraciónduration
8 h 25 min
complejoscomplexes
115
fallosfailures
1
hashes SHA-256
20
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-07El grid roto no estaba roto donde importaRefutaciónRefutationArtículoPapern=15

Un grid con 3 de 15 hotspots recortados y un margen de −5.147 Å debería arruinar el docking. Coloca el inhibidor en contacto con la cisteína catalítica en 5 de 5 semillas, mediana 0.773 Å.

5TUN llevaba tiempo documentado como el caso testigo de grid defectuoso: la caja de búsqueda recortaba 3 de sus 15 hotspots, con un margen mínimo de −5.147 Å. Había incluso una corrección propuesta.

Antes de aplicarla, este experimento hizo la pregunta que nadie había hecho: ¿el defecto geométrico se traduce en un fallo de docking?

Para responderla hacía falta un control real, no una métrica geométrica. Se usó E64c, el inhibidor canónico de cisteína-proteasas, extraído de un homólogo. Si el grid funciona, la pose ganadora debe quedar en contacto con la cisteína catalítica, que es donde ese inhibidor se une por mecanismo conocido.

Qué pasó

GridContacto con la cisteína catalíticaDistancia mediana
Catálogo (el "roto")5 de 5 semillas0.773 Å
Caja adaptativa propuesta4 de 5 semillas—
Predicción de pocket5 de 5 semillas—

El grid del catálogo, el que la auditoría había marcado como defectuoso, coloca el ligando correctamente en las cinco semillas.

Seis de los siete criterios pasan. Falla el de no regresión: el grid recomendado logra contacto en 4 de 5 semillas frente a 5 de 5 del actual. La regla congelada exige los siete para un cambio, así que no se recomienda cambiar el grid de 5TUN.

El único fallo, diagnosticado

La semilla 45 del brazo adaptativo puso su pose ganadora a 12.89 Å. Parece una regresión real hasta que se mira el resto de esa misma corrida: el mejor de sus 9 modos queda a 2.09 Å. La pose correcta se generó; el ranking la puso en otro sitio.

Es fluctuación de muestreo, no un defecto del grid. Queda anotado como tal.

Una tentación declinada

El grid basado en predicción de pocket tiene el mejor score mediano de los tres: −6.182 frente a −5.095 del catálogo, con contacto en 5 de 5.

Sería el ganador si el score decidiera. El prerregistro prohíbe explícitamente usar el score para elegir el grid, porque un score mejor sobre una caja distinta no es comparable: cambiar la caja cambia el espacio de búsqueda, y una caja más ajustada puede dar mejores números sin colocar mejor.

El criterio era el contacto catalítico, se fijó antes, y no se cambió al ver los resultados.

Un fallo de preparación que se corrigió sin tocar el criterio

La primera ejecución pasó el PDB crudo al preparador, conservó las 387 aguas de la estructura y devolvió scores positivos de +23 a +33 con sólo 1 a 5 modos. El criterio de validez lo marcó como fallo automáticamente.

Se corrigió la preparación y se repitió la tanda completa sin tocar ningún criterio de decisión. Ese orden importa: arreglar el instrumento y volver a medir es legítimo; arreglar el instrumento y de paso ajustar el umbral, no.

Consecuencia para el programa

Es el hallazgo que reordena la cartera de receptor:

Una excepción geométrica del catálogo no implica un fallo de docking.

La cola de 57 objetivos que la auditoría había marcado es una lista a verificar, no una lista de objetivos rotos. Sin este experimento se habrían "reparado" grids que funcionaban, con el riesgo de romper los que estaban bien — que es exactamente lo que midió después REC-03, donde la reparación automática perdió dos objetivos sanos de forma catastrófica.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
El grid APO de 5TUN puede corregirse sin regresion. La correccion propuesta en doc 35 (G_MP de MolPocket) contiene los 15 hotspots pero se ALEJA del nucleofilo catalitico Cys25; una caja adaptativa minima que contenga los 15 hotspots mas la triada catalitica (G_ADAPT) los contiene todos, esta mas cerca de Cys25 que ambas alternativas y ocupa menos volumen que G_MP. Un control de docking con E64c (inhibidor canonico de cisteina-proteasas, extraido del homologo 1ITO) debe situar la pose top-1 en contacto con Cys25 SG bajo el grid aceptado.
Criterio prerregistradoPre-registered criterion
G1 contencion: el grid aceptado contiene 15/15 hotspots y 3/3 residuos de la triada catalitica; G2 ancla: no mas lejos de Cys25 SG que el grid actual del catalogo; G3 validez de docking: rc=0, archivo no vacio, 1<=modos<=9, scores finitos de REMARK VINA RESULT, geometria parseable en todas las corridas; G4 contacto catalitico: pose top-1 de E64c a <=5.0 A de Cys25 SG en al menos 3 de 5 semillas; G5 no regresion frente a G_DB en la metrica de contacto; G6 determinismo por semilla; G7 solo lectura, cero escrituras en catalogo o DB
ProtocoloProtocol
docs/49_PROGRAMA_EXPERIMENTAL_CIENTIFICO.md seccion 7 (Cartera B, REC-07); docs/35_GRID_APO_5TUN_PENDIENTE.md; consume la evidencia sellada de REC-01-R1 (5TUN con E8, margen -5.147 A)
Razón de la decisiónReason for the decision
6 de 7 gates pasan pero G5 (no regresion) falla: el grid recomendado G_ADAPT logra contacto catalitico en 4 de 5 semillas frente a 5 de 5 del grid del catalogo G_DB, y la regla congelada exige los siete gates para un GO. No se recomienda cambio de grid para 5TUN. El hallazgo sustantivo es que el defecto geometrico detectado por la auditoria (3 de 15 hotspots recortados, margen_min -5.147 A) NO se traduce en fallo de docking: G_DB pone el ligando E64c en contacto con Cys25 SG en las 5 semillas, mediana 0.773 A. El unico fallo de contacto de la tabla es de G_ADAPT en la semilla 45 (top-1 a 12.89 A) y es fluctuacion de muestreo, no del grid: el mejor de los 9 modos de esa misma corrida queda a 2.09 A. G_MP tiene el mejor score mediano (-6.182 vs -5.095) y contacto 5/5, pero el prerregistro seccion 6 prohibe usar el score para elegir el grid. G6 determinismo PASS: misma semilla reproduce score y distancia identicos en los 3 brazos. Incidencia registrada: la primera ejecucion paso el PDB crudo a Meeko, conservo las 387 aguas y devolvio scores positivos (+23 a +33) con 1-5 modos; G3 la marco FAIL, se corrigio la preparacion y se repitio la tanda completa sin tocar ningun criterio de decision. Consecuencia para el programa: una excepcion geometrica del catalogo no implica un fallo de docking, y la cola de 57 targets de REC-01 es una lista a verificar, no una lista de targets rotos.

Métricas registradasRecorded metrics

recomendado
G_ADAPT
target
5TUN

ReproducibilidadReproducibility

commit
93541c9dc6 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
duraciónduration
1 h 1 min
complejoscomplexes
15
hashes SHA-256
10
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-03-PRELa reparacion del grid por prediccion de pocket ligando-libre (MolPocket) es evaluable con un techo geometrico declarado de 10/25; el prerregistro congela cohorte, brazos, metrica y gates antes de ejecutar dockingPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La reparacion del grid por prediccion de pocket ligando-libre (MolPocket) es evaluable con un techo geometrico declarado de 10/25; el prerregistro congela cohorte, brazos, metrica y gates antes de ejecutar docking
Criterio prerregistradoPre-registered criterion
Prerregistro completo: 5 gates definidos (G1 validez >=98%, G2 solo lectura, G3 reparacion >=5/25, G4 no regresion >=70% del control, G5 determinismo), techo geometrico y prohibiciones declaradas antes de cualquier corrida de docking
ProtocoloProtocol
REC-03-PRE/PREREGISTRO.md; entradas selladas REC-01 y REC-01-R1 (4a4fbc7); geometria_preflight.json computado y declarado antes de ejecutar
Razón de la decisiónReason for the decision
Prerregistro completo y sellado antes de ejecutar docking: cohorte congelada (25 accionables de REC-01-R1 + 12 control S0 por muestreo seed 42 sobre 218 elegibles, cero solapamiento con train/test), 4 cajas por target con el TAMANO del catalogo fijo (unica variable = el centro), brazo derivado G_MP_SCORE seleccionado por score de Vina y nunca por posicion del ligando, metrica CalcRMS in situ con exito <=2.0 A en >=2 de 3 semillas, y 5 gates numericos. Se declara por adelantado el techo geometrico de la reparacion: solo 10 de los 25 accionables tienen contencion total del ligando en alguno de los 3 pockets, de modo que 15 son irreparables por geometria antes de docking. Se declara tambien que MolPocket top-1 pierde 93 de los 218 targets sanos por contencion, y que el fracaso de G_CAT en los 11 S1 esta determinado por construccion. Prohibido usar la posicion del ligando para elegir caja, pocket o pose. MolPocket es admisible como brazo reparador por ser ligando-libre (detect_pockets solo lee lineas ATOM); los hotspots del catalogo quedan prohibidos por ser derivados del ligando nativo.

Métricas registradasRecorded metrics

tipo
PREREGISTRO
decision
PENDING
cuarentena
cero solapamiento con poses_train (116) y poses_test (47)
nota
Ninguna corrida de docking ejecutada bajo este registro. La geometria declarada es condicion de partida, no resultado.

ReproducibilidadReproducibility

commit
1bbe44ebaf (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
hashes SHA-256
7
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER
mantenimientomaintenance
1 mantenimiento(s) declarados. El hash actual no acredita qué código produjo la cifra original.1 declared maintenance action(s). The current hash does not establish which code produced the original figure.

Enlace a este expedienteLink to this record

RS-09Invariante a rotaciones, frágil ante una centésima de ángstromRefutaciónRefutationArtículoPapern=109

El selector es exactamente invariante a rotación y traslación —diferencia máxima 0.0— y al orden de las poses. Con un temblor de 0.1 Å cambia de opinión en 9 complejos.

Un selector de poses debe cumplir cosas que no dependen de si acierta. Si se rota el sistema entero, la respuesta no puede cambiar: es la misma molécula en el mismo sitio, descrita desde otro ángulo. Si se barajan las poses candidatas, tampoco. Y ante un temblor atómico mínimo, la respuesta debería moverse poco.

Estas son pruebas metamórficas: no comprueban que el modelo acierte, comprueban que se comporta como el mundo que dice modelar. Un selector que falla aquí puede tener buenas métricas y ser inutilizable.

Qué pasó

Seis criterios, cinco pasan:

CriterioResultado
G1Invarianza a rotación y traslación rígida109/109, diferencia máxima 0.0
G2Invarianza al orden de las poses109/109
G3Cambios de acierto a fallo con σ=0.1 Å ≤ 29 ✗
G4≥60% de los cambios en los terciles de margen bajo95.65%
G5Deriva0
G6Aislamiento por SHACorrecto

G1 con diferencia máxima exactamente 0.0 es el resultado más limpio: la invarianza no es aproximada, es estructural. Las características se calculan en un marco que no depende de la orientación, así que rotar el sistema no cambia ni un bit.

G3 falla. Perturbando las coordenadas atómicas con un ruido de 0.1 Å —una centésima de lo que separa un acierto de un fallo— el selector cambia de acierto a error en 9 complejos, cuando el criterio admitía 2.

El matiz que convierte el fallo en información

Los cambios no están repartidos al azar. Se concentran donde el selector ya dudaba:

Tercil de margenFracción de los cambios
Margen bajo43%
Margen alto3%

Es decir: la robustez es condicional al margen. Donde el selector decide con convicción, aguanta el temblor. Donde decide por poco, no.

Eso no salva el gate, y no debe presentarse como si lo salvara. Pero sí dice qué hacer con el resultado: la fragilidad es predecible desde una cantidad que se puede calcular en el momento de decidir. Es la misma idea que después midió FEP-04 desde otro ángulo — el margen es una señal de confianza utilizable — y refuerza la conclusión de que el producto correcto no es una pose, sino una pose con su incertidumbre.

Lo que se declaró no cubierto en lugar de contarlo como éxito

La cohorte efectiva es de 109 de 116 complejos. Los 7 restantes son complejos sin receptor disponible en el material de trabajo.

Se declaran no cubiertos por indisponibilidad de datos, no como fallos. La distinción importa: contarlos como fallos habría empeorado artificialmente el resultado; contarlos como éxitos lo habría mejorado. Ninguna de las dos cosas sería cierta, y la única salida honesta es sacarlos del denominador diciendo cuáles son y por qué.

Los receptores que sí entraron se verificaron por coincidencia atómica dentro de 0.001 Å contra su fuente, para descartar que un respaldo hubiera introducido una estructura distinta sin avisar.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
El selector v0.6 de produccion es robusto a rotacion/traslacion rigida, al orden de poses y a perturbacion debil sigma=0.1A sobre la cohorte de complejos train con receptor disponible (109/116; 7 molflex puros sin receptor declarados no cubiertos): invarianza 1e-6, orden 109/109, flips ok->mal <=2, >=60% de cambios en terciles 1-2 de margen, drift=0, aislamiento SHA
Criterio prerregistradoPre-registered criterion
GO si G1-G6 PASS sobre la cobertura efectiva (109/116 con receptor); NO_GO si algun gate falla
ProtocoloProtocol
scripts/artifacts_science/RS-09-PRE/PREREGISTRO.md
Razón de la decisiónReason for the decision
G3 FALLA: 9 flips ok->mal bajo perturbacion sigma=0.1A (criterio <=2). G1 (invarianza rigida 109/109, max_dif=0.0), G2 (orden 109/109), G4 (95.65% cambios en terciles 1-2), G5 (drift=0) y G6 (SHA) PASS. El selector es robusto por construccion a R+t y al orden, pero sensible a perturbacion atomica; los cambios se concentran en margenes bajos (43% tercil 1 vs 3% tercil 3) => robustez condicional al margen. Cobertura 109/116 (93.97%): 7 complejos molflex puros sin receptor (10gs, 184l, 187l, 188l, 1a30, 1a99, 1ai4) declarados NO cubiertos por indisponibilidad de datos (WORK_V3 inexistente), no como fallos. Coords canonicas: lig_pos gnn_train.pt (2739/2739). Receptores con fallback vina_redock_work/dmfhard_curve_work verificado por match atomico <=1e-3 A. Detalle: scripts/artifacts_science/RS-09/DESIGN.md

Métricas registradasRecorded metrics

duration_seconds
58.71
decision
NO_GO

ReproducibilidadReproducibility

commit
93541c9dc6 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
complejoscomplexes
109
hashes SHA-256
7
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-09-PREEl selector v0.6 de produccion es robusto a rotacion/traslacion rigida, al orden de poses y a perturbacion debil sigma=0.1A sobre la cohorte completa de 116 complejos train (invarianza 1e-6, orden 116/116, flips ok->mal <=2, >=60% de cambios en terciles 1-2 de margen, drift=0, aislamiento SHA)PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El selector v0.6 de produccion es robusto a rotacion/traslacion rigida, al orden de poses y a perturbacion debil sigma=0.1A sobre la cohorte completa de 116 complejos train (invarianza 1e-6, orden 116/116, flips ok->mal <=2, >=60% de cambios en terciles 1-2 de margen, drift=0, aislamiento SHA)
Criterio prerregistradoPre-registered criterion
GO si G1-G6 PASS; NO_GO si algun gate falla (evidencia de bug con reporte)
ProtocoloProtocol
scripts/artifacts_science/RS-09-PRE/PREREGISTRO.md
Razón de la decisiónReason for the decision
Prerregistro procedimental sellado: hipotesis, metodos A/B/C, cohorte 116 train, gates G1-G6. Nada ejecutado bajo este registro. Ejecucion en RS-09 (run_rs09_robustez.py) con sello aparte.

ReproducibilidadReproducibility

commit
93541c9dc6 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-01-R1El criterio de excepcion de REC-01 tiene un falso negativo estructural: la contencion por FRACCION no detecta desalineamientos concentrados en pocos hotspots. Un codigo E8_HOTSPOT_FUERA_DE_CAJA definido como margen_min_hotspots < 0 cierra ese hueco y captura el caso testigo 5TUN del doc 35. CORRIGENDUM: el desenlace numerico ya se conoce y esta declarado en REC-01/LECTURA.md seccion 4; no es una prueba ciega.CorrigendumCorrection noticen=387

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
CorrigendumCorrection notice · Corrección de un resultado propio cuyo valor principal es la corrección.Correction of an own result whose main value is the correction.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El criterio de excepcion de REC-01 tiene un falso negativo estructural: la contencion por FRACCION no detecta desalineamientos concentrados en pocos hotspots. Un codigo E8_HOTSPOT_FUERA_DE_CAJA definido como margen_min_hotspots < 0 cierra ese hueco y captura el caso testigo 5TUN del doc 35. CORRIGENDUM: el desenlace numerico ya se conoce y esta declarado en REC-01/LECTURA.md seccion 4; no es una prueba ciega.
Criterio prerregistradoPre-registered criterion
G1 integridad de entrada: el per_complex.jsonl de REC-01 coincide con su SHA-256 sellado 3f4da5ab; G2 prueba de aceptacion: 5TUN queda capturado por E8; G3 conservacion: ningun target pierde una excepcion que REC-01 le habia asignado; G4 severidad asignada a los 387 con criterio preregistrado y ordenada por accionabilidad; G5 determinismo byte-a-byte; G6 cero escrituras fuera del directorio REC-01-R1 (REC-01 permanece intacto)
ProtocoloProtocol
docs/49_PROGRAMA_EXPERIMENTAL_CIENTIFICO.md seccion 7 (Cartera B, REC-01); corrigendum del sello REC-01 (GO 2026-08-17); consume por hash el per_complex.jsonl sellado de REC-01
Razón de la decisiónReason for the decision
Los seis gates pasan: G1 entrada sellada de REC-01 integra (sha 3f4da5ab); G2 prueba de aceptacion superada — 5TUN capturado por E8 con severidad S4_LEVE y margen -5.147 A; G3 conservacion sin perdidas y codigos E1-E7 reproducidos exactamente; G4 severidad asignada a los 387 sin nulos; G5 determinismo byte-identico; G6 REC-01 intacto (validate OK). RESULTADO PRINCIPAL, NO PREVISTO: la comprobacion de expectativa preregistrada detecto un ERROR DE NARRATIVA en REC-01/LECTURA.md seccion 2. Declaraba 'en 23 targets la caja no contiene ni un solo atomo del ligando'; el 23 es el conteo de E2_LIGANDO_RECORTADO (contencion < 1.0). La cifra correcta de contencion == 0.00 es 11; los otros 12 tienen contencion parcial 0.16-0.91. El dato sellado de REC-01 es correcto (E2 siempre significo <1.0); el error estuvo solo en la prosa que lo interpreto. REC-01 permanece sellado sin modificar y este corrigendum es el registro oficial de la correccion (patron RS-01A -> RS-01A-R1); todo consumo posterior debe citar 11. Corrigendum del criterio: E8_HOTSPOT_FUERA_DE_CAJA (margen_min_hotspots < 0, geometria exacta sin umbral calibrable) eleva las excepciones de 57 (14.7%) a 109 (28.2%), +52 targets. Triaje preregistrado: S1_CRITICO 11, S2_GRAVE 14, S3_MODERADO 9, S4_LEVE 69, S5_METADATO 6, S0 278. La cohorte S1+S2 (25 targets) es la entrada natural de REC-03. NO es prueba ciega: el desenlace de E8 ya estaba declarado en REC-01/LECTURA.md seccion 4. La escala de severidad es hipotesis de accionabilidad, no medicion de impacto; probarla exige docking pareado en REC-03.

Métricas registradasRecorded metrics

corrigendum_de
REC-01
nota_epistemica
El desenlace numerico ya estaba declarado en REC-01/LECTURA.md seccion 4 antes de ejecutar R1. No es un hallazgo independiente: es el mismo dato con el criterio corregido. Ver PREREGISTRO seccion 1.
prueba_ciega
false
seed
42

ReproducibilidadReproducibility

commit
93541c9dc6 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
duraciónduration
3 s
complejoscomplexes
387
hashes SHA-256
8
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

REC-01El catálogo estaba casi cinco veces peor de lo que suponíamosHallazgoFindingArtículoPapern=387

Auditar los 387 objetivos encontró 57 con la caja de búsqueda desalineada, no los 12 que asumía el plan. En 23 de ellos la caja no contiene ni un solo átomo del sitio real.

Antes de este experimento, el plan del programa daba por hecho que había "unos 12 grids problemáticos" en el catálogo de objetivos. Era una cifra heredada, nunca medida: alguien la estimó en algún momento y se citó desde entonces.

Auditar 387 objetivos no es investigación, es higiene. Pero la higiene sin medir es fe.

Lo que se auditó, y con qué cuidado

Un grid es la caja donde el docking busca. Si está mal colocada, todo lo que se calcule sobre ese objetivo es inválido, y lo será silenciosamente: el programa devuelve poses con puntuaciones de aspecto normal.

El problema metodológico es que sólo la mitad de los objetivos permite comprobarlo directamente. Los HOLO tienen un ligando nativo en la estructura que sirve de verdad de referencia. Los APO no tienen ninguno, y ahí la auditoría depende de señales indirectas y es más débil. Se separaron los dos estratos desde el diseño, en vez de mezclarlos y reportar un número único que habría sido más limpio y menos honesto.

Los cinco criterios del instrumento se declararon antes:

GateQué exigeResultado
G1Cobertura de los 387, sin omisiones silenciosas387/387
G2Clasificación HOLO/APO deterministaDeterminista en todos
G3Toda excepción con código y valor disparadorE1–E7, con su número
G4Determinismo bit a bit entre corridasIdéntico en tres, incluida una tras reconstruir el directorio
G5Cero escrituras en catálogo, base de datos o producciónSHA-256 intacto

Ese G4 es el que más importa: la auditoría se repitió tras borrar y reconstruir su directorio de trabajo, y salió byte-idéntica. Sin eso, una auditoría es una opinión con tablas.

Qué pasó

57 de 387 objetivos con excepción — el 14.7%. Aproximadamente 4.75 veces lo que asumía el plan.

Y el detalle es peor que el agregado:

  • 25 objetivos con el grid a más de 15 Å del ligando nativo;
  • 23 objetivos con contención de ligando 0.00 — la caja no contiene ni un solo átomo del sitio de unión real.

Lo que este GO significa, y lo que no

Conviene ser preciso, porque es fácil leerlo al revés:

El GO dice que la auditoría es válida y reproducible. No dice que el catálogo esté sano. Dice lo contrario.

El hallazgo negativo que se declaró en vez de taparse

El caso testigo de todo esto —el objetivo 5TUN, que llevaba documentado como grid roto desde hacía tiempo— no fue capturado por la auditoría.

Su contención de hotspots dio 0.800, exactamente en la frontera del umbral, y su verdad de referencia es débil por ser APO. Y sin embargo tiene un hotspot a 5.147 Å fuera de la caja.

Aquí había una tentación evidente: mover un poco el umbral para que 5TUN entrara. El prerregistro lo prohibía, y el umbral no se tocó. La corrección pasó a un experimento propio, con un código de excepción nuevo para hotspots fuera de caja.

El coste de esa disciplina se puede cuantificar, y es alto: ese criterio nuevo capturaría 52 objetivos hoy invisibles. El recuento pasaría de 57 a 109 — del 14.7% al 28.2%.

Es decir: sabemos que la cifra de este experimento es una subestimación, y la publicamos igual, porque ajustar el umbral después de ver qué caso queríamos capturar habría convertido la auditoría en una profecía.

Alcance

Sin docking, sin red, y cero escrituras fuera del directorio del experimento.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Los grids del catalogo de 387 targets contienen un subconjunto acotado y reproducible de casos desalineados respecto al sitio de union real; auditarlos separando HOLO (con ligando nativo como ground truth) de APO (sin ground truth directo) produce una lista de excepciones accionable sin re-docking.
Criterio prerregistradoPre-registered criterion
G1 cobertura 100% de los 387 targets auditados (0 omitidos silenciosos); G2 clasificacion HOLO/APO deterministica y reproducible; G3 lista de excepciones con criterio numerico preregistrado; G4 determinismo bit-a-bit entre dos corridas; G5 cero escrituras en catalogo/DB/produccion
ProtocoloProtocol
docs/49_PROGRAMA_EXPERIMENTAL_CIENTIFICO.md seccion 7 (Cartera B, REC-01); reutiliza backend/scripts/audit_grid_hotspots.py y docs/35_GRID_APO_5TUN_PENDIENTE.md
Razón de la decisiónReason for the decision
Los cinco gates del instrumento pasan: G1 cobertura 387/387 sin omisiones ni fallos; G2 estrato deterministico en todos; G3 toda excepcion con codigo E1-E7 y valor disparador; G4 determinismo byte-identico en tres corridas incluida una tras reconstruir el directorio (sha 3f4da5ab); G5 catalogo y CSV con SHA-256 intacto. GO = la auditoria es valida y reproducible, NO que el catalogo este sano. Resultado: 57/387 targets con excepcion (14.7%), 25 con grid a mas de 15 A del ligando nativo y 23 con contencion de ligando 0.00 (la caja no contiene ni un atomo del sitio real) — ~4.75x el orden de magnitud de los '12 grids problematicos' que asumia el doc 49 seccion 7. HALLAZGO NEGATIVO DECLARADO: el caso testigo 5TUN del doc 35 NO fue capturado (contencion_hotspots 0.800 en la frontera exacta del umbral y ground truth debil por ser APO), pese a tener un hotspot 5.147 A fuera de la caja; siguiendo el preregistro el umbral NO se ajusta y la correccion pasa a REC-01-R1 con el codigo E8_HOTSPOT_FUERA_DE_CAJA, que capturaria 52 targets hoy invisibles (57 -> 109, 14.7% -> 28.2%). Sin docking, sin red, cero escrituras fuera del directorio del experimento.

Métricas registradasRecorded metrics

seed
42

ReproducibilidadReproducibility

commit
93541c9dc6 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
duraciónduration
47 s
complejoscomplexes
387
hashes SHA-256
8
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-03-PARAM-ACargas parciales con once criterios y ningún respaldo silenciosoHallazgoFindingArtículoPapern=116

116 de 116 ligandos parametrizados, determinismo de 2.78e-17, y cero casos donde el sistema recurriera a un método peor sin decirlo. Sustituye un tipado heurístico escrito a mano.

Las cargas parciales —cuánta carga eléctrica lleva cada átomo— entran en casi todo cálculo físico posterior: energías de interacción, solvatación, campos electrostáticos. Si están mal, todo lo que se construya encima está mal de una forma que no produce errores, sólo números incorrectos.

Hasta este experimento, el proyecto asignaba cargas con un tipado heurístico escrito a mano. Funcionaba, en el sentido de que devolvía valores. Nadie había medido si eran correctos.

El modo de fallo que este experimento persigue

El peligro real de una tubería de parametrización no es que falle. Es que funcione peor sin avisar: cuando el método bueno no puede tratar una molécula, muchas implementaciones recurren silenciosamente a uno más simple y devuelven un resultado con el mismo aspecto.

El conjunto resultante queda entonces con una mezcla de cargas de dos calidades distintas, sin ninguna marca que las separe, y cualquier análisis posterior promedia las dos sin saberlo.

Por eso uno de los once criterios es explícitamente cero respaldos silenciosos.

Qué pasó

Los once criterios se cumplen:

CriterioExigidoObtenido
Cobertura global≥95%100% (116/116)
Cobertura por estrato≥90% en los 6100% en los 6
Determinismo≤1e-62.78e-17
Suma de cargas vs. carga formal≤1e-41e-15 máximo
Respaldos silenciosos00
Energía finita y serializable100%100%
Mapeo biyectivo de átomosSíSí, con hash de orden
Trazabilidad del modeloRegistradaVersión y SHA del modelo neuronal
Aislamiento de val, test y confirmatorioCero accesosCero

El determinismo de 2.78e-17 es esencialmente el epsilon de la máquina: dos ejecuciones producen bit por bit lo mismo. Y la suma de cargas coincide con la carga formal de la molécula hasta 1e-15, que es la comprobación física básica — si esa suma no cuadra, las cargas están mal por construcción.

El detalle que hace esto reutilizable

Se registra el SHA del modelo de producción y su versión exacta, además de la versión del campo de fuerza. Eso significa que cualquiera puede saber, dentro de dos años, con qué se generaron estas cargas — y detectar si una actualización del modelo cambió los números sin que nadie lo notara.

También se registra un hash del orden de átomos junto con el mapeo biyectivo. El orden de átomos es una fuente clásica de errores silenciosos: dos representaciones de la misma molécula con los átomos numerados distinto producen cargas correctas asignadas a los átomos equivocados.

Qué es y qué no es

Es un experimento de capacidad, no de rendimiento. No dice que las cargas nuevas mejoren ningún resultado científico; dice que existen, que son correctas por las comprobaciones físicas disponibles, que son reproducibles, y que sustituyen a un heurístico que nadie había validado.

Sin este paso, cualquier experimento posterior de rescoring físico habría tenido una variable de confusión imposible de separar del efecto que quisiera medir.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
OpenFF Sage 2.2.1 + NAGL openff-gnn-am1bcc-1.0.0 (produccion SHA 7981e7f5) parametriza los 116 ligandos train con cobertura >=95%, determinismo <=1e-6 y cero fallback
Criterio prerregistradoPre-registered criterion
11 gates G1-G11: cobertura >=95% global y >=90% por estrato; |sum q - formal| <= 1e-4; determinismo <=1e-6; cero fallback; cero val40/test/CONFIRM; SHA registrados
ProtocoloProtocol
RS-03-PARAM-A-PRE sellado (147abb1) refina PRE maestro (7dfa3b8) QA-2; contenedor Ubuntu moldesign-science, cliente moldesign_client.py
Razón de la decisiónReason for the decision
11 gates G1-G11 cumplidos: 116/116 ligandos parametrizados, cobertura global 100% y 100% en los 6 estratos, determinismo 2.78e-17 (<=1e-6), |sum q - formal| max 1e-15 (<=1e-4), mapeo biyectivo + atom_order_hash, cero fallback silencioso, energia finita + serializable 100%, modelo NAGL 1.0.0 produccion SHA 7981e7f5 registrado, Sage 2.2.1. Reemplaza el tipado heuristico de molchamb_v2.py:65 como base de cargas. Siguiente: RS-03-PARAM-B (AM1-BCC estratificado) y luego RS-03-PARAM (agregacion).

Métricas registradasRecorded metrics

duration_seconds
379.46
decision
GO
n_total
116
n_passed
116
n_failed
0
global_coverage
1.0
max_charge_drift_e
2.7755575615628914e-17

ReproducibilidadReproducibility

commit
0cf8ec5c28 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
complejoscomplexes
116
hashes SHA-256
8
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER
mantenimientomaintenance
2 mantenimiento(s) declarados. El hash actual no acredita qué código produjo la cifra original.2 declared maintenance action(s). The current hash does not establish which code produced the original figure.

Enlace a este expedienteLink to this record

RS-03-PARAM-B-PRELa referencia AM1-BCC estratificada caracteriza las cargas NAGL por atomo sin usarse como selector (prohibido RMSD/Top-1)PrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La referencia AM1-BCC estratificada caracteriza las cargas NAGL por atomo sin usarse como selector (prohibido RMSD/Top-1)
Criterio prerregistradoPre-registered criterion
Cero val40/test/CONFIRM; reporte por atomo/estrato/dipolo/energias; sin seleccion por RMSD/Top-1; sin claim de aceptacion NAGL
ProtocoloProtocol
RS-03-PARAM-PRE sellado (7dfa3b8) sub-prerregistro B; contenedor Ubuntu, AmberTools antechamber+sqm, Sage 2.2.1
Razón de la decisiónReason for the decision
Sub-prerregistro procedimental: contrato refinado del PRE maestro (7dfa3b8) con entorno contenedor Ubuntu real. Sin resultados.

ReproducibilidadReproducibility

commit
7dfa3b845a (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-03-PARAM-A-PRELa parametrizacion OpenFF Sage 2.2.1 + NAGL openff-gnn-am1bcc-1.0.0 (produccion, SHA 7981e7f5...) sobre los 116 ligandos train es una base fisica correctaPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La parametrizacion OpenFF Sage 2.2.1 + NAGL openff-gnn-am1bcc-1.0.0 (produccion, SHA 7981e7f5...) sobre los 116 ligandos train es una base fisica correcta
Criterio prerregistradoPre-registered criterion
11 requisitos NAGL nativo: cobertura >=95% global y >=90% por estrato; |sum q - formal| <= 1e-4; determinismo <=1e-6; cero fallback; cero val40/test/CONFIRM; SHA registrados
ProtocoloProtocol
RS-03-PARAM-PRE sellado (7dfa3b8) sub-prerregistro A; contenedor Ubuntu moldesign-science, Sage 2.2.1, cliente moldesign_client.py
Razón de la decisiónReason for the decision
Sub-prerregistro procedimental: contrato refinado del PRE maestro (7dfa3b8) con entorno contenedor Ubuntu real. Sin resultados.

ReproducibilidadReproducibility

commit
7dfa3b845a (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-03-PARAM-PRELa parametrizacion OpenFF Sage + NAGL congelado sobre los 116 ligandos train es una base fisica correcta (cobertura, determinismo, carga, cero fallback) que reemplaza el tipado heuristicoPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La parametrizacion OpenFF Sage + NAGL congelado sobre los 116 ligandos train es una base fisica correcta (cobertura, determinismo, carga, cero fallback) que reemplaza el tipado heuristico
Criterio prerregistradoPre-registered criterion
Ver §4 del PREREGISTRO: cobertura >=95% global y >=90% por estrato; |sum q - formal| <= 1e-4; determinismo <=1e-6; cero fallback silencioso; cero val40/test/CONFIRM
ProtocoloProtocol
CAMPANA-2-PLAN sellado (41b7f09) IT1 QA-2; politica de prerregistro separado del laboratorio
Razón de la decisiónReason for the decision
Prerregistro GO procedimental: contrato de RS-03-PARAM congelado (hipotesis, 6 estratos, 11 requisitos primarios, regla AM1-BCC estratificada, forecast, caveat RS-08, politica de prerregistro separado). Sin resultados. La ejecucion es RS-03-PARAM (experimento separado) y requiere autorizacion de instalacion del entorno (openff-toolkit, openff-nagl-models, AmberTools, modelo NAGL).

ReproducibilidadReproducibility

commit
89ee66ba41 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-08Un enrutador para nueve complejosRefutaciónRefutationArtículoPapern=116

La idea era decidir por complejo si conviene repuntuar o volver a muestrear. Sólo 9 de 116 complejos estaban en el estado donde eso importa, y la regla simple ya capturaba 5 de esos 9.

Cuando un selector no está seguro, tiene dos salidas distintas y hoy sólo usa una. Puede abstenerse —decir que no sabe— o puede pedir más muestreo: volver al generador y producir más candidatas para ese complejo concreto.

La segunda es más útil, porque convierte una duda en trabajo dirigido. La hipótesis era que un enrutador con tres estados —resuelto, repuntuable, necesita más muestreo— captura más fallos recuperables que la regla simple de mirar sólo el margen, con el mismo presupuesto.

Qué pasó

Fallos recuperables capturados
Enrutador de tres estados3
Regla simple de margen5
Exigido por el gate≥ +3 sobre la regla simple

El enrutador captura menos que la regla que pretendía sustituir. El intervalo de confianza por componentes, [−6, 0], no excluye el cero, y el test de McNemar da p = 0.5. No hay diferencia demostrable en ninguna dirección — pero el gate pedía superioridad, y no la hay.

En falsos escalamientos empata: 14 frente a 15. No genera trabajo inútil, que era el riesgo obvio.

Por qué no podía funcionar

Lo interesante de este experimento no es que fallara el gate, sino el número que explica por qué:

EstadoComplejos
Resuelto47
Repuntuable9
Necesita más muestreo60

De 116 complejos, sólo 9 están en el estado donde un enrutador puede aportar algo. Los 47 resueltos no necesitan nada, y los 60 que necesitan más muestreo no se arreglan repuntuando.

Con un espacio de mejora de 9 casos, y con la regla simple capturando ya 5 de ellos, el techo del enrutador es de 4 complejos. No hay diseño de enrutador que salve eso: el problema es que el estado intermedio casi no existe en esta cohorte.

Esa distribución —60 de 116 necesitan más muestreo, no mejor puntuación— es la misma conclusión a la que llegó MF-09 por un camino totalmente distinto: es muestreo, no puntuación. Dos experimentos independientes, con instrumentos distintos, midiendo lo mismo.

Un detalle de método

La deriva de presupuesto global salió en 38.79%, fuera de la banda declarada de 25–35%. El análisis de sensibilidad muestra además que el enrutador sólo gana en presupuestos del 10–20%, y ahí gana +1 complejo.

Ese +1 en una ventana estrecha de presupuesto es exactamente la clase de resultado que tienta a reportar como «el enrutador funciona en el régimen adecuado». No lo es: con n=9 en el espacio accionable, un complejo de diferencia es indistinguible del ruido, y elegir la ventana de presupuesto después de ver los resultados es escoger el sitio donde el ruido favorece.

Queda registrado, no reclamado.

Consecuencia

El selector de producción no cambió. La cascada con el rescoring físico quedó pendiente de su propio experimento, porque este no aporta evidencia sobre ella.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
El router de decidibilidad accionable (solved/rescoring_actionable@2/sampling_needed) captura mas fallos recuperables que margin-only al mismo presupuesto
Criterio prerregistradoPre-registered criterion
>=+3 fallos recuperables@2 vs margin-only; sin aumento de falsos escalamientos; bootstrap 38 componentes; drift presupuesto 25-35%
ProtocoloProtocol
CAMPANA-2-PLAN sellado (41b7f09) QA-3 + prerregistro RS-08
Razón de la decisiónReason for the decision
Gate de desarrollo FAIL: fallos recuperables@2 router 3 vs margin-only 5 (requiere >=+3; BCa 38 componentes [-6,0] no excluye cero; McNemar p=0.5). Falsos escalamientos 14 vs 15 (cumple, -1). Sensibilidad: el router solo gana en presupuestos 10-20% (+1). Drift global 38.79% fuera de [25,35]. Solo 9/116 complejos son actionable@2 (47 solved, 60 sampling): espacio de mejora minimo y margin-only ya captura 5/9. GO limitado a router: NO. v0.6 sigue como selector; cascada con RS-03 pendiente de RS-03-PARAM.

Métricas registradasRecorded metrics

experimento
RS-08
declaracion_resultado
Router de decidibilidad ACCIONABLE (solved / rescoring_actionable@2 / sampling_needed) con cross-fitting ANIDADO dentro de los 5 folds sellados de RS-01B: features y etiquetas del router sobre el outer-train proceden de predicciones inner-OOF (clones v0.6 entrenados en inner-train que NO vieron el complejo); umbral percentil 70 del riesgo inner-OOF del outer-train, aplicado FIJO al outer-test; comparadores margin-only v0.6 y aleatorio (seed 42) al MISMO coste real por fold. Gate: >= +3 fallos recuperables@2 vs margin-only y delta falsos escalamientos <= 0.
preregistro
scripts/artifacts_science/RS-08/PREREGISTRO.md (sello b4204bd) + CAMPANA-2-PLAN sellado (41b7f09) IT1/DECISIONS QA-3
limitacion_claim
RS-08 solo puede recibir GO como ROUTER (decisibilidad accionable). PROHIBIDO reclamar mejora de Top-1: el rescoring solo es util si RS-03 (MM/GBSA-like, previa RS-03-PARAM) convierte los complejos escalados en aciertos (cascada integrada v0.6 -> RS-08 -> RS-03). El strain MMFF94s queda FUERA del camino primario de la cascada.
garantia_cuarentena
builtins.open auditado contra whitelist explicita: 0 accesos a val/test/CONFIRM; poses_val.jsonl, poses_test.jsonl y D-RC-CONFIRM nunca se abren
determinismo
salidas sin timestamps ni aleatoriedad no-seeded (seed 42 en clones inner, bootstrap y seleccion aleatoria; LogReg lbfgs determinista; umbral percentil 70 materializado como valor numerico por fold); dos corridas producen salidas byte-identicas

ReproducibilidadReproducibility

commit
a8c9523d99 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
complejoscomplexes
116
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-04-OOF-R1El NO_GO de RS-04-OOF es solido y su alcance es limitado a la feature, modelo y contratoCorrigendumCorrection notice

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
CorrigendumCorrection notice · Corrección de un resultado propio cuyo valor principal es la corrección.Correction of an own result whose main value is the correction.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El NO_GO de RS-04-OOF es solido y su alcance es limitado a la feature, modelo y contrato
Criterio prerregistradoPre-registered criterion
Narrativo: sin cambio de datos, sin re-evaluacion
ProtocoloProtocol
Corrigendum narrativo del sello RS-04-OOF (a8c9523)
Razón de la decisiónReason for the decision
Corrigendum narrativo/estadistico confirmando NO_GO de RS-04-OOF: reduccion observada de 8 hits, bootstrap primario BCa por 38 componentes [-14,-1] excluye cero, McNemar p=0.115 (sensibilidad por complejo), mediana pareada 0.000A = ausencia de desplazamiento no equivalencia. NO_GO limitado a esta feature, modelo y contrato. Sello historico intacto.

ReproducibilidadReproducibility

commit
a8c9523d99 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
17 de agosto de 2026August 17, 2026
hashes SHA-256
3
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-04-OOFLa tensión de la pose no distingue falsos mínimosRefutaciónRefutationArtículoPapern=116

Una pose forzada debería delatarse por su energía interna. Añadir esa señal al selector bajó los aciertos de 47 a 39, con regresión concentrada en el estrato difícil.

Un motor de docking puede producir una pose que encaja geométricamente pero que exige a la molécula una conformación absurda: ángulos forzados, enlaces tensionados, una geometría que ninguna molécula real adoptaría. Esa pose es un falso mínimo, y la función empírica de Vina no la penaliza lo suficiente porque no modela bien la energía interna.

La señal para detectarlo es directa: la tensión — la diferencia entre la energía del confórmero tal como quedó en la pose y la de ese mismo confórmero relajado en aislamiento. Mucha tensión significa que el motor torció la molécula para que cupiera.

Es una de esas ideas que son físicamente correctas y que aun así no funcionan.

Qué pasó

Aciertos Top-1 fuera de muestra
Selector base47/116
Con la tensión añadida39/116
Exigido por el gate≥50/116

No sólo no llega: baja 8 aciertos respecto a no añadirla. Y la regresión se concentra precisamente en el estrato difícil, que es donde la señal tenía que ayudar.

El resto de criterios sí se cumplen, y conviene decirlo porque acota la interpretación:

  • mediana pareada del cambio de RMSD: 0.000 Å — la señal es neutra en calidad de pose;
  • cobertura: 100% — se calculó para todas las poses, no falló en ninguna;
  • costes en el percentil 95: dentro de presupuesto.

El test de McNemar da p = 0.115, que no es significativo. Así que la lectura estadística honesta es que no se demuestra degradación, sólo que no hay mejora y el gate exigía una.

Qué significa exactamente

La tensión MMFF94s es coste-neutral y sin poder de selección en esta cohorte. No hace daño a la calidad de las poses; simplemente no contiene información que ayude a ordenarlas que no esté ya en el score.

Hay una explicación plausible que este experimento no puede confirmar: puede que las poses tensionadas ya estén filtradas antes de llegar aquí, porque el propio Vina las penaliza lo bastante como para que no lleguen al top. En ese caso la señal es redundante por construcción, no inútil por naturaleza.

Dónde encaja en la historia más larga

Este es uno de los negativos que la regla de futilidad contó para cerrar la línea del selector. Junto con la deduplicación, el enrutador de decidibilidad y los dos intentos posteriores sobre el conjunto reconstruido, forma un patrón: **cada señal nueva que se añade al espacio de características no mueve la aguja frente a vina_score**.

Y hay un contrapunto que este experimento no vio venir. MF-16-R1 midió después que un potencial físico relajado —que es la misma idea llevada un paso más allá: no medir la tensión, sino quitarla antes de puntuar— sí supera a Vina en el estrato difícil. La diferencia entre las dos es que aquí la tensión se usó como característica y allí como transformación del paisaje.

El selector de producción no cambió. val y el conjunto confirmatorio quedaron intactos.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
La feature de strain MMFF94s mejora Top-1 OOF de v0.6 sin degradar RMSD pareado
Criterio prerregistradoPre-registered criterion
Top-1 OOF >=50/116; mediana pareada dRMSD <=+0.1A; cobertura >=95%; costes P95; sin regresion grave por estrato
ProtocoloProtocol
CAMPANA-2-PLAN sellado (41b7f09) QA-6 + RS-04-QC sellado (5ffb256)
Razón de la decisiónReason for the decision
Gate operacional FAIL: Top-1 OOF 39/116 vs 50 requeridos (baseline v0.6 47/116, Delta -8); McNemar bilateral p=0.115318 (ns); regresion grave en estrato hard. Mediana pareada 0.000 A cumple (<=0.1), cobertura 100% y costes P95 cumplen. El strain MMFF94s es coste-neutral en RMSD pero sin poder de seleccion en esta cohorte; v0.6 sigue siendo el selector de produccion. val40/D-RC-CONFIRM intactas.

Métricas registradasRecorded metrics

experimento
RS-04-OOF
declaracion_resultado
Cross-fitting COMPLETO (5 folds sellados RS-01B) que aísla el efecto de la feature de strain MMFF94s: clon v0.6 congelado (baseline, 233 feats) frente a v0.6 + strain (aumentado, 234 feats) sobre exactamente los mismos complejos por fold. Gate operacional RS-04: Top-1 OOF >= 50/116; mediana pareada dRMSD <= +0.1 A; cobertura quimica >= 95%; costes P95; sin regresion grave por estrato hard/control.
preregistro
CAMPANA-2-PLAN sellado (41b7f09) IT1 QA-5/QA-6 + RS-04-QC sellado (5ffb256)
garantia_cuarentena
builtins.open auditado contra whitelist explicita: 0 accesos a val/test/CONFIRM; poses_val.jsonl, poses_test.jsonl y D-RC-CONFIRM nunca se abren
determinismo
salidas sin timestamps ni aleatoriedad no-seeded; referencia aislada cacheada por ligando (ETKDGv3 seed 42, idempotente); la 2a corrida (--repro) reutiliza cache + benchmarks congelados + clones verificados por sha y exige salidas byte-identicas, con spot-check de recomputacion fresca de 3 ligandos

ReproducibilidadReproducibility

commit
5ffb256392 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
complejoscomplexes
116
fallosfailures
14
hashes SHA-256
9
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-04-QCComprobar que se puede medir, antes de medirHallazgoFindingArtículoPapern=116

Mapeo biyectivo del 99.49%, los átomos pesados no se mueven ni una milésima, y 14 poses degeneradas declaradas como no computables en vez de rellenadas con un número.

Antes de preguntar si la tensión de una pose ayuda a seleccionarla, hay que comprobar que la tensión se puede calcular de forma fiable sobre este material. Suena obvio y casi nunca se hace: lo normal es calcular la característica, meterla en el modelo, y si el modelo no mejora concluir que la característica no sirve.

Ese razonamiento tiene un agujero. Si la característica estaba mal calculada en un 20% de los casos, el experimento no midió si la tensión ayuda: midió si la tensión mal calculada ayuda. Y la respuesta a esa pregunta no interesa a nadie.

Qué se comprobó

CriterioExigidoObtenido
Mapeo biyectivo de átomos≥99%99.49%
Los átomos pesados no se mueven—0.0 Å exacto
Cobertura del campo de fuerza≥95%, sin recurrir a uno peor116/116, sin respaldos
Determinismo—Byte a byte
Coste en frío, percentil 95≤5 s/ligando55.7 ms
Coste con caché, percentil 95≤100 ms/pose68.0 ms
Coste por complejo, percentil 95≤3 s1,726 ms

Dos de estos merecen comentario.

«Los átomos pesados no se mueven: 0.0 Å exacto». Calcular la tensión exige añadir hidrógenos y preparar la molécula. Si en ese proceso los átomos pesados se desplazan aunque sea un poco, la tensión calculada corresponde a una pose ligeramente distinta de la que se está evaluando. El resultado es exactamente cero, así que la geometría evaluada es la geometría real.

El coste está entre 20 y 90 veces por debajo de su presupuesto. Eso importa porque convierte la característica en algo que puede usarse en producción, no sólo en un experimento. Una señal que tarda 5 segundos por ligando no entra en un cribado.

Las 14 poses degeneradas

Dos complejos aportan 14 poses cuya geometría no permite calcular la tensión de forma significativa. Se declaran como no computables y se marcan como tales.

Es la misma decisión que aparece en varios registros de este programa, y es la que separa un conjunto de datos utilizable de uno envenenado: un valor «no computable» explícito permite excluir esas filas después; un cero, o la mediana del resto, se propaga en silencio por cada análisis posterior.

Lo que este experimento autoriza

Con estos números, el experimento científico puede proceder sabiendo que un resultado negativo será interpretable: si la tensión no ayuda a seleccionar, no será porque estuviera mal calculada.

Y el resultado fue negativo — la tensión bajó los aciertos de 47 a 39. Ese negativo vale porque este control existía. Sin él, la conclusión honesta habría tenido que ser «no sabemos si la señal no sirve o si la medimos mal», que no es una conclusión.

Es fontanería. Toda la diferencia entre un resultado y una anécdota está en ella.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El strain MMFF94s es tecnicamente viable sobre las poses train de la union original
Criterio prerregistradoPre-registered criterion
Mapeo biyectivo >=99%; pesados no se mueven; cobertura >=95%; determinismo; cold-start P95 <=5s/ligando; cacheado P95 <=100ms/pose y <=3s/complejo
ProtocoloProtocol
CAMPANA-2-PLAN sellado (41b7f09) IT1 QA-5/QA-6
Razón de la decisiónReason for the decision
QC tecnico PASS: mapeo biyectivo 99.49% (>=99%), pesados no se mueven (0.0A exacto), cobertura MMFF94s 116/116 ligandos (>=95%, sin UFF), determinismo byte-identico, cold-start P95 55.7ms (<=5s), cacheado P95 68.0ms/pose (<=100ms) y 1726ms/complejo (<=3s). 14 poses degeneradas (1kpm, 1nm6) parametrizadas como no computables. RS-04 OOF puede proceder.

Métricas registradasRecorded metrics

experimento
RS-04-QC
protocolo
CAMPANA-2-PLAN sellado (41b7f09) IT1 QA-5/QA-6; etapa tecnica previa a RS-04 (train-only, SIN labels)

ReproducibilidadReproducibility

commit
41b7f09d1a (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
complejoscomplexes
116
fallosfailures
41
hashes SHA-256
8
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

CAMPANA-2-PLANLa cascada v0.6 + decidibilidad + strain + MM-GBSA selectivo puede mejorar la seleccion de poses sin costo indiscriminadoPrerregistroPre-registration

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
PrerregistroPre-registration · Declaración de hipótesis y criterio ANTES de mirar datos. Se sella GO por convención; no es un éxito.Hypothesis and criterion declared BEFORE looking at data. GO is sealed by convention; it is not a success.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La cascada v0.6 + decidibilidad + strain + MM-GBSA selectivo puede mejorar la seleccion de poses sin costo indiscriminado
Criterio prerregistradoPre-registered criterion
Inventario completo con preguntas abiertas; preregistros base sin ejecutar; orden strain -> decidibilidad -> MM-GBSA respetado
ProtocoloProtocol
docs/49 Campaña 2 + RS-01B sellada (NO_GO)
Razón de la decisiónReason for the decision
Plan de Campana 2 sellado tras IT1/DECISIONS del maintainer: QA-1 union original primaria; QA-2 provenance estricta de cargas + RS-03-PARAM (OpenFF Sage+NAGL congelado, AM1-BCC) como prerrequisito; QA-3 router presupuestario con umbrales solo del outer-train y 30% de mayor riesgo; QA-4 single-trajectory maxIter=200 timeout 300s top-2/600s; QA-5 MMFF94s con topologia autoritativa, solo H optimizados, sin UFF, sin truncar strain; QA-6 cross-fitting completo con gate operacional (>=50/116, mediana pareada <=+0.1A, cobertura >=95%, costes P95). RS-04-QC tecnico previo sin labels.

ReproducibilidadReproducibility

commit
82ed2ad8cf (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
hashes SHA-256
7
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-01BQuitar poses duplicadas no mejoró nada, y eso también es un resultadoRefutaciónRefutationArtículoPapern=116

La deduplicación dejó el RMSD pareado exactamente en 0.000 Å y bajó los aciertos de 47 a 43. Ni mejora ni degrada de forma demostrable: simplemente no es la palanca.

Cuando un pipeline genera candidatas desde tres fuentes distintas, muchas son la misma pose contada varias veces. Eso desperdicia presupuesto y, peor, distorsiona la densidad del espacio: una región muestreada por casualidad tres veces parece más importante de lo que es, y un selector entrenado sobre esa distribución aprende un sesgo que no está en la física.

La hipótesis era que limpiar los duplicados mejoraría la selección sin perder calidad de pose.

Qué pasó

Aciertos Top-1 fuera de muestra
Conjunto original47/116
Deduplicado43/116
Exigido por el gate≥ +3

Delta de −4. El gate no se cumple.

Los dos criterios de no-degradación sí se cumplen, y con holgura:

  • mediana pareada del cambio de RMSD: 0.000 Å, con un límite de 0.1 Å. La deduplicación no perdió ni una pose buena;
  • el intervalo de confianza por componentes, [−8.80, +4.00], y el test de McNemar (p = 0.481) no establecen superioridad ni degradación.

Cómo hay que leer esto

Es tentador leer «bajó de 47 a 43» como que la deduplicación hace daño. La estadística no lo soporta: el intervalo contiene el cero con margen a ambos lados. Con n=116 y una diferencia de 4 complejos, esto es indistinguible del ruido.

La lectura correcta es la aburrida: la deduplicación es neutra. No mejora la selección y no estropea las poses.

Que la mediana del cambio de RMSD sea exactamente 0.000 Å es el dato más informativo del experimento y el que justifica conservar la herramienta. Significa que el umbral elegido agrupaba poses genuinamente equivalentes: al quedarse con una representante de cada grupo, no se perdió ninguna pose que importara. Es un filtro que hace lo que dice.

Por qué el artefacto se conserva aunque no se adopte

El resultado es un NO_GO operacional: la deduplicación no se adopta como entrada por defecto del selector, porque no hay evidencia de que mejore nada y la regla del laboratorio es no cambiar producción sin ella.

Pero el artefacto queda disponible como opción, y esa decisión resultó acertada por una razón que en su momento no se veía. Cuando el conjunto se reconstruyó y pasó a ser 6.9 veces más denso, la deduplicación dejó de ser cosmética: con ~169 candidatas por complejo en vez de ~9, reducir un tercio del volumen sin perder cobertura es una diferencia real de coste.

El umbral hubo que volver a derivarlo —el de 1.5 Å se había elegido sobre la unión escasa, y sobre la densa sale 2.0 Å— pero la herramienta ya existía y estaba validada.

Un negativo que deja detrás una pieza reutilizable vale más que uno que sólo deja una conclusión.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
La deduplicacion mejora Top-1 OOF sin degradar RMSD pareado
Criterio prerregistradoPre-registered criterion
+3 Top-1 OOF Y mediana pareada RMSD <=0.1 A; bootstrap BCa por 38 componentes 10k; val/test/CONFIRM intocados
ProtocoloProtocol
RS-01 preregistro sellado + RS-01A sellada
Razón de la decisiónReason for the decision
NO_GO operacional: la deduplicacion con umbral anidado obtuvo 43/116 aciertos Top-1 OOF frente a 47/116 del brazo original, delta=-4, incumpliendo el gate preregistrado de >=+3. La mediana pareada dRMSD fue 0.000 A y cumplio el limite de 0.1 A. El bootstrap primario por componentes [-8.80, 4.00] y McNemar exacto bilateral p=0.480682 no establecen superioridad ni degradacion estadistica. El artefacto deduplicado queda opcional y no se adopta como entrada predeterminada de v0.6.

Métricas registradasRecorded metrics

experimento
RS-01B
declaracion_resultado
Evaluacion OOF por cross-fitting de clones v0.6 (hiperparametros congelados) frente a la deduplicacion con umbral anidado por fold (regla MF-11-R1). Gate primario: +3 Top-1 OOF y mediana pareada de RMSD <= 0.1 A.
preregistro
scripts/artifacts_science/RS-01/PREREGISTRO.md §4.1-4.7 (sello paraguas)
garantia_cuarentena
builtins.open auditado contra whitelist explicita: solo se abrieron los insumos train sellados, los modulos importados por composicion, los records train y las salidas RS-01B; poses_val.jsonl, poses_test.jsonl y FND-05/D-RC-CONFIRM NO figuran en archivos_abiertos_repo y nunca se abren en ninguna fase (los archivos internos de python-embed/ y __pycache__ quedan fuera del alcance de la auditoria)
determinismo
salidas sin timestamps ni aleatoriedad no-seeded; dos corridas completas producen metrics.json y per_complex.jsonl byte-identicos

ReproducibilidadReproducibility

commit
97970ce5ec (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
complejoscomplexes
116
hashes SHA-256
8
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-01A-R1El p de McNemar reportado en RS-01A estaba duplicado por un factor 2 sobre binomtest ya bilateralCorrigendumCorrection notice

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
CorrigendumCorrection notice · Corrección de un resultado propio cuyo valor principal es la corrección.Correction of an own result whose main value is the correction.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El p de McNemar reportado en RS-01A estaba duplicado por un factor 2 sobre binomtest ya bilateral
Criterio prerregistradoPre-registered criterion
p corregido b=4 c=0 -> 0.125 reproducido; sello historico RS-01A intacto
ProtocoloProtocol
RS-01A sellada (2943a38) + RS-01B
Razón de la decisiónReason for the decision
Corrigendum estadistico: el p de McNemar de RS-01A estaba duplicado por un factor 2 sobre binomtest (ya bilateral); corregido b=4 c=0 -> p=0.125. Ningun gate ni decision cambia; el sello historico de RS-01A (2943a38) permanece intacto sin maintain.

Métricas registradasRecorded metrics

experimento
RS-01A-R1
tipo
CORRIGENDUM ESTADISTICO
bug
mcnemar_hits multiplicaba por 2 el pvalue de scipy.stats.binomtest(...), que YA es bilateral
fix
se elimina el factor 2: p = binomtest(min(b,c), b+c, 0.5).pvalue; 0 pares discordantes -> p = 1.0
que_no_cambia
ningun gate ni decision de RS-01A cambia: A0 sigue reproduciendo el historico; A1 sigue observando -4 hits Top-1 con 0 recuperaciones; la mediana pareada sigue 0.000 A; el contrafactual de los 31 empates sigue siendo sensible al desempate de fuente. El GO procedimental del sello historico permanece intacto.
garantia_cuarentena
solo se lee el metrics.json sellado del padre (verificado por sha) y se escriben los artefactos de RS-01A-R1; cero acceso a val/test/CONFIRM
determinismo
salidas sin timestamps ni aleatoriedad; dos corridas producen bytes identicos

ReproducibilidadReproducibility

commit
97970ce5ec (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
hashes SHA-256
8
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-01AUn GO que certifica la auditoría, no el resultadoHallazgoFindingArtículoPapern=116

Reprodujo exactamente las métricas históricas y midió el efecto de la deduplicación: −4 aciertos, 0 recuperaciones, cero pérdidas de cobertura. El sello dice explícitamente que esto no demuestra equivalencia.

Antes de cambiar la entrada de un modelo congelado hay que saber qué le hace ese cambio. La deduplicación de poses reduce el volumen; la pregunta es si al reducirlo altera el comportamiento del selector que ya está en producción.

Este experimento es la auditoría de ese cambio, en el propio conjunto donde el modelo se desarrolló.

Qué se midió

Primero, que el punto de partida es el correcto. Se reprodujeron exactamente las métricas históricas del checkpoint congelado. Sin eso, cualquier diferencia observada después podría ser un artefacto de haber cargado mal el modelo.

Después, el efecto:

Resultado
Cambio en aciertos Top-1−4
Recuperaciones (fallos que pasan a aciertos)0
Mediana pareada del cambio de RMSD0.000 Å
Pérdidas de cobertura del oráculo0
McNemarp = 0.25
Intervalo agrupado de aciertos[−10, 0]

El intervalo no excluye el cero. La lectura estadística es que no se demuestra diferencia, en ninguna dirección.

Lo más informativo es la combinación de dos números: −4 aciertos con 0 recuperaciones. No es que el cambio reordene y salgan las cuentas parecidas; es que sólo quita. Cuatro complejos que el modelo acertaba dejan de acertarse y ninguno de los que fallaba se recupera.

El contrafactual, y lo que reveló

Se ejecutó además un análisis contrafactual completo sobre los 31 empates, y mostró sensibilidad al criterio de desempate por fuente.

Ese detalle es más importante de lo que parece. Significa que parte del comportamiento del selector en los casos ajustados no lo decide el modelo, sino la regla arbitraria que decide qué pose gana cuando dos puntúan igual — y esa regla depende de qué generador produjo cada una.

Una porción del rendimiento medido no es del modelo. Es del orden en que le llegan las cosas.

La declaración que acompaña al GO

El sello es explícito sobre su propio alcance, y merece citarse porque es el contenido principal de este registro:

Este GO certifica la ejecución de la auditoría. No demuestra equivalencia, ni compatibilidad científica, ni mejora generalizable.

Y una segunda limitación, declarada también: todo esto es dentro de la muestra. Se midió en el conjunto donde el modelo se desarrolló, así que ni siquiera las diferencias observadas se pueden extrapolar.

Por qué se selló así

Porque es exactamente el tipo de registro que en seis meses se leería mal. «RS-01A: GO» en un listado, junto a un experimento sobre deduplicación, invita a concluir que la deduplicación quedó validada.

No quedó validada. Quedó auditada, que es otra cosa: se sabe qué hace, se sabe que no pierde cobertura, se sabe que quita cuatro aciertos sin recuperar ninguno, y se sabe que nada de eso es estadísticamente distinguible del ruido con este tamaño de muestra.

La decisión de producción que salió de aquí fue no adoptarla por defecto.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La union deduplicada MF-11-R1 cambia el comportamiento in-sample del checkpoint v0.6 congelado
Criterio prerregistradoPre-registered criterion
A0 reproduce el historico; A1 primaria reporta cambios con McNemar; A2 sensibilidad; 31 empates contrafactual completo; declaracion in-sample
ProtocoloProtocol
RS-01 preregistro sellado (d320bcd) + MF-11-R1
Razón de la decisiónReason for the decision
GO procedimental de auditoria in-sample: A0 reprodujo exactamente las metricas historicas; A1 observo -4 hits Top-1, 0 recuperaciones, mediana pareada dRMSD 0.000 A y cero perdidas de cobertura del oraculo. McNemar p=0.25 y el intervalo agrupado de hits [-10, 0] no excluyo cero. El contrafactual completo mostro sensibilidad al desempate de fuente. Este GO certifica la ejecucion de la auditoria, no demuestra equivalencia, compatibilidad cientifica ni mejora generalizable.

Métricas registradasRecorded metrics

experimento
RS-01A
declaracion_resultado
El resultado es SOLO una auditoria in-sample de compatibilidad y perturbacion del checkpoint congelado v0.6 frente a la union deduplicada MF-11-R1. Cualquier diferencia observada no constituye evidencia de mejora ni de degradacion generalizable; para eso existe RS-01B.
preregistro
scripts/artifacts_science/RS-01/PREREGISTRO.md (sello paraguas d320bcd, §3.3/§3.4)
garantia_cuarentena
builtins.open auditado contra whitelist explicita: solo se abrieron los insumos declarados, los modulos importados por composicion, los records train y las salidas; poses_val.jsonl y poses_test.jsonl NO figuran en archivos_abiertos_repo y nunca se abren en ninguna lectura (los archivos internos del interprete python-embed/ y __pycache__ quedan fuera del alcance de la auditoria)
determinismo
salidas sin timestamps ni aleatoriedad no-seeded; dos corridas producen metrics.json y per_complex.jsonl byte-identicos

ReproducibilidadReproducibility

commit
a4fd528d8f
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
complejoscomplexes
116
hashes SHA-256
127
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

RS-01La union deduplicada MF-11-R1 cambia el comportamiento de v0.6 (RS-01A in-sample) y el cross-fitting OOF muestra si la deduplicacion mejora Top-1 sin degradar RMSD (RS-01B)MediciónMeasurement

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La union deduplicada MF-11-R1 cambia el comportamiento de v0.6 (RS-01A in-sample) y el cross-fitting OOF muestra si la deduplicacion mejora Top-1 sin degradar RMSD (RS-01B)
Criterio prerregistradoPre-registered criterion
Preregistro completo; RS-01A in-sample con lecturas A0/A1/A2 (A1 primaria); RS-01B OOF con folds del fold_plan (38 componentes, 55/16/15/15/15), gate OPERACIONAL +3 Top-1 y degradacion <=0.1A + bootstrap por 38 componentes (10000 replicas, BCa) y McNemar exacto; val descriptivo; test y D-RC-CONFIRM sellados e intocados
ProtocoloProtocol
docs/49 RS-01 reformulado + MF-11-R1 sellada + bloqueadores B1-B7 (IT1); sello PARAGUAS DE PREREGISTRO: las ejecuciones y resultados se sellan por separado como RS-01A y RS-01B
Razón de la decisiónReason for the decision
Preregistro RS-01A/B sellado como paraguas tras IT1+IT2: A0/A1/A2 definidos, fold_plan 55/16/15/15/15 con claim near-identity-receptor-disjoint + Murcko-disjoint, n_estimators=52 sin ES, vista cache train-only sin leer val/test, bootstrap BCa global por 38 componentes 10000 replicas con fallback percentil, contingencias cerradas (U=None, todos los medoides empatados, mascaras de fuentes). Las ejecuciones y resultados se sellan aparte como RS-01A y RS-01B.

ReproducibilidadReproducibility

commit
d1000cec25 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
hashes SHA-256
13
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-11-R1El medoid geometrico con diametro controlado preserva el oraculo a un umbral mayor que identity-firstCorrigendumCorrection noticen=116

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
CorrigendumCorrection notice · Corrección de un resultado propio cuyo valor principal es la corrección.Correction of an own result whose main value is the correction.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El medoid geometrico con diametro controlado preserva el oraculo a un umbral mayor que identity-first
Criterio prerregistradoPre-registered criterion
Mayor umbral con 0 perdidas + degradacion mediana <=0.1A + reduccion >=10%; ablation mejor-Vina secundaria; solo train; 0 val
ProtocoloProtocol
MF-11 (NO_GO sellada, desviaciones D1/D2) + contrato original
Razón de la decisiónReason for the decision
MF-11-R1 GO de desarrollo: sobre 116 complejos train y 2739 poses, la politica label-blind de diametro controlado y medoid geometrico selecciono 1.5 A mediante la regla preregistrada, reduciendo 11.90% los candidatos (2739->2413) con cero complejos cubiertos perdidos y degradacion mediana de min-RMSD 0.000 A. Val permanece excluida e inhabilitada para confirmar variantes por la desviacion D1 de MF-11; el artefacto prepara RS-01, pero no constituye validacion externa.

Métricas registradasRecorded metrics

experimento
MF-11-R1
determinismo
salidas sin timestamps ni aleatoriedad; dos corridas producen bytes identicos (verificacion en DESIGN.md)

ReproducibilidadReproducibility

commit
ad9ebcaaf8 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
complejoscomplexes
116
hashes SHA-256
11
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-01El generador propio no aporta ni un complejo que el barato no dieraRefutaciónRefutationArtículoPapern=156

MolFlex cubre el 17.6% del estrato difícil. Vina flexible con exhaustiveness 4 cubre el 64.7%, por un tercio del coste. La decisión fue no ampliar MolFlex.

MolFlex es el generador de poses propio del proyecto: construye un ensemble conformacional y dockea cada confórmero por separado, con la idea de que así se visitan regiones del espacio que un docking flexible convencional se salta.

Este experimento pregunta lo único que decide si merece la pena seguir invirtiendo en él: ¿aporta candidatas que las fuentes existentes no aportan?

Qué pasó

BrazoCobertura del estrato difícil
MolFlex con K=15 confórmeros17.6%
Vina flexible, exhaustiveness 464.7%
Unión de todas las fuentes sin MolFlex69.2%

El baseline más barato disponible cubre casi cuatro veces más que el generador propio, con aproximadamente un tercio del coste.

Y el dato que cierra la pregunta tal como estaba formulada: sobre la cohorte difícil, MolFlex aportó 0 complejos nuevos con las poses existentes. Ni uno. La unión sin MolFlex cubre 69.2%, y añadirlo no sube esa cifra.

Por qué esto es más incómodo de lo que parece

No es que MolFlex sea peor. Es que no es complementario, que era su justificación entera. Un generador con menos cobertura sigue valiendo la pena si visita sitios distintos: la unión gana aunque cada parte pierda. Aquí la unión no gana nada.

Las poses que MolFlex encuentra son un subconjunto de las que ya se tenían.

Lo que este resultado desmonta

El plan del programa tenía varios experimentos —afinar el número de confórmeros, las semillas, las políticas de generación, el pruning— y todos presuponían que la vía de mejora era afinar MolFlex. Este experimento, junto con la comparación a presupuesto igual, dice que en el estrato objetivo el baseline barato ya alcanza el techo de la unión de tres fuentes.

La decisión registrada fue no ampliar MolFlex, y quedó como precondición que cualquier experimento posterior de esa familia declarara antes qué cambia en el generador, no en sus parámetros.

Esa precondición es la que sigue vigente hoy, y la que ha bloqueado desde entonces cuatro identificadores del plan original.

El contexto que llegó después

Un resultado posterior explicó por qué ningún ajuste de MolFlex podía funcionar: en 30 de 33 complejos difíciles no existe ninguna pose bajo 2 Å entre las ~751 candidatas generadas por todas las fuentes juntas. No es que MolFlex escoja mal entre buenas candidatas — es que las buenas candidatas no están.

Y otro acotó el problema por el lado opuesto: la conformación correcta sí suele estar disponible, un 83.9% de las veces. De modo que el cuello no es generar la forma correcta, sino encontrar dónde y con qué orientación colocarla.

Visto desde ahí, este experimento fue la primera medición que apuntaba en esa dirección, aunque en su momento se leyera sólo como «el generador propio no gana».

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
Las fuentes existentes difieren en cobertura de oraculo por estrato de flexibilidad sobre train/val
Criterio prerregistradoPre-registered criterion
Tabla de cobertura reproducible; sin scoring ni union en esta fase
ProtocoloProtocol
docs/49_PROGRAMA_EXPERIMENTAL_CIENTIFICO.md MF-01 + FND-06 provenance
Razón de la decisiónReason for the decision
MF-01 NO_GO (gate cientifico, entregable 10): MolFlex aporto 0 complejos nuevos en D-MF-HARD con las poses existentes; la curva 5/15/30 sellada mostro cobertura hard 17.6% a K15 frente a 64.7% de Vina flexible exh4 (entregable 8 sellado GO) con ~1/3 del coste; la union sin MolFlex cubre 69.2%. Decision: NO ampliar MolFlex. Insumos: entregables 7 (K=15 sellado), 8 (train GO + val descriptivo), 9 (MF-11 NO_GO sellado).

ReproducibilidadReproducibility

commit
67c4e30a09 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
complejoscomplexes
156
hashes SHA-256
7
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-11Perdió dos complejos de 108, y el gate no admitía perder ningunoRefutaciónRefutationArtículoPapern=156

La deduplicación a 2.0 Å redujo los candidatos un 23.55%, de forma determinista y sin mirar las etiquetas. Perdió 2 complejos cubiertos. El criterio exigía cero.

Al unir candidatas de varias fuentes, muchas poses son la misma con decimales distintos. Agruparlas reduce el coste de cualquier cosa que venga después. El requisito es que la reducción sea sin pérdida: si entre las candidatas de un complejo había una pose correcta, después de agrupar tiene que seguir habiéndola.

El criterio se fijó en cero pérdidas. No «pocas»: cero. La razón es que la cobertura del oráculo es el techo de todo lo que se mida después, y perder un complejo ahí es perderlo en todos los experimentos posteriores, sin que ninguno pueda detectarlo.

Qué pasó

Resultado
Reducción de candidatos23.55%
DeterminismoByte a byte
Verificación de que no mira etiquetasCorrecta
Complejos cubiertos perdidos2 de 108 (1alw, 1bcd)

Todo funciona excepto lo único que no admitía excepciones.

Dos complejos de 108 es un 1.9%. Es la clase de número que en casi cualquier otro contexto se redondearía a cero y se seguiría adelante. Aquí no, porque el criterio se escribió antes justamente para que ese redondeo no ocurriera.

Por qué se pierde una pose al agrupar

El mecanismo merece explicarse, porque es el riesgo estructural de toda deduplicación por umbral. Un grupo de poses dentro de 2.0 Å unas de otras puede contener una pose a 1.9 Å del cristal y otra a 3.9 Å. Si el representante elegido cae del lado malo, el grupo entero pasa de cubierto a no cubierto.

Cuanto más grande el umbral, más agresiva la reducción y más probable ese accidente. Y aquí hay una coincidencia incómoda: 2.0 Å es también el umbral de éxito. Un agrupamiento con diámetro igual al criterio de acierto puede meter en el mismo grupo un acierto y un fallo.

Dos desviaciones registradas

El registro anota dos cosas que se hicieron distinto de lo planeado:

  1. El conjunto de validación se procesó junto con el de entrenamiento, en vez de por separado.
  2. Se eligió como representante la primera pose por identidad en lugar del centro geométrico del grupo.

La segunda es probablemente la causa directa de las dos pérdidas: la primera pose de un grupo es arbitraria, mientras que el centro geométrico es, por construcción, la que menos se aleja del resto. La revisión posterior de esta política cambió a centro geométrico, y sobre el conjunto reconstruido logró 0 pérdidas con una reducción aún mayor.

Es decir: el fallo no era la idea, era una decisión de implementación que no se había pensado como decisión.

Qué se hizo con el artefacto

Queda registrado como caracterización de una política con pérdida, no como conjunto recomendado. La distinción es operativa: sigue disponible para quien acepte conscientemente perder un 2% de cobertura a cambio de un 23% menos de volumen, y no se convierte en la entrada por defecto de nada.

La versión corregida —centro geométrico, umbral re-derivado sobre el conjunto denso— es la que acabó adoptándose, y llegó a un umbral distinto (2.0 Å en vez de 1.5 Å) con reducciones del 31.7% al 38.2% y cero pérdidas en los tres conjuntos.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
El clustering label-blind por RMSD pocket-frame a 2.0A reduce candidatos redundantes de la union sin perder cobertura de oraculo
Criterio prerregistradoPre-registered criterion
0 complejos cubiertos perdidos; reduccion reportada; determinismo byte a byte; label-blind verificado
ProtocoloProtocol
docs/49 15 (entregable 9) + MF-01-UNION/DESIGN.md
Razón de la decisiónReason for the decision
MF-11 NO_GO: el clustering label-blind identity-first a 2.0 A redujo 23.55% los candidatos y fue determinista, pero perdio 2/108 complejos cubiertos (1alw, 1bcd), incumpliendo el gate primario de preservacion exacta del oraculo. El artefacto permanece como caracterizacion de una politica lossy, no como dataset recomendado para rescoring. Desviaciones registradas: D1 val procesado junto con train; D2 primera identidad en vez de medoid geometrico.

ReproducibilidadReproducibility

commit
37e35913c9 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
complejoscomplexes
156
hashes SHA-256
12
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

D-MF-HARD-EXH4-VALLa ejecucion descriptiva de Vina exh4 sobre val caracteriza el comportamiento fuera de trainMediciónMeasurementn=10

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La ejecucion descriptiva de Vina exh4 sobre val caracteriza el comportamiento fuera de train
Criterio prerregistradoPre-registered criterion
Solo 10 val, config identica, descriptivo n=5, primera y unica ejecucion exh4 sobre val, sin poder de decision
ProtocoloProtocol
D-MF-HARD-EXH4 (sello train) + FORECAST.md correcciones
Razón de la decisiónReason for the decision
Ejecucion descriptiva val completada UNA sola vez: hard 2/5 (40%, Wilson CI95 0.118-0.769), control 2/5 (40%, mismo CI); 0 fallos ITT, 76 poses, 10 corridas. n=5 sin potencia; primera y unica ejecucion de exh4 sobre val; no ciega. K=15 y claim train sellado INALTERADOS

Métricas registradasRecorded metrics

split
val
n_complejos
10
n_poses
76
n_fallos_itt
0
tipo
descriptivo_n5_sin_potencia
primera_y_unica_ejecucion_exh4_sobre_val
true
no_ciega_no_confirmatoria
la cohorte val YA fue examinada con MolFlex K15 (sellada D-MF-HARD-CURVE-VAL)
k15_inmutable
true
claim_train_inmutable
ningun resultado de val altera K=15 ni el claim train sellado (D-MF-HARD-EXH4 GO)

ReproducibilidadReproducibility

commit
858933bef9 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
complejoscomplexes
10
hashes SHA-256
12
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

D-MF-HARD-EXH4Vina flexible exh4 con seed explicito produce cobertura comparable a MolFlex K15 en D-MF-HARD trainMediciónMeasurementn=34

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Vina flexible exh4 con seed explicito produce cobertura comparable a MolFlex K15 en D-MF-HARD train
Criterio prerregistradoPre-registered criterion
34/34 train gate enmendado; G1 ejecucion; G2 cuatro niveles; comparacion CPU-ajustada vs MolFlex K15; cobertura/N descriptiva; 0 val
ProtocoloProtocol
FORECAST.md (correcciones 47a24a8) + docs/49
Razón de la decisiónReason for the decision
En D-MF-HARD train, AutoDock Vina 1.2.7 con ligando flexible, receptor rigido, exhaustiveness 4 y seed 42 fue superior a MolFlex K15 en cobertura hard: 11/17 frente a 3/17; discordancias b=8, c=0; McNemar exacto bilateral p=0.0078125. El coste hard fue 0.670 CPU-h medido frente a 2.214 CPU-h P50 estimado para MolFlex, sin tradeoff de coste bajo el estimador preregistrado. El claim se limita a esta cohorte de desarrollo y a redocking/generacion con pocket conocida, box y conformacion inicial cristalograficos. Frente a la union en hard y frente a MolFlex K15 en controles, el resultado permanece inconcluso. Sensibilidad: Bonferroni post hoc sobre 6 comparaciones G2, p_adj=0.046875 (no parte del preregistro).

Métricas registradasRecorded metrics

split
train
n_complejos
34
n_poses
231
n_fallos_itt
0
claim
benchmark de REDOCKING/GENERACION en pocket conocida (box 25 centrado en ligando cristalografico, conformacion de entrada cristalografica); NO evidencia end-to-end para pockets desconocidas (FORECAST.md alcance del claim)

ReproducibilidadReproducibility

commit
d86c45ad0a (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
complejoscomplexes
34
hashes SHA-256
14
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

D-MF-HARD-CURVE-VALLa validacion piloto de val con K=15 describe el comportamiento fuera de trainMediciónMeasurementn=10

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La validacion piloto de val con K=15 describe el comportamiento fuera de train
Criterio prerregistradoPre-registered criterion
Solo K=15, solo 5+5 val, config identica, descriptivo n=5, K inmutable tras el resultado
ProtocoloProtocol
D-MF-HARD-CURVE (sello train K=15, commit f31bfeb) + FORECAST.md
Razón de la decisiónReason for the decision
Validacion piloto descriptiva completada UNA sola vez con K=15: hard 2/5 (40%, CI95 0.118-0.769), controles 4/5 (80%, CI95 0.376-0.964); 0 fallos ITT; n=5 sin potencia (intervalos se solapan con train); K permanece 15 e inmutable; K30 no abierto

Métricas registradasRecorded metrics

split
val
n_complejos
10
n_poses
949
n_fallos_itt
0
k_fijado
15
k_inmutable
true
tipo
descriptivo_n5_sin_potencia
n_desviaciones
0
n_technical_retries
0
train_referencia
D-MF-HARD-CURVE sellado GO K=15 (commit f31bfeb)

ReproducibilidadReproducibility

commit
ed39cc604c (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
complejoscomplexes
10
hashes SHA-256
13
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

D-MF-HARD-CURVELa curva anidada 5/15/30 en D-MF-HARD train muestra en que K se satura la cobertura de MolFlexMediciónMeasurementn=34

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La curva anidada 5/15/30 en D-MF-HARD train muestra en que K se satura la cobertura de MolFlex
Criterio prerregistradoPre-registered criterion
Pilot verificado con gate corregido (enmienda auditada 2026-08-16: rc=0, 1<=n_models_emitted<=9, scores FINITOS exclusivamente de REMARK VINA RESULT, identidades solo para modelos emitidos, provenance 14 campos con seed 42/42 y experiment_id); 34 train completados ITT (deviations y technical_retries fuera del ITT); regla de decision aplicada; 0 val tocado
ProtocoloProtocol
docs/49 + FORECAST.md (entregable 7) + D-MF-HARD/DESIGN.md
Razón de la decisiónReason for the decision
K=15 fijado y sellado para VALIDACION PILOTO (regla corregida aplicada: pierde 1/4 hard <=1, degradacion mediana 0.013A, 0 controles perdidos). GO NO rehabilita MolFlex en D-MF-HARD: cobertura hard 3/17 = NO_GO; K30 no es equivalente (mejora varios hard y anade 1b2h como 4o cubierto); mediana pareada 15->30 0.000A vs media -0.289A documentadas

Métricas registradasRecorded metrics

split
train
n_complejos
34
n_poses
4329
n_fallos_itt
0

ReproducibilidadReproducibility

commit
7b6122f636 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
complejoscomplexes
34
hashes SHA-256
16
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

D-MF-HARDExiste una cohorte dificil bien definida (rot_bonds>=15) con controles faciles emparejados en train+val para medir regresiones de MolFlex sin re-dockingMediciónMeasurement

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Existe una cohorte dificil bien definida (rot_bonds>=15) con controles faciles emparejados en train+val para medir regresiones de MolFlex sin re-docking
Criterio prerregistradoPre-registered criterion
22 hard + 22 controles emparejados, universo 156, 0 denylist, 0 test, determinismo byte a byte, oracle_gap no decide nada
ProtocoloProtocol
docs/49_PROGRAMA_EXPERIMENTAL_CIENTIFICO.md (D-MF-HARD, entregable 6) + MF-01/MF-01-UNION
Razón de la decisiónReason for the decision
PASS OPERACIONAL: cohorte 22 hard (17 train + 5 val) + 22 controles emparejados sin reemplazo; universo 156; 0 denylist; 0 test; historical_timeout solo de registros originales; oracle_gap secundario y sin poder de decision; determinismo byte a byte. Sin resultado cientifico todavia; val (5 dificiles) es solo verificacion piloto

Métricas registradasRecorded metrics

entregable
6
experiment
D-MF-HARD

ReproducibilidadReproducibility

commit
5f0329d330 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
hashes SHA-256
8
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

MF-01-UNIONUn GO operacional que no rescata el NO_GO científicoHallazgoFindingArtículoPaper

3,469 poses de 156 complejos unificadas sin re-dockear, con cero colisiones y determinismo byte a byte. Y una nota en el sello: esto no dice que MolFlex sirva.

Antes de poder comparar generadores de poses hay que poder mirarlos juntos. Tres fuentes distintas producían poses en formatos, convenciones de índices y directorios distintos, generadas a lo largo de meses. Compararlas exigía materializar una unión trazable: cada pose con su geometría real y su enlace a la procedencia, sin volver a dockear nada.

Este experimento es esa unión. Es puro trabajo de plomería, y está aquí por lo que dice su sello.

Qué se entregó

Poses unificadas2,739 + 730
Complejos156
Corridas con procedencia447 / 447
Colisiones de identificador0
Poses sin procedencia0
Geometría real (no placeholder)100%
DeterminismoByte a byte
Acceso al conjunto de testNinguno

Cero colisiones importa más de lo que parece: significa que ninguna pose de una fuente sobrescribió silenciosamente a otra al fusionar. Ese es el modo de fallo clásico de una unión, y es invisible después — el conjunto resultante parece perfectamente sano, sólo que le faltan filas.

La nota que hace interesante este registro

El sello incluye, textualmente, una advertencia contra su propia lectura optimista:

El gate científico permanece NO_GO. MolFlex aportó 0 complejos en la cohorte difícil. Este GO es exclusivamente operacional sobre el artefacto.

Es decir: se construyó bien la herramienta para comparar generadores, y la comparación dijo que el generador propio no aporta nada. Las dos cosas conviven en el mismo identificador y el registro se encarga de que no se confundan.

Sin esa nota, dentro de seis meses alguien —incluido el propio autor— vería «MF-01-UNION: GO» en un listado y concluiría que la unión de fuentes funcionó en el sentido que importaba.

Por qué esta distinción es una política, no un detalle

Buena parte de los registros de este programa son de este tipo: un artefacto se construye correctamente y la pregunta científica que motivaba construirlo se responde que no. Si ambos casos se sellan igual, el recuento de «éxitos» del programa se llena de fontanería que funciona, y deja de medir nada.

De aquí sale la separación que usa el registro público entre hallazgos —gates científicos superados— y las otras poblaciones, entre ellas los artefactos operacionales. Un GO que sólo dice «la herramienta hace lo que dice» es verdad, es necesario, y no es un resultado.

Qué quedó utilizable

La unión materializada es la base sobre la que después se midió la cobertura por fuente, se derivó la política de deduplicación, y se reconstruyó el conjunto de poses completo. Nada de eso habría sido posible sin poder mirar las tres fuentes en el mismo marco de coordenadas y con el mismo esquema de índices.

La plomería no da resultados. Da la posibilidad de tenerlos.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Las poses existentes pueden materializarse en una union trazable sin re-docking, con geometrias y enlace a provenance
Criterio prerregistradoPre-registered criterion
2739+730 poses, 156 complejos, 447 corridas, 0 colisiones, 0 sin provenance, determinismo byte a byte, sin acceso a test
ProtocoloProtocol
docs/49_PROGRAMA_EXPERIMENTAL_CIENTIFICO.md 15 (entregable 4) + MF-01/DESIGN.md
Razón de la decisiónReason for the decision
PASS OPERACIONAL: union materializada 2739+730 poses, 156 complejos, 447/447 corridas de provenance, 0 colisiones, 100% PDBQT real, determinismo byte a byte, sin acceso a test. NOTA: el gate CIENTIFICO de MF-01 permanece NO_GO (MolFlex 0 complejos en D-MF-HARD; decision en RS-01); este GO es exclusivamente operacional sobre el artefacto

Métricas registradasRecorded metrics

separacion_candidatos_labels
union_candidates_*.jsonl NO contienen rmsd ni labels de calidad; union_labels_*.jsonl llevan las etiquetas keyed por identidad, en el mismo orden

ReproducibilidadReproducibility

commit
b0b0895c73 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
hashes SHA-256
13
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

AF-01-R1El estratificado por receptor de AF-01 contiene un bug de clasificacion (overlap==1.0 incluye subsecuencias); la correccion por igualdad literal mueve 53 complejos de seen_exact a near_identity sin afectar el resultado globalCorrigendumCorrection noticen=328

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
CorrigendumCorrection notice · Corrección de un resultado propio cuyo valor principal es la corrección.Correction of an own result whose main value is the correction.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
El estratificado por receptor de AF-01 contiene un bug de clasificacion (overlap==1.0 incluye subsecuencias); la correccion por igualdad literal mueve 53 complejos de seen_exact a near_identity sin afectar el resultado global
Criterio prerregistradoPre-registered criterion
Reproducir estratos 126/108/94 con rho 0.7240/0.5135/0.5395 y CIs dentro de tolerancia
ProtocoloProtocol
AF-01 (parent, sellada GO) + corrigendum del maintainer; docs/49
Razón de la decisiónReason for the decision
Corrigendum: estratos corregidos por igualdad literal de secuencia (126/108/94; rho 0.7240/0.5135/0.5395) reproducidos exactamente; subanalisis estratificado de AF-01 superseded; replica global 0.6094 intacta; pre-audit reconciliado (definiciones distintas, ambas correctas)

Métricas registradasRecorded metrics

experiment
AF-01-R1
tipo
corrigendum
parent
AF-01 (sellada GO=REPRODUCED_WITH_SCOPE_LIMITATION; commits 0593983 contenido + 67c4e30 sello)
fecha
2026-08-16
status
ejecutado y verificado (sin seal, sin finish, por protocolo)
bug_corregido
overlap==1.0 usado como 'secuencia exacta' en af01_stratify.py; overlap de k-meros == 1.0 tambien ocurre cuando los k-meros de una cadena corta son subconjunto de los de otra (subsecuencia), no solo con secuencias identicas. Fix: receptor_seen_exact = igualdad LITERAL de secuencia por par de cadenas (seq_dev == seq_holdout).

ReproducibilidadReproducibility

commit
67c4e30a09 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
complejoscomplexes
328
hashes SHA-256
9
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

AF-01Reproduce exactamente, y con eso descubre que no significa lo que decíaHallazgoFindingArtículoPapern=328

Spearman 0.6094, delta 0.0 respecto a la cifra original. Al estratificar por relación con el receptor, cae a 0.3626 en las proteínas no relacionadas. La cifra reproduce; el alcance era otro.

Un resultado de correlación 0.6094 llevaba tiempo circulando como el rendimiento del modelo de afinidad. Este experimento hace dos cosas a la vez: comprobar que se reproduce con las entradas congeladas, y averiguar qué significa exactamente.

La primera parte es la fácil.

Reproduce exactamente

Valor
Spearman original0.6094
Spearman reproducido0.6094
Delta0.0
CI95[0.5282, 0.6791]
n328, semilla 42

Delta exactamente cero. Con las entradas, el código y la semilla congelados, el resultado es el mismo. Eso descarta la explicación más incómoda de todas: que la cifra viniera de una ejecución afortunada que nadie había vuelto a hacer.

La parte que cambia lo que se puede decir

El conjunto de evaluación estaba separado del de desarrollo por la química del ligando. No por el receptor. Este experimento estratificó los 328 casos según su relación con las proteínas vistas durante el desarrollo:

EstratonSpearman
Receptor visto en desarrollo1790.7138
Receptor casi idéntico550.3626
Receptor no relacionado940.5395

La cifra global de 0.6094 es un promedio de tres poblaciones muy distintas, y más de la mitad de los casos son proteínas que el modelo ya había visto.

Sobre los 55 casos de receptor casi idéntico el rendimiento cae a 0.3626 — que es, además, el estrato más difícil de justificar: son proteínas suficientemente parecidas a las de entrenamiento como para no ser una prueba de generalización, y suficientemente distintas como para que el modelo no acierte.

Por eso la decisión no es «reproducido» a secas

El criterio se escribió con dos salidas posibles, y la que se selló fue «reproducido con limitación de alcance». La diferencia no es semántica:

El resultado no es receptor-disjunto y no es universal sobre dianas nuevas.

Cualquier uso de 0.6094 tiene que ir acompañado de esa frase, o está afirmando algo que el experimento no midió.

Este es también el experimento que puso en práctica la lección de la auditoría de fuga, que había encontrado 85 pares de secuencia de receptor idéntica cruzando los conjuntos, y que dejó como norma reportar estratificado en lugar de dar un número global.

Una cifra retirada

Una correlación de 0.8732 que circulaba de antes queda marcada como inválida y no se reporta más. Venía de una evaluación contaminada, y aquí se sella su retirada en lugar de dejar que siga apareciendo en documentos por inercia.

Qué hace este experimento que un benchmark no hace

Un benchmark responde «¿cuánto acierta?». Este responde «¿sobre qué población, y qué parte de ese acierto es memoria?».

La cifra no bajó. Bajó el tamaño de la afirmación que se puede construir con ella, que es una forma de progreso menos satisfactoria y más útil.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La Fase A reproduce con inputs congelados y su holdout tiene solapamiento por receptor con el desarrollo
Criterio prerregistradoPre-registered criterion
GO=REPRODUCED_WITH_SCOPE_LIMITATION si Spearman reproduce 0.6094 (+-0.005); NO_GO=P0 si no
ProtocoloProtocol
docs/49_PROGRAMA_EXPERIMENTAL_CIENTIFICO.md AF-01 reformulado + docs/44_RELEASE_BASELINE_2026-08-15.md
Razón de la decisiónReason for the decision
AF-01 replica sellada de Fase A: Spearman 0.6094 reproducido con delta 0.0 (CI95 0.5282-0.6791, n=328, seed 42, inputs congelados); REPRODUCED_WITH_SCOPE_LIMITATION — solapamiento por receptor documentado (estratos 179/55/94: 0.7138/0.3626/0.5395); el resultado NO es receptor-disjoint ni universal sobre targets nuevos; 0.8732 permanece INVALIDATED

Métricas registradasRecorded metrics

experiment
AF-01
fecha
2026-08-15
status
REPRODUCED_WITH_SCOPE_LIMITATION (preliminar; seal/finish autorizados por el maintainer)
gate
GO=REPRODUCED_WITH_SCOPE_LIMITATION si Spearman reproduce 0.6094 (+-0.005); NO_GO=P0 si no

ReproducibilidadReproducibility

commit
0593983f5b (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
complejoscomplexes
328
hashes SHA-256
14
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FND-06De dónde salió cada pose, y los huecos declarados como huecosHallazgoFindingArtículoPapern=203

Contrato de procedencia implementado en los tres generadores. Las 4,300 poses históricas conservan lo que se pudo recuperar, y lo que no, dice «desconocido» en vez de inventarlo.

Cuando un experimento mide que una pose está a 3.2 Å del cristal, ese número sólo es interpretable si se sabe de dónde salió la pose: qué generador la produjo, con qué semilla, desde qué confórmero, con qué exhaustividad, en qué caja y con qué preparación del receptor.

Sin eso, una diferencia entre dos conjuntos de poses puede deberse al método que se está comparando o a que uno se generó con una versión distinta del preparador seis semanas antes. Y no hay forma de saberlo después.

Este experimento implementa el contrato que hace esa pregunta contestable.

Dos problemas distintos

Las poses futuras son el caso fácil: se define el contrato, se instrumenta cada generador para que lo rellene, y se endurece el validador para que rechace lo que no lo cumpla. Resultado: cableado en 3 de 3 generadores, y trazabilidad completa garantizada de aquí en adelante.

Las 4,300 poses históricas son el caso difícil, porque se generaron antes de que existiera el contrato. Parte de su procedencia se puede reconstruir de los registros intermedios; parte no.

Aquí había dos salidas, y la elección es el contenido real de este experimento.

La decisión: huecos honestos

La salida cómoda es rellenar los campos que faltan con el valor más probable. La caja casi siempre fue de 25 Å; la semilla casi siempre fue 42. Rellenarlo produce un conjunto de datos completo, limpio, y con un porcentaje de campos inventados que nadie podría distinguir de los reales.

La salida elegida fue la otra: **cobertura histórica documentada campo por campo y fuente por fuente, con unknown explícito donde no se pudo recuperar**.

El coste es visible: el conjunto histórico tiene agujeros, y cualquiera que lo mire ve exactamente dónde. El beneficio es que un análisis futuro puede excluir las poses cuya procedencia no consta, en lugar de confiar en un valor que alguien supuso.

Un campo que dice «desconocido» es información. Un campo relleno con el valor probable es ruido con aspecto de dato.

Por qué esto acabó siendo más útil de lo previsto

La procedencia se justificó como higiene. Terminó resolviendo diagnósticos que no se veían venir.

El caso más claro: nueve complejos fallaron la parametrización con el mismo error de plantilla durante un experimento de campo de fuerza. El diagnóstico propuesto fue que tenían cortes de cadena en el receptor. Meses después, una auditoría independiente pudo comprobarlo porque la procedencia registraba qué receptor había entrado en cada corrida: los 9 de 9 tienen huecos de cadena, contra una tasa base del 42.4%. La probabilidad de que salga así por azar es de aproximadamente 0.0004.

Sin el contrato de procedencia, ese diagnóstico habría seguido siendo una conjetura razonable para siempre.

Estado

Contrato implementado, tres generadores instrumentados, validador endurecido, cobertura histórica documentada con desconocidos honestos, y determinismo verificado.

Es uno de los cimientos sobre los que descansa que el resto del registro signifique algo, y también uno de los pocos activos del proyecto que un tercero puede evaluar en cinco minutos sin entender nada de docking: o cada pose dice de dónde vino, o no.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
La provenance de poses es recuperable parcialmente para las 4300 historicas y el contrato nuevo garantiza 100% para futuras
Criterio prerregistradoPre-registered criterion
Contrato implementado; cobertura historica documentada por campo/fuente; poses futuras 100% trazables
ProtocoloProtocol
docs/49_PROGRAMA_EXPERIMENTAL_CIENTIFICO.md FND-06
Razón de la decisiónReason for the decision
FND-06: contrato de provenance implementado, wiring 3/3 generadores, validador endurecido, cobertura historica documentada (unknowns honestos), determinismo verificado

Métricas registradasRecorded metrics

n_poses
4300
n_sin_provenance
0
n_registros
560
n_registros_invalidos
0
poses_completamente_trazables
0
poses_parcialmente_trazables
4300
pct_poses_completamente_trazables
0.0

ReproducibilidadReproducibility

commit
0a67bf89e4
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
complejoscomplexes
203
fallosfailures
5
hashes SHA-256
18
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER
mantenimientomaintenance
7 mantenimiento(s) declarados. El hash actual no acredita qué código produjo la cifra original.7 declared maintenance action(s). The current hash does not establish which code produced the original figure.

Enlace a este expedienteLink to this record

FND-05Un conjunto que se usa una sola vez, custodiado antes de existirHallazgoFindingArtículoPapern=440

112 complejos separados del desarrollo por identidad, química de ligando y secuencia de receptor. Se selló antes de puntuar nada, y sólo puede consumirse una vez.

Casi todo lo que hace este programa es exploratorio. Se prueba una idea, se mide, se declara el resultado, y el conocimiento acumulado guía la siguiente prueba. Ese ciclo es legítimo, pero tiene un coste que casi nunca se contabiliza: cada vez que se mira un conjunto de datos para decidir qué hacer después, ese conjunto queda un poco más gastado como prueba independiente.

Un conjunto confirmatorio es la reserva contra ese desgaste. Se aparta antes de empezar, no se toca, y se consume una sola vez al final para responder la pregunta principal.

Este experimento lo construye y lo sella.

Qué se exigió

La separación tenía que ser real por tres vías simultáneas, porque cualquiera de ellas por separado deja pasar fuga:

CriterioCómo
Por identidadEl mismo complejo no puede estar a los dos lados
Por química del ligandoScaffold, clave de conectividad InChI, y huella ECFP con umbral 0.90
Por receptorIdentidad y homología por cadena, con solapamiento de k-meros a 0.90

La tercera es la que faltaba en el conjunto original y la que la auditoría de fuga había encontrado rota. Aquí se exige desde el diseño.

Qué salió

Complejos totales112
Estrato primario (drug-like)102
Análisis secundario, descriptivo10

Los 10 restantes son 1 fragmento, 6 péptidos, 1 oligonucleótido y 2 casos de enlace cruzado. Se apartan del gate primario porque su tamaño no permite inferencia fuerte, y se declaran como análisis descriptivo antes de mirar nada. Meterlos en el numerador o sacarlos después de ver los resultados serían dos formas de la misma trampa.

El determinismo y la cuarentena se verificaron. El manifiesto se selló antes de puntuar un solo complejo.

Lo que este sello sí garantiza, y lo que no

Conviene ser exacto, porque el proyecto usa la palabra «cegamiento» y merece decir de qué tipo:

El secuestro es procedimental, no técnico. Las etiquetas están apartadas por disciplina y por registro, no por control de acceso de máquina.

Es un holdout interno custodiado por un procedimiento, y el propio manifiesto lo declara así: sin control de acceso real, no se afirma cegamiento real. Un solo mantenedor con acceso a todo no puede demostrar que no miró; lo que puede hacer es dejar constancia sellada de cuándo se fijó el conjunto y con qué criterio, de modo que cualquier cambio posterior sea visible.

Esa es una garantía más débil que el cegamiento, y decirlo es parte de lo que hace que el registro valga.

Por qué sigue sin dispararse

La regla escrita antes es que un resultado negativo en el confirmatorio se publica y cierra el claim: no se reintenta, no se reajusta el gate, y no se reclasifica a posteriori como exploratorio.

Con esa regla en pie, disparar el confirmatorio sobre un candidato inmaduro destruye el activo sin comprar nada. Hoy el selector empata o pierde contra la puntuación cruda de Vina, así que la precondición no se cumple y el conjunto sigue guardado.

Hay además una reserva declarada: de los 440 candidatos elegibles, los 328 no seleccionados quedan marcados como pool para un eventual segundo confirmatorio, con prohibición expresa de usarlos para desarrollo o depuración — de modo que sigan siendo elegibles si algún día hacen falta.

Preferible declarar el programa incompleto que gastar la única bala que hay.

Ficha del registro selladoSealed record sheet

CategoríaCategory
HallazgoFinding · Criterio prerregistrado y superado. Es un resultado que sostiene algo.Pre-registered criterion, passed. A result that supports something.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
Existe un pool local suficiente para 100+ complejos confirmatorios disjuntos del desarrollo por pid, por quimica de ligando (scaffold, InChIKey de conectividad y ECFP de conteo) y por cadena de receptor (identidad/homologia, near-identity-disjoint)
Criterio prerregistradoPre-registered criterion
Pool >=100 tras exclusiones; disyuncion quimica (scaffold+InChIKey14+ECFP>=0.90) y de receptor por cadena (solapamiento k-mer >=0.90); gate primario sobre estrato drug-like; balance estratificado documentado
ProtocoloProtocol
docs/49_PROGRAMA_EXPERIMENTAL_CIENTIFICO.md FND-05 + docs/42_RUTA_C_PROTOCOLO.md
Razón de la decisiónReason for the decision
D-RC-CONFIRM IT4: gate de composicion PASS; 112 complejos, 102 drug-like primarios, near-identity-disjoint, determinismo y cuarentena verificados

Métricas registradasRecorded metrics

rdkit_available
true
numpy_available
true
k_mer
8
umbral_cadena
0.9
tope_cluster_cadena
3
tope_unidad_primaria
1
umbral_ecfp_exclusion
0.9
umbral_ecfp_flag
0.8
covalencia_a
1.8
metal_pocket_a
4.0
metal_near_a
8.0
seed
42
n_target
112
dev_seen_total
1571
dev_ligandos_parseables
1197
dev_scaffold_clases
779
dev_ligandos_ecfp
1061
dev_receptores_complejos
1302
dev_cadenas_totales
2072
dev_cadenas_unicas
1072
receptor_clusters_elegibles
256

ReproducibilidadReproducibility

commit
f93cc3e69e
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
16 de agosto de 2026August 16, 2026
complejoscomplexes
440
fallosfailures
1292
hashes SHA-256
468
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER
mantenimientomaintenance
7 mantenimiento(s) declarados. El hash actual no acredita qué código produjo la cifra original.7 declared maintenance action(s). The current hash does not establish which code produced the original figure.

Enlace a este expedienteLink to this record

FND-02Fuga entre conjuntos: 85 pares de receptor idénticoRefutaciónRefutationArtículoPapern=203

La auditoría buscaba confirmar que los conjuntos estaban limpios. Encontró 2 pares de ligando idéntico y 85 de secuencia de receptor idéntica cruzando train, val y test.

Este es el experimento que más gente se salta, porque su resultado esperado es «todo está bien» y su ejecución no produce ninguna cifra publicable. Es también el que decide si todas las demás cifras significan algo.

Si el mismo ligando, o la misma proteína, aparece en train y en test, cualquier rendimiento medido en test está inflado por memorización. El modelo no generaliza: ya vio la respuesta.

El gate era simple y absoluto: cero fuga, por PDB, por ligando, por scaffold y por fuente. Los duplicados que quedaran tenían que estar justificados.

Qué pasó

El gate no se cumple, por dos vías independientes.

Ligando idéntico cruzando conjuntos — 2 pares:

ParConjuntos
1ft7 / 1lcpval ↔ test
1hmr / 1hmttrain ↔ val

La causa es concreta y merece anotarse porque es un modo de fallo silencioso: el criterio de separación usaba el scaffold de la molécula, y en ligandos acíclicos el scaffold está vacío. Dos moléculas sin anillos comparten un scaffold vacío con todas las demás, así que el criterio no las distingue y el respaldo por scaffold no llegó a activarse. La regla funcionaba para todos los casos que alguien había mirado.

Secuencia de receptor idéntica cruzando conjuntos — 85 pares, en 14 familias de proteína, afectando a 57 de 203 complejos.

Ese segundo número es el grave. Más de una cuarta parte del conjunto comparte proteína con otro complejo al otro lado de la línea.

Qué significa para el resto del programa

Que la separación entre conjuntos es por ligando, no por proteína. Un modelo entrenado aquí y evaluado en test ha visto antes esa proteína, aunque no ese ligando.

No invalida todo — para muchas preguntas la unidad de inferencia correcta es el par ligando-proteína y la fuga por receptor es tolerable si se declara. Lo que invalida es afirmar generalización a proteínas no vistas, que es una afirmación distinta y mucho más fuerte.

De aquí sale la práctica de reportar los resultados estratificados por relación con el receptor —visto / casi idéntico / no relacionado— en lugar de dar una cifra global. AF-01 fue el primero en aplicarlo, y por eso su decisión se selló como «reproducido con limitación de alcance» en vez de simplemente «reproducido».

Por qué un NO_GO aquí es una buena noticia

El resultado deseable de una auditoría de fuga es encontrarla. Si esta hubiera devuelto «cero fuga» sin haber probado el caso de los ligandos acíclicos, el programa habría seguido adelante creyendo en una separación que no existía, y cada número posterior habría llevado ese error dentro sin que nada lo señalara.

Un NO_GO en un experimento de fundamentos no es un fracaso del proyecto. Es el instrumento funcionando.

Ficha del registro selladoSealed record sheet

CategoríaCategory
RefutaciónRefutation · Hipótesis propia puesta a prueba y derribada. La columna de la que más se aprende.An own hypothesis put to the test and knocked down. The column you learn most from.
Decisión del manifestManifest decision
NO_GO
HipótesisHypothesis
Los splits de Ruta C no contienen duplicados ocultos ni fuga train/val/test
Criterio prerregistradoPre-registered criterion
Cero fuga train-val-test por PDB, ligando, scaffold y fuente; duplicados justificados
ProtocoloProtocol
docs/49_PROGRAMA_EXPERIMENTAL_CIENTIFICO.md FND-02 + docs/42_RUTA_C_PROTOCOLO.md
Razón de la decisiónReason for the decision
Fuga real sin justificar: 2 pares de ligando idéntico cruzan splits (1ft7/1lcp val-test, 1hmr/1hmt train-val; fallback de scaffold vacío en ligandos acíclicos) y 85 pares de secuencia de receptor idéntica cruzan train/val/test (14 familias, 57/203 complejos); gate de cero fuga no cumplido

Métricas registradasRecorded metrics

conteos_coinciden
true
test_pids_sha256_ok
true
split_method
scaffold_group_holdout_seed42
ligand_leak_pairs
2
ligand_prefix14_leak_pairs
0
duplicate_smiles_groups
16
rdkit_available
true
scaffold_leak_pairs
0
scaffold_groups_total
101
scaffold_groups_compartidos
24
sequence_exact_leak_pairs
85
sequence_near_leak_pairs
162
duplicate_pose_keys
0
duplicate_pose_lines
0
duplicate_pose_tuples_total
0
records_files
203
total_poses_records
4300
total_poses_splits
4300

ReproducibilidadReproducibility

commit
b91fc629e2 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
1
selladosealed
15 de agosto de 2026August 15, 2026
complejoscomplexes
203
fallosfailures
114
hashes SHA-256
232
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

FND-01-SMOKEsmoke testMediciónMeasurement

El paper de este registro todavía no está redactado. Abajo está la ficha completa, generada del manifest sellado, que es la fuente de verdad de todos sus números.The paper for this record has not been written yet. Below is the full sheet, generated from the sealed manifest, which is the source of truth for all its numbers.

Ficha del registro selladoSealed record sheet

CategoríaCategory
MediciónMeasurement · Mide sin decidir: no tiene umbral de aceptación. Describe el terreno.Measures without deciding: there is no acceptance threshold. It describes the terrain.
Decisión del manifestManifest decision
GO
HipótesisHypothesis
smoke test
Criterio prerregistradoPre-registered criterion
exit 0
ProtocoloProtocol
docs/49
Razón de la decisiónReason for the decision
smoke

ReproducibilidadReproducibility

commit
b5ff3b06e0 (dirty)
ramabranch
experimentos/ruta-c-molflex
semillaseed
42
selladosealed
15 de agosto de 2026August 15, 2026
hashes SHA-256
1
entornoenvironment
Windows · 12 núcleos12 cores · 32 GB · NVIDIA GeForce GTX 1660 SUPER

Enlace a este expedienteLink to this record

Con qué se calcula.What it computes with.

Los motores y herramientas que la aplicación realmente usa.The engines and tools the application actually uses.

AutoDock Vina 1.2.7
Motor de docking incluido. La afinidad observada es la referencia del ranking principal; es evidencia computacional, no actividad experimental.Included docking engine. Observed affinity is the primary ranking reference; it is computational evidence, not experimental activity.
ESMFold · experimentalESMFold · experimental
Pesos bajo demanda: 8,4 GB. Genera estructuras de péptidos que después se acoplan con Vina.On-demand weights: 8.4 GB. Produces peptide structures that are subsequently docked with Vina.
Molcy · Beta
Render local con Blender y Molecular Nodes, descargables desde la aplicación. Vídeo con GPU; fotos con CPU o GPU.Local rendering with Blender and Molecular Nodes, downloadable from the app. GPU video; CPU or GPU photos.
Escritorio WindowsWindows desktop
Windows 10/11 x64. Contenedor Tauri v2, interfaz Next.js y backend FastAPI con Python embebido. No requiere un backend en la nube.Windows 10/11 x64. Tauri v2 container, Next.js interface and FastAPI backend with embedded Python. No cloud backend required.
Integridad y licenciaIntegrity and licensing
Hashes y procedencia acompañan el expediente. Un registro de integridad acredita bytes y fecha; no valida la conclusión científica. Licencia PolyForm Noncommercial 1.0.0.Hashes and provenance accompany the dossier. An integrity record attests bytes and date; it does not validate the scientific conclusion. PolyForm Noncommercial 1.0.0 license.

La evidencia computacional no sustituye la validación experimental. Los números se interpretan bajo sus condiciones de medición. Esta página se genera desde los manifests sellados; si un artículo y su manifest discrepan, manda el manifest.Computational evidence does not replace experimental validation. Numbers must be interpreted under their measurement conditions. This page is generated from the sealed manifests; if a paper and its manifest disagree, the manifest prevails.