From 856b2180b3f7fdabfcfc758ec5ae5915641948fe Mon Sep 17 00:00:00 2001 From: Nubenetes Bot Date: Thu, 21 May 2026 16:28:46 +0200 Subject: [PATCH] fix: harden logging infrastructure to prevent duplicate logs - Implemented manual sys.stdout.flush() in log_event. - Enabled flush=True for all print statements in the logger. - Set PYTHONUNBUFFERED: '1' in the V2 Builder workflow environment. - These changes ensure immediate log delivery and reduce GHA agent stuttering. --- .github/workflows/agentic_v2_builder.yml | 1 + src/logger.py | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/agentic_v2_builder.yml b/.github/workflows/agentic_v2_builder.yml index f3918219..f9cac374 100644 --- a/.github/workflows/agentic_v2_builder.yml +++ b/.github/workflows/agentic_v2_builder.yml @@ -74,6 +74,7 @@ jobs: FORCE_EVAL: ${{ github.event.inputs.force_reevaluate || 'false' }} ENRICH_METADATA: ${{ github.event.inputs.enrich_metadata || 'false' }} PYTHONPATH: . + PYTHONUNBUFFERED: "1" run: | python -u src/v2_optimizer.py if [ -f v2_safety_report.md ]; then diff --git a/src/logger.py b/src/logger.py index 74a99ba5..8b3d14d0 100644 --- a/src/logger.py +++ b/src/logger.py @@ -1,4 +1,5 @@ import os +import sys from datetime import datetime # Ruta por defecto para el log local (fuera del repo) @@ -14,11 +15,14 @@ def log_event(message: str, section_break: bool = False): if section_break: separator = "=" * 60 - print(f"\n{separator}\n{formatted_msg}\n{separator}") + print(f"\n{separator}\n{formatted_msg}\n{separator}", flush=True) _write_to_file(f"\n{separator}\n{formatted_msg}\n{separator}") else: - print(formatted_msg) + print(formatted_msg, flush=True) _write_to_file(formatted_msg) + + # Mandate 13: Ensure immediate visibility and prevent GHA agent stuttering + sys.stdout.flush() def _write_to_file(message: str): # Only try to write to file if not in GitHub Actions