Process detection fails in containers due to missing privileged tools
(ss -p requires root, lsof often not installed). HTTP health endpoint
is the reliable indicator of service health, so port/process checks
are now informational only.
The scripts were hardcoded to look for OpenSMTPD at a custom workspace
path, but the Dockerfile installs it via apt to /usr/sbin/smtpd. This
change adds fallback logic to check multiple locations:
1. Custom workspace path (for backward compatibility)
2. System path /usr/sbin/smtpd
3. Anywhere in PATH
Also adds graceful handling when OpenSMTPD is not installed, logging
an informative message instead of failing with "No such file or directory".