appcore-supervisor 1.0.1-rc.8

Dependency-aware managed-service supervision contracts for AppCore Runtime
Documentation
  • Coverage
  • 100%
    167 out of 167 items documented0 out of 0 items with examples
  • Size
  • Source code size: 109.42 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 2.21 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 2s Average build duration of successful builds.
  • all releases: 2s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Homepage
  • dnettoRaw/appcore-wiki
    1 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • dnettoRaw

appcore-supervisor

appcore-supervisor owns dependency-aware lifecycle management for Runtime services. It provides ManagedService, qualified dependencies, activation and runtime states, RestartPolicy, bounded budgets and queue, a fixed restart executor, lifecycle events, shutdown deadlines, SupervisorWatchdog, diagnostics, and adapters for threads and embedded resources.

It supervises Scheduler, Peer RPC, Control Plane, Jobs, Update, Auth Server, Metrics, Observation, Sync, and other infrastructure services through generic contracts. It never supervises or replaces the operating-system process. A service manager such as systemd, launchd, Windows Service Control Manager, or a container orchestrator remains responsible for the process.

Reconcile never sleeps or performs restart inline. Services with an insufficient dependency become Degraded without spending restart budget. An orphaned thread is quarantined and cannot be replaced in-process. Exhausting the restart budget also requires operator action.

Adapter callbacks and restart workers convert panics into failed lifecycle outcomes, and deadline arithmetic is checked. Shutdown remains cooperative: an arbitrary callback that ignores cancellation cannot be forcibly stopped safely inside the process.

appcore-ops::service_supervisor contains deprecated aliases only. New code imports this crate directly.