--- name: pipeline_launcher kind: pipeline lang: go domain: infra version: "1.0.0" purity: impure signature: "func main() — TUI fullscreen para lanzar pipelines y registrar ejecuciones" description: "TUI interactiva que lista pipelines del registry, permite lanzarlos como subprocesos y registra cada ejecución en operations.db. Dos tabs: Pipelines (filtro + launch) y History (historial)." tags: [tui, pipeline, infra, operations, bubbletea, devfactory] uses_functions: - docker_tui_go_infra uses_types: - base_model_go_tui - filtered_list_model_go_tui - spinner_model_go_tui - styles_go_tui returns: [] returns_optional: false error_type: "error_go_core" imports: - github.com/charmbracelet/bubbletea - github.com/lucasdataproyects/devfactory - fn-registry/registry - fn-registry/fn_operations tested: false tests: [] test_file_path: "" file_path: "apps/pipeline_launcher/main.go" --- ## Ejemplo ```bash FN_REGISTRY_ROOT=/home/lucas/fn_registry go run apps/pipeline_launcher/main.go ``` ## Notas TUI con dos tabs: - **Pipelines**: lista filtrable de todos los pipelines del registry. Enter lanza el pipeline seleccionado como subproceso (`go run .`), muestra spinner durante la ejecución, y al terminar muestra stdout/stderr y registra la ejecución en operations.db. - **History**: historial de ejecuciones pasadas con status, duración y timestamp. Enter muestra detalle completo. Teclas: Tab/Shift+Tab cambia vista, Enter ejecuta acción, r refresca, / filtra, j/k scroll, Esc vuelve. Requiere `FN_REGISTRY_ROOT` apuntando a la raíz del fn-registry para encontrar registry.db y los file_path de los pipelines.