chore: auto-commit (8 archivos)
- .claude/rules/registry_calls.md - apps/dag_engine/README.md - apps/dag_engine/app.md - docs/capabilities/INDEX.md - docs/capabilities/systemd.md - docs/execution_standard.md - dev/proposals_e2e_checks_0121/ - docs/capabilities/backends.md Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
# app_id: deploy_server
|
||||
# lang: go (CGO, sin fts5)
|
||||
# stack: net/http + go-sqlite3 (CGO) + multi-strategy deployer (systemd/systemd-remote/docker-compose)
|
||||
# deteccion automatica fn-recopilador 2026-05-19, issue 0121a
|
||||
#
|
||||
# Notas de deteccion:
|
||||
# - go.mod usa github.com/mattn/go-sqlite3 (CGO=1) pero NO usa fts5 tags
|
||||
# - sin *_test.go en el directorio -> check tests OMITIDO
|
||||
# - server.go confirma: --port flag con default 9090, GET /api/health handler
|
||||
# - puerto e2e: 9190 (+100 sobre puerto productivo 9090)
|
||||
# - operations.db presente con tablas propias (deploy_targets, deploy_logs) -> ops_audit incluido
|
||||
# - BD e2e en /tmp/ para idempotencia; binario en /tmp/ para no contaminar el directorio de la app
|
||||
|
||||
e2e_checks:
|
||||
# build: compila el binario con CGO habilitado. Sin -tags fts5 (no lo usa el modulo).
|
||||
# Valida que el modulo go-sqlite3 linkea correctamente en el entorno local.
|
||||
- id: build
|
||||
cmd: "cd /home/lucas/fn_registry/apps/deploy_server && CGO_ENABLED=1 go build -o /tmp/deploy_server_e2e_bin ."
|
||||
timeout_s: 180
|
||||
|
||||
# cli_help: verifica que el binario arranca y responde sin crashear ni pedir args obligatorios.
|
||||
# Captura el caso de init() con side effects o missing assets.
|
||||
- id: cli_help
|
||||
cmd: "/tmp/deploy_server_e2e_bin help"
|
||||
expect_exit: 0
|
||||
expect_stdout_contains: "deploy_server"
|
||||
timeout_s: 10
|
||||
|
||||
# migrations: arranca el servidor con la BD de prueba y lo cierra inmediatamente.
|
||||
# El servidor abre la BD al arrancar y aplica migraciones automaticamente (sqlite_apply_migrations).
|
||||
# Usamos --port 0 no esta soportado (flag es int sin port-0), asi que usamos puerto alto efimero.
|
||||
# Tras el health check, el proceso se mata automaticamente por fn-analizador.
|
||||
- id: smoke
|
||||
cmd: "/tmp/deploy_server_e2e_bin serve --port 9190 --db /tmp/deploy_server_e2e.db &"
|
||||
health: "http://127.0.0.1:9190/api/health"
|
||||
timeout_s: 15
|
||||
|
||||
# ops_audit: fn-recopilador audita operations.db de la app.
|
||||
# Verifica integridad referencial, schema completo, ausencia de datos corruptos.
|
||||
# La BD tiene tablas propias (deploy_targets, deploy_logs) + tablas del ciclo reactivo.
|
||||
- id: ops_audit
|
||||
ref: "fn-recopilador:apps/deploy_server"
|
||||
severity: warning
|
||||
Reference in New Issue
Block a user