--- name: id: NNNN status: pending created: YYYY-MM-DD updated: YYYY-MM-DD priority: medium # low | medium | high risk: low # low | medium | high (sensibilidad datos) related_issues: [] apps: [] # apps tocadas — usadas por /flow list --app projects: [] # projects relacionados vaults: [] # vaults sink/source capability_groups: [] # extractor, transformer, sink, navegator, ... trigger: manual # manual | cron | webhook schedule: "" # cron expr si trigger=cron expected_runtime_s: 60 tags: [] --- ## Goal Una frase: que prueba este flow del sistema multi-app. ## Pre-requisitos - Lista de cosas manuales/externas que deben estar listas antes (Chrome logueado, vault montado, service corriendo, token en `pass`, ...). ## Funciones del registry recomendadas Tabla rol -> funcion candidata (ver `AGENT_GUIDE.md` para discovery). Si falta una pieza: marca `FALTA: crear ` con prompt sugerido para fn-constructor. | Rol | Funcion candidata | Estado | |---|---|---| | Extractor | `` | OK / FALTA | | Validator | `` | OK / FALTA | | Transformer | `` | OK / FALTA | | Sink | `` | OK / FALTA | | Scheduler | DAG `.yaml` / webhook / manual | OK / FALTA | | Notify | `` | OK / FALTA | ## Apps tocadas - `` (rol en el flow) ## Projects relacionados - `` (razon) ## Vaults / storage - `` (origin / sink) ## Capability groups consultados - `` (ver `docs/capabilities/.md`) ## Flow Pasos numerados. Cada paso puede ser: - texto libre (manual) - `function: ` (registry function) - `cmd: ` - `js: ` (en tab Chrome) - `dag: ` (DAG en `apps/dag_engine/dags_migrated/`) 1. Paso 1. 2. Paso 2. ## Acceptance - [ ] Criterio 1. - [ ] Criterio 2. ## Definition of Done Contrato global de cierre. TODOS marcados antes de mover a `completed/`. Ver README.md seccion "Definition of Done". - [ ] **Repetibilidad**: corre 3 veces consecutivas sin intervencion manual. - [ ] **Observabilidad**: trazado en `call_monitor.calls` + `data_factory.runs` + dashboard relevante. - [ ] **Error-path**: >=1 modo de fallo probado y manejado. - [ ] **Idempotencia**: re-ejecucion no duplica ni corrompe sinks. - [ ] **Secrets**: cero credenciales fuera de `pass`/vaults; risk declarado coincide con datos reales. - [ ] **Docs**: `## Notas` con hallazgos + comandos reproducibles. - [ ] **Registry-first**: piezas reutilizables viven como funciones del registry. - [ ] **INDEX + status**: `status: done` + `INDEX.md` actualizado + movido a `completed/`. ### User-facing (obligatorio) - [ ] **User-facing**: . - [ ] **User-facing repeat**: humano vuelve manana al mismo lugar, ve datos frescos sin conocer el flow. - [ ] **User-facing onboarding**: parrafo en `## Notas` explica "para ver/usar esto: hacer X" sin leer el flow. - [ ] **User-facing latencia**: humano percibe el cambio en tras el evento (X declarado). ### Custom (opcional, dominio-especifico) - [ ] _(custom)_ . ## Telemetria esperada - `call_monitor.calls`: que aparece. - `data_factory.runs`: que aparece. - `.operations.db`: que aparece. - Matrix / email / dashboard: que aparece visible. ## Riesgos / gotchas - Lista de cosas que pueden romperse y como detectarlas. ## Notas (rellenas tras correr o tras hallazgos)