pub struct NamespaceConfig {
pub kind: Option<String>,
pub max_in_flight_activities: Option<u32>,
}Expand description
Reserved per-namespace policy blob.
Empty in Phase 1 (writes Default); Phase 2 fills retention, quotas, and
auth-scope keys. Reserving it day-one makes those later additions a policy
flip rather than a data migration.
Fields§
§kind: Option<String>Reserved tenant / sub-grouping discriminator (namespace-IS-tenant vs
a sub-grouping of a larger tenant).
Reserved for Phase 2. Always None in Phase 1. Reserved now so the
tenant⊃namespace split can be introduced later as a policy flip, not a
record-shape migration.
max_in_flight_activities: Option<u32>Per-tenant cluster-wide concurrent-in-flight-activity ceiling — the
quota dimension that maps onto the scarce agent/LLM resource (every
model/tool call is an activity). This is a CLUSTER-WIDE contract, never
per-node: a tenant who sets Some(256) is promised ≈256 concurrent
activities across the whole cluster, not 256 × node_count (CP-Phase-2
§3.6). None (the default) means the generous platform default applies
([namespaces] max_in_flight_activities, NOT a low hard cap); Some(n)
is an explicit per-tenant override.
Stored-only in this slice (P2-Q1). Nothing reads it yet — the outbox dispatcher’s keyed backpressure (P2-Q2) consults it in a later slice. It is carried day-one with additive serde so enforcement is a policy flip, not a record-shape migration.
Trait Implementations§
Source§impl Clone for NamespaceConfig
impl Clone for NamespaceConfig
Source§fn clone(&self) -> NamespaceConfig
fn clone(&self) -> NamespaceConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more