se divide pipeline.py en módulos (adjuntos, documentos, persistencia, draft_sap, notificaciones)

Las funciones anidadas de _procesar_un_correo pasan a funciones de módulo
con parámetros explícitos; pipeline.py queda solo como orquestador.
copiar_a_red lee las variables de entorno al ejecutarse. Se actualizan docs.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
GeorgeandClaude Sonnet 5.5 committed 2026-10-20 22:03:38 -05:00
1 parent ee64e5f773
commit 7d2f3212c0
9 files changed
+1309 -1228

No files matched your search

+15
View File
@@ -0,0 +1,15 @@
"""Utilidades compartidas por los módulos del pipeline."""
import os
def ruta_carpeta(subcarpeta: str) -> str:
"""Retorna la ruta absoluta de ``subcarpeta`` relativa a la raíz del proyecto."""
return os.path.join(os.path.dirname(__file__), subcarpeta)
def log(msg: str, level: int = 1, last: bool = False) -> None:
"""Imprime ``msg`` con la indentación de árbol usada en el log del pipeline."""
branch = " └── " if last else " ├── "
pfx = {1: branch, 2: f" │ {branch}", 3: f" │ │ {branch}", 4: f" │ │ │ {branch}"}.get(level, branch)
print(f"{pfx}{msg}")