Help us shape the future of Go! Take the 2026 Go Developer Survey

placement

package
v0.55.4 Latest Latest
Warning

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

Go to latest
Published: Nov 1, 2026 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Overview

Package placement resolves the S1 (StackKit-Standalone) capability bindings for a StackSpec. It is the OSS-side implementation of the shared resolver-output contract (STACKKITS-PRODUCT-BOUNDARY-STANDARD.md §15.10): each abstract capability (relational, vector, ai_inference, …) is bound to a concrete provider+target for the realizable placement modes.

StackKits-OSS realizes only S1 — local-only and standard+cloudless. The managed-serverless mode and any coupled placement are S2/S3 (TechStack / Control-Plane) and are rejected here with ErrNotS1; their per-deployment bindings live in the kombify-DB sk_* catalog (Control Plane), never in this repo.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CapabilityBinding

type CapabilityBinding struct {
	Provider string `json:"provider"`
	Target   string `json:"target"`
}

CapabilityBinding is the resolved provider+target for one abstract capability.

type ErrNotS1

type ErrNotS1 struct{ Mode, Coupling string }

ErrNotS1 signals a placement that StackKits-OSS does not realize (managed-serverless mode or coupled coupling → TechStack/SaaS, S2/S3).

func (ErrNotS1) Error

func (e ErrNotS1) Error() string

type Result

type Result struct {
	Mode         string                       `json:"mode"`
	Exposure     string                       `json:"exposure"`
	Coupling     string                       `json:"coupling"`
	Capabilities map[string]CapabilityBinding `json:"capabilities"`
}

Result is the resolved placement block (STACKKITS-PRODUCT-BOUNDARY-STANDARD.md §15.10 shape).

func ResolveS1

func ResolveS1(spec *models.StackSpec) (*Result, error)

ResolveS1 resolves the S1 capability bindings for spec. A nil spec resolves to the default (standard) placement. managed-serverless or coupled placements return ErrNotS1 — the caller surfaces that as a warning, not a hard failure.

Jump to

Keyboard shortcuts

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