TaskActionStatus
This class defines the observed state of a TaskAction. It includes fields for tracking the serialized node status, plugin state and its version, plugin phase and its version, and the number of attempts. Additionally, it records system failures, cache status, and a history of phase transitions, along with any structured error states.
Attributes
| Attribute | Type | Description |
|---|---|---|
| StateJSON | string | StateJSON is the JSON serialized NodeStatus that was last sent to the State Service |
| PluginState | []byte | PluginState is the Gob-encoded plugin state from the last reconciliation round. |
| PluginStateVersion | uint8 | PluginStateVersion tracks the version of the plugin state schema for compatibility. |
| PluginPhase | string | PluginPhase is a human-readable representation of the plugin's current phase. |
| PluginPhaseVersion | uint32 | PluginPhaseVersion is the version of the current plugin phase. |
| Attempts | uint32 | Attempts is the latest observed action attempt number, starting from 1. |
| SystemFailures | uint32 | SystemFailures counts system-level failures observed during reconciliation — either Go errors returned from Plugin.Handle (e.g. transient k8s API errors, admission webhook denials) or plugin transitions reporting a system-retryable failure (e.g. resource deleted externally). When it exceeds the configured maximum, the TaskAction is converted to a permanent failure. |
| CacheStatus | core.CatalogCacheStatus | CacheStatus is the latest observed cache lookup result for this action. |
| Conditions | []metav1.Condition | conditions represent the current state of the TaskAction resource. Each condition has a unique type and reflects the status of a specific aspect of the resource. Standard condition types include: - "Available": the resource is fully functional - "Progressing": the resource is being created or updated - "Degraded": the resource failed to reach or maintain its desired state The status of each condition is one of True, False, or Unknown. |
| PhaseHistory | []PhaseTransition | PhaseHistory is an append-only log of phase transitions. Unlike conditions (which are updated in-place by type), this preserves the full timeline: Queued → Initializing → Executing → Succeeded/Failed, each with a timestamp. |
| ErrorState | *ErrorState | ErrorState is the structured error from the last failed/aborted attempt. Populated when the plugin returns a core.ExecutionError; preserves the Code field that ActionEvent.ErrorInfo cannot carry. |