- RunOptions.Timeout: auto-kills after duration (SIGTERM → SIGKILL)
- RunOptions.GracePeriod: time between SIGTERM and SIGKILL
- RunOptions.KillGroup: kills entire process group (child processes too)
- Process.Shutdown(): graceful SIGTERM → wait → SIGKILL
- OnShutdown uses Shutdown() instead of Kill() for graceful stops
- Runner circular deps now count as Failed, not Skipped
- Tests for all new features
Co-Authored-By: Virgil <virgil@lethean.io>
Local variable `core` shadowed the package import `core`, causing
`core.ServiceFor` to be interpreted as a method call instead of a
package-level function. Aliased import as `framework`.
Also fixes pre-existing compilation failure in go-process test suite.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Process management with Core IPC integration, output streaming via
ring buffer, exec wrapper with logging, and dependency-aware runner.
Moved from forge.lthn.ai/core/go/pkg/process to standalone module.
Co-Authored-By: Virgil <virgil@lethean.io>