mod openai_plugin#
- module openai_plugin#
OpenAI cache plugin for the ACG system.
Maximizes automatic prefix cache hits through deterministic JSON serialization. OpenAI uses automatic prefix caching at 1024+ tokens with exact prefix matching – no explicit annotations are needed. The plugin’s job is to ensure that semantically identical prefixes produce byte-identical JSON so the cache hits rather than misses.
Implements the
ProviderPlugintrait with:Tool schema canonicalization: RFC 8785 via
canonicalize_valuefor deterministic key ordering in function parameter schemas.Stable message content canonicalization: Structured JSON content blocks in the stable prefix are canonicalized for byte-identical output.
No annotations injected: OpenAI handles caching automatically.
Threat mitigations
T-08-06: RFC 8785 is a semantic-preserving transform (only reorders keys, normalizes numbers). The plugin canonicalizes tool schemas (structured JSON) but does NOT modify text content in messages.
T-08-09: If canonicalization fails for one tool, the plugin reports Degraded (not Applied) and continues with remaining tools.
Structs and Unions
- struct OpenAICachePlugin#
OpenAI-specific provider plugin for deterministic JSON serialization.
Ensures that semantically identical request prefixes produce byte-identical JSON output, maximizing OpenAI’s automatic prefix cache hit rate. Stateless – no constructor arguments needed.
Usage
let plugin = OpenAICachePlugin; let output = plugin.translate(&input)?;
Implementations
- impl OpenAICachePlugin#
Traits implemented
- impl ProviderPlugin for OpenAICachePlugin#
- impl HintPlanApplier for OpenAICachePlugin#