package capability import ( "git.cin.su/m/Assistant/contracts/identity" "git.cin.su/m/Assistant/platform/ids" ) type CapabilityImplementationID ids.ID type CapabilityResolutionID ids.ID type CapabilityGapID ids.ID type CapabilityUsageObservationID ids.ID type SkillProfileID ids.ID type SkillEvidenceRef string type RequirementRef string type OriginalIntentRef string type SourceUtteranceRef string type ImplementationKind string type ImplementationTargetRef string type AuthorityPolicyRef string type DataConstraint string type CapabilityResolutionStatus string type GapReason string type AcquisitionStrategyKind string type UsageOutcomeClass string type SkillLifecycleStatus string type FastPathDecisionState string type FastPathDeclineReason string const ( ImplementationInternalFunction ImplementationKind = "INTERNAL_FUNCTION" ImplementationCognitiveBinding ImplementationKind = "COGNITIVE_BINDING" ImplementationExternalAdapter ImplementationKind = "EXTERNAL_ADAPTER" ImplementationAgent ImplementationKind = "AGENT" AuthorityPolicyCreatorDirectiveV1 AuthorityPolicyRef = "creator-directive-v1" AuthorityPolicyCognitiveGatewayV1 AuthorityPolicyRef = "cognitive-gateway-v1" DataConstraintLocalOnly DataConstraint = "LOCAL_ONLY" DataConstraintExternalAllowed DataConstraint = "EXTERNAL_ALLOWED" DataConstraintNoCredentialForward DataConstraint = "NO_CREDENTIAL_FORWARD" ResolutionAvailable CapabilityResolutionStatus = "AVAILABLE" ResolutionPartiallyAvailable CapabilityResolutionStatus = "PARTIALLY_AVAILABLE" ResolutionUnavailable CapabilityResolutionStatus = "UNAVAILABLE" ResolutionUnknown CapabilityResolutionStatus = "UNKNOWN" GapNoImplementation GapReason = "NO_IMPLEMENTATION" GapUnhealthy GapReason = "UNHEALTHY" GapInactive GapReason = "INACTIVE" GapUnqualified GapReason = "UNQUALIFIED" GapUnauthorized GapReason = "UNAUTHORIZED" GapIncompatible GapReason = "INCOMPATIBLE" GapUnknown GapReason = "UNKNOWN" AcquireUseAlternative AcquisitionStrategyKind = "USE_ALTERNATIVE" AcquireDiscoverExisting AcquisitionStrategyKind = "DISCOVER_EXISTING" AcquireConnectExisting AcquisitionStrategyKind = "CONNECT_EXISTING" AcquireConfigureExisting AcquisitionStrategyKind = "CONFIGURE_EXISTING" AcquireExternal AcquisitionStrategyKind = "ACQUIRE_EXTERNAL" AcquireBuildNew AcquisitionStrategyKind = "BUILD_NEW" AcquireRequestUserInput AcquisitionStrategyKind = "REQUEST_USER_INPUT" AcquireUnresolvableCurrently AcquisitionStrategyKind = "UNRESOLVABLE_CURRENTLY" UsageSucceeded UsageOutcomeClass = "SUCCEEDED" UsageFailed UsageOutcomeClass = "FAILED" UsageSkipped UsageOutcomeClass = "SKIPPED" UsageUnknown UsageOutcomeClass = "UNKNOWN" SkillCandidate SkillLifecycleStatus = "CANDIDATE" SkillEvaluating SkillLifecycleStatus = "EVALUATING" SkillValidated SkillLifecycleStatus = "VALIDATED" SkillDegraded SkillLifecycleStatus = "DEGRADED" SkillSuspended SkillLifecycleStatus = "SUSPENDED" SkillRetired SkillLifecycleStatus = "RETIRED" FastPathApplied FastPathDecisionState = "APPLIED" FastPathDeclined FastPathDecisionState = "DECLINED" FastPathEscalate FastPathDecisionState = "ESCALATE_TO_THINK" FastPathNotApplicable FastPathDeclineReason = "NOT_APPLICABLE" FastPathLowConfidence FastPathDeclineReason = "LOW_CONFIDENCE" FastPathOutOfDistribution FastPathDeclineReason = "OUT_OF_DISTRIBUTION" FastPathConflict FastPathDeclineReason = "CONFLICT" FastPathStale FastPathDeclineReason = "STALE" FastPathImplementationDown FastPathDeclineReason = "IMPLEMENTATION_UNAVAILABLE" ) // CapabilityDescriptor names what Domovoy can obtain or do. CapabilityKind is // intentionally extensible string semantics, not a closed-world enum. type CapabilityDescriptor struct { ID CapabilityID Kind CapabilityKind DisplayName string Description string Revision int64 RecordedAtUnixMillis int64 } // CapabilityImplementation is the generic implementation/binding layer. It // may point at a cognitive binding, internal function, agent, adapter or later // provider type. CredentialRef is metadata only and never grants authority. type CapabilityImplementation struct { ID CapabilityImplementationID CapabilityID CapabilityID CapabilityKind CapabilityKind OwnerPrincipalID identity.PrincipalID Revision int64 Kind ImplementationKind TargetRef ImplementationTargetRef CredentialRef CredentialRef Qualification QualificationState Activation ActivationState Health HealthState AuthorityPolicyRef AuthorityPolicyRef DataConstraints []DataConstraint CostScoreMillis *int64 LatencyScoreMillis *int64 ReliabilityMillis *int64 ObservedAtUnixMillis int64 } type CapabilityResolutionRequirement struct { RequirementID RequirementRef CapabilityKind CapabilityKind CapabilityID CapabilityID OwnerPrincipalID identity.PrincipalID ActorID identity.ActorID OriginalIntentID OriginalIntentRef SourceUtteranceID SourceUtteranceRef RequiredConstraints []DataConstraint AllowCanary bool AuthorityContextRef AuthorityPolicyRef ObservedAtUnixMillis int64 } type ResolvedCapabilityImplementation struct { Implementation CapabilityImplementation Selected bool Rank int } type CapabilityResolution struct { ID CapabilityResolutionID Requirement CapabilityResolutionRequirement Status CapabilityResolutionStatus Eligible []ResolvedCapabilityImplementation ExcludedReasons map[CapabilityImplementationID]GapReason Gap *CapabilityGap ObservedAtUnixMillis int64 } type CapabilityGap struct { ID CapabilityGapID RequirementID RequirementRef CapabilityKind CapabilityKind CapabilityID CapabilityID OwnerPrincipalID identity.PrincipalID OriginalIntentID OriginalIntentRef SourceUtteranceID SourceUtteranceRef Reason GapReason Detail string Strategies []AcquisitionStrategyCandidate RecordedAtUnixMillis int64 } type AcquisitionStrategyCandidate struct { Kind AcquisitionStrategyKind Reason string } type CapabilityUsageObservation struct { ID CapabilityUsageObservationID ImplementationID CapabilityImplementationID ImplementationRevision int64 CapabilityID CapabilityID CapabilityKind CapabilityKind OwnerPrincipalID identity.PrincipalID OriginalIntentID OriginalIntentRef SourceUtteranceID SourceUtteranceRef Outcome UsageOutcomeClass OutcomeRef string LatencyMillis *int64 ObservedAtUnixMillis int64 } // SkillProfile describes a reusable approach/pattern/capability composition. // It is derived from evidence and is never authority by itself. type SkillProfile struct { ID SkillProfileID Revision int64 Name string Description string ApplicableContext []string ImplementationRef string ImplementationVersion string Status SkillLifecycleStatus SupportingExperienceRefs []SkillEvidenceRef KnownFailureExperienceRefs []SkillEvidenceRef ConfidenceMillis int64 LastValidatedUnixMillis int64 ObservedFailureCount int64 ObservedCorrectionCount int64 RecordedAtUnixMillis int64 } type SkillOutcomeObservation struct { ExperienceRef SkillEvidenceRef Outcome UsageOutcomeClass UserCorrected bool ObservedAtUnixMillis int64 } // FastPathDecision is an explicit optimization decision. Decline/escalation is // successful safety behavior, not a failure to answer. type FastPathDecision struct { SkillProfileID SkillProfileID Decision FastPathDecisionState DeclineReason FastPathDeclineReason RequiresCognition bool Explanation string ObservedAtUnixMillis int64 }