package self import "fmt" type AssessmentID string type LearningLedgerEntryID string type AssessmentState string type LearningSignalKind string type DiagnosisClass string type EpistemicStatus string type InterventionClass string type DecisionRegretKind string type CandidateState string const ( SignalVerifiedFailure LearningSignalKind = "VERIFIED_FAILURE" SignalUserCorrection LearningSignalKind = "USER_CORRECTION" SignalRepeatedMistake LearningSignalKind = "REPEATED_KNOWN_MISTAKE" SignalReflexDivergence LearningSignalKind = "REFLEX_DIVERGENCE" SignalSkillFallback LearningSignalKind = "SKILL_FALLBACK" SignalUnexpectedEscalation LearningSignalKind = "UNEXPECTED_ESCALATION" SignalOutcomeMismatch LearningSignalKind = "OUTCOME_MISMATCH" SignalRetryFallback LearningSignalKind = "RETRY_FALLBACK" SignalStaleDependency LearningSignalKind = "STALE_DEPENDENCY" SignalDecisionRegret LearningSignalKind = "DECISION_REGRET" SignalBetterSolution LearningSignalKind = "BETTER_SOLUTION" DiagnosisMemoryMissing DiagnosisClass = "MEMORY_MISSING" DiagnosisMemoryNotRetrieved DiagnosisClass = "MEMORY_NOT_RETRIEVED" DiagnosisWrongScope DiagnosisClass = "WRONG_SCOPE" DiagnosisStaleKnowledge DiagnosisClass = "STALE_KNOWLEDGE" DiagnosisContextSelection DiagnosisClass = "CONTEXT_SELECTION" DiagnosisReasoningFailure DiagnosisClass = "REASONING_FAILURE" DiagnosisSkillFailure DiagnosisClass = "SKILL_FAILURE" DiagnosisReflexFailure DiagnosisClass = "REFLEX_FAILURE" DiagnosisToolFailure DiagnosisClass = "TOOL_FAILURE" DiagnosisProviderFailure DiagnosisClass = "PROVIDER_FAILURE" DiagnosisOutcomeVerificationFailure DiagnosisClass = "OUTCOME_VERIFICATION_FAILURE" DiagnosisRoutingInefficiency DiagnosisClass = "ROUTING_INEFFICIENCY" DiagnosisUnknown DiagnosisClass = "UNKNOWN_CAUSE" EpistemicKnown EpistemicStatus = "KNOWN" EpistemicSupported EpistemicStatus = "SUPPORTED" EpistemicHypothesis EpistemicStatus = "HYPOTHESIS" EpistemicUnknown EpistemicStatus = "UNKNOWN" InterventionConfiguration InterventionClass = "CONFIGURATION" InterventionSkillReview InterventionClass = "SKILL_REVIEW" InterventionReflexReview InterventionClass = "REFLEX_REVIEW" InterventionRoutingReview InterventionClass = "ROUTING_REVIEW" InterventionProviderReview InterventionClass = "PROVIDER_REVIEW" InterventionContextReview InterventionClass = "CONTEXT_REVIEW" RegretUnavailableThen DecisionRegretKind = "INFORMATION_UNAVAILABLE_THEN" RegretAvailableUnused DecisionRegretKind = "INFORMATION_AVAILABLE_UNUSED" RegretIgnoredInContext DecisionRegretKind = "EVIDENCE_IGNORED_IN_CONTEXT" CandidateProposed CandidateState = "PROPOSED" CandidateEvaluating CandidateState = "EVALUATING" CandidateKept CandidateState = "KEPT" CandidateRejected CandidateState = "REJECTED" CandidateRolledBack CandidateState = "ROLLED_BACK" ) const ( AssessmentCandidate AssessmentState = "CANDIDATE" AssessmentConfirmed AssessmentState = "CONFIRMED" AssessmentMonitoring AssessmentState = "MONITORING" AssessmentResolved AssessmentState = "RESOLVED" ) type CompetenceAssessment struct { ID AssessmentID PrincipalID string SubjectRef SemanticReference Revision uint64 ContextMatcher []string QualityMillis int64 ReliabilityMillis int64 ConfidenceMillis int64 EvidenceRefs []SemanticReference LastValidatedAt int64 AssessedAt int64 SupersedesRef *SemanticReference } type WeaknessPattern struct { ID AssessmentID PrincipalID string Revision uint64 PatternKey string ContextMatcher []string FailureMode string DetectionEvidenceRefs []SemanticReference State AssessmentState RecordedAt int64 TaskPattern string ScopeKey string EnvironmentVersion string DependencyRefs []SemanticReference Frequency int LastObservedAt int64 Severity int AffectedComponent string AffectedStrategy string ConfidenceMillis int64 EpistemicStatus EpistemicStatus } type DependencyAssessment struct { ID AssessmentID SubjectRef SemanticReference DependencyRef SemanticReference ImpactClass string CurrentEffect string EvidenceRefs []SemanticReference AssessedAt int64 } type ImprovementNeed struct { ID AssessmentID PrincipalID string SubjectRef SemanticReference ProblemSummary string EvidenceRefs []SemanticReference ExpectedBenefit string Priority int State string CreatedAt int64 Diagnosis DiagnosisClass DiagnosisStatus EpistemicStatus AffectedComponent string ScopeKey string Risk string Intervention InterventionClass Hypothesis string EvaluationPlan string MustNotWorsen string RollbackPlan string ResourceCost string } type LearningSignal struct { ID string PrincipalID string Kind LearningSignalKind TaskPattern string ScopeKey string SubjectRef SemanticReference EvidenceRefs []SemanticReference ExpectedOutcome string ActualOutcome string DependencyRefs []SemanticReference EnvironmentVersion string ObservedAt int64 Severity int UserImpact int CorrectionCount int DecisionRegret DecisionRegretKind } type Diagnosis struct { Class DiagnosisClass Status EpistemicStatus Rationale string EvidenceRefs []SemanticReference ConfidenceMillis int64 } type ImprovementCandidate struct { ID string PrincipalID string NeedRef SemanticReference Hypothesis string ExpectedEffect string EvaluationPlan string MustNotWorsen []string RollbackPlan string ResourceCost string Creator string IndependentEvaluator string State CandidateState EvidenceRefs []SemanticReference CreatedAt int64 } type ImprovementEvaluation struct { CandidateRef SemanticReference Evaluator string EvidenceRefs []SemanticReference ExpectedQuality int64 ActualQuality int64 ExpectedLatency int64 ActualLatency int64 MustNotWorsenPass bool Decision CandidateState EvaluatedAt int64 } type LearningLedgerEntry struct { ID LearningLedgerEntryID PrincipalID string ImprovementNeedRef *SemanticReference ObservedProblem string EvidenceRefs []SemanticReference Diagnosis string Hypothesis string ProposedChangeRef SemanticReference ExpectedImprovement string ActualEvaluationRefs []SemanticReference DevelopmentGateRef *SemanticReference BeforeVersionRefs []SemanticReference AfterVersionRefs []SemanticReference Decision string SideEffects []string RollbackRef *SemanticReference RecordedAt int64 } func (a CompetenceAssessment) Validate() error { if a.ID == "" || a.PrincipalID == "" || !a.SubjectRef.Valid() || a.Revision < 1 || a.ConfidenceMillis < 0 || a.ConfidenceMillis > 1000 || len(a.EvidenceRefs) == 0 || a.AssessedAt < 1 { return fmt.Errorf("competence requires evidence") } return nil } func (l LearningLedgerEntry) Validate() error { if l.ID == "" || l.PrincipalID == "" || l.ObservedProblem == "" || len(l.EvidenceRefs) == 0 || l.Decision == "" || l.RecordedAt < 1 { return fmt.Errorf("learning ledger entry is incomplete") } return nil } func (s LearningSignal) Validate() error { if s.ID == "" || s.PrincipalID == "" || s.Kind == "" || s.TaskPattern == "" || s.ScopeKey == "" || !s.SubjectRef.Valid() || len(s.EvidenceRefs) == 0 || s.ObservedAt < 1 { return fmt.Errorf("learning signal is incomplete") } return nil } func (d Diagnosis) Validate() error { if d.Class == "" || d.Status == "" || len(d.EvidenceRefs) == 0 || d.ConfidenceMillis < 0 || d.ConfidenceMillis > 1000 { return fmt.Errorf("diagnosis requires bounded evidence") } return nil } func (c ImprovementCandidate) Validate() error { if c.ID == "" || c.PrincipalID == "" || !c.NeedRef.Valid() || c.Hypothesis == "" || c.ExpectedEffect == "" || c.EvaluationPlan == "" || c.MustNotWorsen == nil || c.RollbackPlan == "" || c.Creator == "" || c.IndependentEvaluator == "" || c.Creator == c.IndependentEvaluator || len(c.EvidenceRefs) == 0 || c.CreatedAt < 1 { return fmt.Errorf("candidate lacks independent bounded evaluation") } return nil }