Appendix 4.B Wire Vocabulary

Every enumerated value that appears on the control channel. All are lower snake case. A manager MUST NOT emit a value outside these sets without the version negotiation in §4.21, and a client MUST treat one it does not recognise as an error for that request rather than mapping it onto a value it knows.

4.B.1 Response status #

ok, error

4.B.2 Service state #

ValueProcess?Satisfies dependents?
inactiveNoNo
startingMaybeNo
activeYesYes
reloadingYesYes
stoppingBrieflyNo
completedNoYes
backoffNoNo
failedNoNo
abandonedYes, unkillablyNo
skippedNoYes

Exactly three states satisfy dependents: active, completed and skipped. A client deciding whether something depending on this service could be running MUST use that set and no other.

4.B.3 Transition cause #

explicit_start, dependency_start, restart_policy, binds_to_recovery, timer, explicit_stop, explicit_reload, explicit_reset, conflict_eviction, binds_to_propagation, shutdown_wave, process_crash, clean_exit, clean_exit_restart, readiness_timeout, watchdog_timeout, health_check_failure, pre_hook_failure, parent_setup_failure, pre_exec_failure, dependency_failure, restart_budget_exhausted, cycle_detected, validation_error, assertion_error, condition_skipped, process_unkillable

A cause may also be null, for a service that has not transitioned.

4.B.4 Service health #

healthy, unhealthy, unknown

health is null when the service has no health check configured, which is distinct from unknown — the latter means one is configured and has not produced a result yet.

4.B.5 Job type #

service_main, pre_exec_hook, post_exec_hook, reload_hook, health_check, ad_hoc

Only service_main appears in current_job.

4.B.6 Operation type #

start, stop, restart, reload, reset

4.B.7 Operation state #

ValueTerminal?Meaning
pendingNoQueued, not yet executing.
runningNoExecuting.
completedYesReached its goal.
failedYesDid not reach its goal, or expired while queued.
mergedYesMerged into another operation.
cancelledYesTerminated while pending. Never executed.
abortedYesTerminated while running.

4.B.8 Operation source #

admin, boot, shutdown, dependency_propagation, restart_policy, timer, binds_to_recovery, binds_to_propagation, conflict_resolution, on_failure

admin is the only source a client's own command produces. The rest describe operations the manager created for its own reasons, and a client observing one has learned something about what the manager is doing rather than about anything it asked for.

4.B.9 Reload mode #

confirmed, advisory, failed

4.B.10 Status warning type #

service_tree, health, hooks

These name what part of a service's process containment could not be reclaimed, service_tree being the whole of it and therefore the most serious. A client MUST accept a value outside this set and MUST NOT discard the warning (§4.21).

4.B.11 Shutdown type #

poweroff, reboot, halt

Request-only; the manager does not echo it.

Edit this page