PRODUCT LOOP NATIVO DEL REPO
Dejá minutas, docs o ideas en una carpeta inbox. Opcional: los propios commits se vuelven señales, así código y specs nunca divergen en silencio.
.hornero/inbox/ · GitSourceUn LLM propone qué es nuevo, qué cambió, qué quedó obsoleto. Cada delta debe citar su fuente literal — verificado mecánicamente. Sin evidencia no hay delta. La alucinación se descarta, no se corrige.
LITERAL O MUEREAprobás, rechazás, editás o saltás — interactivo, en tu terminal. Sin TTY no hay escrituras: el gate falla cerrado. Los rechazos pasados reaparecen antes de aprobar una repetición.
HITL FAIL-CLOSEDLo aprobado se vuelve specs markdown versionados en git — el estado vive en el frontmatter, las decisiones son ADRs, las ideas a medio formar son propuestas de brainstorm. Nada externo que sincronizar.
sdd/specs/ · versionado en gitLos specs aprobados se vuelven briefs y se despachan a un backend. Cada corrida deja un trace tipo caja negra; un scribe lo destila en un decision record cuyas afirmaciones citan eventos verificados.
TRACE ⇒ DR, CITAS VERIFICADASEl código, el spec actualizado, los reportes regenerados y el DR aterrizan en el mismo PR. La trazabilidad muestra señal → delta → spec → tarea → corrida → PR → merge, huecos incluidos.
UN PR ATÓMICOLa evidencia es literal o el delta muere. Las citas son substrings verificados mecánicamente de la fuente; lo que no coincide se loguea y descarta.
El human-in-the-loop falla cerrado. Sin canal de aprobación ⇒ ni mutación de specs ni dispatch. El dry-run siempre deja git limpio.
Nada facturado por sorpresa. Una API paga corre solo como primera opción explícita y deliberada — nunca como fallback.
Los archivos diverged nunca se auto-mergean. Los prompts se sincronizan como dependencias con lockfile; el conflicto bloquea hasta que un humano elige --theirs o --ours.
Los secretos nunca llegan al disco. Toda superficie generada — reportes, wiki, traces, digests — pasa por una capa de redacción.
Docs vivas escritas para la próxima corrida de agente: quickstart obligatorio, links validados, updates quirúrgicos por ventana de cambios git. Un repo quieto cuesta un hash — el cron hace no-op.
Comandos, reglas y templates de agentes se sincronizan entre repos desde un upstream con lockfile commiteado y drift de tres vías. Las mejoras vuelven vía PRs con scan de secretos.
El stream de acciones es la verdad; la narrativa es solo un índice sobre él. Auditá cualquier línea de código: wiki → decision record → rango de eventos → trace crudo, cada salto suma resolución.