Documentation
¶
Overview ¶
Package io is the umbrella for every boundary crossing a CSF process makes. Each crossing is a capability granted through a constructor and lives in a tier subpackage: io/inproc stays inside the runtime, io/kernel makes a syscall, io/ipc reaches another process on this machine, and io/net reaches another machine. This package holds only what every subpackage shares: the Tier that classifies how far a crossing reaches.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var Tiers = []Tier{TierInProcess, TierKernel, TierIpc, TierNet}
Tiers lists every tier, narrowest first, so a caller can initialize one series per tier and a test can assert completeness.
Functions ¶
This section is empty.
Types ¶
type Tier ¶
type Tier int
Tier is how far a message or call travels from the code that sends it. Tiers are ordered: a crossing that touches two tiers reaches the wider one.
const ( // TierInProcess stays inside one runtime: a direct call or a channel, // with no capability. Copilot sessions multiplexed on the bridge of a // Copilot service mounted in the same runtime are in this tier. TierInProcess Tier = iota + 1 // TierKernel reaches the kernel through a syscall on this machine: // clock, files, and process control. TierKernel // TierIpc reaches another process on this machine through an ipc // capability: a unix socket, or loopback through io/net. TierIpc // TierNet reaches another machine through io/net. TierNet )
Directories
¶
| Path | Synopsis |
|---|---|
|
Package inproc is the home of the in-process io tier: communication between goroutines of one process.
|
Package inproc is the home of the in-process io tier: communication between goroutines of one process. |
|
ipc
|
|
|
db/csfpg
Package csfpg is CSF's PostgreSQL backend: the one owner of database connection pools in a CSF process, CSF's schema and its migrations, and the queries sqlc generates against that schema.
|
Package csfpg is CSF's PostgreSQL backend: the one owner of database connection pools in a CSF process, CSF's schema and its migrations, and the queries sqlc generates against that schema. |
|
db/csfpg/mocks
Package mocks is a generated GoMock package.
|
Package mocks is a generated GoMock package. |
|
docker
Package docker is the container capability: the Docker Engine reached over its API socket, granted to the code that runs containers.
|
Package docker is the container capability: the Docker Engine reached over its API socket, granted to the code that runs containers. |
|
docker/mocks
Package mocks is a generated GoMock package.
|
Package mocks is a generated GoMock package. |
|
proc
Package proc is the process boundary: the one subprocess gateway in CSF.
|
Package proc is the process boundary: the one subprocess gateway in CSF. |
|
proc/mocks
Package mocks is a generated GoMock package.
|
Package mocks is a generated GoMock package. |
|
kernel
|
|
|
clock
Package clock is the clock capability: the kernel I/O tier's time source.
|
Package clock is the clock capability: the kernel I/O tier's time source. |
|
clock/mocks
Package mocks is a generated GoMock package.
|
Package mocks is a generated GoMock package. |
|
fs
Package fs is the file capability: the kernel I/O tier's file boundary.
|
Package fs is the file capability: the kernel I/O tier's file boundary. |
|
sandbox
Package sandbox is the harness's per-session confinement capability, host tier: it owns the session cgroups under the harness's delegated cgroup subtree and writes the policy the Rust launcher enforces.
|
Package sandbox is the harness's per-session confinement capability, host tier: it owns the session cgroups under the harness's delegated cgroup subtree and writes the policy the Rust launcher enforces. |
|
Package net is the socket capability: the kernel I/O tier's network boundary.
|
Package net is the socket capability: the kernel I/O tier's network boundary. |
|
github
Package github provides primitives to interact with the openapi HTTP API.
|
Package github provides primitives to interact with the openapi HTTP API. |
|
grpc
Package grpc is the gRPC client-connection capability.
|
Package grpc is the gRPC client-connection capability. |
|
hfjobs
Package hfjobs is the Hugging Face Jobs API: run a container on Hugging Face's machines, list and inspect the namespace's jobs, cancel one, and read each flavor's price.
|
Package hfjobs is the Hugging Face Jobs API: run a container on Hugging Face's machines, list and inspect the namespace's jobs, cancel one, and read each flavor's price. |
|
http
Package http is the HTTP capability: one server bound to one address, mounted into the process runtime as a service, and the outbound client (NewHTTPClient) whose every connection is dialed through a granted socket capability.
|
Package http is the HTTP capability: one server bound to one address, mounted into the process runtime as a service, and the outbound client (NewHTTPClient) whose every connection is dialed through a granted socket capability. |
|
model
Package model is CSF's contract with a brain: an agent loop over a large model behind an inference provider or API.
|
Package model is CSF's contract with a brain: an agent loop over a large model behind an inference provider or API. |
|
model/claudecode
Package claudecode is the Claude Code provider: a Claude Code session is an agent loop in its own process on the operator's machine.
|
Package claudecode is the Claude Code provider: a Claude Code session is an agent loop in its own process on the operator's machine. |
|
model/copilot
Package copilot is the first inference provider behind CSF's brain contract: the GitHub Copilot agent loop, reached through the existing Copilot adapter's generated Workbench client (services/copilot-adapter/gen/api).
|
Package copilot is the first inference provider behind CSF's brain contract: the GitHub Copilot agent loop, reached through the existing Copilot adapter's generated Workbench client (services/copilot-adapter/gen/api). |
|
model/copilotcli
Package copilotcli is the GitHub Copilot CLI provider: CopilotCLIExecutor drives the Copilot command line as a turn executor for one session CSF owns.
|
Package copilotcli is the GitHub Copilot CLI provider: CopilotCLIExecutor drives the Copilot command line as a turn executor for one session CSF owns. |
|
model/jev
Package jev asks JEV-9B typed decisions.
|
Package jev asks JEV-9B typed decisions. |
|
model/llamacpp
Package llamacpp reaches a llama.cpp server started with --reranking: a cross-encoder that scores how well each document answers one query.
|
Package llamacpp reaches a llama.cpp server started with --reranking: a cross-encoder that scores how well each document answers one query. |
|
model/ollama
Package ollama is the local model provider behind CSF's brain contract: an Ollama server, on this host or a neighbour, reached over its HTTP API through the http capability the constructor receives.
|
Package ollama is the local model provider behind CSF's brain contract: an Ollama server, on this host or a neighbour, reached over its HTTP API through the http capability the constructor receives. |
|
model/stub
Package stub is the brain that needs no model: it answers every decision with the same canned proposal, so the harness runs and its specs pass with no inference provider, network or credential at all.
|
Package stub is the brain that needs no model: it answers every decision with the same canned proposal, so the harness runs and its specs pass with no inference provider, network or credential at all. |
|
ros
Package ros is CSF's boundary to the low-level spine controller.
|
Package ros is CSF's boundary to the low-level spine controller. |