fix(agent_v1): assainissement PII des logs client a la source (push-log-DGX, brique 4)
Remplace dans les logs/print le contenu utilisateur brut par un equivalent PII-safe via core/log_safe : titres de fenetre -> _title_hash, reponses VLM -> [len,has_target], metadonnees -> _sanitize_metadata, chemins -> _path_ext, workflow_name -> _title_hash. 8 fichiers (executor, recovery, captor, streamer, main, capture_server, activity_panel, window_info_crossplatform). Audit Qwen complete : ~17 fuites de titre multi-lignes + 2e fuite VLM (print) non listees ont ete traitees ; localisation par contenu (refs Qwen derivees). Preserve volontairement : prompts de grounding VLM (vlm_description) ou le titre est load-bearing (resolution 100% vision) -> ne PAS hasher. Differe : window_focus_change (verdict apprentissage). En attente arbitrage Dom : button_text (~11 captions), patterns, champs detail. py_compile 8/8 OK, imports OK, helper 6/6 vert. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -29,6 +29,8 @@ from dataclasses import dataclass, field
|
||||
from enum import Enum
|
||||
from typing import Optional
|
||||
|
||||
from ..core.log_safe import _title_hash
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
@@ -132,7 +134,7 @@ class ActivityPanel:
|
||||
)
|
||||
self._notifier_changement()
|
||||
self._rafraichir_ui()
|
||||
logger.info(f"[ACTIVITY] Workflow démarré : {nom} ({nb_etapes} étapes)")
|
||||
logger.info(f"[ACTIVITY] Workflow démarré : [wf_hash={_title_hash(nom)}] ({nb_etapes} étapes)")
|
||||
|
||||
def mettre_a_jour(
|
||||
self,
|
||||
|
||||
Reference in New Issue
Block a user