package capability import ( "git.cin.su/m/Assistant/contracts/identity" "git.cin.su/m/Assistant/platform/ids" ) type CapabilityID ids.ID type CapabilityBindingID ids.ID type CapabilityKind string type BindingState string type BindingProtocol string const ( BindingActive BindingState = "ACTIVE" BindingRetired BindingState = "RETIRED" ProtocolIdempotentReceiptV1 BindingProtocol = "IDEMPOTENT_RECEIPT_V1" CapabilityKindReadEmail CapabilityKind = "READ_EMAIL" CapabilityKindSendEmail CapabilityKind = "SEND_EMAIL" CapabilityKindReadDatabase CapabilityKind = "READ_DATABASE" CapabilityKindQueryLogs CapabilityKind = "QUERY_LOGS" CapabilityKindInspectProject CapabilityKind = "INSPECT_PROJECT" CapabilityKindModifyCode CapabilityKind = "MODIFY_CODE" CapabilityKindRunTests CapabilityKind = "RUN_TESTS" CapabilityKindWebResearch CapabilityKind = "WEB_RESEARCH" CapabilityKindCognitiveReasoning CapabilityKind = "COGNITIVE_REASONING" CapabilityKindScheduleReminder CapabilityKind = "SCHEDULE_REMINDER" CapabilityKindVerifyFact CapabilityKind = "VERIFY_FACT" CapabilityKindSpeechToText CapabilityKind = "SPEECH_TO_TEXT" CapabilityKindImageUnderstanding CapabilityKind = "IMAGE_UNDERSTANDING" CapabilityKindOCR CapabilityKind = "OCR" CapabilityKindVideoUnderstanding CapabilityKind = "VIDEO_UNDERSTANDING" CapabilityKindImageGeneration CapabilityKind = "IMAGE_GENERATION" CapabilityKindVideoGeneration CapabilityKind = "VIDEO_GENERATION" ) // Binding is Capability-owned correctness state. SecretRef is an opaque // lookup name; it must never contain credential bytes. type Binding struct { ID CapabilityBindingID CapabilityID CapabilityID OwnerPrincipalID identity.PrincipalID Revision int64 State BindingState HTTPSOrigin string DeliveryPath string ReceiptPath string Protocol BindingProtocol SecretRef string VerifiedAtUnixMillis int64 Health HealthState } type HealthState string const ( HealthUnknown HealthState = "UNKNOWN" 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 }