// Code generated by tools/schemagen. DO NOT EDIT. // Source: schemas/. Regenerate with `make generate`. package contract type FluidHypothesisAudit struct { DecisionRefs []DecisionID `json:"decision_refs,omitempty" yaml:"decision_refs,omitempty"` ImmutableEventRefs []EventID `json:"immutable_event_refs,omitempty" yaml:"immutable_event_refs,omitempty"` } type FluidHypothesisBackendRequirements struct { Required bool `json:"required" yaml:"required"` RequirementRefs []BackendRequirementID `json:"requirement_refs,omitempty" yaml:"requirement_refs,omitempty"` } // Competing hypotheses are legitimate (FluidAPIStandards.md section 19). type FluidHypothesisCompetition struct { Alternatives []HypothesisID `json:"alternatives,omitempty" yaml:"alternatives,omitempty"` GroupID string `json:"group_id" yaml:"group_id"` } type FluidHypothesisComplexity struct { ExpectedDelta ComplexityDelta `json:"expected_delta" yaml:"expected_delta"` Score *float64 `json:"score,omitempty" yaml:"score,omitempty"` } type FluidHypothesisEconomicsExpectedValueClass string const ( FluidHypothesisEconomicsExpectedValueClassLOW FluidHypothesisEconomicsExpectedValueClass = "LOW" FluidHypothesisEconomicsExpectedValueClassMEDIUM FluidHypothesisEconomicsExpectedValueClass = "MEDIUM" FluidHypothesisEconomicsExpectedValueClassHIGH FluidHypothesisEconomicsExpectedValueClass = "HIGH" ) // Valid reports whether v is a defined FluidHypothesisEconomicsExpectedValueClass. func (v FluidHypothesisEconomicsExpectedValueClass) Valid() bool { switch v { case FluidHypothesisEconomicsExpectedValueClassLOW, FluidHypothesisEconomicsExpectedValueClassMEDIUM, FluidHypothesisEconomicsExpectedValueClassHIGH: return true } return false } // A hypothesis may be valuable but not yet worth exploring // (ArchitectureBlueprint.md section 29). type FluidHypothesisEconomics struct { Currency string `json:"currency,omitempty" yaml:"currency,omitempty"` EstimatedExperimentCost *float64 `json:"estimated_experiment_cost,omitempty" yaml:"estimated_experiment_cost,omitempty"` EstimatedImplementationCost *float64 `json:"estimated_implementation_cost,omitempty" yaml:"estimated_implementation_cost,omitempty"` ExpectedValueClass *FluidHypothesisEconomicsExpectedValueClass `json:"expected_value_class,omitempty" yaml:"expected_value_class,omitempty"` } // Explanatory reach is a prioritization signal, never a correctness claim // (FluidAPIStandards.md section 18). type FluidHypothesisExplanationReach struct { Explains []PressureID `json:"explains,omitempty" yaml:"explains,omitempty"` Notes string `json:"notes,omitempty" yaml:"notes,omitempty"` Score *float64 `json:"score,omitempty" yaml:"score,omitempty"` } // What we think explains the observation. type FluidHypothesisExplanation struct { Claim string `json:"claim" yaml:"claim"` // Explanatory reach is a prioritization signal, never a correctness claim // (FluidAPIStandards.md section 18). Reach *FluidHypothesisExplanationReach `json:"reach,omitempty" yaml:"reach,omitempty"` } type FluidHypothesisFailureCriteria struct { Expression string `json:"expression" yaml:"expression"` } type FluidHypothesisFitnessDimensions struct { Expected *FitnessDimensions `json:"expected,omitempty" yaml:"expected,omitempty"` } type FluidHypothesisLearningValue struct { Notes string `json:"notes,omitempty" yaml:"notes,omitempty"` Score *float64 `json:"score,omitempty" yaml:"score,omitempty"` } // What was seen. Not what it means. type FluidHypothesisObservation struct { AffectedCohorts []CohortID `json:"affected_cohorts,omitempty" yaml:"affected_cohorts,omitempty"` EvidenceRefs []EvidenceRef `json:"evidence_refs" yaml:"evidence_refs"` ObservationWindow *ObservationWindow `json:"observation_window,omitempty" yaml:"observation_window,omitempty"` Summary string `json:"summary" yaml:"summary"` } type FluidHypothesisOutcomeStatus string const ( FluidHypothesisOutcomeStatusCONFIRMED FluidHypothesisOutcomeStatus = "CONFIRMED" FluidHypothesisOutcomeStatusREFUTED FluidHypothesisOutcomeStatus = "REFUTED" FluidHypothesisOutcomeStatusINCONCLUSIVE FluidHypothesisOutcomeStatus = "INCONCLUSIVE" ) // Valid reports whether v is a defined FluidHypothesisOutcomeStatus. func (v FluidHypothesisOutcomeStatus) Valid() bool { switch v { case FluidHypothesisOutcomeStatusCONFIRMED, FluidHypothesisOutcomeStatusREFUTED, FluidHypothesisOutcomeStatusINCONCLUSIVE: return true } return false } // What happened afterwards. Null until evaluation completes. type FluidHypothesisOutcome struct { EvidenceRefs []EvidenceRef `json:"evidence_refs,omitempty" yaml:"evidence_refs,omitempty"` Status *FluidHypothesisOutcomeStatus `json:"status,omitempty" yaml:"status,omitempty"` Summary *string `json:"summary,omitempty" yaml:"summary,omitempty"` } type FluidHypothesisPressure struct { Classes []PressureClass `json:"classes" yaml:"classes"` Confidence *UnitInterval `json:"confidence,omitempty" yaml:"confidence,omitempty"` PressureRefs []PressureID `json:"pressure_refs,omitempty" yaml:"pressure_refs,omitempty"` Severity *UnitInterval `json:"severity,omitempty" yaml:"severity,omitempty"` } type FluidHypothesisPriority struct { DecidedBy string `json:"decided_by,omitempty" yaml:"decided_by,omitempty"` Score *float64 `json:"score,omitempty" yaml:"score,omitempty"` } type FluidHypothesisProposedAdaptationImplementationScope string const ( FluidHypothesisProposedAdaptationImplementationScopeInterfaceOnly FluidHypothesisProposedAdaptationImplementationScope = "interface_only" FluidHypothesisProposedAdaptationImplementationScopeInterfaceAndBackend FluidHypothesisProposedAdaptationImplementationScope = "interface_and_backend" FluidHypothesisProposedAdaptationImplementationScopeDocumentationOnly FluidHypothesisProposedAdaptationImplementationScope = "documentation_only" ) // Valid reports whether v is a defined FluidHypothesisProposedAdaptationImplementationScope. func (v FluidHypothesisProposedAdaptationImplementationScope) Valid() bool { switch v { case FluidHypothesisProposedAdaptationImplementationScopeInterfaceOnly, FluidHypothesisProposedAdaptationImplementationScopeInterfaceAndBackend, FluidHypothesisProposedAdaptationImplementationScopeDocumentationOnly: return true } return false } // What we propose to change. type FluidHypothesisProposedAdaptation struct { // Shape is protocol-specific and deliberately unconstrained. CandidateContract map[string]any `json:"candidate_contract,omitempty" yaml:"candidate_contract,omitempty"` Class AdaptationClass `json:"class" yaml:"class"` ImplementationScope *FluidHypothesisProposedAdaptationImplementationScope `json:"implementation_scope,omitempty" yaml:"implementation_scope,omitempty"` Summary string `json:"summary" yaml:"summary"` } type FluidHypothesisRiskLevel string const ( FluidHypothesisRiskLevelLOW FluidHypothesisRiskLevel = "LOW" FluidHypothesisRiskLevelMEDIUM FluidHypothesisRiskLevel = "MEDIUM" FluidHypothesisRiskLevelHIGH FluidHypothesisRiskLevel = "HIGH" FluidHypothesisRiskLevelCRITICAL FluidHypothesisRiskLevel = "CRITICAL" ) // Valid reports whether v is a defined FluidHypothesisRiskLevel. func (v FluidHypothesisRiskLevel) Valid() bool { switch v { case FluidHypothesisRiskLevelLOW, FluidHypothesisRiskLevelMEDIUM, FluidHypothesisRiskLevelHIGH, FluidHypothesisRiskLevelCRITICAL: return true } return false } type FluidHypothesisRisk struct { Level FluidHypothesisRiskLevel `json:"level" yaml:"level"` Reasons []string `json:"reasons,omitempty" yaml:"reasons,omitempty"` } type FluidHypothesisState string const ( FluidHypothesisStateDRAFT FluidHypothesisState = "DRAFT" FluidHypothesisStateREADY FluidHypothesisState = "READY" FluidHypothesisStatePRIORITIZED FluidHypothesisState = "PRIORITIZED" FluidHypothesisStateDESIGNING FluidHypothesisState = "DESIGNING" FluidHypothesisStateEXPERIMENTING FluidHypothesisState = "EXPERIMENTING" FluidHypothesisStateEVALUATING FluidHypothesisState = "EVALUATING" FluidHypothesisStateACCEPTED FluidHypothesisState = "ACCEPTED" FluidHypothesisStateREJECTED FluidHypothesisState = "REJECTED" FluidHypothesisStateSUPERSEDED FluidHypothesisState = "SUPERSEDED" FluidHypothesisStateDEFERRED FluidHypothesisState = "DEFERRED" ) // Valid reports whether v is a defined FluidHypothesisState. func (v FluidHypothesisState) Valid() bool { switch v { case FluidHypothesisStateDRAFT, FluidHypothesisStateREADY, FluidHypothesisStatePRIORITIZED, FluidHypothesisStateDESIGNING, FluidHypothesisStateEXPERIMENTING, FluidHypothesisStateEVALUATING, FluidHypothesisStateACCEPTED, FluidHypothesisStateREJECTED, FluidHypothesisStateSUPERSEDED, FluidHypothesisStateDEFERRED: return true } return false } type FluidHypothesisSuccessCriteria struct { Expression string `json:"expression" yaml:"expression"` } type FluidHypothesis struct { Audit *FluidHypothesisAudit `json:"audit,omitempty" yaml:"audit,omitempty"` BackendRequirements *FluidHypothesisBackendRequirements `json:"backend_requirements,omitempty" yaml:"backend_requirements,omitempty"` CandidateRevisionRefs []RevisionID `json:"candidate_revision_refs,omitempty" yaml:"candidate_revision_refs,omitempty"` // Competing hypotheses are legitimate (FluidAPIStandards.md section 19). Competition *FluidHypothesisCompetition `json:"competition,omitempty" yaml:"competition,omitempty"` Complexity FluidHypothesisComplexity `json:"complexity" yaml:"complexity"` CreatedAt *Timestamp `json:"created_at,omitempty" yaml:"created_at,omitempty"` CreatedBy *Actor `json:"created_by,omitempty" yaml:"created_by,omitempty"` // A hypothesis may be valuable but not yet worth exploring // (ArchitectureBlueprint.md section 29). Economics *FluidHypothesisEconomics `json:"economics,omitempty" yaml:"economics,omitempty"` // A hypothesis must be falsifiable (FluidAPIStandards.md section 17). ExpectedOutcomes []ExpectedOutcome `json:"expected_outcomes" yaml:"expected_outcomes"` ExperimentRefs []ExperimentID `json:"experiment_refs,omitempty" yaml:"experiment_refs,omitempty"` // What we think explains the observation. Explanation FluidHypothesisExplanation `json:"explanation" yaml:"explanation"` FailureCriteria *FluidHypothesisFailureCriteria `json:"failure_criteria,omitempty" yaml:"failure_criteria,omitempty"` FitnessDimensions *FluidHypothesisFitnessDimensions `json:"fitness_dimensions,omitempty" yaml:"fitness_dimensions,omitempty"` Guardrails []Guardrail `json:"guardrails" yaml:"guardrails"` ID HypothesisID `json:"id" yaml:"id"` InterfaceID InterfaceID `json:"interface_id" yaml:"interface_id"` LearningValue *FluidHypothesisLearningValue `json:"learning_value,omitempty" yaml:"learning_value,omitempty"` // What was seen. Not what it means. Observation FluidHypothesisObservation `json:"observation" yaml:"observation"` // What happened afterwards. Null until evaluation completes. Outcome *FluidHypothesisOutcome `json:"outcome,omitempty" yaml:"outcome,omitempty"` Pressure FluidHypothesisPressure `json:"pressure" yaml:"pressure"` Priority *FluidHypothesisPriority `json:"priority,omitempty" yaml:"priority,omitempty"` // What we propose to change. ProposedAdaptation FluidHypothesisProposedAdaptation `json:"proposed_adaptation" yaml:"proposed_adaptation"` Risk FluidHypothesisRisk `json:"risk" yaml:"risk"` SchemaVersion SchemaVersion `json:"schema_version" yaml:"schema_version"` State FluidHypothesisState `json:"state" yaml:"state"` SuccessCriteria FluidHypothesisSuccessCriteria `json:"success_criteria" yaml:"success_criteria"` Title string `json:"title" yaml:"title"` } // Why an interface change should be explored. Observation, explanation, prediction, // intervention and result stay separate on purpose // (FluidHypothesisRevisionSchema.md section 18). type HypothesisDocument struct { FluidHypothesis FluidHypothesis `json:"fluid_hypothesis" yaml:"fluid_hypothesis"` }