Skip to content

fix: hardening del engine y limites de tamano tras auditoria de seguridad - #1

Merged
mateopavoni merged 3 commits into
mainfrom
fix/audit-hardening-runner-limits
Aug 10, 2026
Merged

mateopavoni merged 3 commits into
mainfrom
fix/audit-hardening-runner-limits

Conversation

@mateopavoni

Copy link
Copy Markdown
Owner

Resumen

  • Corridas ya no pueden ser garbage-collected a mitad de ejecucion (task sin referencia viva).
  • Salida de un nodo transform que sea literalmente {"error": ...} ya no se clasifica como failed.
  • Nodo delay rechaza segundos negativos, clampea el maximo a 5 minutos.
  • Graph/WorkflowIn con limites de tamano (nodos/edges/config/nombre) -> 422.
  • El except Exception: pass del loop de streaming del WS ahora loguea antes de continuar.
  • Fixture de test resetea tambien _guest_limiter entre tests.

Plan de test

  • pytest -q -> 118/118 (111 previos + 7 nuevos, cubriendo cada fix)

…aph size limits, silent WS errors, guest limiter test leak

- task_manager: corridas ya no pueden ser garbage-collected a mitad de ejecucion
  (asyncio.Task sin referencia viva era candidato a GC segun el contrato de asyncio).
- runner/scheduler: un nodo transform cuya salida es literalmente {"error": ...}
  ya no se clasifica como failed (nueva marca namespaced en vez de chequear la forma
  del dict de salida del usuario).
- executors: el nodo delay rechaza segundos negativos y clampea el maximo a 5 minutos
  (antes sin limite, un delay gigante bloqueaba la tarea indefinidamente).
- schemas: Graph/WorkflowIn ahora tienen limites de tamano (nodos/edges/config/nombre)
  -> 422 en vez de aceptar un grafo arbitrariamente grande.
- ws routes: el except Exception: pass del loop de streaming ahora loguea antes de
  seguir, en vez de tragarse el error en silencio.
- conftest: el fixture de test ahora resetea tambien _guest_limiter entre tests.

pytest: 118/118 (111 + 7 nuevos).
@mateopavoni
mateopavoni merged commit ba04dbe into main Aug 10, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant