Skip to main content

Module cog_ingest

Module cog_ingest 

Source
Expand description

Cog ingest bridge (mesh-placement-10; ADR-100 section 4 and the “Decision 5 resolved” amendment).

A placed cog posts its feature vectors to POST /api/v1/store/ingest with its COGNITUM_COG_TOKEN. This module is where that request ends:

Ingested vectors belong to the project that placed the cog. Whatever the cog prints on stdout is evidence for logs only and never reaches a store.

Re-exports§

pub use bridge::BridgeConfig;
pub use bridge::BridgeHandle;
pub use bridge::BridgeScope;
pub use bridge::BridgeStats;
pub use bridge::IngestBridge;
pub use forward::ForwardRefusal;
pub use forward::ForwardRequest;
pub use forward::Forwarder;
pub use forward::LocalForwarder;
pub use forward::MeshForwarder;
pub use forward::STORE_INGEST_METHOD;
pub use forward::STORE_SERVICE;
pub use hooks::IngestHooks;
pub use hooks::IngestLease;
pub use hooks::ProjectDirectory;
pub use owner::ForwardPolicy;
pub use owner::KeyPolicy;
pub use owner::OwnerConnector;
pub use owner::StoreOwnerService;
pub use registry::InstanceBinding;
pub use registry::RateBudget;
pub use registry::StaticRouter;
pub use registry::StoreRouter;
pub use registry::TokenRegistry;
pub use store::VectorBackendStore;
pub use vector_dir::VectorDirectory;
pub use store::Hit;
pub use store::IngestOutcome;
pub use store::IngestStore;
pub use store::MemoryIngestStore;
pub use store::Provenance;
pub use store::StaticDirectory;
pub use store::StoreDirectory;
pub use store::StoreError;
pub use types::DIMS;
pub use types::INGEST_PATH;
pub use types::IngestBatch;
pub use types::IngestError;
pub use types::IngestVector;
pub use types::parse_batch;
pub use types::valid_project_id;
pub use udp::UdpForwardConfig;
pub use udp::UdpForwarder;

Modules§

bridge
The node-local HTTP bridge: POST /api/v1/store/ingest.
forward
Forwarding validated batches to the store owner (the owner’s side is in super::owner).
hooks
The ingest bridge as the workload host sees it: authorise the placing project, issue a token with the host contract, bind it to the placement, and revoke it when the instance stops or unloads (a package revocation that force-unloads an instance goes through the same unload; no such path exists in the host yet).
owner
The store owner’s side of forwarding: the cog-store service that verifies signed ForwardRequests and writes them to the owning store, its policy, and how it is served (in-process or mesh TCP).
registry
Per-instance tokens and the placement binding behind them.
store
The store an ingested batch lands in, owned by one project’s kernel (or by the placing controller when the placement has no project).
store_log
Durable log behind a project’s ingest store (ADR-100 decision 5).
types
The POST /api/v1/store/ingest request contract and its validation.
udp
Optional UDP forwarder: the ESP32 CSI feed from the node’s LAN into a container’s feed port. A relay of whole datagrams, nothing parsed.
vector_dir
A node’s per-project vector stores (ADR-100 decision 5): in-memory HNSW indexes on the owner daemon, optionally backed by a durable log.