proclive: add process-liveness package
Commit

New leaf package that captures a process's identity (PID + start-time
fingerprint, plus host/boot guards) and reports whether that exact
process is still alive. ResolveOwner walks up the process tree to the
first non-shell, non-entire ancestor (the agent that spawned our hook),
skipping the Go toolchain too so local-dev's go run wrapper isn't
mistaken for the owner; it records no owner at all when the hostname
can't be determined, since a PID is only meaningful on its own machine.
Check returns Alive/Dead/Unknown — Dead on a missing PID, start-time mismatch (PID reuse), or reboot, and Unknown when it can't confirm the host/boot or the platform can't introspect (Windows), so callers fail closed to a timeout rather than trusting a stale PID. darwin records no boot guard: kern.boottime drifts when the wall clock is stepped (NTP), and darwin's absolute P_starttime already distinguishes a reused PID across reboots; Linux uses ticks-since-boot and keeps the boot_id guard.
Stdlib + golang.org/x/sys/unix only, so session/strategy/cli can import it without an import cycle.
Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com Entire-Checkpoint: f6bcea2919b7