fix(harvest): runlock stale-PID cleanup misparsed lock filename
Lock files are port-<port>.<pid>.lock (two dots); ${f##*.} yielded the
literal 'lock' instead of the PID, so the liveness check always failed
and ANY exiting harvest deleted sibling LIVE locks — with all locks gone
the last exiter then quit the site-shared browser out from under a
still-running sibling harvest (nikkei-world 09:24 exit killed the
browser mid nikkei-markets run; earlier 05:00 run likely degraded the
same way until the 60min watchdog TERM'd it at exit=143).
Parse correctly: basename minus .lock suffix, then last dot-segment.
Self-test: live lock survives, dead-PID lock cleaned.
Showing
Please register or sign in to comment