Saltar al contenido principal

Todas las publicaciones

La crónica de StrayMark: cómo emergió el framework, decisión por decisión.

2026​

El grep que se leyó al revés​

2026-07-29

Un ciclo de auditoría con cuatro modelos revisó un Charter que añadía un método público nuevo — el único método que hacía funcionar una feature. Tres de cuatro auditores reportaron que no había hallazgos críticos ni altos. La feature tenía cero llamadores en producción, 3.376 tests en verde, y no funcionaba de punta a punta. El defecto era detectable mecánicamente con un solo grep; un auditor corrió exactamente ese grep y leyó el resultado al revés. El post-mortem produjo una regla nueva en el prompt de auditoría — y un hallazgo más incómodo sobre la verificación del propio implementador, que no podía dar rojo.

Lo que el follow-up dio por sentado​

2026-07-18

Un adopter greenfield drenó un backlog de follow-ups antes de publicar. De las tres entradas que eran trabajo real, cada una descansaba sobre una premisa falsa en el momento en que la chequeabas — un test a replicar que nunca existió, una gate contra una referencia que no puede existir, una optimización para un coste que no estaba ahí. No porque el código derivara, sino porque un follow-up se escribe cuando menos puedes verificarlo. El fix reencuadra las entradas como hipótesis fechadas y mueve el chequeo a la ejecución — un nuevo verbo verify, un campo Premise, y un re-chequeo al promover.

Lo que un millón de aserciones no puede zanjar​

2026-07-10

La reescritura de Bun en Rust corrió revisión adversarial de IA sobre una sola familia de modelo, juzgada por 1.386.826 aserciones de test. Las auditorías de StrayMark diversifican entre familias de modelo — porque el objetivo es un juicio que ningún test zanja. Veinticinco ciclos de auditoría con datos reales de Sentinel muestran qué caza eso que los tests verdes no ven y, como curiosidad, cómo se comportaron de verdad siete familias de modelo — incluida una que hubo que degradar por quedarse callada y ciega.

Quién creyó la auditoría que era​

2026-07-08

La auditoría de StrayMark solo vale algo si familias de modelos independientes convergen en un finding por sí mismas — el acuerdo es la señal. Una serie de releases endureció esa garantía contra tres formas de fingirla. La más fresca es la más filosa: un router CLI inyecta su propio nombre de producto, así que un auditor firmó su reporte como "qwen-code" aun después de que el operador había cambiado el modelo de backend.

Lo que el autor ya sabía​

2026-06-28

El dry run probó que la cobertura de señal — no la granularidad — mantenía el 57% del routing sobre conjeturas de baja confianza. El fix fue casi gratis: la persona que crea una unidad de trabajo ya sabe si es diseño, implementación, una auditoría o labor mecánica. Así que Baton descontinuó el escaneo de títulos por completo, volvió a un verbo declarado la única señal autoritativa, y lo graduó al framework.

Lo que el dry run habría gastado​

2026-06-26

La segunda fase de Baton por fin miró el dinero — pero no enrutó nada. Clasificó las 762 unidades de trabajo que StrayMark ya había registrado en Sentinel e imprimió lo que una política de routing habría gastado versus todo-frontier. El titular fue un techo de ~93%. La lectura honesta invirtió la propia hipótesis del experimento: la granularidad nunca fue la palanca. La cobertura de señal sí.

Lo que el spec path solo probó que existía​

2026-06-25

Un cuarto experimento arrancó con un problema económico — cuando terminen los subsidios de las suscripciones, todo-frontier-todo-el-tiempo deja de ser costeable — y de inmediato chocó con uno estructural. Un router más barato sobre intención olvidada solo automatiza la deriva más rápido. Así que el primer movimiento de Baton no toca modelo alguno. Lee el plan que StrayMark solo había probado que existía.

Lo que el formato abierto le dejó al productor​

2026-06-17

