contrib

package
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 5, 2026 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Overview

Package contrib contains immutable, metadata-only extension facets. It is a composition contract, not a runtime service locator.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BackendContribution

type BackendContribution struct {
	Registration BackendRegistrationFacet
	Diagnostics  *DiagnosticFacet
	Contract     ContractFacet
	Compatible   *CompatibleFamilyFacet
}

type BackendRegistrationFacet

type BackendRegistrationFacet struct {
	ID              string
	Source          RegistrationSource
	EssentialOrder  int
	CompatibleOrder int
}

type CompatibleFamilyFacet

type CompatibleFamilyFacet struct {
	FamilyID   string
	ProfileIDs []string
}

type ContractFacet

type ContractFacet struct{ Subject ContractSubject }

type ContractSubject

type ContractSubject struct {
	ID   string
	Kind string
}

type ContributionSet

type ContributionSet struct {
	Frontends []FrontendContribution
	Backends  []BackendContribution
	// Diagnostics contains catalog/composition-owned projectors that do not
	// correspond to a single frontend or backend registration. Keeping this
	// facet in the derived source-of-truth prevents hidden projector lists.
	Diagnostics []DiagnosticFacet
}

type DiagnosticFacet

type DiagnosticFacet struct {
	ID       string
	Declared bool
}

DiagnosticFacet declares that the contribution owns an operator projector. ID identifies the metadata owner; the executable projector stays at the runtime edge and is not a service bag.

type FrontendContribution

type FrontendContribution struct {
	Registration FrontendRegistrationFacet
	Routes       *RouteFacet
	Diagnostics  *DiagnosticFacet
	Contract     ContractFacet
}

type FrontendRegistrationFacet

type FrontendRegistrationFacet struct {
	ID string
}

type RegistrationFacet

type RegistrationFacet struct {
	ID     string
	Source RegistrationSource
}

type RegistrationSource

type RegistrationSource string
const (
	SourceBuiltin           RegistrationSource = "builtin"
	SourceBuiltinCompatible RegistrationSource = "built_in_compatible"
)

type RouteClaimFacet

type RouteClaimFacet struct {
	Method      string
	Path        string
	OperationID string
}

RouteClaimFacet is the cycle-neutral shape of a route ownership claim. Runtime route providers may add config-derived claims at composition time.

type RouteFacet

type RouteFacet struct {
	Declared bool
	Claims   []RouteClaimFacet
}

RouteFacet declares that the contribution owns route claims. The executable provider is held by the standard-distribution composition layer, not this cycle-neutral metadata package.

type Views

type Views struct {
	Frontends        []FrontendContribution
	Backends         []BackendContribution
	Routes           []RouteFacet
	RouteClaims      []RouteClaimFacet
	Diagnostics      []DiagnosticFacet
	ContractSubjects []ContractSubject
	EssentialIDs     []string
	FamilyIDs        []string
	CompatibleIDs    []string
	ProfileFamilies  map[string]string
}

func Derive

func Derive(in ContributionSet) (Views, error)

func (Views) BackendIDs

func (v Views) BackendIDs() []string

func (Views) FrontendIDs

func (v Views) FrontendIDs() []string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL