--- id: "0127" title: "docker_tui: go.work con path absoluto rompe portabilidad" status: pendiente type: bugfix domain: - apps-infra - dev-ux scope: app priority: media depends: [] blocks: [] related: - "0121a" created: 2026-05-19 updated: 2026-05-19 tags: [docker_tui, go.work, portability, devfactory] --- # 0127 — docker_tui go.work path absoluto Origen: detectado lateral por `fn-recopilador design-e2e apps/docker_tui` en 0121a. ## Problema `apps/docker_tui/go.work` declara: ``` replace github.com/lucasdataproyects/devfactory => /home/lucas/.local_agentes/backend ``` Path absoluto especifico de la maquina del autor. En otra maquina (PC secundario, CI, otro user) → `go build` falla con "directory does not exist". Hace la app no portable y bloquea cualquier `e2e_check` automatizado fuera del PC original. ## Decision Opciones (decidir al implementar): 1. **Publicar `devfactory` en Gitea** (`dataforge/devfactory` o repo privado) y eliminar el replace. Mas trabajo pero solucion definitiva. 2. **GOFLAGS condicional**: documentar que el replace solo activa si la env var `DEVFACTORY_LOCAL_PATH` esta seteada (custom shell wrapper que genera `go.work` on-demand). Pragmatic pero fragil. 3. **Vendoring**: `go mod vendor` y commitear `vendor/`. Aumenta tamano del repo. 4. **Replace por path relativo** si devfactory vive como sub-repo del registry (no es el caso hoy). Recomendado: opcion 1 (publicar) si devfactory es estable; opcion 2 si esta en desarrollo activo y queda local. ## Tareas 1. Decidir opcion (consultar a humano). 2. Si opcion 1: crear repo `dataforge/devfactory`, publicar codigo, actualizar `go.work` con import path Gitea + cleanup del replace. 3. Si opcion 2: implementar wrapper + documentar en `app.md`. 4. Verificar build en PC distinto al original. 5. Actualizar propuesta 0121a `docker_tui.yaml` promoviendo check `build` de warning a critical. ## Acceptance - [ ] `cd apps/docker_tui && go build` exit 0 en cualquier maquina sin paths absolutos custom. - [ ] `e2e_checks` del 0121a actualizado. - [ ] Documentado en `app.md` (build prerequisites). ## DoD - **Donde**: build limpio en PC secundario (aurgi-pc, home-wsl, otro). - **Latencia**: pnpm/go install al primer build. - **Onboarding**: "Para clonar y compilar docker_tui en PC nuevo, basta `go build`. Si necesitas devfactory local, ver `app.md`."