Documentation
¶
Overview ¶
Package backend selects an object-storage backend by name, so every binary that reaches object storage constructs it from the same config point instead of each mapping the environment its own way.
It is a sibling of internal/blob rather than part of it — the shape internal/secrets/backend and internal/sandbox/backend already have, and for the same structural reason: the seam package holds the interface AND the sentinel error backends wrap (blob.ErrNotFound), so it must not import them.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FromEnv ¶
FromEnv builds the metrics-wrapped store from the BLOB_* environment — the one construction the controlplane, brain and executor binaries share, so their notion of "configured" cannot drift. (nil, nil) when object storage is not configured: it is optional, and each binary decides what its absence means (skills routes report it; the executor skips materialization; the brain grades file rubrics from the description alone).
BLOB_BACKEND unset means s3, so every deployment that predates the selector keeps working unchanged — internal/sandbox/backend's empty-means-docker arm, for the same reason. Which variable then says "configured at all" differs by backend and is documented on each arm. Once a backend is selected, missing configuration fails rather than degrades (the modeltest rule: opting in makes misconfiguration an error, never a silent fallback).
Types ¶
This section is empty.