Files
Assistant/contracts/capability/types.go
T
2026-08-16 15:22:49 +03:00

40 lines
958 B
Go

package capability
import "git.cin.su/m/Assistant/platform/ids"
type CapabilityID ids.ID
type CapabilityBindingID ids.ID
type HealthState string
const (
HealthAvailable HealthState = "AVAILABLE"
HealthDegraded HealthState = "DEGRADED"
HealthUnavailable HealthState = "UNAVAILABLE"
)
type HealthReason string
const (
ReasonCognitiveProvidersUnavailable HealthReason = "COGNITIVE_PROVIDERS_UNAVAILABLE"
ReasonNone HealthReason = "NONE"
)
type HealthSemanticVersion int
const (
HealthV1 HealthSemanticVersion = 1
HealthV2 HealthSemanticVersion = 2
)
// Health is the Capability owner's current, explicit statement about whether
// a capability can be used. It is not an authority grant.
type Health struct {
CapabilityID CapabilityID
State HealthState
Reason HealthReason
Revision int64
SemanticVersion HealthSemanticVersion
ObservedAtUnixMillis *int64
}