Catalog/P family/P07
Proposed specificationSource-located exemplarH1

Cache-dialect fanout

Adapt caching to provider-specific interfaces.

JOIN POINTprovider_request_constructionRECORD STATUSCandidate · v0.1.0
UML class view for Cache-dialect fanout, showing participant roles, received calls, and analytical dependencies
FIG. P07 / UML CLASS VIEW
Object interaction diagram for Cache-dialect fanout, showing role collaboration and a numbered message sequence
FIG. P07 / OBJECT INTERACTIONS
Context
A request is built for a provider with cacheable context.
Trigger
A cache key, hint, or control record is attached.
Structure
Provider dialect adapter, cache identity, and response association.
Effect
Compatible cache controls are encoded and unsupported controls are rejected or omitted.
Requires
Provider capability and cache identity are known before dispatch.
Ensures
Cache control maps to the request without changing semantic content.
Invariant
Cache identity never crosses user, tenant, or incompatible provider boundaries.
Violation
Unsupported or invalid hints degrade explicitly without silent semantic drift.

Negative control

A generic response cache is not provider-dialect cache control.

Permitted variation

Prompt cache keys, cache-control blocks, TTLs, and dialect adapters.

Test obligation

Test identity collisions, invalidation, unsupported providers, and privacy boundaries.

Evolution question

Did cache hints become provider-capability-driven adapters?

PROMPT SKETCH
Resolve the provider's cache dialect before dispatch. Attach cache keys and cache-control blocks without changing the semantic request content; if the dialect is unknown, send an uncached request and say so.
CODE DESIGN / PYTHON
def prepare(request, registry):
    dialect = registry.resolve(request.provider)
    if dialect is None:
        return request.without_cache(), "cache dialect unsupported"
    hint = dialect.cache_hint(request.prompt, ttl=request.ttl)
    return request.with_cache(hint), "cache hint attached"

Illustrative design sketch. Caching is an optimization layered on the request, not a semantic rewrite. This example is a teaching aid, not implementation evidence or a conformance claim.

Join point
provider_request_construction
Source locator
Barbaste et al., Table 12, p. 53 (OpenCode, “Cache-Dialect Fanout”); source label
Lexical cue
(?i)\b(?:prompt[_-]?cache|cache[_-]?control|cache[_-]?key|cache[_-]?hint|dialect)\bFrozen expression, v0.1.0. A match is a retrieval cue, not a confirmed implementation.
Aliases
None
Canonical exemplar
openai/openai-agents-pythonsrc/agents/run_internal/prompt_cache_key.py:17Support: tests/test_prompt_cache_key.py:1
Negative control
A generic response cache is not provider-dialect cache control.

Scope-anchored review. pohe-agent analyze <repo> --pattern P07 anchors the cue to its enclosing declaration and checks a separate operational signature for all four pointcut dimensions. Missing roles and negative-control risks remain visible; a structural match is not E2/E3. Calibration report ↗

Source-located exemplar

A concrete source anchor is available for this proposed record. It is one exemplar, not evidence that all repositories—or every contract field—conform.

Review boundary: this candidate and its specification come from an AI-assisted study. Independent human validation remains open.

ANY-EVIDENCE FAMILY COVERAGE34/36

94.4% of repository families in the frozen panel have at least one current cue, historical cue, or canonical source layer. This is not confirmed prevalence.

Current lexical-cue repositories: 38 / 41
Canonical source anchoropenai/openai-agents-python 86bd29878b30src/agents/run_internal/prompt_cache_key.py:17

Provider-aware prompt-cache key resolution.

Exploratory retrieval cue Regex / v0.1.0
(?i)\b(?:prompt[_-]?cache|cache[_-]?control|cache[_-]?key|cache[_-]?hint|dialect)\b

This expression is a discovery instrument only. A match is a retrieval cue—not a confirmed implementation, pointcut match, or contract proof.