fluid-core/internal/contract/backend_requirement_gen.go

101 lines
5.5 KiB
Go
Raw Normal View History

// Code generated by tools/schemagen. DO NOT EDIT.
// Source: schemas/. Regenerate with `make generate`.
package contract
type FluidBackendRequirementCapability struct {
Description string `json:"description" yaml:"description"`
Title string `json:"title" yaml:"title"`
}
type FluidBackendRequirementDispositionState string
const (
FluidBackendRequirementDispositionStateOPEN FluidBackendRequirementDispositionState = "OPEN"
FluidBackendRequirementDispositionStateACCEPTED FluidBackendRequirementDispositionState = "ACCEPTED"
FluidBackendRequirementDispositionStatePLANNED FluidBackendRequirementDispositionState = "PLANNED"
FluidBackendRequirementDispositionStateAVAILABLE FluidBackendRequirementDispositionState = "AVAILABLE"
FluidBackendRequirementDispositionStatePARTIALLYAVAILABLE FluidBackendRequirementDispositionState = "PARTIALLY_AVAILABLE"
FluidBackendRequirementDispositionStateOUTOFSCOPE FluidBackendRequirementDispositionState = "OUT_OF_SCOPE"
FluidBackendRequirementDispositionStateREJECTED FluidBackendRequirementDispositionState = "REJECTED"
FluidBackendRequirementDispositionStateSUPERSEDED FluidBackendRequirementDispositionState = "SUPERSEDED"
)
// Valid reports whether v is a defined FluidBackendRequirementDispositionState.
func (v FluidBackendRequirementDispositionState) Valid() bool {
switch v {
case FluidBackendRequirementDispositionStateOPEN, FluidBackendRequirementDispositionStateACCEPTED, FluidBackendRequirementDispositionStatePLANNED, FluidBackendRequirementDispositionStateAVAILABLE, FluidBackendRequirementDispositionStatePARTIALLYAVAILABLE, FluidBackendRequirementDispositionStateOUTOFSCOPE, FluidBackendRequirementDispositionStateREJECTED, FluidBackendRequirementDispositionStateSUPERSEDED:
return true
}
return false
}
// The backend decides. Repeated OUT_OF_SCOPE feeds boundary learning
// (ArchitectureBlueprint.md section 22).
type FluidBackendRequirementDisposition struct {
Reason *string `json:"reason,omitempty" yaml:"reason,omitempty"`
State FluidBackendRequirementDispositionState `json:"state" yaml:"state"`
TargetRef *string `json:"target_ref,omitempty" yaml:"target_ref,omitempty"`
}
type FluidBackendRequirementExpectedUsage struct {
RequestsPerDay *int64 `json:"requests_per_day,omitempty" yaml:"requests_per_day,omitempty"`
}
type FluidBackendRequirementQuality struct {
Availability *UnitInterval `json:"availability,omitempty" yaml:"availability,omitempty"`
P95LatencyMS *float64 `json:"p95_latency_ms,omitempty" yaml:"p95_latency_ms,omitempty"`
}
type FluidBackendRequirementSecurity struct {
AuthorizationScope string `json:"authorization_scope,omitempty" yaml:"authorization_scope,omitempty"`
TenantIsolation string `json:"tenant_isolation,omitempty" yaml:"tenant_isolation,omitempty"`
}
type FluidBackendRequirementSemantics struct {
Consistency string `json:"consistency,omitempty" yaml:"consistency,omitempty"`
RequiredFields []string `json:"required_fields,omitempty" yaml:"required_fields,omitempty"`
}
type FluidBackendRequirementUrgency string
const (
FluidBackendRequirementUrgencyLOW FluidBackendRequirementUrgency = "LOW"
FluidBackendRequirementUrgencyMEDIUM FluidBackendRequirementUrgency = "MEDIUM"
FluidBackendRequirementUrgencyHIGH FluidBackendRequirementUrgency = "HIGH"
)
// Valid reports whether v is a defined FluidBackendRequirementUrgency.
func (v FluidBackendRequirementUrgency) Valid() bool {
switch v {
case FluidBackendRequirementUrgencyLOW, FluidBackendRequirementUrgencyMEDIUM, FluidBackendRequirementUrgencyHIGH:
return true
}
return false
}
type FluidBackendRequirement struct {
BackendService string `json:"backend_service" yaml:"backend_service"`
Capability FluidBackendRequirementCapability `json:"capability" yaml:"capability"`
// The backend decides. Repeated OUT_OF_SCOPE feeds boundary learning
// (ArchitectureBlueprint.md section 22).
Disposition FluidBackendRequirementDisposition `json:"disposition" yaml:"disposition"`
ExpectedUsage *FluidBackendRequirementExpectedUsage `json:"expected_usage,omitempty" yaml:"expected_usage,omitempty"`
ID BackendRequirementID `json:"id" yaml:"id"`
OriginatingHypothesis *HypothesisID `json:"originating_hypothesis,omitempty" yaml:"originating_hypothesis,omitempty"`
OriginatingInterface InterfaceID `json:"originating_interface" yaml:"originating_interface"`
OriginatingRevision *RevisionID `json:"originating_revision,omitempty" yaml:"originating_revision,omitempty"`
Quality *FluidBackendRequirementQuality `json:"quality,omitempty" yaml:"quality,omitempty"`
SchemaVersion SchemaVersion `json:"schema_version" yaml:"schema_version"`
Security *FluidBackendRequirementSecurity `json:"security,omitempty" yaml:"security,omitempty"`
Semantics *FluidBackendRequirementSemantics `json:"semantics,omitempty" yaml:"semantics,omitempty"`
Urgency *FluidBackendRequirementUrgency `json:"urgency,omitempty" yaml:"urgency,omitempty"`
}
// Capability the interface needs but has no authority to build. FLUID escalates
// rather than crossing the boundary (FluidAPIStandards.md section 30).
type BackendRequirementDocument struct {
FluidBackendRequirement FluidBackendRequirement `json:"fluid_backend_requirement" yaml:"fluid_backend_requirement"`
}