@kal-elsam/kairo-runtime 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (315) hide show
  1. package/README.md +937 -0
  2. package/bin/harness.js +11 -0
  3. package/bin/kairo-runtime.js +11 -0
  4. package/bin/kairo.js +11 -0
  5. package/global-template/components/catalog.json +25 -0
  6. package/global-template/components/orchestrator/orchestrator.md +55 -0
  7. package/global-template/components/sdd-core/handoff.md +38 -0
  8. package/global-template/components/sdd-core/spec-sizing.md +38 -0
  9. package/global-template/components/sdd-core/workflow.md +31 -0
  10. package/global-template/core/orchestrator.md +55 -0
  11. package/package.json +64 -0
  12. package/prompts/HARNESS_ENFORCEMENT_UPGRADE.md +11 -0
  13. package/prompts/HARNESS_ENTERPRISE.md +33 -0
  14. package/prompts/HARNESS_INSTALLER_MASTER.md +853 -0
  15. package/prompts/HARNESS_MINIMAL.md +30 -0
  16. package/prompts/HARNESS_SPEC_SIZING_UPGRADE.md +41 -0
  17. package/prompts/HARNESS_STANDARD.md +35 -0
  18. package/prompts/HARNESS_UNIVERSAL_PARITY.md +56 -0
  19. package/repo-template/.claude/agents/adapter-parity-reviewer.md +17 -0
  20. package/repo-template/.claude/agents/architect.md +17 -0
  21. package/repo-template/.claude/agents/eval-engineer.md +17 -0
  22. package/repo-template/.claude/agents/reviewer.md +17 -0
  23. package/repo-template/.claude/agents/sdd-reviewer.md +17 -0
  24. package/repo-template/.claude/agents/sdd-spec-writer.md +17 -0
  25. package/repo-template/.claude/skills/checkpoint/SKILL.md +13 -0
  26. package/repo-template/.claude/skills/eval-design/SKILL.md +3 -0
  27. package/repo-template/.claude/skills/evals/SKILL.md +13 -0
  28. package/repo-template/.claude/skills/loop-engineering/SKILL.md +16 -0
  29. package/repo-template/.claude/skills/maintainability-review/SKILL.md +3 -0
  30. package/repo-template/.claude/skills/quality-gate-review/SKILL.md +3 -0
  31. package/repo-template/.claude/skills/sdd/SKILL.md +13 -0
  32. package/repo-template/.claude/skills/spec-complexity-classifier/SKILL.md +10 -0
  33. package/repo-template/.claude/skills/spec-escalation-review/SKILL.md +10 -0
  34. package/repo-template/.claude/skills/spec-intake/SKILL.md +10 -0
  35. package/repo-template/.claude/skills/tdd/SKILL.md +13 -0
  36. package/repo-template/.claude/skills/trust-review/SKILL.md +3 -0
  37. package/repo-template/.codex/skills/adapter-parity/SKILL.md +29 -0
  38. package/repo-template/.codex/skills/checkpoint/SKILL.md +36 -0
  39. package/repo-template/.codex/skills/eval-design/SKILL.md +3 -0
  40. package/repo-template/.codex/skills/evals/SKILL.md +28 -0
  41. package/repo-template/.codex/skills/loop-engineering/SKILL.md +24 -0
  42. package/repo-template/.codex/skills/maintainability-review/SKILL.md +3 -0
  43. package/repo-template/.codex/skills/quality-gate-review/SKILL.md +3 -0
  44. package/repo-template/.codex/skills/sdd/SKILL.md +30 -0
  45. package/repo-template/.codex/skills/spec-complexity-classifier/SKILL.md +10 -0
  46. package/repo-template/.codex/skills/spec-escalation-review/SKILL.md +10 -0
  47. package/repo-template/.codex/skills/spec-intake/SKILL.md +10 -0
  48. package/repo-template/.codex/skills/tdd/SKILL.md +27 -0
  49. package/repo-template/.codex/skills/trust-review/SKILL.md +3 -0
  50. package/repo-template/.cursor/agents/adapter-parity-reviewer.md +29 -0
  51. package/repo-template/.cursor/agents/architect.md +27 -0
  52. package/repo-template/.cursor/agents/context-engineer.md +27 -0
  53. package/repo-template/.cursor/agents/debugger.md +27 -0
  54. package/repo-template/.cursor/agents/eval-engineer.md +27 -0
  55. package/repo-template/.cursor/agents/harness-orchestrator.md +27 -0
  56. package/repo-template/.cursor/agents/loop-controller.md +17 -0
  57. package/repo-template/.cursor/agents/loop-debugger.md +16 -0
  58. package/repo-template/.cursor/agents/reviewer.md +27 -0
  59. package/repo-template/.cursor/agents/sdd/sdd-acceptance-reviewer.md +31 -0
  60. package/repo-template/.cursor/agents/sdd/sdd-implementation-guardian.md +31 -0
  61. package/repo-template/.cursor/agents/sdd/sdd-intake-analyst.md +31 -0
  62. package/repo-template/.cursor/agents/sdd/sdd-orchestrator.md +31 -0
  63. package/repo-template/.cursor/agents/sdd/sdd-spec-reviewer.md +31 -0
  64. package/repo-template/.cursor/agents/sdd/sdd-spec-writer.md +31 -0
  65. package/repo-template/.cursor/agents/sdd/sdd-task-breakdown.md +31 -0
  66. package/repo-template/.cursor/agents/sdd/sdd-technical-planner.md +31 -0
  67. package/repo-template/.cursor/agents/sdd/sdd-test-planner.md +31 -0
  68. package/repo-template/.cursor/agents/spec-intake-analyst.md +14 -0
  69. package/repo-template/.cursor/agents/test-engineer.md +27 -0
  70. package/repo-template/.cursor/commands/adapter-parity.md +34 -0
  71. package/repo-template/.cursor/commands/checkpoint.md +30 -0
  72. package/repo-template/.cursor/commands/debug.md +13 -0
  73. package/repo-template/.cursor/commands/init-eval.md +12 -0
  74. package/repo-template/.cursor/commands/init-feature.md +12 -0
  75. package/repo-template/.cursor/commands/init-harness.md +13 -0
  76. package/repo-template/.cursor/commands/loop-debug.md +3 -0
  77. package/repo-template/.cursor/commands/loop-review.md +3 -0
  78. package/repo-template/.cursor/commands/loop-run.md +5 -0
  79. package/repo-template/.cursor/commands/review.md +21 -0
  80. package/repo-template/.cursor/commands/sdd-intake.md +18 -0
  81. package/repo-template/.cursor/commands/sdd-plan.md +18 -0
  82. package/repo-template/.cursor/commands/sdd-spec.md +18 -0
  83. package/repo-template/.cursor/commands/sdd-tasks.md +18 -0
  84. package/repo-template/.cursor/commands/sdd-validate.md +18 -0
  85. package/repo-template/.cursor/commands/spec-escalate.md +9 -0
  86. package/repo-template/.cursor/commands/spec-intake.md +10 -0
  87. package/repo-template/.cursor/commands/spec-size.md +21 -0
  88. package/repo-template/.cursor/rules/adapter-parity.mdc +20 -0
  89. package/repo-template/.cursor/rules/api.mdc +12 -0
  90. package/repo-template/.cursor/rules/core.mdc +21 -0
  91. package/repo-template/.cursor/rules/enforcement.mdc +16 -0
  92. package/repo-template/.cursor/rules/evals.mdc +10 -0
  93. package/repo-template/.cursor/rules/git.mdc +19 -0
  94. package/repo-template/.cursor/rules/harness.mdc +14 -0
  95. package/repo-template/.cursor/rules/loops.mdc +17 -0
  96. package/repo-template/.cursor/rules/testing.mdc +13 -0
  97. package/repo-template/.cursor/rules/ui.mdc +13 -0
  98. package/repo-template/.cursor/skills/api-design/SKILL.md +23 -0
  99. package/repo-template/.cursor/skills/architecture/SKILL.md +23 -0
  100. package/repo-template/.cursor/skills/code-review/SKILL.md +23 -0
  101. package/repo-template/.cursor/skills/context-graph/SKILL.md +23 -0
  102. package/repo-template/.cursor/skills/debugging/SKILL.md +23 -0
  103. package/repo-template/.cursor/skills/evals/SKILL.md +23 -0
  104. package/repo-template/.cursor/skills/git-workflow/SKILL.md +23 -0
  105. package/repo-template/.cursor/skills/testing/SKILL.md +23 -0
  106. package/repo-template/.cursor/skills/ui-design/SKILL.md +23 -0
  107. package/repo-template/.gentle-ai/README.md +37 -0
  108. package/repo-template/.gentle-ai/loops/README.md +27 -0
  109. package/repo-template/.gentle-ai/loops/sdd-tdd-repair.loop.md +27 -0
  110. package/repo-template/.gentle-ai/model-routing.md +25 -0
  111. package/repo-template/.github/copilot-instructions.md +37 -0
  112. package/repo-template/.github/dependabot.yml +11 -0
  113. package/repo-template/.github/instructions/harness.instructions.md +11 -0
  114. package/repo-template/.github/workflows/harness-quality-gate.yml +67 -0
  115. package/repo-template/.github/workflows/harness-security-gate.yml +32 -0
  116. package/repo-template/.harness/spec-sizing.json +33 -0
  117. package/repo-template/.opencode/README.md +71 -0
  118. package/repo-template/.opencode/agents/adapter-parity-reviewer.md +23 -0
  119. package/repo-template/.opencode/agents/architect.md +38 -0
  120. package/repo-template/.opencode/agents/checkpoint-reviewer.md +38 -0
  121. package/repo-template/.opencode/agents/eval-engineer.md +38 -0
  122. package/repo-template/.opencode/agents/loop-controller.md +38 -0
  123. package/repo-template/.opencode/agents/loop-debugger.md +38 -0
  124. package/repo-template/.opencode/agents/model-router.md +38 -0
  125. package/repo-template/.opencode/agents/sdd-orchestrator.md +38 -0
  126. package/repo-template/.opencode/agents/sdd-spec-reviewer.md +38 -0
  127. package/repo-template/.opencode/agents/spec-intake-analyst.md +19 -0
  128. package/repo-template/.opencode/agents/tdd-engineer.md +38 -0
  129. package/repo-template/.opencode/commands/checkpoint.md +3 -0
  130. package/repo-template/.opencode/commands/eval-design.md +3 -0
  131. package/repo-template/.opencode/commands/maintainability-review.md +3 -0
  132. package/repo-template/.opencode/commands/quality-gate.md +3 -0
  133. package/repo-template/.opencode/commands/spec-escalate.md +9 -0
  134. package/repo-template/.opencode/commands/spec-intake.md +10 -0
  135. package/repo-template/.opencode/commands/spec-size.md +21 -0
  136. package/repo-template/.opencode/commands/trust-review.md +3 -0
  137. package/repo-template/.opencode/loops/ai-behavior-improvement.loop.md +15 -0
  138. package/repo-template/.opencode/loops/bug-repair.loop.md +16 -0
  139. package/repo-template/.opencode/loops/documentation-sync.loop.md +13 -0
  140. package/repo-template/.opencode/loops/feature-development.loop.md +25 -0
  141. package/repo-template/.opencode/skills/spec-complexity-classifier/SKILL.md +10 -0
  142. package/repo-template/.opencode/skills/spec-escalation-review/SKILL.md +10 -0
  143. package/repo-template/.opencode/skills/spec-intake/SKILL.md +10 -0
  144. package/repo-template/.pi/README.md +21 -0
  145. package/repo-template/.pi/prompts/checkpoint.md +11 -0
  146. package/repo-template/.pi/prompts/loop-run.md +10 -0
  147. package/repo-template/.pi/prompts/sdd-plan.md +11 -0
  148. package/repo-template/.pi/prompts/sdd-spec.md +13 -0
  149. package/repo-template/.pi/prompts/spec-escalate.md +9 -0
  150. package/repo-template/.pi/prompts/spec-intake.md +10 -0
  151. package/repo-template/.pi/prompts/spec-size.md +21 -0
  152. package/repo-template/.pi/skills/adapter-parity/SKILL.md +7 -0
  153. package/repo-template/.pi/skills/checkpoint/SKILL.md +7 -0
  154. package/repo-template/.pi/skills/eval-design/SKILL.md +3 -0
  155. package/repo-template/.pi/skills/evals/SKILL.md +7 -0
  156. package/repo-template/.pi/skills/loop-engineering/SKILL.md +7 -0
  157. package/repo-template/.pi/skills/maintainability-review/SKILL.md +3 -0
  158. package/repo-template/.pi/skills/quality-gate-review/SKILL.md +3 -0
  159. package/repo-template/.pi/skills/sdd/SKILL.md +7 -0
  160. package/repo-template/.pi/skills/spec-complexity-classifier/SKILL.md +10 -0
  161. package/repo-template/.pi/skills/spec-escalation-review/SKILL.md +10 -0
  162. package/repo-template/.pi/skills/spec-intake/SKILL.md +10 -0
  163. package/repo-template/.pi/skills/tdd/SKILL.md +7 -0
  164. package/repo-template/.pi/skills/trust-review/SKILL.md +3 -0
  165. package/repo-template/AGENT.md +8 -0
  166. package/repo-template/AGENTS.md +165 -0
  167. package/repo-template/CLAUDE.md +9 -0
  168. package/repo-template/GEMINI.md +9 -0
  169. package/repo-template/docs/ai/adapter-parity.md +135 -0
  170. package/repo-template/docs/ai/agent-workflow.md +45 -0
  171. package/repo-template/docs/ai/api.md +28 -0
  172. package/repo-template/docs/ai/architecture.md +53 -0
  173. package/repo-template/docs/ai/context-budget.md +54 -0
  174. package/repo-template/docs/ai/context-graph.md +39 -0
  175. package/repo-template/docs/ai/conventions.md +34 -0
  176. package/repo-template/docs/ai/decision-log.md +5 -0
  177. package/repo-template/docs/ai/enforcement.md +63 -0
  178. package/repo-template/docs/ai/eval-strategy.md +42 -0
  179. package/repo-template/docs/ai/evals.md +44 -0
  180. package/repo-template/docs/ai/git-workflow.md +35 -0
  181. package/repo-template/docs/ai/governance.md +61 -0
  182. package/repo-template/docs/ai/harness.md +49 -0
  183. package/repo-template/docs/ai/installer-cli.md +34 -0
  184. package/repo-template/docs/ai/loop-log.md +5 -0
  185. package/repo-template/docs/ai/loop-observability.md +57 -0
  186. package/repo-template/docs/ai/loop-policy.md +86 -0
  187. package/repo-template/docs/ai/loops.md +95 -0
  188. package/repo-template/docs/ai/maintainability-gates.md +26 -0
  189. package/repo-template/docs/ai/memory.md +71 -0
  190. package/repo-template/docs/ai/model-policy.md +105 -0
  191. package/repo-template/docs/ai/observability-runtime.md +48 -0
  192. package/repo-template/docs/ai/provider-routing.md +138 -0
  193. package/repo-template/docs/ai/quality-gates.md +48 -0
  194. package/repo-template/docs/ai/rollback-runtime.md +25 -0
  195. package/repo-template/docs/ai/security.md +12 -0
  196. package/repo-template/docs/ai/spec-driven-development.md +124 -0
  197. package/repo-template/docs/ai/spec-escalation.md +44 -0
  198. package/repo-template/docs/ai/spec-intake.md +46 -0
  199. package/repo-template/docs/ai/spec-sizing.md +207 -0
  200. package/repo-template/docs/ai/test-driven-development.md +35 -0
  201. package/repo-template/docs/ai/testing.md +28 -0
  202. package/repo-template/docs/ai/tool-adapters.md +186 -0
  203. package/repo-template/docs/ai/trust-allowlist.md +5 -0
  204. package/repo-template/docs/ai/trust-policy.md +41 -0
  205. package/repo-template/docs/ai/ui.md +17 -0
  206. package/repo-template/docs/skills/adapter-parity-review.md +46 -0
  207. package/repo-template/docs/skills/api-design.md +37 -0
  208. package/repo-template/docs/skills/architecture.md +37 -0
  209. package/repo-template/docs/skills/code-review.md +37 -0
  210. package/repo-template/docs/skills/context-graph.md +38 -0
  211. package/repo-template/docs/skills/debugging.md +37 -0
  212. package/repo-template/docs/skills/eval-design.md +12 -0
  213. package/repo-template/docs/skills/evals.md +37 -0
  214. package/repo-template/docs/skills/git-workflow.md +37 -0
  215. package/repo-template/docs/skills/look-trust-review.md +12 -0
  216. package/repo-template/docs/skills/loop-debugging.md +16 -0
  217. package/repo-template/docs/skills/loop-design.md +39 -0
  218. package/repo-template/docs/skills/loop-retrospective.md +15 -0
  219. package/repo-template/docs/skills/loop-review.md +16 -0
  220. package/repo-template/docs/skills/maintainability-review.md +12 -0
  221. package/repo-template/docs/skills/model-selection.md +36 -0
  222. package/repo-template/docs/skills/quality-gate-review.md +12 -0
  223. package/repo-template/docs/skills/spec-complexity-classifier.md +41 -0
  224. package/repo-template/docs/skills/spec-escalation-review.md +34 -0
  225. package/repo-template/docs/skills/spec-intake.md +25 -0
  226. package/repo-template/docs/skills/testing.md +37 -0
  227. package/repo-template/docs/skills/tool-adapter-sync.md +36 -0
  228. package/repo-template/docs/skills/ui-design.md +37 -0
  229. package/repo-template/docs/specs/README.md +9 -0
  230. package/repo-template/docs/specs/templates/basic-spec.md +41 -0
  231. package/repo-template/docs/specs/templates/complex-spec.md +145 -0
  232. package/repo-template/docs/specs/templates/standard-spec.md +58 -0
  233. package/repo-template/evals/README.md +11 -0
  234. package/repo-template/evals/golden/sample-golden.json +12 -0
  235. package/repo-template/evals/loop-regression/README.md +11 -0
  236. package/repo-template/evals/regression/sample-regression.json +12 -0
  237. package/repo-template/evals/schema/sample-schema.json +12 -0
  238. package/repo-template/evals/tool-calls/sample-tool-calls.json +12 -0
  239. package/repo-template/opencode.json.sample +29 -0
  240. package/repo-template/scripts/harness/backup.mjs +7 -0
  241. package/repo-template/scripts/harness/doctor.mjs +20 -0
  242. package/repo-template/scripts/harness/run-evals.mjs +27 -0
  243. package/repo-template/setup-agent-links.sh +54 -0
  244. package/scripts/check-published-release.mjs +127 -0
  245. package/scripts/check-release-commit.mjs +32 -0
  246. package/scripts/install.sh +225 -0
  247. package/scripts/installer-smoke-test.sh +155 -0
  248. package/scripts/lib/attribution-guard.mjs +59 -0
  249. package/scripts/registry-smoke-test.sh +149 -0
  250. package/scripts/smoke-test.sh +197 -0
  251. package/scripts/ux-smoke-test.sh +140 -0
  252. package/src/cli.js +625 -0
  253. package/src/doctor.js +68 -0
  254. package/src/global/adapter-context.js +27 -0
  255. package/src/global/adapter-matrix.js +38 -0
  256. package/src/global/adapters/claude.js +8 -0
  257. package/src/global/adapters/codex.js +8 -0
  258. package/src/global/adapters/cursor.js +8 -0
  259. package/src/global/adapters/opencode.js +8 -0
  260. package/src/global/agents.js +7 -0
  261. package/src/global/apply-confirmation.js +62 -0
  262. package/src/global/backups.js +54 -0
  263. package/src/global/brand/cli.js +52 -0
  264. package/src/global/brand/index.js +85 -0
  265. package/src/global/clack/setup-preview.js +48 -0
  266. package/src/global/clack/setup-wizard-constants.js +6 -0
  267. package/src/global/clack/setup-wizard.js +207 -0
  268. package/src/global/clack/theme.js +145 -0
  269. package/src/global/component-authoring.js +121 -0
  270. package/src/global/component-builders.js +43 -0
  271. package/src/global/component-distribution.js +270 -0
  272. package/src/global/component-installer.js +106 -0
  273. package/src/global/component-paths.js +22 -0
  274. package/src/global/component-registry.js +89 -0
  275. package/src/global/components/orchestrator.js +14 -0
  276. package/src/global/components/sdd-core.js +17 -0
  277. package/src/global/diff.js +233 -0
  278. package/src/global/drift.js +264 -0
  279. package/src/global/explain.js +144 -0
  280. package/src/global/global-cli.js +1145 -0
  281. package/src/global/global-doctor.js +67 -0
  282. package/src/global/global-installer.js +284 -0
  283. package/src/global/history.js +313 -0
  284. package/src/global/ink/run-setup-ink.js +77 -0
  285. package/src/global/ink/setup-app.js +278 -0
  286. package/src/global/ink/setup-routing.js +51 -0
  287. package/src/global/ink/setup-state.js +180 -0
  288. package/src/global/ink/terminal.js +13 -0
  289. package/src/global/json-output.js +22 -0
  290. package/src/global/load-component-catalog.js +41 -0
  291. package/src/global/load-workspace-component-catalog.js +123 -0
  292. package/src/global/managed-body.js +28 -0
  293. package/src/global/managed-config-adapter.js +134 -0
  294. package/src/global/managed-section.js +73 -0
  295. package/src/global/npm-registry.js +25 -0
  296. package/src/global/paths.js +22 -0
  297. package/src/global/policy.js +344 -0
  298. package/src/global/preflight.js +65 -0
  299. package/src/global/registry.js +79 -0
  300. package/src/global/report.js +110 -0
  301. package/src/global/rollback.js +126 -0
  302. package/src/global/setup.js +284 -0
  303. package/src/global/state-migration.js +65 -0
  304. package/src/global/state.js +50 -0
  305. package/src/global/status.js +94 -0
  306. package/src/global/sync.js +129 -0
  307. package/src/global/upgrade.js +145 -0
  308. package/src/harness-files.js +145 -0
  309. package/src/harness-updater.js +120 -0
  310. package/src/hash.js +5 -0
  311. package/src/manifest.js +36 -0
  312. package/src/project-detection.js +105 -0
  313. package/src/template-installer.js +72 -0
  314. package/src/text-template.js +24 -0
  315. package/src/workspace-cli.js +115 -0
