v3.8.96 - AI DevOps Framework
Fixed
- Pulse-wrapper Linux false-positive in is-running short-circuit (#20611): replaced the
pgrep | grepis-running check (introduced in v3.8.95 via #20584/GH#20579) with a PID-file based check that uses the sameLOCKDIR/pidprimitiveacquire_instance_lockwrites, plus POSIXkill -0for liveness. The previous implementation had a 100% Linux false-positive rate caused by bash$()subshell argv inheritance — pgrep matched its own transient subshell PIDs thatgrep -v "^$$\$"couldn't filter. macOS doesn't expose argv this way for transient subshells, which is why the bug was Linux-only and missed in original testing. Includes 8-test regression suite (3 structural pinning the fix shape + 5 behavioural including the canonical sibling-argv scenario).
Notes
If you saw repeated [pulse-wrapper] Pulse already running (PID: NNNN), skipping messages on Linux in v3.8.95 with no actual pulse running, this release fixes that. The pulse will now correctly distinguish "already running" from "phantom subshell argv" cross-platform.