pub enum Reason {
Show 18 variants
Usage,
TargetNotFound,
ForgeUndetected,
ForgeUnsupported,
PrerequisiteUnmet,
ForgeAuthentication,
ForgePermission,
ForgeRateLimit,
ForgeTemporary,
RemoteConflict,
DestructiveRefusal,
StateDrift,
UnsupportedSchema,
JournalUnavailable,
SubprocessSpawn,
SubprocessFailed,
Io,
Internal,
}Expand description
The closed reason vocabulary, the machine twin of the exit-code matrix.
Many reasons map to one exit code — that is the point: the code carries
the category, the reason carries the instance. Classification is honest
or absent: a failure nothing can classify further stays Reason::Io
or Reason::Internal rather than guessing.
Variants§
Usage
Semantically invalid arguments or names.
TargetNotFound
The named target does not exist or is not usable as a target.
ForgeUndetected
No forge could be detected from the repository’s remote.
ForgeUnsupported
The detected or named forge is not one the binary supports.
PrerequisiteUnmet
A prerequisite probe failed before any side effect.
ForgeAuthentication
The forge CLI is present and not authenticated.
ForgePermission
The forge refused the caller’s permissions.
ForgeRateLimit
The forge rate-limited the call.
ForgeTemporary
The forge failed in a way a retry can cure.
RemoteConflict
The remote state changed under the run.
DestructiveRefusal
The command refused an action it judged destructive.
StateDrift
The state found differs from what would permit the action.
UnsupportedSchema
A record or document declares a schema this binary does not know.
A mutating run could not create its journal.
SubprocessSpawn
A child process could not be spawned.
SubprocessFailed
A child process ran and failed without a finer classification.
Io
Filesystem failure.
Internal
A defect in this binary.