@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.
- package/README.md +937 -0
- package/bin/harness.js +11 -0
- package/bin/kairo-runtime.js +11 -0
- package/bin/kairo.js +11 -0
- package/global-template/components/catalog.json +25 -0
- package/global-template/components/orchestrator/orchestrator.md +55 -0
- package/global-template/components/sdd-core/handoff.md +38 -0
- package/global-template/components/sdd-core/spec-sizing.md +38 -0
- package/global-template/components/sdd-core/workflow.md +31 -0
- package/global-template/core/orchestrator.md +55 -0
- package/package.json +64 -0
- package/prompts/HARNESS_ENFORCEMENT_UPGRADE.md +11 -0
- package/prompts/HARNESS_ENTERPRISE.md +33 -0
- package/prompts/HARNESS_INSTALLER_MASTER.md +853 -0
- package/prompts/HARNESS_MINIMAL.md +30 -0
- package/prompts/HARNESS_SPEC_SIZING_UPGRADE.md +41 -0
- package/prompts/HARNESS_STANDARD.md +35 -0
- package/prompts/HARNESS_UNIVERSAL_PARITY.md +56 -0
- package/repo-template/.claude/agents/adapter-parity-reviewer.md +17 -0
- package/repo-template/.claude/agents/architect.md +17 -0
- package/repo-template/.claude/agents/eval-engineer.md +17 -0
- package/repo-template/.claude/agents/reviewer.md +17 -0
- package/repo-template/.claude/agents/sdd-reviewer.md +17 -0
- package/repo-template/.claude/agents/sdd-spec-writer.md +17 -0
- package/repo-template/.claude/skills/checkpoint/SKILL.md +13 -0
- package/repo-template/.claude/skills/eval-design/SKILL.md +3 -0
- package/repo-template/.claude/skills/evals/SKILL.md +13 -0
- package/repo-template/.claude/skills/loop-engineering/SKILL.md +16 -0
- package/repo-template/.claude/skills/maintainability-review/SKILL.md +3 -0
- package/repo-template/.claude/skills/quality-gate-review/SKILL.md +3 -0
- package/repo-template/.claude/skills/sdd/SKILL.md +13 -0
- package/repo-template/.claude/skills/spec-complexity-classifier/SKILL.md +10 -0
- package/repo-template/.claude/skills/spec-escalation-review/SKILL.md +10 -0
- package/repo-template/.claude/skills/spec-intake/SKILL.md +10 -0
- package/repo-template/.claude/skills/tdd/SKILL.md +13 -0
- package/repo-template/.claude/skills/trust-review/SKILL.md +3 -0
- package/repo-template/.codex/skills/adapter-parity/SKILL.md +29 -0
- package/repo-template/.codex/skills/checkpoint/SKILL.md +36 -0
- package/repo-template/.codex/skills/eval-design/SKILL.md +3 -0
- package/repo-template/.codex/skills/evals/SKILL.md +28 -0
- package/repo-template/.codex/skills/loop-engineering/SKILL.md +24 -0
- package/repo-template/.codex/skills/maintainability-review/SKILL.md +3 -0
- package/repo-template/.codex/skills/quality-gate-review/SKILL.md +3 -0
- package/repo-template/.codex/skills/sdd/SKILL.md +30 -0
- package/repo-template/.codex/skills/spec-complexity-classifier/SKILL.md +10 -0
- package/repo-template/.codex/skills/spec-escalation-review/SKILL.md +10 -0
- package/repo-template/.codex/skills/spec-intake/SKILL.md +10 -0
- package/repo-template/.codex/skills/tdd/SKILL.md +27 -0
- package/repo-template/.codex/skills/trust-review/SKILL.md +3 -0
- package/repo-template/.cursor/agents/adapter-parity-reviewer.md +29 -0
- package/repo-template/.cursor/agents/architect.md +27 -0
- package/repo-template/.cursor/agents/context-engineer.md +27 -0
- package/repo-template/.cursor/agents/debugger.md +27 -0
- package/repo-template/.cursor/agents/eval-engineer.md +27 -0
- package/repo-template/.cursor/agents/harness-orchestrator.md +27 -0
- package/repo-template/.cursor/agents/loop-controller.md +17 -0
- package/repo-template/.cursor/agents/loop-debugger.md +16 -0
- package/repo-template/.cursor/agents/reviewer.md +27 -0
- package/repo-template/.cursor/agents/sdd/sdd-acceptance-reviewer.md +31 -0
- package/repo-template/.cursor/agents/sdd/sdd-implementation-guardian.md +31 -0
- package/repo-template/.cursor/agents/sdd/sdd-intake-analyst.md +31 -0
- package/repo-template/.cursor/agents/sdd/sdd-orchestrator.md +31 -0
- package/repo-template/.cursor/agents/sdd/sdd-spec-reviewer.md +31 -0
- package/repo-template/.cursor/agents/sdd/sdd-spec-writer.md +31 -0
- package/repo-template/.cursor/agents/sdd/sdd-task-breakdown.md +31 -0
- package/repo-template/.cursor/agents/sdd/sdd-technical-planner.md +31 -0
- package/repo-template/.cursor/agents/sdd/sdd-test-planner.md +31 -0
- package/repo-template/.cursor/agents/spec-intake-analyst.md +14 -0
- package/repo-template/.cursor/agents/test-engineer.md +27 -0
- package/repo-template/.cursor/commands/adapter-parity.md +34 -0
- package/repo-template/.cursor/commands/checkpoint.md +30 -0
- package/repo-template/.cursor/commands/debug.md +13 -0
- package/repo-template/.cursor/commands/init-eval.md +12 -0
- package/repo-template/.cursor/commands/init-feature.md +12 -0
- package/repo-template/.cursor/commands/init-harness.md +13 -0
- package/repo-template/.cursor/commands/loop-debug.md +3 -0
- package/repo-template/.cursor/commands/loop-review.md +3 -0
- package/repo-template/.cursor/commands/loop-run.md +5 -0
- package/repo-template/.cursor/commands/review.md +21 -0
- package/repo-template/.cursor/commands/sdd-intake.md +18 -0
- package/repo-template/.cursor/commands/sdd-plan.md +18 -0
- package/repo-template/.cursor/commands/sdd-spec.md +18 -0
- package/repo-template/.cursor/commands/sdd-tasks.md +18 -0
- package/repo-template/.cursor/commands/sdd-validate.md +18 -0
- package/repo-template/.cursor/commands/spec-escalate.md +9 -0
- package/repo-template/.cursor/commands/spec-intake.md +10 -0
- package/repo-template/.cursor/commands/spec-size.md +21 -0
- package/repo-template/.cursor/rules/adapter-parity.mdc +20 -0
- package/repo-template/.cursor/rules/api.mdc +12 -0
- package/repo-template/.cursor/rules/core.mdc +21 -0
- package/repo-template/.cursor/rules/enforcement.mdc +16 -0
- package/repo-template/.cursor/rules/evals.mdc +10 -0
- package/repo-template/.cursor/rules/git.mdc +19 -0
- package/repo-template/.cursor/rules/harness.mdc +14 -0
- package/repo-template/.cursor/rules/loops.mdc +17 -0
- package/repo-template/.cursor/rules/testing.mdc +13 -0
- package/repo-template/.cursor/rules/ui.mdc +13 -0
- package/repo-template/.cursor/skills/api-design/SKILL.md +23 -0
- package/repo-template/.cursor/skills/architecture/SKILL.md +23 -0
- package/repo-template/.cursor/skills/code-review/SKILL.md +23 -0
- package/repo-template/.cursor/skills/context-graph/SKILL.md +23 -0
- package/repo-template/.cursor/skills/debugging/SKILL.md +23 -0
- package/repo-template/.cursor/skills/evals/SKILL.md +23 -0
- package/repo-template/.cursor/skills/git-workflow/SKILL.md +23 -0
- package/repo-template/.cursor/skills/testing/SKILL.md +23 -0
- package/repo-template/.cursor/skills/ui-design/SKILL.md +23 -0
- package/repo-template/.gentle-ai/README.md +37 -0
- package/repo-template/.gentle-ai/loops/README.md +27 -0
- package/repo-template/.gentle-ai/loops/sdd-tdd-repair.loop.md +27 -0
- package/repo-template/.gentle-ai/model-routing.md +25 -0
- package/repo-template/.github/copilot-instructions.md +37 -0
- package/repo-template/.github/dependabot.yml +11 -0
- package/repo-template/.github/instructions/harness.instructions.md +11 -0
- package/repo-template/.github/workflows/harness-quality-gate.yml +67 -0
- package/repo-template/.github/workflows/harness-security-gate.yml +32 -0
- package/repo-template/.harness/spec-sizing.json +33 -0
- package/repo-template/.opencode/README.md +71 -0
- package/repo-template/.opencode/agents/adapter-parity-reviewer.md +23 -0
- package/repo-template/.opencode/agents/architect.md +38 -0
- package/repo-template/.opencode/agents/checkpoint-reviewer.md +38 -0
- package/repo-template/.opencode/agents/eval-engineer.md +38 -0
- package/repo-template/.opencode/agents/loop-controller.md +38 -0
- package/repo-template/.opencode/agents/loop-debugger.md +38 -0
- package/repo-template/.opencode/agents/model-router.md +38 -0
- package/repo-template/.opencode/agents/sdd-orchestrator.md +38 -0
- package/repo-template/.opencode/agents/sdd-spec-reviewer.md +38 -0
- package/repo-template/.opencode/agents/spec-intake-analyst.md +19 -0
- package/repo-template/.opencode/agents/tdd-engineer.md +38 -0
- package/repo-template/.opencode/commands/checkpoint.md +3 -0
- package/repo-template/.opencode/commands/eval-design.md +3 -0
- package/repo-template/.opencode/commands/maintainability-review.md +3 -0
- package/repo-template/.opencode/commands/quality-gate.md +3 -0
- package/repo-template/.opencode/commands/spec-escalate.md +9 -0
- package/repo-template/.opencode/commands/spec-intake.md +10 -0
- package/repo-template/.opencode/commands/spec-size.md +21 -0
- package/repo-template/.opencode/commands/trust-review.md +3 -0
- package/repo-template/.opencode/loops/ai-behavior-improvement.loop.md +15 -0
- package/repo-template/.opencode/loops/bug-repair.loop.md +16 -0
- package/repo-template/.opencode/loops/documentation-sync.loop.md +13 -0
- package/repo-template/.opencode/loops/feature-development.loop.md +25 -0
- package/repo-template/.opencode/skills/spec-complexity-classifier/SKILL.md +10 -0
- package/repo-template/.opencode/skills/spec-escalation-review/SKILL.md +10 -0
- package/repo-template/.opencode/skills/spec-intake/SKILL.md +10 -0
- package/repo-template/.pi/README.md +21 -0
- package/repo-template/.pi/prompts/checkpoint.md +11 -0
- package/repo-template/.pi/prompts/loop-run.md +10 -0
- package/repo-template/.pi/prompts/sdd-plan.md +11 -0
- package/repo-template/.pi/prompts/sdd-spec.md +13 -0
- package/repo-template/.pi/prompts/spec-escalate.md +9 -0
- package/repo-template/.pi/prompts/spec-intake.md +10 -0
- package/repo-template/.pi/prompts/spec-size.md +21 -0
- package/repo-template/.pi/skills/adapter-parity/SKILL.md +7 -0
- package/repo-template/.pi/skills/checkpoint/SKILL.md +7 -0
- package/repo-template/.pi/skills/eval-design/SKILL.md +3 -0
- package/repo-template/.pi/skills/evals/SKILL.md +7 -0
- package/repo-template/.pi/skills/loop-engineering/SKILL.md +7 -0
- package/repo-template/.pi/skills/maintainability-review/SKILL.md +3 -0
- package/repo-template/.pi/skills/quality-gate-review/SKILL.md +3 -0
- package/repo-template/.pi/skills/sdd/SKILL.md +7 -0
- package/repo-template/.pi/skills/spec-complexity-classifier/SKILL.md +10 -0
- package/repo-template/.pi/skills/spec-escalation-review/SKILL.md +10 -0
- package/repo-template/.pi/skills/spec-intake/SKILL.md +10 -0
- package/repo-template/.pi/skills/tdd/SKILL.md +7 -0
- package/repo-template/.pi/skills/trust-review/SKILL.md +3 -0
- package/repo-template/AGENT.md +8 -0
- package/repo-template/AGENTS.md +165 -0
- package/repo-template/CLAUDE.md +9 -0
- package/repo-template/GEMINI.md +9 -0
- package/repo-template/docs/ai/adapter-parity.md +135 -0
- package/repo-template/docs/ai/agent-workflow.md +45 -0
- package/repo-template/docs/ai/api.md +28 -0
- package/repo-template/docs/ai/architecture.md +53 -0
- package/repo-template/docs/ai/context-budget.md +54 -0
- package/repo-template/docs/ai/context-graph.md +39 -0
- package/repo-template/docs/ai/conventions.md +34 -0
- package/repo-template/docs/ai/decision-log.md +5 -0
- package/repo-template/docs/ai/enforcement.md +63 -0
- package/repo-template/docs/ai/eval-strategy.md +42 -0
- package/repo-template/docs/ai/evals.md +44 -0
- package/repo-template/docs/ai/git-workflow.md +35 -0
- package/repo-template/docs/ai/governance.md +61 -0
- package/repo-template/docs/ai/harness.md +49 -0
- package/repo-template/docs/ai/installer-cli.md +34 -0
- package/repo-template/docs/ai/loop-log.md +5 -0
- package/repo-template/docs/ai/loop-observability.md +57 -0
- package/repo-template/docs/ai/loop-policy.md +86 -0
- package/repo-template/docs/ai/loops.md +95 -0
- package/repo-template/docs/ai/maintainability-gates.md +26 -0
- package/repo-template/docs/ai/memory.md +71 -0
- package/repo-template/docs/ai/model-policy.md +105 -0
- package/repo-template/docs/ai/observability-runtime.md +48 -0
- package/repo-template/docs/ai/provider-routing.md +138 -0
- package/repo-template/docs/ai/quality-gates.md +48 -0
- package/repo-template/docs/ai/rollback-runtime.md +25 -0
- package/repo-template/docs/ai/security.md +12 -0
- package/repo-template/docs/ai/spec-driven-development.md +124 -0
- package/repo-template/docs/ai/spec-escalation.md +44 -0
- package/repo-template/docs/ai/spec-intake.md +46 -0
- package/repo-template/docs/ai/spec-sizing.md +207 -0
- package/repo-template/docs/ai/test-driven-development.md +35 -0
- package/repo-template/docs/ai/testing.md +28 -0
- package/repo-template/docs/ai/tool-adapters.md +186 -0
- package/repo-template/docs/ai/trust-allowlist.md +5 -0
- package/repo-template/docs/ai/trust-policy.md +41 -0
- package/repo-template/docs/ai/ui.md +17 -0
- package/repo-template/docs/skills/adapter-parity-review.md +46 -0
- package/repo-template/docs/skills/api-design.md +37 -0
- package/repo-template/docs/skills/architecture.md +37 -0
- package/repo-template/docs/skills/code-review.md +37 -0
- package/repo-template/docs/skills/context-graph.md +38 -0
- package/repo-template/docs/skills/debugging.md +37 -0
- package/repo-template/docs/skills/eval-design.md +12 -0
- package/repo-template/docs/skills/evals.md +37 -0
- package/repo-template/docs/skills/git-workflow.md +37 -0
- package/repo-template/docs/skills/look-trust-review.md +12 -0
- package/repo-template/docs/skills/loop-debugging.md +16 -0
- package/repo-template/docs/skills/loop-design.md +39 -0
- package/repo-template/docs/skills/loop-retrospective.md +15 -0
- package/repo-template/docs/skills/loop-review.md +16 -0
- package/repo-template/docs/skills/maintainability-review.md +12 -0
- package/repo-template/docs/skills/model-selection.md +36 -0
- package/repo-template/docs/skills/quality-gate-review.md +12 -0
- package/repo-template/docs/skills/spec-complexity-classifier.md +41 -0
- package/repo-template/docs/skills/spec-escalation-review.md +34 -0
- package/repo-template/docs/skills/spec-intake.md +25 -0
- package/repo-template/docs/skills/testing.md +37 -0
- package/repo-template/docs/skills/tool-adapter-sync.md +36 -0
- package/repo-template/docs/skills/ui-design.md +37 -0
- package/repo-template/docs/specs/README.md +9 -0
- package/repo-template/docs/specs/templates/basic-spec.md +41 -0
- package/repo-template/docs/specs/templates/complex-spec.md +145 -0
- package/repo-template/docs/specs/templates/standard-spec.md +58 -0
- package/repo-template/evals/README.md +11 -0
- package/repo-template/evals/golden/sample-golden.json +12 -0
- package/repo-template/evals/loop-regression/README.md +11 -0
- package/repo-template/evals/regression/sample-regression.json +12 -0
- package/repo-template/evals/schema/sample-schema.json +12 -0
- package/repo-template/evals/tool-calls/sample-tool-calls.json +12 -0
- package/repo-template/opencode.json.sample +29 -0
- package/repo-template/scripts/harness/backup.mjs +7 -0
- package/repo-template/scripts/harness/doctor.mjs +20 -0
- package/repo-template/scripts/harness/run-evals.mjs +27 -0
- package/repo-template/setup-agent-links.sh +54 -0
- package/scripts/check-published-release.mjs +127 -0
- package/scripts/check-release-commit.mjs +32 -0
- package/scripts/install.sh +225 -0
- package/scripts/installer-smoke-test.sh +155 -0
- package/scripts/lib/attribution-guard.mjs +59 -0
- package/scripts/registry-smoke-test.sh +149 -0
- package/scripts/smoke-test.sh +197 -0
- package/scripts/ux-smoke-test.sh +140 -0
- package/src/cli.js +625 -0
- package/src/doctor.js +68 -0
- package/src/global/adapter-context.js +27 -0
- package/src/global/adapter-matrix.js +38 -0
- package/src/global/adapters/claude.js +8 -0
- package/src/global/adapters/codex.js +8 -0
- package/src/global/adapters/cursor.js +8 -0
- package/src/global/adapters/opencode.js +8 -0
- package/src/global/agents.js +7 -0
- package/src/global/apply-confirmation.js +62 -0
- package/src/global/backups.js +54 -0
- package/src/global/brand/cli.js +52 -0
- package/src/global/brand/index.js +85 -0
- package/src/global/clack/setup-preview.js +48 -0
- package/src/global/clack/setup-wizard-constants.js +6 -0
- package/src/global/clack/setup-wizard.js +207 -0
- package/src/global/clack/theme.js +145 -0
- package/src/global/component-authoring.js +121 -0
- package/src/global/component-builders.js +43 -0
- package/src/global/component-distribution.js +270 -0
- package/src/global/component-installer.js +106 -0
- package/src/global/component-paths.js +22 -0
- package/src/global/component-registry.js +89 -0
- package/src/global/components/orchestrator.js +14 -0
- package/src/global/components/sdd-core.js +17 -0
- package/src/global/diff.js +233 -0
- package/src/global/drift.js +264 -0
- package/src/global/explain.js +144 -0
- package/src/global/global-cli.js +1145 -0
- package/src/global/global-doctor.js +67 -0
- package/src/global/global-installer.js +284 -0
- package/src/global/history.js +313 -0
- package/src/global/ink/run-setup-ink.js +77 -0
- package/src/global/ink/setup-app.js +278 -0
- package/src/global/ink/setup-routing.js +51 -0
- package/src/global/ink/setup-state.js +180 -0
- package/src/global/ink/terminal.js +13 -0
- package/src/global/json-output.js +22 -0
- package/src/global/load-component-catalog.js +41 -0
- package/src/global/load-workspace-component-catalog.js +123 -0
- package/src/global/managed-body.js +28 -0
- package/src/global/managed-config-adapter.js +134 -0
- package/src/global/managed-section.js +73 -0
- package/src/global/npm-registry.js +25 -0
- package/src/global/paths.js +22 -0
- package/src/global/policy.js +344 -0
- package/src/global/preflight.js +65 -0
- package/src/global/registry.js +79 -0
- package/src/global/report.js +110 -0
- package/src/global/rollback.js +126 -0
- package/src/global/setup.js +284 -0
- package/src/global/state-migration.js +65 -0
- package/src/global/state.js +50 -0
- package/src/global/status.js +94 -0
- package/src/global/sync.js +129 -0
- package/src/global/upgrade.js +145 -0
- package/src/harness-files.js +145 -0
- package/src/harness-updater.js +120 -0
- package/src/hash.js +5 -0
- package/src/manifest.js +36 -0
- package/src/project-detection.js +105 -0
- package/src/template-installer.js +72 -0
- package/src/text-template.js +24 -0
- package/src/workspace-cli.js +115 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# Agent Workflow
|
|
2
|
+
|
|
3
|
+
## Roles
|
|
4
|
+
|
|
5
|
+
| Agente | Cuándo se activa | Responsabilidad |
|
|
6
|
+
|---|---|---|
|
|
7
|
+
| Harness Orchestrator | tareas complejas | Coordina estados |
|
|
8
|
+
| Architect | arquitectura, capas, ADRs | Decide estructura |
|
|
9
|
+
| Debugger | bugs, errores | Diagnóstico con evidencia |
|
|
10
|
+
| Test Engineer | tests, cobertura | Diseña pruebas |
|
|
11
|
+
| Eval Engineer | IA/agentes/prompts | Diseña evals |
|
|
12
|
+
| Context Engineer | memoria/grafo | Administra contexto |
|
|
13
|
+
| Reviewer | antes de merge/commit | Revisión técnica |
|
|
14
|
+
|
|
15
|
+
## Feature
|
|
16
|
+
|
|
17
|
+
```txt
|
|
18
|
+
Harness Orchestrator
|
|
19
|
+
→ Architect
|
|
20
|
+
→ Test Engineer
|
|
21
|
+
→ Eval Engineer si IA
|
|
22
|
+
→ Implementation Agent
|
|
23
|
+
→ Reviewer
|
|
24
|
+
→ Human
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Bug
|
|
28
|
+
|
|
29
|
+
```txt
|
|
30
|
+
Debugger
|
|
31
|
+
→ Test Engineer
|
|
32
|
+
→ Implementation Agent
|
|
33
|
+
→ Reviewer
|
|
34
|
+
→ Human
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
## Handoff
|
|
38
|
+
|
|
39
|
+
Cada agente entrega:
|
|
40
|
+
|
|
41
|
+
- contexto leído
|
|
42
|
+
- archivos analizados
|
|
43
|
+
- decisión tomada
|
|
44
|
+
- riesgos
|
|
45
|
+
- siguiente acción sugerida
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# API
|
|
2
|
+
|
|
3
|
+
## Abstracción detectada
|
|
4
|
+
|
|
5
|
+
- Capa: [API_LAYER]
|
|
6
|
+
- Cliente HTTP: [HTTP_CLIENT]
|
|
7
|
+
- Timeout estándar: 10000ms
|
|
8
|
+
- Manejo de errores: [ERROR_HANDLING]
|
|
9
|
+
|
|
10
|
+
## Endpoints internos
|
|
11
|
+
|
|
12
|
+
[ENDPOINTS_DETECTED]
|
|
13
|
+
|
|
14
|
+
## APIs externas
|
|
15
|
+
|
|
16
|
+
[EXTERNAL_INTEGRATIONS]
|
|
17
|
+
|
|
18
|
+
## Variables de entorno
|
|
19
|
+
|
|
20
|
+
[ENV_VARS_DETECTED]
|
|
21
|
+
|
|
22
|
+
## Reglas
|
|
23
|
+
|
|
24
|
+
- No llamadas directas desde UI si existe capa de servicios.
|
|
25
|
+
- Centralizar errores.
|
|
26
|
+
- Validar request y response.
|
|
27
|
+
- Documentar endpoint nuevo aquí.
|
|
28
|
+
- Integration test para endpoint nuevo.
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# Arquitectura del proyecto
|
|
2
|
+
|
|
3
|
+
## Stack
|
|
4
|
+
|
|
5
|
+
- Lenguaje: [LANGUAGE]
|
|
6
|
+
- Framework: [FRAMEWORK]
|
|
7
|
+
- Package manager: [PACKAGE_MANAGER]
|
|
8
|
+
- Inicializado: [DATE]
|
|
9
|
+
|
|
10
|
+
## Propósito
|
|
11
|
+
|
|
12
|
+
[PROJECT_PURPOSE]
|
|
13
|
+
|
|
14
|
+
## Estructura de carpetas
|
|
15
|
+
|
|
16
|
+
```txt
|
|
17
|
+
[REAL_TREE_MAX_DEPTH_3]
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Patrón de arquitectura
|
|
21
|
+
|
|
22
|
+
- Patrón principal: [ARCHITECTURE_PATTERN]
|
|
23
|
+
- Presentación: [UI_DIRECTORIES]
|
|
24
|
+
- API: [API_DIRECTORIES]
|
|
25
|
+
- Datos: [DATA_DIRECTORIES]
|
|
26
|
+
- Tests: [TEST_DIRECTORIES]
|
|
27
|
+
- Evals: [EVAL_DIRECTORIES]
|
|
28
|
+
|
|
29
|
+
## Decisiones de arquitectura
|
|
30
|
+
|
|
31
|
+
### ADR-001 — Stack inicial detectado
|
|
32
|
+
|
|
33
|
+
**Estado:** aceptado
|
|
34
|
+
**Fecha:** [DATE]
|
|
35
|
+
|
|
36
|
+
#### Contexto
|
|
37
|
+
|
|
38
|
+
El proyecto usa [STACK].
|
|
39
|
+
|
|
40
|
+
#### Decisión
|
|
41
|
+
|
|
42
|
+
Mantener la arquitectura detectada salvo que una spec o ADR proponga cambio.
|
|
43
|
+
|
|
44
|
+
#### Consecuencias
|
|
45
|
+
|
|
46
|
+
Toda nueva capa debe respetar la estructura existente.
|
|
47
|
+
|
|
48
|
+
## Reglas estrictas
|
|
49
|
+
|
|
50
|
+
- No mezclar lógica de negocio con presentación.
|
|
51
|
+
- No introducir dependencias sin ADR o justificación.
|
|
52
|
+
- No crear nuevas capas sin documentarlas.
|
|
53
|
+
- No romper contratos públicos sin migration plan.
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# Context Budget
|
|
2
|
+
|
|
3
|
+
## Objetivo
|
|
4
|
+
|
|
5
|
+
Evitar que los agentes carguen documentación innecesaria.
|
|
6
|
+
|
|
7
|
+
## Siempre leer
|
|
8
|
+
|
|
9
|
+
```txt
|
|
10
|
+
AGENTS.md
|
|
11
|
+
docs/ai/harness.md
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Leer por tarea
|
|
15
|
+
|
|
16
|
+
| Tarea | Documentos |
|
|
17
|
+
|---|---|
|
|
18
|
+
| UI | `docs/ai/ui.md`, `docs/skills/ui-design.md` |
|
|
19
|
+
| API | `docs/ai/api.md`, `docs/skills/api-design.md` |
|
|
20
|
+
| DB | `docs/ai/data.md` si existe |
|
|
21
|
+
| Testing | `docs/ai/testing.md`, `docs/ai/test-driven-development.md` |
|
|
22
|
+
| IA/Evals | `docs/ai/evals.md`, `docs/skills/evals.md` |
|
|
23
|
+
| Arquitectura | `docs/ai/architecture.md`, `docs/skills/architecture.md` |
|
|
24
|
+
| Git/checkpoint | `docs/ai/git-workflow.md`, `docs/skills/git-workflow.md` |
|
|
25
|
+
| Memoria | `docs/ai/memory.md` |
|
|
26
|
+
| Graph | `docs/ai/context-graph.md`, `docs/skills/context-graph.md` |
|
|
27
|
+
| Model selection | `docs/ai/model-policy.md`, `docs/ai/provider-routing.md` |
|
|
28
|
+
| Tool adapter | `docs/ai/tool-adapters.md` |
|
|
29
|
+
|
|
30
|
+
## Reglas
|
|
31
|
+
|
|
32
|
+
- No leer todo si el cambio es trivial.
|
|
33
|
+
- No cargar specs no relacionadas.
|
|
34
|
+
- No cargar archivos grandes sin necesidad.
|
|
35
|
+
- Reportar qué contexto fue usado.
|
|
36
|
+
- Si falta contexto, pedir solo lo mínimo.
|
|
37
|
+
|
|
38
|
+
## Adapter parity context rule
|
|
39
|
+
|
|
40
|
+
Every adapter should use the same context budget.
|
|
41
|
+
|
|
42
|
+
Adapters may load context differently, but should follow:
|
|
43
|
+
|
|
44
|
+
```txt
|
|
45
|
+
Always:
|
|
46
|
+
- AGENTS.md
|
|
47
|
+
- relevant docs/ai file
|
|
48
|
+
|
|
49
|
+
Only when needed:
|
|
50
|
+
- docs/skills
|
|
51
|
+
- docs/specs
|
|
52
|
+
- evals
|
|
53
|
+
- adapter-specific instructions
|
|
54
|
+
```
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Context Graph
|
|
2
|
+
|
|
3
|
+
## Objetivo
|
|
4
|
+
|
|
5
|
+
Mapear arquitectura, módulos, entidades, flujos, tools y riesgos del proyecto usando Graphify, sin que el grafo se convierta en una segunda fuente de verdad.
|
|
6
|
+
|
|
7
|
+
## Qué indexar con Graphify
|
|
8
|
+
|
|
9
|
+
- Carpetas y módulos, y sus límites.
|
|
10
|
+
- Dependencias entre módulos: imports, llamadas, contratos.
|
|
11
|
+
- Entidades de dominio.
|
|
12
|
+
- Endpoints y contratos de API.
|
|
13
|
+
- Componentes UI y su árbol de composición.
|
|
14
|
+
- Herramientas externas, MCPs e integraciones.
|
|
15
|
+
- Agentes, skills y comandos definidos en el repo.
|
|
16
|
+
- Specs (`docs/specs/`) y su relación con el código que implementan.
|
|
17
|
+
- Tests y evals, y qué código o spec cubren.
|
|
18
|
+
- Decisiones registradas en `docs/ai/decision-log.md`.
|
|
19
|
+
|
|
20
|
+
## Cómo detectar dependencias y riesgos
|
|
21
|
+
|
|
22
|
+
Señales a las que prestar atención en el grafo:
|
|
23
|
+
|
|
24
|
+
| Señal | Riesgo | Acción |
|
|
25
|
+
|---|---|---|
|
|
26
|
+
| Dependencias circulares | Acoplamiento oculto, difícil de testear | Reportar y proponer ruptura del ciclo |
|
|
27
|
+
| Nodo con fan-in muy alto ("god module") | Punto único de fallo, cambios riesgosos | Evaluar split o interfaz más estrecha |
|
|
28
|
+
| Módulo huérfano, sin referencias | Código muerto o documentación desactualizada | Confirmar antes de borrar |
|
|
29
|
+
| Nodo de alta centralidad sin tests/evals | Riesgo de regresión silenciosa | Priorizar cobertura antes de tocarlo |
|
|
30
|
+
| Spec sin código asociado | Trabajo pendiente o spec abandonada | Verificar estado con el humano |
|
|
31
|
+
| Código sin spec ni decisión asociada | Cambio no gobernado por el harness | Retrofit de spec si el cambio es significativo |
|
|
32
|
+
|
|
33
|
+
## Reglas
|
|
34
|
+
|
|
35
|
+
- Cada feature importante debe conectar spec → código → tests/evals → decisión.
|
|
36
|
+
- El grafo se regenera desde código y docs; no se edita el grafo a mano.
|
|
37
|
+
- Si el grafo y el código divergen, investigar el código primero: el grafo puede estar desactualizado.
|
|
38
|
+
- El grafo ayuda a navegar y priorizar; no es fuente de verdad superior al repo.
|
|
39
|
+
- No declarar un riesgo "resuelto" solo porque desapareció del grafo; verificarlo en el código y en los tests.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Convenciones de código
|
|
2
|
+
|
|
3
|
+
## Nombrado
|
|
4
|
+
|
|
5
|
+
- Archivos: [DETECTED]
|
|
6
|
+
- Variables: camelCase
|
|
7
|
+
- Funciones: camelCase
|
|
8
|
+
- Clases/componentes: PascalCase
|
|
9
|
+
- Constantes: UPPER_SNAKE_CASE
|
|
10
|
+
- Tests: [DETECTED]
|
|
11
|
+
|
|
12
|
+
## Imports
|
|
13
|
+
|
|
14
|
+
Orden recomendado:
|
|
15
|
+
|
|
16
|
+
1. Librerías externas
|
|
17
|
+
2. Módulos internos
|
|
18
|
+
3. Tipos
|
|
19
|
+
4. Estilos
|
|
20
|
+
|
|
21
|
+
Alias detectados:
|
|
22
|
+
|
|
23
|
+
```txt
|
|
24
|
+
[ALIASES]
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Reglas
|
|
28
|
+
|
|
29
|
+
- No usar `any` sin comentario justificando.
|
|
30
|
+
- No crear funciones largas sin extraer lógica.
|
|
31
|
+
- No anidar más de 3 niveles sin refactor.
|
|
32
|
+
- No poner lógica de negocio en archivos de presentación.
|
|
33
|
+
- No dejar código muerto, comentado o duplicado.
|
|
34
|
+
- Preferir módulos pequeños, cohesionados y testeables.
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# Enforcement
|
|
2
|
+
|
|
3
|
+
## Objetivo
|
|
4
|
+
|
|
5
|
+
Evitar que el harness sea solo documentación.
|
|
6
|
+
|
|
7
|
+
El harness opera en tres niveles:
|
|
8
|
+
|
|
9
|
+
```txt
|
|
10
|
+
1. Guidance -> AGENTS.md, docs/ai, docs/skills
|
|
11
|
+
2. Constraints -> permissions, hooks, trust policy, model routing
|
|
12
|
+
3. Enforcement -> CI gates, evals, tests, secret scan, dependency review
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Regla central
|
|
16
|
+
|
|
17
|
+
```txt
|
|
18
|
+
If it is important, it must be enforceable.
|
|
19
|
+
If it cannot be enforced, it must be reviewed.
|
|
20
|
+
If it cannot be reviewed, it must not be automated.
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Controles mínimos
|
|
24
|
+
|
|
25
|
+
- lint
|
|
26
|
+
- format check
|
|
27
|
+
- typecheck
|
|
28
|
+
- unit tests
|
|
29
|
+
- integration tests cuando apliquen
|
|
30
|
+
- E2E smoke test cuando aplique
|
|
31
|
+
- AI evals cuando hay comportamiento IA
|
|
32
|
+
- secret scanning
|
|
33
|
+
- dependency review
|
|
34
|
+
- license policy
|
|
35
|
+
- build check
|
|
36
|
+
- checkpoint review antes de merge
|
|
37
|
+
|
|
38
|
+
## Enforcement map
|
|
39
|
+
|
|
40
|
+
| Riesgo | Control |
|
|
41
|
+
|---|---|
|
|
42
|
+
| Código basura | lint, typecheck, tests, review |
|
|
43
|
+
| Scope creep | specs, diff limit, checkpoint |
|
|
44
|
+
| Bugs recurrentes | regression tests obligatorios |
|
|
45
|
+
| IA degradada | evals con baseline |
|
|
46
|
+
| Skill maliciosa | trust policy + allowlist |
|
|
47
|
+
| Secretos | secret scan + pre-commit |
|
|
48
|
+
| Dependencias inseguras | dependency review |
|
|
49
|
+
| Arquitectura degradada | architecture review + ADR |
|
|
50
|
+
| Loops infinitos | loop policy + max attempts |
|
|
51
|
+
| Costos altos | model routing + usage logs |
|
|
52
|
+
|
|
53
|
+
## Spec sizing enforcement
|
|
54
|
+
|
|
55
|
+
Agents must classify spec complexity before implementation.
|
|
56
|
+
|
|
57
|
+
```txt
|
|
58
|
+
basic -> low-risk local task
|
|
59
|
+
standard -> normal feature/change
|
|
60
|
+
complex -> architecture/security/data/AI/infra/cross-system/high-risk
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Hard-trigger work must be complex and cannot proceed as a basic spec.
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Eval Strategy
|
|
2
|
+
|
|
3
|
+
## Tipos de evals
|
|
4
|
+
|
|
5
|
+
```txt
|
|
6
|
+
evals/golden/ -> casos esperados de comportamiento
|
|
7
|
+
evals/tool-calls/ -> tool/function calling correctness
|
|
8
|
+
evals/schema/ -> JSON/schema/output contracts
|
|
9
|
+
evals/regression/ -> bugs o fallos previos
|
|
10
|
+
evals/loop-regression/ -> loops acotados y escalación
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Evals mínimos por proyecto IA
|
|
14
|
+
|
|
15
|
+
- 20-50 golden cases iniciales
|
|
16
|
+
- casos negativos
|
|
17
|
+
- casos de edge behavior
|
|
18
|
+
- casos de tool-calling
|
|
19
|
+
- casos de seguridad/prompt injection básicos
|
|
20
|
+
- casos de regresión por bugfix
|
|
21
|
+
|
|
22
|
+
## Métricas
|
|
23
|
+
|
|
24
|
+
| Métrica | Target |
|
|
25
|
+
|---|---:|
|
|
26
|
+
| schema validity | 100% |
|
|
27
|
+
| critical eval pass rate | 100% |
|
|
28
|
+
| golden eval pass rate | >= 95% |
|
|
29
|
+
| regression eval pass rate | 100% |
|
|
30
|
+
| tool-call correctness | >= 95% |
|
|
31
|
+
| no unsafe action | 100% |
|
|
32
|
+
| no hallucinated tool | 100% |
|
|
33
|
+
|
|
34
|
+
## Release rule
|
|
35
|
+
|
|
36
|
+
No promover cambios IA si:
|
|
37
|
+
|
|
38
|
+
- falla una eval crítica
|
|
39
|
+
- cae el baseline sin justificación
|
|
40
|
+
- no hay dataset suficiente
|
|
41
|
+
- no hay rollback
|
|
42
|
+
- no hay aprobación humana para producción
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# AI Evals
|
|
2
|
+
|
|
3
|
+
## Objetivo
|
|
4
|
+
|
|
5
|
+
Validar comportamiento de IA, agentes, prompts, tool calling, RAG y flujos conversacionales.
|
|
6
|
+
|
|
7
|
+
## Cuándo crear evals
|
|
8
|
+
|
|
9
|
+
- Prompt de producción.
|
|
10
|
+
- Agente conversacional.
|
|
11
|
+
- Tool calling.
|
|
12
|
+
- Clasificación.
|
|
13
|
+
- Generación de contenido.
|
|
14
|
+
- RAG.
|
|
15
|
+
- Workflow multi-step.
|
|
16
|
+
- Cambio de modelo o proveedor.
|
|
17
|
+
- Cambio de memoria/contexto.
|
|
18
|
+
|
|
19
|
+
## Tipos de eval
|
|
20
|
+
|
|
21
|
+
| Tipo | Objetivo |
|
|
22
|
+
|---|---|
|
|
23
|
+
| Golden dataset | Casos esperados conocidos |
|
|
24
|
+
| Prompt regression | Evitar degradación de prompts |
|
|
25
|
+
| Tool-call correctness | Verificar herramienta correcta y argumentos |
|
|
26
|
+
| Schema adherence | Respuesta cumple contrato |
|
|
27
|
+
| Safety checks | Evitar acciones inseguras |
|
|
28
|
+
| Conversation flows | Validar flujos multi-turn |
|
|
29
|
+
| Cost/latency | Controlar costo y tiempo |
|
|
30
|
+
| Hallucination checks | Evitar invenciones |
|
|
31
|
+
|
|
32
|
+
## Estructura
|
|
33
|
+
|
|
34
|
+
```txt
|
|
35
|
+
evals/
|
|
36
|
+
├── golden-datasets/
|
|
37
|
+
├── prompt-regression/
|
|
38
|
+
├── tool-calling/
|
|
39
|
+
└── conversation-flows/
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Regla
|
|
43
|
+
|
|
44
|
+
Si un cambio puede alterar comportamiento IA, debe tener eval o justificación explícita de por qué no aplica.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Git workflow
|
|
2
|
+
|
|
3
|
+
## Pipeline pre-commit
|
|
4
|
+
|
|
5
|
+
1. Diff review.
|
|
6
|
+
2. Secrets check.
|
|
7
|
+
3. Linter: `[LINT_COMMAND]`
|
|
8
|
+
4. Formatter: `[FORMAT_COMMAND]`
|
|
9
|
+
5. Type check: `[TYPE_CHECK_COMMAND]`
|
|
10
|
+
6. Tests: `[TEST_COMMAND]`
|
|
11
|
+
7. Build: `[BUILD_COMMAND]`
|
|
12
|
+
8. Commit conventional.
|
|
13
|
+
|
|
14
|
+
## Conventional Commits
|
|
15
|
+
|
|
16
|
+
```txt
|
|
17
|
+
tipo(scope): descripción en imperativo
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
Tipos:
|
|
21
|
+
|
|
22
|
+
```txt
|
|
23
|
+
feat | fix | test | refactor | docs | chore | perf | ci
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Prohibido commitear
|
|
27
|
+
|
|
28
|
+
- `.env`
|
|
29
|
+
- secrets
|
|
30
|
+
- tokens
|
|
31
|
+
- `console.log`
|
|
32
|
+
- `debugger`
|
|
33
|
+
- código comentado innecesario
|
|
34
|
+
- archivos no relacionados
|
|
35
|
+
- cambios de formato mezclados con lógica sin razón
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# Governance
|
|
2
|
+
|
|
3
|
+
## Objetivo
|
|
4
|
+
|
|
5
|
+
Definir quién manda dentro del sistema agéntico.
|
|
6
|
+
|
|
7
|
+
## Orden de autoridad
|
|
8
|
+
|
|
9
|
+
```txt
|
|
10
|
+
1. Instrucción explícita del usuario en la tarea actual
|
|
11
|
+
2. AGENTS.md
|
|
12
|
+
3. docs/ai/
|
|
13
|
+
4. docs/skills/
|
|
14
|
+
5. docs/specs/
|
|
15
|
+
6. evals/
|
|
16
|
+
7. adapter files
|
|
17
|
+
8. model/provider preferences
|
|
18
|
+
9. previous model outputs
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Principio
|
|
22
|
+
|
|
23
|
+
```txt
|
|
24
|
+
The repo governs.
|
|
25
|
+
Adapters translate.
|
|
26
|
+
Models execute.
|
|
27
|
+
Humans approve impact.
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Ningún adapter gobierna
|
|
31
|
+
|
|
32
|
+
No gobiernan:
|
|
33
|
+
|
|
34
|
+
- `.opencode/`
|
|
35
|
+
- `.cursor/`
|
|
36
|
+
- `.codex/`
|
|
37
|
+
- `.claude/`
|
|
38
|
+
- `.pi/`
|
|
39
|
+
- `.github/`
|
|
40
|
+
- `.gentle-ai/`
|
|
41
|
+
|
|
42
|
+
Todos deben apuntar al core universal.
|
|
43
|
+
|
|
44
|
+
## Decisiones de alto impacto
|
|
45
|
+
|
|
46
|
+
Requieren humano:
|
|
47
|
+
|
|
48
|
+
- cambios de arquitectura
|
|
49
|
+
- auth
|
|
50
|
+
- pagos
|
|
51
|
+
- datos persistentes
|
|
52
|
+
- migraciones destructivas
|
|
53
|
+
- seguridad
|
|
54
|
+
- infraestructura
|
|
55
|
+
- comportamiento IA productivo
|
|
56
|
+
- cambios de costo significativo
|
|
57
|
+
- automatizaciones autónomas
|
|
58
|
+
|
|
59
|
+
## Escalación
|
|
60
|
+
|
|
61
|
+
Si un modelo o adapter intenta aprobar impacto crítico, detener y reportar.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# Agentic Engineering Harness
|
|
2
|
+
|
|
3
|
+
## Objetivo
|
|
4
|
+
|
|
5
|
+
Controlar la ejecución de agentes para que todo cambio sea especificado, probado, validado y revisable.
|
|
6
|
+
|
|
7
|
+
## Modelo operativo
|
|
8
|
+
|
|
9
|
+
```txt
|
|
10
|
+
Input → Spec → Plan → Tests/Evals → Implementation → Validation → Review → Report
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Estados
|
|
14
|
+
|
|
15
|
+
| Estado | Descripción | Salida esperada |
|
|
16
|
+
|---|---|---|
|
|
17
|
+
| INTAKE | Entender petición | Resumen de objetivo |
|
|
18
|
+
| SPEC | Crear/actualizar spec | `.spec.md` |
|
|
19
|
+
| PLAN | Diseñar pasos técnicos | Plan ejecutable |
|
|
20
|
+
| TEST_FIRST | Crear tests/evals fallidos | Falla por razón correcta |
|
|
21
|
+
| IMPLEMENT | Cambiar código | Diff limitado |
|
|
22
|
+
| VALIDATE | Ejecutar pipeline | Lint/type/test/build/evals |
|
|
23
|
+
| REVIEW | Revisión técnica | Issues clasificados |
|
|
24
|
+
| APPROVAL | Esperar humano | Aprobado/cambios |
|
|
25
|
+
| CHECKPOINT | Cierre | Resumen/commit propuesto |
|
|
26
|
+
|
|
27
|
+
## Reglas de transición
|
|
28
|
+
|
|
29
|
+
- No pasar de SPEC a IMPLEMENT sin plan.
|
|
30
|
+
- No pasar de PLAN a IMPLEMENT en bugs sin regression test.
|
|
31
|
+
- No pasar a CHECKPOINT si falla el pipeline.
|
|
32
|
+
- Si falla validación, regresar a IMPLEMENT con evidencia.
|
|
33
|
+
- Si hay cambio arquitectónico, activar Architect.
|
|
34
|
+
- Si hay bug, activar Debugger.
|
|
35
|
+
- Si falta cobertura, activar Test Engineer.
|
|
36
|
+
- Si hay IA, activar Eval Engineer.
|
|
37
|
+
|
|
38
|
+
## Límites
|
|
39
|
+
|
|
40
|
+
El agente debe reportar antes de:
|
|
41
|
+
|
|
42
|
+
- instalar dependencias
|
|
43
|
+
- modificar CI/CD
|
|
44
|
+
- modificar infraestructura
|
|
45
|
+
- tocar `.env`
|
|
46
|
+
- cambiar arquitectura
|
|
47
|
+
- eliminar archivos
|
|
48
|
+
- borrar tests
|
|
49
|
+
- modificar datos persistentes
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Harness Installer CLI
|
|
2
|
+
|
|
3
|
+
## Comandos objetivo
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
harness init --mode minimal|standard|enterprise
|
|
7
|
+
harness sync
|
|
8
|
+
harness doctor
|
|
9
|
+
harness backup
|
|
10
|
+
harness rollback --to <snapshot>
|
|
11
|
+
harness parity-audit
|
|
12
|
+
harness eval init
|
|
13
|
+
harness ci init
|
|
14
|
+
harness trust-policy init
|
|
15
|
+
harness upgrade
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Reglas
|
|
19
|
+
|
|
20
|
+
- dry-run por default en proyectos existentes
|
|
21
|
+
- backup antes de modificar
|
|
22
|
+
- no clobber de archivos existentes
|
|
23
|
+
- merge idempotente
|
|
24
|
+
- preservar cambios del usuario
|
|
25
|
+
- reportar conflictos
|
|
26
|
+
- detectar stack, package manager, test runner y CI existente
|
|
27
|
+
|
|
28
|
+
## Estado
|
|
29
|
+
|
|
30
|
+
```txt
|
|
31
|
+
.harness/state.json
|
|
32
|
+
.harness/snapshots/
|
|
33
|
+
.harness/logs/
|
|
34
|
+
```
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# Loop Observability
|
|
2
|
+
|
|
3
|
+
## Objetivo
|
|
4
|
+
|
|
5
|
+
Registrar la ejecución de loops para auditar costo, calidad, fallos, escalación y aprendizaje.
|
|
6
|
+
|
|
7
|
+
## Eventos mínimos
|
|
8
|
+
|
|
9
|
+
Cada loop debe registrar:
|
|
10
|
+
|
|
11
|
+
```txt
|
|
12
|
+
loop_id
|
|
13
|
+
loop_type
|
|
14
|
+
task/spec
|
|
15
|
+
model/provider
|
|
16
|
+
started_at
|
|
17
|
+
ended_at
|
|
18
|
+
iterations
|
|
19
|
+
files_changed
|
|
20
|
+
tests_run
|
|
21
|
+
evals_run
|
|
22
|
+
failures
|
|
23
|
+
repairs
|
|
24
|
+
escalations
|
|
25
|
+
final_status
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Métricas recomendadas
|
|
29
|
+
|
|
30
|
+
| Métrica | Uso |
|
|
31
|
+
|---|---|
|
|
32
|
+
| iterations_per_task | detectar loops costosos |
|
|
33
|
+
| repair_attempts | detectar fallos recurrentes |
|
|
34
|
+
| test_failures_by_type | priorizar deuda técnica |
|
|
35
|
+
| eval_regressions | detectar degradación IA |
|
|
36
|
+
| model_cost_estimate | controlar gasto |
|
|
37
|
+
| files_changed | detectar scope creep |
|
|
38
|
+
| escalation_rate | medir autonomía segura |
|
|
39
|
+
| rollback_rate | medir calidad del loop |
|
|
40
|
+
|
|
41
|
+
## Logs recomendados
|
|
42
|
+
|
|
43
|
+
```txt
|
|
44
|
+
docs/ai/loop-log.md
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Engram
|
|
48
|
+
|
|
49
|
+
Engram puede indexar resultados de loops, fallos recurrentes, decisiones, aprendizajes y cambios de prompts/evals.
|
|
50
|
+
|
|
51
|
+
## Graphify
|
|
52
|
+
|
|
53
|
+
Graphify puede mapear archivos tocados por loop, módulos afectados, dependencias impactadas y relación spec → code → tests → evals.
|
|
54
|
+
|
|
55
|
+
## Regla
|
|
56
|
+
|
|
57
|
+
La observabilidad del loop no reemplaza tests/evals. Solo ayuda a entender y mejorar el sistema.
|