Skip to main content

Crate praxis_policy_core

Crate praxis_policy_core 

Source
Expand description

The plugin runtime: engine, executor, hook registry, and config parser.

Pure Rust with no FFI, WASM, or Python bindings. Plugins register against named hooks and the executor dispatches them in five phases, reading every scheduling decision from trusted config rather than from the plugin.

Modules§

assertions
What the engine asserts on a request and a response, as headers.
audit
Observation-only sinks that see each pipeline verdict.
cmf
The Common Message Format: messages, content parts, and read-only views.
config
YAML configuration parsing for plugins, routes, and policies.
context
Per-plugin state carried across hook invocations.
decision
What each plugin did to a request, and how the pipeline ruled on it.
delegation
The token delegation hook and its payload.
effect
Irreversible external effects and the write-ahead log that records them.
elicitation
The elicitation hook, for out-of-band human approval.
engine
Plugin lifecycle and hook dispatch.
error
Plugin errors and policy violations.
executor
Five-phase plugin dispatch.
extensions
Typed request attributes that plugins read and write.
factory
Config-driven plugin construction.
hooks
Hook types, payloads, and the handler traits.
host
Host-provided services and the carriers that lend them to a plugin.
http
The outbound-HTTP seam. Types and a trait; PPE performs no HTTP itself.
http_addr
Which IP addresses an outbound policy call must not reach. The shared range table; a transport enforces it where it dials.
http_hook
The generic-HTTP hook family: its two names, its payload, and its hook type.
http_path
The path a route matches on, normalized the way the gateway’s own router normalizes it and never percent-decoded.
http_retry
Retry policy for outbound HTTP, keyed to whether a repeat is safe.
identity
The identity resolution hook and its payload.
plugin
The Plugin trait and its trusted configuration.
prelude
Curated re-exports for plugin authors. Curated surface for plugin authors.
registry
Plugin instance and hook registries.
secrets
Secret material: providers, the declared values bound to them, and the handles consumers read through.
visitor
Config visitors, which let a dialect compile its own route blocks at load time.

Macros§

define_hook
Generates a hook type definition and marker struct.
define_hooks
Declares hook name constants and the metadata table for one module.
impl_plugin_payload
Implements PluginPayload for a type that is Clone + Send + Sync + 'static.