feat: Phase 1 acteur — pré/post vérification titre fenêtre

Pré-vérification : avant chaque clic, vérifie que le titre de la
fenêtre active correspond à celui de l'enregistrement. Stop si mismatch.

Post-vérification : après chaque clic, vérifie que le titre a changé
vers expected_window_title (titre du prochain clic). Warning si mismatch.

expected_window_title enrichi dans build_replay depuis la séquence des clics.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Dom
2026-04-05 00:09:08 +02:00
parent d6c7346898
commit a1c97504ab
2 changed files with 163 additions and 38 deletions

View File

@@ -1408,6 +1408,17 @@ def build_replay_from_raw_events(
if session_dir_path:
_attach_expected_screenshots(result, events, session_dir_path)
# ── 9. Enrichir avec expected_window_title (titre fenêtre attendu après le clic) ──
# Pour la vérification post-action : le titre de la fenêtre APRÈS le clic
# est le window_title du PROCHAIN clic dans la séquence.
click_indices = [i for i, a in enumerate(result) if a.get("type") == "click"]
for j, ci in enumerate(click_indices):
if j + 1 < len(click_indices):
next_ci = click_indices[j + 1]
next_title = result[next_ci].get("target_spec", {}).get("window_title", "")
if next_title:
result[ci]["expected_window_title"] = next_title
# Stats visual replay
visual_clicks = sum(
1 for a in result