@@ -0,0 +1,86 @@
1
+ # Loop Policy
2
+
3
+ ## Objetivo
4
+
5
+ Definir límites, escalación y condiciones de salida para loops agénticos.
6
+
7
+ ## Límites globales
8
+
9
+ | Límite | Default |
10
+ |---|---:|
11
+ | Repair attempts por task | 3 |
12
+ | Archivos modificados antes de review | 8 |
13
+ | Iteraciones sin progreso | 2 |
14
+ | Cambios de arquitectura sin approval | 0 |
15
+ | Cambios de DB destructivos sin approval | 0 |
16
+ | Cambios de seguridad/auth sin approval | 0 |
17
+ | Evals fallidas aceptables en IA | 0 críticas |
18
+
19
+ ## Señales de éxito
20
+
21
+ Un loop puede cerrar cuando:
22
+
23
+ - spec sigue vigente
24
+ - tests relevantes pasan
25
+ - evals relevantes pasan
26
+ - lint/typecheck/build pasan si aplican
27
+ - no hay issues críticos en review
28
+ - riesgos documentados
29
+ - humano aprueba si el impacto es alto
30
+
31
+ ## Señales de fallo
32
+
33
+ Detener y escalar si:
34
+
35
+ - se alcanza el máximo de repair attempts
36
+ - el agente repite el mismo cambio
37
+ - aparecen errores nuevos no relacionados
38
+ - aumenta el scope
39
+ - se modifican capas no previstas
40
+ - falla seguridad/auth/data/infra
41
+ - evals degradan comportamiento anterior
42
+ - el modelo reporta baja confianza
43
+
44
+ ## Model routing dentro del loop
45
+
46
+ ### DeepSeek / económico
47
+
48
+ Puede ejecutar:
49
+
50
+ - intake
51
+ - task breakdown
52
+ - scaffolding
53
+ - tests simples
54
+ - repair attempts 1-2
55
+ - documentación base
56
+ - extracción de contexto
57
+
58
+ No puede aprobar:
59
+
60
+ - arquitectura
61
+ - seguridad
62
+ - auth/pagos
63
+ - DB destructiva
64
+ - aceptación final crítica
65
+ - cambios productivos de alto impacto
66
+
67
+ ### Modelo fuerte
68
+
69
+ Debe intervenir para:
70
+
71
+ - spec review crítica
72
+ - arquitectura
73
+ - debugging complejo
74
+ - security review
75
+ - eval strategy
76
+ - acceptance review
77
+
78
+ ## Rollback
79
+
80
+ Si el loop degrada el sistema:
81
+
82
+ 1. Detener ejecución.
83
+ 2. Reportar diff.
84
+ 3. Identificar último estado válido.
85
+ 4. Proponer rollback.
86
+ 5. Esperar aprobación humana si hay cambios destructivos.
@@ -0,0 +1,95 @@
1
+ # Loop Engineering
2
+
3
+ ## Objetivo
4
+
5
+ Definir ciclos controlados de trabajo agéntico para que el agente no dependa de prompts manuales en cada paso.
6
+
7
+ Loop Engineering no significa dejar que el agente itere sin control. Significa diseñar:
8
+
9
+ - estado inicial
10
+ - objetivo
11
+ - ciclo permitido
12
+ - herramientas permitidas
13
+ - intentos máximos
14
+ - presupuesto de costo/tokens
15
+ - señales de éxito
16
+ - señales de fallo
17
+ - escalación
18
+ - logs
19
+ - rollback
20
+ - aprendizaje documentado
21
+
22
+ ## Relación con el harness
23
+
24
+ ```txt
25
+ Harness Engineering = infraestructura de control
26
+ Loop Engineering = ciclos de ejecución, reparación y aprendizaje dentro de esa infraestructura
27
+ ```
28
+
29
+ ## Modelo base
30
+
31
+ ```txt
32
+ Plan → Execute → Observe → Evaluate → Repair → Learn → Repeat
33
+ ```
34
+
35
+ ## Loop de feature
36
+
37
+ ```txt
38
+ Spec approved
39
+ → select next task
40
+ → write failing test
41
+ → implement minimum change
42
+ → run test
43
+ → repair if needed
44
+ → run validation
45
+ → review
46
+ → checkpoint
47
+ ```
48
+
49
+ ## Loop de bug
50
+
51
+ ```txt
52
+ Bug report
53
+ → reproduce
54
+ → isolate cause
55
+ → write regression test
56
+ → fix
57
+ → run test
58
+ → repair if needed
59
+ → run full validation
60
+ → document root cause
61
+ ```
62
+
63
+ ## Loop de IA
64
+
65
+ ```txt
66
+ Failed conversation/eval
67
+ → classify failure
68
+ → identify prompt/tool/context issue
69
+ → propose minimal change
70
+ → run evals
71
+ → compare baseline
72
+ → accept/revert
73
+ → document learning
74
+ ```
75
+
76
+ ## Loop de documentación
77
+
78
+ ```txt
79
+ Architecture/spec/code change
80
+ → detect stale docs
81
+ → update docs
82
+ → check contradictions
83
+ → update decision log
84
+ → checkpoint
85
+ ```
86
+
87
+ ## Regla central
88
+
89
+ ```txt
90
+ No autonomous loop without boundaries.
91
+ No repair loop without max attempts.
92
+ No learning loop without evals.
93
+ No production loop without observability.
94
+ No critical loop without human approval.
95
+ ```
@@ -0,0 +1,26 @@
1
+ # Maintainability Gates
2
+
3
+ ## Reglas
4
+
5
+ - Preferir cambios pequeños y localizados.
6
+ - No mezclar refactor + feature + bugfix.
7
+ - No duplicar lógica de dominio.
8
+ - No introducir abstracciones prematuras.
9
+ - No crear helpers genéricos sin casos reales.
10
+ - No modificar arquitectura sin ADR.
11
+ - No aumentar acoplamiento innecesario.
12
+ - No cambiar contratos públicos sin tests.
13
+ - No esconder errores con catch silencioso.
14
+ - No usar any/unknown sin justificación en TypeScript.
15
+
16
+ ## Checklist
17
+
18
+ - [ ] cumple el spec
19
+ - [ ] diff mínimo
20
+ - [ ] nombres claros
21
+ - [ ] no hay dead code
22
+ - [ ] no hay duplicación innecesaria
23
+ - [ ] no hay cambios no relacionados
24
+ - [ ] tests cubren comportamiento
25
+ - [ ] diseño escalable
26
+ - [ ] mantenible por otro humano/agente
@@ -0,0 +1,71 @@
1
+ # Memory
2
+
3
+ ## Objetivo
4
+
5
+ Definir cómo se maneja memoria persistente del proyecto y cuándo Engram debe intervenir.
6
+
7
+ ## Fuentes
8
+
9
+ | Fuente | Rol |
10
+ |---|---|
11
+ | Repo | Fuente primaria |
12
+ | AGENTS.md | Instrucciones universales |
13
+ | docs/ai | Documentación técnica |
14
+ | docs/specs | Intención/versionado de features |
15
+ | Engram | Memoria/indexación externa |
16
+ | Graphify | Grafo contextual externo |
17
+
18
+ ## Qué guardar en Engram
19
+
20
+ Guardar:
21
+
22
+ - Decisiones de arquitectura y su razonamiento, no solo el resultado.
23
+ - Bugs recurrentes y su causa raíz.
24
+ - Convenciones descubiertas que no estaban documentadas.
25
+ - Aprendizajes de retrospectivas de loops (`docs/ai/loop-log.md`).
26
+ - Enfoques descartados y por qué se descartaron.
27
+ - Contexto de decisiones de modelo/routing que resultaron caras o incorrectas.
28
+
29
+ No guardar:
30
+
31
+ - Secrets, tokens, credenciales o datos personales.
32
+ - Volcados completos de código fuente; el repo ya es la fuente.
33
+ - Output de debug efímero sin valor de largo plazo.
34
+ - Cualquier cosa que ya esté documentada en `AGENTS.md` o `docs/ai/`. No dupliques la fuente de verdad.
35
+
36
+ ## Cuándo buscar memoria
37
+
38
+ Buscar en Engram antes de:
39
+
40
+ - Iniciar una tarea no trivial o una spec `standard`/`complex`.
41
+ - Diagnosticar un bug que "se siente familiar".
42
+ - Proponer una decisión de arquitectura o convención nueva.
43
+ - Retomar trabajo después de una compactación de contexto o nueva sesión.
44
+ - Repetir una tarea de loop (ver `docs/ai/loop-retrospective.md`).
45
+
46
+ No es necesario buscar memoria para:
47
+
48
+ - Cambios triviales (typos, formato, comentarios).
49
+ - Tareas ya completamente especificadas en una spec activa.
50
+
51
+ ## Cuándo el repo gana sobre la memoria externa
52
+
53
+ ```txt
54
+ Current user instruction
55
+ → AGENTS.md
56
+ → docs/ai/
57
+ → docs/specs/
58
+ → Engram (memoria)
59
+ → Graphify (grafo)
60
+ ```
61
+
62
+ Reglas explícitas:
63
+
64
+ - Si Engram contradice `AGENTS.md` o `docs/ai/`, gana el archivo del repo. Actualizar o descartar la memoria obsoleta.
65
+ - Si Engram sugiere una convención que el código actual ya no sigue, verificar el código primero: la memoria puede estar desactualizada.
66
+ - Si Graphify contradice código o documentación, reportar la discrepancia y regenerar el grafo; no editar el grafo a mano.
67
+ - Ninguna memoria externa autoriza saltarse SDD, TDD, evals o aprobación humana.
68
+
69
+ ## Registro de decisiones
70
+
71
+ Las decisiones importantes deben quedar trazables en `docs/ai/decision-log.md` o un ADR, no solo en Engram. Engram indexa; el repo certifica.
@@ -0,0 +1,105 @@
1
+ # Model Policy
2
+
3
+ ## Objetivo
4
+
5
+ Definir qué tipo de modelo debe ejecutar cada clase de tarea.
6
+
7
+ El harness debe funcionar con cualquier proveedor: DeepSeek, OpenAI/Codex, Claude, Gemini, modelos locales u otros modelos vía Gentle AI/OpenRouter.
8
+
9
+ ## Principio
10
+
11
+ ```txt
12
+ Use the cheapest model that can safely complete the task.
13
+ Escalate when ambiguity, risk, architecture, security or multi-file reasoning increases.
14
+ ```
15
+
16
+ ## Clases de modelos
17
+
18
+ | Clase | Uso recomendado |
19
+ |---|---|
20
+ | Economic | Scaffolding, docs, tests simples, tareas mecánicas |
21
+ | Standard | Implementación normal, refactors moderados, análisis local |
22
+ | Strong | Arquitectura, debugging complejo, specs críticas, review |
23
+ | Specialist | Seguridad, performance, evals, RAG, data, infra |
24
+ | Local/private | Análisis sensible, privacidad, preprocesamiento |
25
+
26
+ ## Modelos económicos
27
+
28
+ Ejemplos: DeepSeek u otros modelos de bajo costo.
29
+
30
+ Usar para:
31
+
32
+ - scaffolding
33
+ - task breakdown
34
+ - documentación base
35
+ - generación de tests simples
36
+ - extracción de contexto
37
+ - refactors mecánicos
38
+ - limpieza de archivos
39
+ - primeras hipótesis de debugging
40
+
41
+ No usar sin revisión para:
42
+
43
+ - decisiones arquitectónicas críticas
44
+ - seguridad
45
+ - auth/payment/data loss
46
+ - cambios de DB sin migration plan
47
+ - specs críticas de negocio
48
+ - debugging multiarchivo de alto riesgo
49
+ - cierre final de cambios importantes
50
+
51
+ ## Modelos fuertes
52
+
53
+ Usar para:
54
+
55
+ - arquitectura
56
+ - diseño de specs críticas
57
+ - revisión de seguridad
58
+ - debugging complejo
59
+ - razonamiento multiarchivo
60
+ - diseño de evals complejas
61
+ - aceptación final de cambios críticos
62
+
63
+ ## Escalation policy
64
+
65
+ Escalar a modelo fuerte o humano si:
66
+
67
+ - hay contradicciones entre docs y código
68
+ - el cambio afecta auth, pagos, datos, seguridad o infra
69
+ - hay más de 5 archivos críticos involucrados
70
+ - el agente propone nueva arquitectura
71
+ - tests/evals fallan repetidamente
72
+ - el modelo reporta baja confianza
73
+ - hay riesgo de pérdida de datos
74
+ - se requiere decisión de producto
75
+
76
+ ## Regla final
77
+
78
+ El modelo ejecuta. El harness controla. El humano aprueba impacto.
79
+
80
+ ## Loop-aware model policy
81
+
82
+ Los modelos económicos pueden iterar dentro de loops solo si:
83
+
84
+ - hay max attempts
85
+ - hay tests/evals
86
+ - el scope está definido
87
+ - el rollback es posible
88
+ - no hay impacto crítico
89
+
90
+ Los modelos fuertes deben cerrar o revisar loops de alto impacto.
91
+
92
+ ## Adapter-independent model policy
93
+
94
+ This policy applies regardless of where the model is used:
95
+
96
+ - OpenCode
97
+ - Cursor
98
+ - Codex
99
+ - Claude
100
+ - Gemini
101
+ - Pi
102
+ - any future CLI or IDE agent
103
+
104
+ Do not encode model safety rules only inside one adapter.
105
+ The source must live here and be referenced by adapters.
@@ -0,0 +1,48 @@
1
+ # Runtime Observability
2
+
3
+ ## Eventos mínimos
4
+
5
+ ```txt
6
+ agent_run_started
7
+ agent_run_finished
8
+ loop_started
9
+ loop_iteration
10
+ loop_escalated
11
+ loop_stopped
12
+ quality_gate_failed
13
+ quality_gate_passed
14
+ eval_run_finished
15
+ human_approval_required
16
+ rollback_created
17
+ rollback_executed
18
+ ```
19
+
20
+ ## Campos mínimos
21
+
22
+ ```txt
23
+ run_id
24
+ timestamp
25
+ adapter
26
+ agent
27
+ model
28
+ task
29
+ spec
30
+ files_changed
31
+ commands_run
32
+ tests_run
33
+ evals_run
34
+ token_estimate
35
+ cost_estimate
36
+ status
37
+ risk_level
38
+ approval_status
39
+ ```
40
+
41
+ ## Archivos locales
42
+
43
+ ```txt
44
+ .harness/logs/runs.jsonl
45
+ .harness/logs/evals.jsonl
46
+ .harness/logs/quality-gates.jsonl
47
+ .harness/logs/approvals.jsonl
48
+ ```
@@ -0,0 +1,138 @@
1
+ # Provider Routing
2
+
3
+ ## Objetivo
4
+
5
+ Definir cómo enrutar tareas entre modelos/proveedores.
6
+
7
+ ## Matriz de routing
8
+
9
+ | Tarea | Economic / DeepSeek | Strong / GPT-Claude-Gemini | Humano |
10
+ |---|---|---|---|
11
+ | Intake inicial | Sí | Opcional | No |
12
+ | Spec simple | Sí | Review opcional | No |
13
+ | Spec crítica | Borrador | Sí | Aprobación |
14
+ | Plan técnico simple | Sí | Opcional | No |
15
+ | Arquitectura | No | Sí | Aprobación |
16
+ | Task breakdown | Sí | Opcional | No |
17
+ | Tests simples | Sí | Opcional | No |
18
+ | Tests críticos | Borrador | Sí | No |
19
+ | Evals IA | Borrador | Sí | Aprobación si negocio |
20
+ | Scaffolding | Sí | Opcional | No |
21
+ | Refactor mecánico | Sí | Review | No |
22
+ | Debugging complejo | Hipótesis | Sí | Si riesgo |
23
+ | Security review | No | Sí | Sí si crítico |
24
+ | Checkpoint final | No | Sí | Sí |
25
+
26
+ ## Gentle AI
27
+
28
+ Gentle AI puede usar modelos económicos para fases de bajo riesgo.
29
+
30
+ Recomendación:
31
+
32
+ ```txt
33
+ DeepSeek:
34
+ - intake
35
+ - task breakdown
36
+ - scaffolding
37
+ - tests simples
38
+ - docs base
39
+
40
+ Modelo fuerte:
41
+ - spec review
42
+ - architecture
43
+ - eval strategy
44
+ - security review
45
+ - acceptance review
46
+ ```
47
+
48
+ ## Codex App / Codex CLI
49
+
50
+ Usar Codex para:
51
+
52
+ - ejecución puntual con `AGENTS.md`
53
+ - refactors acotados
54
+ - generación de tests
55
+ - revisión con skills
56
+ - checkpoints
57
+
58
+ Codex debe respetar `AGENTS.md` y skills en `.codex/skills/` cuando existan.
59
+
60
+ ## Cursor
61
+
62
+ Usar Cursor para:
63
+
64
+ - edición interactiva
65
+ - navegación del repo
66
+ - subagentes por fase
67
+ - comandos de workflow
68
+ - integración rápida con reglas del editor
69
+
70
+ ## Claude/Gemini
71
+
72
+ Usar para:
73
+
74
+ - razonamiento fuerte
75
+ - arquitectura
76
+ - review
77
+ - debugging complejo
78
+ - análisis de ambigüedad
79
+ - redacción/refinamiento de specs críticas
80
+
81
+ ## Regla de costo
82
+
83
+ Preferir modelo económico cuando el output sea verificable con tests/evals.
84
+ Preferir modelo fuerte cuando el output sea una decisión difícil de verificar automáticamente.
85
+
86
+ ## OpenCode + Gentle AI + DeepSeek
87
+
88
+ Este es el execution path principal recomendado.
89
+
90
+ ```txt
91
+ OpenCode session
92
+ → Gentle AI SDD/TDD workflow
93
+ → DeepSeek for low-risk iterations
94
+ → Strong model/human for critical review
95
+ ```
96
+
97
+ ### DeepSeek dentro del loop
98
+
99
+ Permitido:
100
+
101
+ - intake
102
+ - task breakdown
103
+ - scaffolding
104
+ - tests simples
105
+ - repair attempts 1-2
106
+ - documentación base
107
+
108
+ Escalar después de:
109
+
110
+ - 2 intentos sin progreso
111
+ - scope creep
112
+ - fallo de arquitectura
113
+ - fallo de seguridad
114
+ - error de auth/pagos/DB/infra
115
+ - eval crítica fallida
116
+
117
+ ## Provider routing is adapter-independent
118
+
119
+ Model routing must not depend on one tool.
120
+
121
+ The same model policy applies in:
122
+
123
+ ```txt
124
+ OpenCode
125
+ Cursor
126
+ Codex
127
+ Claude
128
+ Gemini
129
+ Pi
130
+ ```
131
+
132
+ Adapter-specific syntax may change, but routing policy does not.
133
+
134
+ ```txt
135
+ Economic models = low-risk, verifiable execution.
136
+ Strong models = ambiguous, high-risk, architectural or security-sensitive work.
137
+ Human = impact approval.
138
+ ```
@@ -0,0 +1,48 @@
1
+ # Quality Gates
2
+
3
+ ## Gates mínimos
4
+
5
+ | Gate | Required | Bloqueante |
6
+ |---|---:|---:|
7
+ | format check | yes | yes |
8
+ | lint | yes | yes |
9
+ | typecheck | yes | yes |
10
+ | unit tests | yes | yes |
11
+ | integration tests | when applicable | yes |
12
+ | E2E smoke | when UI/API critical | yes |
13
+ | AI evals | when AI behavior changes | yes |
14
+ | build | yes | yes |
15
+ | dependency review | yes | yes |
16
+ | secret scan | yes | yes |
17
+ | license policy | yes | yes |
18
+ | architecture review | high-impact | yes |
19
+ | human approval | critical impact | yes |
20
+
21
+ ## Definition of Done
22
+
23
+ Un cambio está listo solo si:
24
+
25
+ - cumple el spec
26
+ - no expande scope silenciosamente
27
+ - incluye pruebas o evals relevantes
28
+ - pasa quality gates
29
+ - documenta tradeoffs relevantes
30
+ - actualiza ADRs si cambia arquitectura
31
+ - no introduce dependencias inseguras o no aprobadas
32
+ - tiene rollback path si toca producción
33
+
34
+ ## Reglas
35
+
36
+ ```txt
37
+ Every fixed bug must add or update a regression test.
38
+ Every AI behavior change must add or update evals.
39
+ Every architecture-changing decision must add or update an ADR.
40
+ ```
41
+
42
+ ## Spec-level quality gates
43
+
44
+ | Spec level | Required gates |
45
+ |---|---|
46
+ | basic | lint/typecheck/relevant test or manual check |
47
+ | standard | lint/typecheck/unit/integration/build/checkpoint |
48
+ | complex | all standard gates + ADR/security/evals/rollback/human approval when applicable |
@@ -0,0 +1,25 @@
1
+ # Rollback Runtime
2
+
3
+ ## Snapshot policy
4
+
5
+ Crear snapshot antes de:
6
+
7
+ - loop autónomo
8
+ - cambios multiarchivo
9
+ - migraciones
10
+ - cambios de auth
11
+ - cambios de infraestructura
12
+ - cambios IA productivos
13
+ - actualizaciones de dependencias
14
+
15
+ ## Git policy
16
+
17
+ Antes de cambios grandes:
18
+
19
+ ```bash
20
+ git status
21
+ git diff
22
+ git branch --show-current
23
+ ```
24
+
25
+ Preferir worktrees/branches aisladas para agentes.
@@ -0,0 +1,12 @@
1
+ # Security
2
+
3
+ ## Reglas no negociables
4
+
5
+ - No commitear secretos.
6
+ - No exponer tokens en logs.
7
+ - No copiar valores reales de `.env`.
8
+ - Validar input en fronteras de sistema.
9
+ - Validar response de APIs externas.
10
+ - Aplicar principio de mínimo privilegio.
11
+ - Revisar authz además de authn.
12
+ - Documentar riesgos de seguridad en specs.