diff --git a/docs/CHALLENGES.md b/docs/CHALLENGES.md index 97335a5..5e0313f 100644 --- a/docs/CHALLENGES.md +++ b/docs/CHALLENGES.md @@ -8540,7 +8540,8 @@ trace and a speech listen too: a trace was lost at session end with no word. A recording and a trace leave audio's note (280), so a later status or stop names the cause instead of "nothing is recording": another client's quit, `daemon stop`, -a driver switch, a shutdown. +a driver switch, a shutdown. `clean-stop.sh` counted the new notes as a daemon left +running until it learned them too, as it had to for audio's. **Measured:** with a running recording, all five clients on the Android 15 emulator; Python, exit without quit and a trace on the iOS 26.5 simulator. pytest diff --git a/docs/checks/clean-stop.sh b/docs/checks/clean-stop.sh index c4c42e9..e2d3083 100755 --- a/docs/checks/clean-stop.sh +++ b/docs/checks/clean-stop.sh @@ -282,10 +282,11 @@ if [ -d "$state/daemon" ]; then # it waits for the next status or stop to report it (CHALLENGES 280). # Counted as one, it made this check fail with nothing running, and # --quit could not clear it. CHALLENGES 285. - n=$(ls -A "$state/daemon" 2>/dev/null | grep -v '^audio-.*\.json$' | wc -l | tr -d ' ') + notes='^(audio|recording|trace)-.*\.json$' + n=$(ls -A "$state/daemon" 2>/dev/null | grep -Ev "$notes" | wc -l | tr -d ' ') [ "$n" = "0" ] && note "daemon socket/pid" "cleared" || bad "daemon socket/pid" "$n file(s) left" - lost=$(ls -A "$state/daemon" 2>/dev/null | grep -c '^audio-.*\.json$') - [ "$lost" = "0" ] || note "lost audio captures" "$lost noted, for the next status or stop to report" + lost=$(ls -A "$state/daemon" 2>/dev/null | grep -Ec "$notes") + [ "$lost" = "0" ] || note "lost captures" "$lost noted, for the next status or stop to report" fi echo