From 7e0b55d2825811127782e97aea590dfc6e5bfc9c Mon Sep 17 00:00:00 2001 From: Egutierrez Date: Sat, 2 May 2026 16:15:28 +0200 Subject: [PATCH] docs(issues): marcar 0033 fase A como completada Co-Authored-By: Claude Opus 4.7 (1M context) --- ...33-multilang-dispatcher-embedded-python.md | 27 +++++++++++-------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/issues/0033-multilang-dispatcher-embedded-python.md b/issues/0033-multilang-dispatcher-embedded-python.md index bed63a9..26c487d 100644 --- a/issues/0033-multilang-dispatcher-embedded-python.md +++ b/issues/0033-multilang-dispatcher-embedded-python.md @@ -188,19 +188,24 @@ y `jobs.cpp`. ## Plan de implementacion -### Fase A — dispatcher multi-lang sin runtime embebido (1-2 sesiones) +### Fase A — dispatcher multi-lang sin runtime embebido (COMPLETADA) -1. Extender `EnricherSpec` con `lang`, `exec_basename`. -2. `parse_manifest` lee `lang` (default `"python"`) y `exec` +1. ✅ Extender `EnricherSpec` con `lang`, `exec_basename`, + `disabled`, `disabled_reason`. +2. ✅ `parse_manifest` lee `lang` (default `"python"`) y `exec` (default `"run"`). -3. `enrichers_load` resuelve `run_path` segun lang + plataforma. Si - un enricher `lang: go` no tiene su binario compilado, queda - deshabilitado con warning. -4. `run_subprocess` ramifica el `argv` por lang. -5. Tests pytest del dispatcher: un enricher dummy en bash y otro - en python con manifests distintos, verificar que ambos lanzan. -6. **No cambiamos los 5 enrichers existentes.** Siguen `lang: python` - y siguen funcionando. Solo el dispatcher se vuelve poliglota. +3. ✅ `enrichers_load` resuelve `run_path` segun lang + plataforma + via `resolve_run_path`. Enrichers Go sin binario quedan + `disabled` con razon visible y se ocultan del menu. +4. ✅ `run_subprocess` (POSIX y Windows) ramifica `argv` por lang. +5. ✅ Tests pytest del dispatcher: 6 tests nuevos en + `tests/test_dispatcher_lang.py` (default lang, bash wire + protocol, regresion de enricher real, etc.). 22/22 verde + incluyendo los 16 originales. +6. ✅ Los 5 enrichers existentes funcionan sin cambios — heredan + `lang: python` por default. + +Implementado en commit `fce3f97` (rama `issue/0033a-multilang-dispatcher`). ### Fase B — runtime Python embebido (1-2 sesiones)