From 95bba92064813d4b1cd1849b5e24ea5e8c54fc89 Mon Sep 17 00:00:00 2001 From: JavaZeroo <71128095+JavaZeroo@users.noreply.github.com> Date: Sat, 31 Oct 2026 17:57:57 +0800 Subject: [PATCH] diag(shell): record the first desktop check on success too refs #160 Every run now carries a desktop_close_settle sample; previously only failing runs did, which made absence of data ambiguous. --- experiments/shell/run.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/experiments/shell/run.py b/experiments/shell/run.py index dc054577..72a49bb8 100644 --- a/experiments/shell/run.py +++ b/experiments/shell/run.py @@ -425,10 +425,14 @@ def close(self, record=None): self.handle = None gone = desktop_gone(self.name) if gone or record is None: + # #160: record the first check even on success so every run carries a + # sample instead of only the failing ones. + if record is not None: + record["desktop_close_settle"] = [{"elapsed_ms": 0, "gone": gone}] return gone # A desktop handle outlives its owner only while some child still holds # one; settle briefly and keep the attempts so a failure shows whether the - # desktop was still held or never closed. Nothing is added on success. + # desktop was still held or never closed. attempts = [{"elapsed_ms": 0, "gone": False}] began = time.monotonic() for _ in range(10): @@ -437,8 +441,7 @@ def close(self, record=None): attempts.append({"elapsed_ms": int((time.monotonic() - began) * 1000), "gone": gone}) if gone: break - if not gone: - record["desktop_close_settle"] = attempts + record["desktop_close_settle"] = attempts return gone