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:
types: the request contract and its validation.registry: per-instance tokens bound to the placing project, the per-instance rate budget, and theStoreRouter.bridge: the node-local HTTP server.forward:LocalForwarderandMeshForwarderto the store owner as signedMeshIpcEnvelopes.owner: the owner’sStoreOwnerServiceand its policy.store: theIngestStorea project’s kernel owns.udp: the optional ESP32 feed relay into a container.
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-storeservice that verifies signedForwardRequests 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/ingestrequest 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.