Description
Make the OpenAI Conversations handler consume the typed operation match produced by openai_operation instead of independently identifying the same method/path pair.
Parent epic: #740
Scope
- Use the shared operation match as the authoritative Conversations operation identity.
- Preserve access to required path parameters for local handlers.
- Use registry request-body metadata to decide whether body processing is required.
- Preserve fail-closed local handling and existing storage behavior.
- Keep runtime routes, Rust contract types, generated implementation OpenAPI, and pinned conformance checks linked.
- Remove redundant Conversations route-identification logic once the shared match owns it.
Acceptance Criteria
- All supported Conversations operations retain their current local behavior.
- Unsupported methods and malformed paths do not enter Conversations handlers.
- Bodyless operations do not trigger body parsing.
- Required path parameters are available without cloning the request URI.
- Existing positive, negative, persistence, and conformance tests remain green.
- Focused functional coverage proves
openai_operation and openai_conversations compose correctly.
Dependencies
Related Work
Area
Provider APIs (OpenAI/Anthropic)
Description
Make the OpenAI Conversations handler consume the typed operation match produced by
openai_operationinstead of independently identifying the same method/path pair.Parent epic: #740
Scope
Acceptance Criteria
openai_operationandopenai_conversationscompose correctly.Dependencies
openai_operationclassifierRelated Work
Area
Provider APIs (OpenAI/Anthropic)