pub struct ExtensionQuotaConfig {
pub max_hostcalls_per_second: Option<u32>,
pub max_hostcalls_per_minute: Option<u32>,
pub max_hostcalls_total: Option<u64>,
pub max_subprocesses: Option<u32>,
pub max_write_bytes: Option<u64>,
pub max_http_requests: Option<u64>,
}Expand description
Configurable per-extension resource quotas. When a quota is None, the
corresponding limit is not enforced. All values are per-extension.
Fields§
§max_hostcalls_per_second: Option<u32>Maximum hostcalls permitted per 1-second sliding window.
max_hostcalls_per_minute: Option<u32>Maximum hostcalls permitted per 60-second sliding window.
max_hostcalls_total: Option<u64>Maximum total hostcalls before the extension is throttled.
max_subprocesses: Option<u32>Maximum concurrent subprocesses spawned via exec hostcalls.
max_write_bytes: Option<u64>Maximum cumulative bytes written via fs/write hostcalls.
max_http_requests: Option<u64>Maximum cumulative HTTP requests issued via http hostcalls.
Implementations§
Source§impl ExtensionQuotaConfig
impl ExtensionQuotaConfig
Sourcepub const fn for_mode(mode: ExtensionPolicyMode) -> Self
pub const fn for_mode(mode: ExtensionPolicyMode) -> Self
Create quota defaults appropriate for a given policy mode.
- Strict: restrictive burst/rate limits and low subprocess fan-out.
- Prompt: moderate defaults (original baseline).
- Permissive: relaxed limits for trusted extensions.
Trait Implementations§
Source§impl Clone for ExtensionQuotaConfig
impl Clone for ExtensionQuotaConfig
Source§fn clone(&self) -> ExtensionQuotaConfig
fn clone(&self) -> ExtensionQuotaConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ExtensionQuotaConfig
impl Debug for ExtensionQuotaConfig
Source§impl Default for ExtensionQuotaConfig
impl Default for ExtensionQuotaConfig
Source§impl<'de> Deserialize<'de> for ExtensionQuotaConfigwhere
ExtensionQuotaConfig: Default,
impl<'de> Deserialize<'de> for ExtensionQuotaConfigwhere
ExtensionQuotaConfig: Default,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ExtensionQuotaConfig
impl RefUnwindSafe for ExtensionQuotaConfig
impl Send for ExtensionQuotaConfig
impl Sync for ExtensionQuotaConfig
impl Unpin for ExtensionQuotaConfig
impl UnsafeUnpin for ExtensionQuotaConfig
impl UnwindSafe for ExtensionQuotaConfig
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, _span: NoopSpan) -> Self
fn instrument(self, _span: NoopSpan) -> Self
Instruments this future with a span (no-op when disabled).
Source§fn in_current_span(self) -> Self
fn in_current_span(self) -> Self
Instruments this future with the current span (no-op when disabled).
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> ModelDump for Twhere
T: Serialize,
impl<T> ModelDump for Twhere
T: Serialize,
Source§fn model_dump(&self, options: DumpOptions) -> Result<Value, Error>
fn model_dump(&self, options: DumpOptions) -> Result<Value, Error>
Serialize a model to a JSON value. Read more
Source§fn model_dump_json(&self) -> Result<String, Error>
fn model_dump_json(&self) -> Result<String, Error>
Serialize a model to a JSON string with default options.
Source§fn model_dump_json_pretty(&self) -> Result<String, Error>
fn model_dump_json_pretty(&self) -> Result<String, Error>
Serialize a model to a pretty-printed JSON string.
Source§fn model_dump_json_with_options(
&self,
options: DumpOptions,
) -> Result<String, Error>
fn model_dump_json_with_options( &self, options: DumpOptions, ) -> Result<String, Error>
Serialize a model to a JSON string with full options support. Read more
Source§impl<T> ModelValidate for Twhere
T: DeserializeOwned,
impl<T> ModelValidate for Twhere
T: DeserializeOwned,
Source§fn model_validate(
input: impl Into<ValidateInput>,
options: ValidateOptions,
) -> Result<T, ValidationError>
fn model_validate( input: impl Into<ValidateInput>, options: ValidateOptions, ) -> Result<T, ValidationError>
Create and validate a model from input. Read more
Source§fn model_validate_json(json: &str) -> Result<Self, ValidationError>
fn model_validate_json(json: &str) -> Result<Self, ValidationError>
Create and validate a model from JSON string with default options.
Source§fn model_validate_dict(
dict: HashMap<String, Value>,
) -> Result<Self, ValidationError>
fn model_validate_dict( dict: HashMap<String, Value>, ) -> Result<Self, ValidationError>
Create and validate a model from a HashMap with default options.
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian().