Merge develop into main: el gate de documentación vuelve a verde - #87
Merged
Conversation
…ntero (Validate documentation) `Validate documentation` llevaba en rojo desde al menos 2026-07-25 con 111 fallos, y 97 de ellos eran una sola causa repetida. `validate-docs.mjs` rankea el estado de cada fila del registro (BLOCKED 0, OPEN 1, DEFERRED 2, RESOLVED 3) y exige que la columna no retroceda. Dos filas —COH-006 y COH-007— decian `CLOSED`, que no esta en el vocabulario, asi que recibian rango 99. Y como el guardian arrastra `previousStatusRank = max(prev, rank)`, ese 99 se quedaba pegado: TODAS las filas siguientes retrocedian contra el y fallaban. Dos celdas mal escritas en la fila 11 y 12 producian 97 errores en las filas 13 a 107. Los 99 fallos del registro se cierran con: · `CLOSED` -> `RESOLVED` en esas dos filas. No es una reclasificacion: su columna de resolucion ya empieza por "Resolved:" y las otras 105 filas del registro usan `RESOLVED`. `CLOSED` era una variante suelta del mismo estado. · Orden estable por rango. La tabla ya venia casi ordenada OPEN -> DEFERRED -> RESOLVED; lo unico fuera de sitio eran 8 filas RESOLVED encabezandola. Se conserva el orden relativo dentro de cada grupo, asi que el diff no reordena nada mas. · Renumerada la columna `#`, que estaba descolocada de antes — la ultima fila de la tabla era la numero 1. Verificado que el registro no perdio nada: mismos 107 IDs antes y despues, mismo conjunto exacto, cero duplicados. El resultado es OPEN x14, DEFERRED x1, RESOLVED x92. Los 12 fallos restantes eran emoji usados como marcadores semanticos en cuatro documentos ajenos al registro. Se sustituyen por su equivalente en palabras (`**Works:**`, `**Caveat:**`, `**Warning:**` y sus espejos en castellano) en vez de borrarlos: el simbolo distinguia lo que funciona de lo que no, y quitarlo sin mas habria dejado una lista plana donde antes se leia de un vistazo. `node .harness/scripts/validate-docs.mjs` -> "Documentation validation passed for 355 Markdown files". Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Validate documentation: dos filas con un estado inventado tenían en rojo el gate entero
…cumental `Validate documentation` seguia en rojo despues de arreglar el registro de gaps, porque tenia TRES causas y no una. El job encadena sus pasos con `bash -e`, asi que cada fallo tapaba al siguiente: solo se veia el primero. 1. `Validate root cleanliness` rechazaba `robosoft/`. El directorio entro con GT-604 (`65820f9`) sin darse de alta en la allowlist de la raiz, y como este paso corre ANTES que los inventarios, abortaba el job entero. El fallo se leia como «documentacion invalida» cuando lo que pasaba era que la taxonomia de la raiz se habia quedado atras respecto al repositorio — el mismo caso que motivo la entrada de `evolith.yaml` el 2026-07-18. Se da de alta en vez de reubicarlo: los robots son consumidores EXTERNOS del despliegue —hablan con el tracker-api por HTTP como lo haria un cliente, sin compartir codigo ni configuracion con lo que prueban— y `local-test.sh` los invoca como `node "$ROOT/robosoft/run.mjs"`, con $ROOT en la raiz. 2. `doc-inventory --check` acusaba deriva real: la insignia decia 54 ADRs y hay 55, y el README de robosoft decia 12 robots y hay 13 — falta el `core-evidence-ingest` que llego con GT-604. Regenerado con `--write`, que es la via que el propio guardian indica. Los bloques se DERIVAN del codigo; escribirlos a mano es como se produjo la deriva. Verificado como lo haria el runner y no en el arbol de trabajo: se extrajo el arbol commiteado a un directorio limpio —sin `.codex/` ni `.worktrees/`, que son locales y en CI no existen— y se ejecutaron LOS SEIS pasos del job, no solo el que fallaba. Los seis en verde. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Validate documentation: dar de alta robosoft en la raíz y regenerar el inventario
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Promueve
developamaincon el arreglo deValidate documentation(#86).Qué lanza
Validate documentationllevaba en rojo desde al menos 2026-07-25 con 111 fallos, y 97 de ellos eran una sola causa repetida.validate-docs.mjsrankea el estado de cada fila del registro (BLOCKED0,OPEN1,DEFERRED2,RESOLVED3) y exige que la columna no retroceda. Dos filas —COH-006yCOH-007— decíanCLOSED, que no está en el vocabulario, así que recibían rango 99. Como el guardián arrastrapreviousStatusRank = max(prev, rank), ese 99 se quedaba pegado y todas las filas siguientes fallaban contra él: dos celdas en las filas 11-12 producían 97 errores en las filas 13-107.Se normaliza
CLOSED→RESOLVED(su propia columna de resolución ya empezaba porResolved:), se ordena de forma estable y se renumera la columna#, que estaba descolocada de antes. Los 12 fallos restantes eran emoji usados como marcadores semánticos en cuatro documentos ajenos al registro, sustituidos por su equivalente en palabras.Verificado que el registro no perdió nada: mismos 107 IDs antes y después, cero duplicados. Resultado
OPEN x14,DEFERRED x1,RESOLVED x92.El tronco queda entero en verde
conformtambién está resuelto, y fuera de este diff: el secretoCORE_REPO_TOKENya está configurado en el repositorio. Verificado que el guard toma el camino real y no el de degradación —Core checkout present — using live machine-contract manifest and byte-level schema re-hash, seguido deCONTRACT CONFORMANCE OK — 4 schema(s) match Core's machine-contract set.Con esto los 6 checks de este satélite quedan verdes por primera vez desde el 25 de julio.
🤖 Generated with Claude Code