980f8807a9
Origen: fn-recopilador design-e2e descubrio 6 bugs durante el design
de propuestas e2e_checks. Agrupados en 4 issues:
- 0124 EPIC dag_engine cleanup (registry.db huerfana + Mantine drift
+ --migrate-only flag — 3 sub-tareas)
- 0125 deploy_server: anadir --db a cmdServe
- 0126 pipeline_launcher: aplicar migracion 003_logs
- 0127 docker_tui: go.work path absoluto rompe portabilidad
Todos relacionados con 0121a. Pueden ser candidatos a /autonomous-task
o /autopilot dependiendo del scope.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
54 lines
2.1 KiB
Markdown
54 lines
2.1 KiB
Markdown
---
|
|
id: "0126"
|
|
title: "pipeline_launcher: aplicar migracion 003_logs a operations.db"
|
|
status: pendiente
|
|
type: bugfix
|
|
domain:
|
|
- apps-infra
|
|
scope: app
|
|
priority: baja
|
|
depends: []
|
|
blocks: []
|
|
related:
|
|
- "0121a"
|
|
created: 2026-05-19
|
|
updated: 2026-05-19
|
|
tags: [pipeline_launcher, migrations, db]
|
|
---
|
|
|
|
# 0126 — pipeline_launcher migracion 003_logs
|
|
|
|
Origen: detectado lateral por `fn-recopilador design-e2e apps/pipeline_launcher` en 0121a.
|
|
|
|
## Problema
|
|
|
|
`apps/pipeline_launcher/operations.db` tiene migraciones 001+002 aplicadas pero falta 003_logs (definida en `fn_operations/migrations/003_logs.sql`). La tabla `logs` no existe → cualquier feature futuro de logging in-app falla silencioso.
|
|
|
|
Investigacion necesaria: por que no aplico? Probable que pipeline_launcher use version vieja del codigo `fn_operations` o tenga su propio applier que no lee la migracion 003.
|
|
|
|
## Decision
|
|
|
|
1. Diagnosticar por que 003 no aplico (busca `applyMigrations` en codigo de pipeline_launcher o si usa la libreria `fn_operations`).
|
|
2. Aplicar 003 a la BD existente preservando datos.
|
|
3. Si pipeline_launcher tiene applier custom, hacerlo consumir las migraciones del registry padre via `embed.FS`.
|
|
|
|
## Tareas
|
|
|
|
1. Inspeccionar `apps/pipeline_launcher/{main.go, db.go, store.go}` para localizar applier.
|
|
2. Aplicar `003_logs.sql` manualmente: `sqlite3 apps/pipeline_launcher/operations.db < fn_operations/migrations/003_logs.sql`.
|
|
3. Si custom applier: refactor para consumir migraciones del padre.
|
|
4. Verificar con `PRAGMA table_info(logs);` que la tabla existe.
|
|
5. Actualizar propuesta 0121a `pipeline_launcher.yaml` removiendo check `ops_schema_complete` (ya no aplica).
|
|
|
|
## Acceptance
|
|
|
|
- [ ] `sqlite3 apps/pipeline_launcher/operations.db "PRAGMA table_info(logs);"` devuelve columnas esperadas.
|
|
- [ ] Reaplicar 003 sobre BD ya migrada NO falla (idempotente — `CREATE TABLE IF NOT EXISTS`).
|
|
- [ ] Tests de pipeline_launcher pasan (si existen).
|
|
|
|
## DoD
|
|
|
|
- **Donde**: sqlite3 introspeccion + log de la app si tiene.
|
|
- **Latencia**: invisible al usuario.
|
|
- **Onboarding**: "Si una app tiene operations.db, las migraciones del registry padre se aplican al arrancar — verificar con `PRAGMA table_info`."
|