Google publicó el Open Knowledge Format — markdown, frontmatter YAML, un grafo de enlaces, un agente que los mantiene. StrayMark llegó a las mismas primitivas de forma independiente. La convergencia es real; la divergencia también — OKF construye cognición para la IA, StrayMark la construye para la IA y el ingeniero humano juntos.

Dónde estaba realmente la deuda​

2026-06-16

La verdadera pregunta diaria del operador no es "muéstrame los documentos", es "¿dónde estamos?". Loom desarrolló una segunda superficie — la arquitectura como un edificio que puedes recorrer, en 2D y en 3D — y su overlay de deuda técnica salía vacío. No porque no hubiera deuda. Porque no sabía dónde ponerla.

Lo que el grafo todavía no podía dibujar​

2026-06-14

El primer release de Loom renderizó el grafo de documentos en vivo en el navegador en menos de un segundo. También dibujó 330 edges hacia la nada. La feature visible era la parte fácil — hacer que las referencias realmente resolvieran fue el trabajo, y nos enseñó cuándo un dangling edge es un bug y cuándo es una señal.

Lo que el segundo lector exigió​

2026-06-12

Antes de que Loom pudiera dibujar nada, el modelo de documentos de StrayMark tenía que dejar de ser propiedad privada del CLI. El refactor que entregó cero cambios visibles para el usuario fue la precondición de todo lo visual que vino después — y una pequeña lección que el framework venía predicándoles a los adopters desde siempre.

Lo que el script bash decía que estaba en sync​

2026-06-04

Los follow-ups se volvieron la segunda entidad de primera clase de StrayMark — y en un día, dos migraciones externas estresaron el diseño. El script bash deprecado del adopter de referencia llevaba reportando "in sync" mientras 29 entradas le eran invisibles.

Lo que el feature flag compiló fuera​

2026-05-31

Un segundo adopter, en otro lenguaje, validó el anti-patrón "declaración de superficie sin cableado" — y el helper de CLI que diferimos a propósito por fin shippeó

Lo que el binario no pudo esconder​

2026-05-23

Diez gaps latentes aflorados en un solo polish Charter, y el anti-patrón que se ganó un nombre

Pattern 1 y Pattern 2 — chain evolution​

2026-05-16

Cuando la disciplina deja de ser hábito y se vuelve nombre

El día que el agente vio algo que nadie le pidió ver​

2026-05-16

Cómo nombrar una propiedad de diseño que ya estaba haciendo su trabajo en silencio

Abrir el framework​

2026-05-15

Setenta y dos horas de gestos que sólo cobran sentido juntos

AGENTS.md como estándar universal​

2026-05-15

Cuatro meses entre la intuición y el estándar abierto

La disciplina manual antes del patrón​

2026-05-14

Doce aprendizajes en un Issue, tres gates en un PR, y un Charter que cerró limpio antes de que existiera el nombre

El audit-prompt era el outlier​

2026-05-13

El único archivo del framework que vivía en otro idioma

TDE y la deuda transversal​

2026-05-12

El tipo existía. El trigger no. Y la lección stacked-PR que llegó de regalo.

Validate y los schemas como capa formal​

2026-05-11

Phase 2: cuando el framework empieza a verificar lo que prometía

El rebrand a StrayMark​

2026-05-09

El cuarto rename, esta vez con ADR público y arco disciplinado

Charters invisibles para los agentes​

2026-05-09

Issue #113 — la brecha entre tener un artefacto y que el agente lo vea

Charters como entidad de primera clase, y el audit cycle externo​

2026-05-06

De ritual manual en Sentinel a comando CLI canonizado

Seis Planes para una tesis (y el rename a Charter)​

2026-04-30

Primer experimento sistemático y el día que Plan se llamó Charter

Explorando el framework​

2026-04-27

La TUI que produjo visibilidad sin proponérselo

Cuatro nombres en cuatro meses​

2026-04-05

Buscar el concepto buscando el nombre