7913116a8e
- .claude/agents/fn-analizador/SKILL.md - .claude/agents/fn-constructor/SKILL.md - .claude/agents/fn-executor/SKILL.md - .claude/agents/fn-mejorador/SKILL.md - .claude/agents/fn-orquestador/SKILL.md - .claude/agents/fn-recopilador/SKILL.md - .claude/commands/app.md - .claude/commands/compile.md - .claude/commands/cpp-app.md - .claude/commands/create_functions.md - ... Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
3.1 KiB
3.1 KiB
name, kind, lang, domain, version, purity, signature, description, tags, uses_functions, uses_types, returns, returns_optional, error_type, imports, tested, tests, test_file_path, file_path, params, output
| name | kind | lang | domain | version | purity | signature | description | tags | uses_functions | uses_types | returns | returns_optional | error_type | imports | tested | tests | test_file_path | file_path | params | output | |||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| proposal_from_failure | function | go | infra | 1.0.0 | impure | func ProposalFromFailure(registryDB string, appID string, results []CheckResult, executionID string) ([]string, error) | Crea una fila en la tabla proposals de registry.db por cada CheckResult con Status=fail. Usa kind=new_function para fallos criticos y kind=improve_function para warnings. Retorna los IDs de proposals creados. Parte del bucle reactivo: conecta los resultados de e2e_run_checks con la etapa MEJORAR. |
|
|
|
false | error_go_core |
|
true |
|
functions/infra/proposal_from_failure_test.go | functions/infra/proposal_from_failure.go |
|
Lista de IDs de proposals creados (formato 'prop_<16hexchars>'). Error si no se puede abrir la BD o falla algun INSERT. |
Ejemplo
results, _ := infra.E2ERunChecks(checks, "/opt/apps/myapp")
propIDs, err := infra.ProposalFromFailure(
"$HOME/fn_registry/registry.db",
"my_app",
results,
"exec_20260509_001",
)
// propIDs = ["prop_a1b2c3d4e5f6a7b8", ...]
// Cada ID insertado en proposals con status=pending, created_by=reactive_loop
Mapeo de severity a kind de proposal
| Severity del check | kind en proposals |
|---|---|
critical |
new_function (proxy de mayor urgencia) |
warning |
improve_function |
Nota de diseno: el schema de proposals limita kind a
(new_function, new_type, improve_function, improve_type, new_pipeline).
No existe bug ni optimization. Se usan new_function e improve_function
como proxies hasta que se extienda el schema con un migration.
Para un futuro migration: ALTER TABLE proposals ADD COLUMN ... o
añadir bug y optimization al CHECK constraint en migrations/NNN_add_bug_kind.sql.
Notas
La funcion abre y cierra la conexion a registry.db en cada llamada. Para uso frecuente
dentro de una sesion larga, considerar pasar una *sql.DB abierta como variante futura.
El campo evidence de la proposal contiene JSON con:
{check_id, execution_id, exit_code, error, severity} para debugging posterior.