@copilotkit/aimock 1.45.1 → 1.47.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +25 -1
- package/README.md +11 -2
- package/dist/agui-mock.cjs +25 -25
- package/dist/agui-mock.cjs.map +1 -1
- package/dist/agui-mock.d.cts.map +1 -1
- package/dist/agui-mock.d.ts.map +1 -1
- package/dist/agui-mock.js +25 -25
- package/dist/agui-mock.js.map +1 -1
- package/dist/agui-types.d.cts.map +1 -1
- package/dist/aimock-cli.cjs +15 -1
- package/dist/aimock-cli.cjs.map +1 -1
- package/dist/aimock-cli.d.cts.map +1 -1
- package/dist/aimock-cli.d.ts.map +1 -1
- package/dist/aimock-cli.js +16 -2
- package/dist/aimock-cli.js.map +1 -1
- package/dist/api-key-auth.cjs +10 -9
- package/dist/api-key-auth.cjs.map +1 -1
- package/dist/api-key-auth.d.cts.map +1 -1
- package/dist/api-key-auth.d.ts.map +1 -1
- package/dist/api-key-auth.js +11 -10
- package/dist/api-key-auth.js.map +1 -1
- package/dist/aws-event-stream.cjs +20 -23
- package/dist/aws-event-stream.cjs.map +1 -1
- package/dist/aws-event-stream.d.cts +0 -1
- package/dist/aws-event-stream.d.ts +0 -1
- package/dist/aws-event-stream.js +20 -24
- package/dist/aws-event-stream.js.map +1 -1
- package/dist/batches.cjs +2 -4
- package/dist/batches.cjs.map +1 -1
- package/dist/batches.d.cts.map +1 -1
- package/dist/batches.d.ts.map +1 -1
- package/dist/batches.js +2 -4
- package/dist/batches.js.map +1 -1
- package/dist/bedrock-converse.cjs +139 -161
- package/dist/bedrock-converse.cjs.map +1 -1
- package/dist/bedrock-converse.d.cts.map +1 -1
- package/dist/bedrock-converse.d.ts.map +1 -1
- package/dist/bedrock-converse.js +137 -159
- package/dist/bedrock-converse.js.map +1 -1
- package/dist/bedrock.cjs +175 -216
- package/dist/bedrock.cjs.map +1 -1
- package/dist/bedrock.d.cts.map +1 -1
- package/dist/bedrock.d.ts.map +1 -1
- package/dist/bedrock.js +172 -213
- package/dist/bedrock.js.map +1 -1
- package/dist/byteplus-video.cjs +11 -10
- package/dist/byteplus-video.cjs.map +1 -1
- package/dist/byteplus-video.d.cts.map +1 -1
- package/dist/byteplus-video.d.ts.map +1 -1
- package/dist/byteplus-video.js +5 -4
- package/dist/byteplus-video.js.map +1 -1
- package/dist/chaos.cjs +5 -4
- package/dist/chaos.cjs.map +1 -1
- package/dist/chaos.d.cts.map +1 -1
- package/dist/chaos.d.ts.map +1 -1
- package/dist/chaos.js +5 -4
- package/dist/chaos.js.map +1 -1
- package/dist/cli.cjs +15 -0
- package/dist/cli.cjs.map +1 -1
- package/dist/cli.js +15 -0
- package/dist/cli.js.map +1 -1
- package/dist/cohere.cjs +107 -180
- package/dist/cohere.cjs.map +1 -1
- package/dist/cohere.d.cts.map +1 -1
- package/dist/cohere.d.ts.map +1 -1
- package/dist/cohere.js +106 -179
- package/dist/cohere.js.map +1 -1
- package/dist/config-loader.cjs +29 -1
- package/dist/config-loader.cjs.map +1 -1
- package/dist/config-loader.d.cts +7 -1
- package/dist/config-loader.d.cts.map +1 -1
- package/dist/config-loader.d.ts +7 -1
- package/dist/config-loader.d.ts.map +1 -1
- package/dist/config-loader.js +29 -2
- package/dist/config-loader.js.map +1 -1
- package/dist/count-tokens.cjs +146 -0
- package/dist/count-tokens.cjs.map +1 -0
- package/dist/count-tokens.js +146 -0
- package/dist/count-tokens.js.map +1 -0
- package/dist/elevenlabs-audio.cjs +36 -34
- package/dist/elevenlabs-audio.cjs.map +1 -1
- package/dist/elevenlabs-audio.d.cts.map +1 -1
- package/dist/elevenlabs-audio.d.ts.map +1 -1
- package/dist/elevenlabs-audio.js +33 -31
- package/dist/elevenlabs-audio.js.map +1 -1
- package/dist/elevenlabs-voice.cjs +38 -37
- package/dist/elevenlabs-voice.cjs.map +1 -1
- package/dist/elevenlabs-voice.d.cts.map +1 -1
- package/dist/elevenlabs-voice.d.ts.map +1 -1
- package/dist/elevenlabs-voice.js +33 -32
- package/dist/elevenlabs-voice.js.map +1 -1
- package/dist/embedding-request.cjs +16 -0
- package/dist/embedding-request.cjs.map +1 -0
- package/dist/embedding-request.js +14 -0
- package/dist/embedding-request.js.map +1 -0
- package/dist/embeddings.cjs +30 -20
- package/dist/embeddings.cjs.map +1 -1
- package/dist/embeddings.d.cts.map +1 -1
- package/dist/embeddings.d.ts.map +1 -1
- package/dist/embeddings.js +30 -20
- package/dist/embeddings.js.map +1 -1
- package/dist/fal-audio.cjs +45 -43
- package/dist/fal-audio.cjs.map +1 -1
- package/dist/fal-audio.d.cts.map +1 -1
- package/dist/fal-audio.d.ts.map +1 -1
- package/dist/fal-audio.js +42 -40
- package/dist/fal-audio.js.map +1 -1
- package/dist/fal.cjs +17 -15
- package/dist/fal.cjs.map +1 -1
- package/dist/fal.js +16 -14
- package/dist/fal.js.map +1 -1
- package/dist/files.cjs +2 -4
- package/dist/files.cjs.map +1 -1
- package/dist/files.d.cts.map +1 -1
- package/dist/files.d.ts.map +1 -1
- package/dist/files.js +2 -4
- package/dist/files.js.map +1 -1
- package/dist/fine-tuning.cjs +2 -4
- package/dist/fine-tuning.cjs.map +1 -1
- package/dist/fine-tuning.d.cts.map +1 -1
- package/dist/fine-tuning.d.ts.map +1 -1
- package/dist/fine-tuning.js +2 -4
- package/dist/fine-tuning.js.map +1 -1
- package/dist/fixture-loader.cjs +140 -44
- package/dist/fixture-loader.cjs.map +1 -1
- package/dist/fixture-loader.d.cts.map +1 -1
- package/dist/fixture-loader.d.ts.map +1 -1
- package/dist/fixture-loader.js +141 -46
- package/dist/fixture-loader.js.map +1 -1
- package/dist/gemini-embeddings.cjs +26 -24
- package/dist/gemini-embeddings.cjs.map +1 -1
- package/dist/gemini-embeddings.js +26 -24
- package/dist/gemini-embeddings.js.map +1 -1
- package/dist/gemini-interactions.cjs +113 -156
- package/dist/gemini-interactions.cjs.map +1 -1
- package/dist/gemini-interactions.d.cts +0 -1
- package/dist/gemini-interactions.d.cts.map +1 -1
- package/dist/gemini-interactions.d.ts +0 -1
- package/dist/gemini-interactions.d.ts.map +1 -1
- package/dist/gemini-interactions.js +113 -156
- package/dist/gemini-interactions.js.map +1 -1
- package/dist/gemini.cjs +295 -218
- package/dist/gemini.cjs.map +1 -1
- package/dist/gemini.d.cts.map +1 -1
- package/dist/gemini.d.ts.map +1 -1
- package/dist/gemini.js +295 -219
- package/dist/gemini.js.map +1 -1
- package/dist/grok-video.cjs +14 -12
- package/dist/grok-video.cjs.map +1 -1
- package/dist/grok-video.d.cts.map +1 -1
- package/dist/grok-video.d.ts.map +1 -1
- package/dist/grok-video.js +8 -6
- package/dist/grok-video.js.map +1 -1
- package/dist/helpers.cjs +411 -75
- package/dist/helpers.cjs.map +1 -1
- package/dist/helpers.d.cts +51 -1
- package/dist/helpers.d.cts.map +1 -1
- package/dist/helpers.d.ts +51 -1
- package/dist/helpers.d.ts.map +1 -1
- package/dist/helpers.js +402 -74
- package/dist/helpers.js.map +1 -1
- package/dist/images.cjs +30 -28
- package/dist/images.cjs.map +1 -1
- package/dist/images.d.cts.map +1 -1
- package/dist/images.d.ts.map +1 -1
- package/dist/images.js +27 -25
- package/dist/images.js.map +1 -1
- package/dist/index.cjs +4 -2
- package/dist/index.d.cts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/index.js +4 -4
- package/dist/journal.cjs +3 -1
- package/dist/journal.cjs.map +1 -1
- package/dist/journal.d.cts.map +1 -1
- package/dist/journal.d.ts.map +1 -1
- package/dist/journal.js +2 -1
- package/dist/journal.js.map +1 -1
- package/dist/llmock.cjs +3 -0
- package/dist/llmock.cjs.map +1 -1
- package/dist/llmock.d.cts.map +1 -1
- package/dist/llmock.d.ts.map +1 -1
- package/dist/llmock.js +3 -0
- package/dist/llmock.js.map +1 -1
- package/dist/mcp-fakes.d.cts.map +1 -1
- package/dist/mcp-handler.cjs +7 -3
- package/dist/mcp-handler.cjs.map +1 -1
- package/dist/mcp-handler.js +7 -3
- package/dist/mcp-handler.js.map +1 -1
- package/dist/mcp-recorder.cjs +2 -1
- package/dist/mcp-recorder.cjs.map +1 -1
- package/dist/mcp-recorder.js +3 -2
- package/dist/mcp-recorder.js.map +1 -1
- package/dist/messages.cjs +235 -202
- package/dist/messages.cjs.map +1 -1
- package/dist/messages.d.cts.map +1 -1
- package/dist/messages.d.ts.map +1 -1
- package/dist/messages.js +234 -202
- package/dist/messages.js.map +1 -1
- package/dist/metrics.cjs +5 -2
- package/dist/metrics.cjs.map +1 -1
- package/dist/metrics.d.cts.map +1 -1
- package/dist/metrics.d.ts.map +1 -1
- package/dist/metrics.js +6 -3
- package/dist/metrics.js.map +1 -1
- package/dist/misbehavior.cjs +62 -3
- package/dist/misbehavior.cjs.map +1 -1
- package/dist/misbehavior.d.cts.map +1 -1
- package/dist/misbehavior.d.ts.map +1 -1
- package/dist/misbehavior.js +63 -4
- package/dist/misbehavior.js.map +1 -1
- package/dist/model-utils.cjs +1 -0
- package/dist/model-utils.cjs.map +1 -1
- package/dist/model-utils.js +1 -1
- package/dist/model-utils.js.map +1 -1
- package/dist/moderation.cjs +15 -12
- package/dist/moderation.cjs.map +1 -1
- package/dist/moderation.js +14 -11
- package/dist/moderation.js.map +1 -1
- package/dist/ndjson-writer.cjs +21 -23
- package/dist/ndjson-writer.cjs.map +1 -1
- package/dist/ndjson-writer.d.cts +0 -1
- package/dist/ndjson-writer.d.cts.map +1 -1
- package/dist/ndjson-writer.d.ts +0 -1
- package/dist/ndjson-writer.d.ts.map +1 -1
- package/dist/ndjson-writer.js +21 -24
- package/dist/ndjson-writer.js.map +1 -1
- package/dist/ollama.cjs +276 -210
- package/dist/ollama.cjs.map +1 -1
- package/dist/ollama.d.cts.map +1 -1
- package/dist/ollama.d.ts.map +1 -1
- package/dist/ollama.js +273 -207
- package/dist/ollama.js.map +1 -1
- package/dist/openapi.cjs +323 -3
- package/dist/openapi.cjs.map +1 -1
- package/dist/openapi.d.cts.map +1 -1
- package/dist/openapi.d.ts.map +1 -1
- package/dist/openapi.js +324 -4
- package/dist/openapi.js.map +1 -1
- package/dist/openrouter-chat.cjs +11 -155
- package/dist/openrouter-chat.cjs.map +1 -1
- package/dist/openrouter-chat.js +11 -155
- package/dist/openrouter-chat.js.map +1 -1
- package/dist/openrouter-video.cjs +51 -74
- package/dist/openrouter-video.cjs.map +1 -1
- package/dist/openrouter-video.d.cts.map +1 -1
- package/dist/openrouter-video.d.ts.map +1 -1
- package/dist/openrouter-video.js +37 -60
- package/dist/openrouter-video.js.map +1 -1
- package/dist/raw-validation.cjs +177 -0
- package/dist/raw-validation.cjs.map +1 -0
- package/dist/raw-validation.js +176 -0
- package/dist/raw-validation.js.map +1 -0
- package/dist/recorder.cjs +176 -95
- package/dist/recorder.cjs.map +1 -1
- package/dist/recorder.d.cts.map +1 -1
- package/dist/recorder.d.ts.map +1 -1
- package/dist/recorder.js +176 -95
- package/dist/recorder.js.map +1 -1
- package/dist/rerank.cjs +13 -11
- package/dist/rerank.cjs.map +1 -1
- package/dist/rerank.js +12 -10
- package/dist/rerank.js.map +1 -1
- package/dist/response/catalog/anthropic-page.cjs +39 -0
- package/dist/response/catalog/anthropic-page.cjs.map +1 -0
- package/dist/response/catalog/anthropic-page.js +38 -0
- package/dist/response/catalog/anthropic-page.js.map +1 -0
- package/dist/response/catalog/collect.cjs +61 -0
- package/dist/response/catalog/collect.cjs.map +1 -0
- package/dist/response/catalog/collect.js +59 -0
- package/dist/response/catalog/collect.js.map +1 -0
- package/dist/response/catalog/gemini-page.cjs +25 -0
- package/dist/response/catalog/gemini-page.cjs.map +1 -0
- package/dist/response/catalog/gemini-page.js +24 -0
- package/dist/response/catalog/gemini-page.js.map +1 -0
- package/dist/response/catalog/render.cjs +182 -0
- package/dist/response/catalog/render.cjs.map +1 -0
- package/dist/response/catalog/render.js +171 -0
- package/dist/response/catalog/render.js.map +1 -0
- package/dist/response/deliver.cjs +144 -0
- package/dist/response/deliver.cjs.map +1 -0
- package/dist/response/deliver.js +143 -0
- package/dist/response/deliver.js.map +1 -0
- package/dist/response/errors.cjs +225 -0
- package/dist/response/errors.cjs.map +1 -0
- package/dist/response/errors.js +224 -0
- package/dist/response/errors.js.map +1 -0
- package/dist/response/finish.cjs +39 -0
- package/dist/response/finish.cjs.map +1 -0
- package/dist/response/finish.js +35 -0
- package/dist/response/finish.js.map +1 -0
- package/dist/response/frame-loop.cjs +102 -0
- package/dist/response/frame-loop.cjs.map +1 -0
- package/dist/response/frame-loop.js +100 -0
- package/dist/response/frame-loop.js.map +1 -0
- package/dist/response/lifecycle.cjs +223 -0
- package/dist/response/lifecycle.cjs.map +1 -0
- package/dist/response/lifecycle.js +211 -0
- package/dist/response/lifecycle.js.map +1 -0
- package/dist/response/policy.cjs +126 -0
- package/dist/response/policy.cjs.map +1 -0
- package/dist/response/policy.js +120 -0
- package/dist/response/policy.js.map +1 -0
- package/dist/response/profiles.cjs +69 -0
- package/dist/response/profiles.cjs.map +1 -0
- package/dist/response/profiles.js +65 -0
- package/dist/response/profiles.js.map +1 -0
- package/dist/response/proxy.cjs +71 -0
- package/dist/response/proxy.cjs.map +1 -0
- package/dist/response/proxy.js +70 -0
- package/dist/response/proxy.js.map +1 -0
- package/dist/response/raw.cjs +228 -0
- package/dist/response/raw.cjs.map +1 -0
- package/dist/response/raw.js +227 -0
- package/dist/response/raw.js.map +1 -0
- package/dist/response/timing.cjs +157 -0
- package/dist/response/timing.cjs.map +1 -0
- package/dist/response/timing.js +150 -0
- package/dist/response/timing.js.map +1 -0
- package/dist/response/usage/codecs/anthropic.cjs +52 -0
- package/dist/response/usage/codecs/anthropic.cjs.map +1 -0
- package/dist/response/usage/codecs/anthropic.js +50 -0
- package/dist/response/usage/codecs/anthropic.js.map +1 -0
- package/dist/response/usage/codecs/cohere.cjs +36 -0
- package/dist/response/usage/codecs/cohere.cjs.map +1 -0
- package/dist/response/usage/codecs/cohere.js +35 -0
- package/dist/response/usage/codecs/cohere.js.map +1 -0
- package/dist/response/usage/codecs/converse.cjs +16 -0
- package/dist/response/usage/codecs/converse.cjs.map +1 -0
- package/dist/response/usage/codecs/converse.js +15 -0
- package/dist/response/usage/codecs/converse.js.map +1 -0
- package/dist/response/usage/codecs/gemini.cjs +31 -0
- package/dist/response/usage/codecs/gemini.cjs.map +1 -0
- package/dist/response/usage/codecs/gemini.js +31 -0
- package/dist/response/usage/codecs/gemini.js.map +1 -0
- package/dist/response/usage/codecs/interactions.cjs +22 -0
- package/dist/response/usage/codecs/interactions.cjs.map +1 -0
- package/dist/response/usage/codecs/interactions.js +21 -0
- package/dist/response/usage/codecs/interactions.js.map +1 -0
- package/dist/response/usage/codecs/ollama.cjs +17 -0
- package/dist/response/usage/codecs/ollama.cjs.map +1 -0
- package/dist/response/usage/codecs/ollama.js +17 -0
- package/dist/response/usage/codecs/ollama.js.map +1 -0
- package/dist/response/usage/codecs/openai.cjs +52 -0
- package/dist/response/usage/codecs/openai.cjs.map +1 -0
- package/dist/response/usage/codecs/openai.js +50 -0
- package/dist/response/usage/codecs/openai.js.map +1 -0
- package/dist/response/usage/codecs/openrouter.cjs +68 -0
- package/dist/response/usage/codecs/openrouter.cjs.map +1 -0
- package/dist/response/usage/codecs/openrouter.js +67 -0
- package/dist/response/usage/codecs/openrouter.js.map +1 -0
- package/dist/response/usage/codecs/realtime.cjs +19 -0
- package/dist/response/usage/codecs/realtime.cjs.map +1 -0
- package/dist/response/usage/codecs/realtime.js +18 -0
- package/dist/response/usage/codecs/realtime.js.map +1 -0
- package/dist/response/usage/codecs/responses.cjs +21 -0
- package/dist/response/usage/codecs/responses.cjs.map +1 -0
- package/dist/response/usage/codecs/responses.js +20 -0
- package/dist/response/usage/codecs/responses.js.map +1 -0
- package/dist/response/usage/estimate.cjs +23 -0
- package/dist/response/usage/estimate.cjs.map +1 -0
- package/dist/response/usage/estimate.js +21 -0
- package/dist/response/usage/estimate.js.map +1 -0
- package/dist/response/usage/fields.cjs +72 -0
- package/dist/response/usage/fields.cjs.map +1 -0
- package/dist/response/usage/fields.js +70 -0
- package/dist/response/usage/fields.js.map +1 -0
- package/dist/response/usage/recording.cjs +52 -0
- package/dist/response/usage/recording.cjs.map +1 -0
- package/dist/response/usage/recording.js +52 -0
- package/dist/response/usage/recording.js.map +1 -0
- package/dist/responses.cjs +304 -196
- package/dist/responses.cjs.map +1 -1
- package/dist/responses.d.cts.map +1 -1
- package/dist/responses.d.ts.map +1 -1
- package/dist/responses.js +303 -195
- package/dist/responses.js.map +1 -1
- package/dist/route-registry.cjs +45 -0
- package/dist/route-registry.cjs.map +1 -1
- package/dist/route-registry.d.cts.map +1 -1
- package/dist/route-registry.d.ts.map +1 -1
- package/dist/route-registry.js +41 -1
- package/dist/route-registry.js.map +1 -1
- package/dist/router.cjs +24 -4
- package/dist/router.cjs.map +1 -1
- package/dist/router.d.cts +7 -1
- package/dist/router.d.cts.map +1 -1
- package/dist/router.d.ts +7 -1
- package/dist/router.d.ts.map +1 -1
- package/dist/router.js +24 -5
- package/dist/router.js.map +1 -1
- package/dist/search.cjs +13 -11
- package/dist/search.cjs.map +1 -1
- package/dist/search.js +12 -10
- package/dist/search.js.map +1 -1
- package/dist/server.cjs +293 -248
- package/dist/server.cjs.map +1 -1
- package/dist/server.d.cts.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +294 -249
- package/dist/server.js.map +1 -1
- package/dist/speech.cjs +20 -18
- package/dist/speech.cjs.map +1 -1
- package/dist/speech.d.cts.map +1 -1
- package/dist/speech.d.ts.map +1 -1
- package/dist/speech.js +19 -17
- package/dist/speech.js.map +1 -1
- package/dist/sse-writer.cjs +56 -30
- package/dist/sse-writer.cjs.map +1 -1
- package/dist/sse-writer.d.cts +0 -1
- package/dist/sse-writer.d.cts.map +1 -1
- package/dist/sse-writer.d.ts +0 -1
- package/dist/sse-writer.d.ts.map +1 -1
- package/dist/sse-writer.js +55 -31
- package/dist/sse-writer.js.map +1 -1
- package/dist/stream-collapse.cjs +118 -11
- package/dist/stream-collapse.cjs.map +1 -1
- package/dist/stream-collapse.d.cts +10 -9
- package/dist/stream-collapse.d.cts.map +1 -1
- package/dist/stream-collapse.d.ts +10 -9
- package/dist/stream-collapse.d.ts.map +1 -1
- package/dist/stream-collapse.js +118 -11
- package/dist/stream-collapse.js.map +1 -1
- package/dist/transcription.cjs +31 -43
- package/dist/transcription.cjs.map +1 -1
- package/dist/transcription.d.cts.map +1 -1
- package/dist/transcription.d.ts.map +1 -1
- package/dist/transcription.js +31 -43
- package/dist/transcription.js.map +1 -1
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.cts +231 -9
- package/dist/types.d.cts.map +1 -1
- package/dist/types.d.ts +231 -9
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/vector-mock.cjs +3 -8
- package/dist/vector-mock.cjs.map +1 -1
- package/dist/vector-mock.d.cts.map +1 -1
- package/dist/vector-mock.d.ts.map +1 -1
- package/dist/vector-mock.js +3 -8
- package/dist/vector-mock.js.map +1 -1
- package/dist/vector-stores.cjs +2 -4
- package/dist/vector-stores.cjs.map +1 -1
- package/dist/vector-stores.d.cts.map +1 -1
- package/dist/vector-stores.d.ts.map +1 -1
- package/dist/vector-stores.js +2 -4
- package/dist/vector-stores.js.map +1 -1
- package/dist/veo-video.cjs +16 -14
- package/dist/veo-video.cjs.map +1 -1
- package/dist/veo-video.js +10 -8
- package/dist/veo-video.js.map +1 -1
- package/dist/video.cjs +21 -19
- package/dist/video.cjs.map +1 -1
- package/dist/video.d.cts.map +1 -1
- package/dist/video.d.ts.map +1 -1
- package/dist/video.js +20 -18
- package/dist/video.js.map +1 -1
- package/dist/ws-framing.cjs +12 -6
- package/dist/ws-framing.cjs.map +1 -1
- package/dist/ws-framing.d.cts +2 -0
- package/dist/ws-framing.d.cts.map +1 -1
- package/dist/ws-framing.d.ts +2 -0
- package/dist/ws-framing.d.ts.map +1 -1
- package/dist/ws-framing.js +12 -6
- package/dist/ws-framing.js.map +1 -1
- package/dist/ws-gemini-live.cjs +131 -96
- package/dist/ws-gemini-live.cjs.map +1 -1
- package/dist/ws-gemini-live.d.cts +0 -1
- package/dist/ws-gemini-live.d.cts.map +1 -1
- package/dist/ws-gemini-live.d.ts +0 -1
- package/dist/ws-gemini-live.d.ts.map +1 -1
- package/dist/ws-gemini-live.js +130 -95
- package/dist/ws-gemini-live.js.map +1 -1
- package/dist/ws-live.cjs +6 -5
- package/dist/ws-live.cjs.map +1 -1
- package/dist/ws-live.js +5 -4
- package/dist/ws-live.js.map +1 -1
- package/dist/ws-realtime.cjs +108 -124
- package/dist/ws-realtime.cjs.map +1 -1
- package/dist/ws-realtime.d.cts.map +1 -1
- package/dist/ws-realtime.d.ts.map +1 -1
- package/dist/ws-realtime.js +105 -121
- package/dist/ws-realtime.js.map +1 -1
- package/dist/ws-responses.cjs +80 -59
- package/dist/ws-responses.cjs.map +1 -1
- package/dist/ws-responses.d.cts.map +1 -1
- package/dist/ws-responses.d.ts.map +1 -1
- package/dist/ws-responses.js +79 -58
- package/dist/ws-responses.js.map +1 -1
- package/package.json +4 -1
- package/skills/write-fixtures/SKILL.md +57 -16
package/dist/openapi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openapi.js","names":[],"sources":["../src/openapi.ts"],"sourcesContent":["/**\n * Machine-readable route catalog for aimock.\n *\n * `GET /__aimock/openapi.json` returns an OpenAPI 3.1 document and\n * `GET /__aimock/routes` returns the same list in a `{ count, routes }` object for\n * shells that just need `method + path`. SDK codegen, docs checks, and\n * harness smoke tests can assert against this instead of hard-coding a\n * route list that drifts.\n *\n * The catalog is DERIVED from the router's single source of truth\n * (`route-registry.ts`, which `server.ts` also imports for dispatch and\n * `metrics.ts` imports for path labels), so it cannot drift from the mounted\n * routes. Every operation carries a real `requestBody` / `responses` schema\n * (or an explicit non-JSON media type for audio/binary bodies) — a client can\n * build requests from this document, not just read paths off it.\n */\n\nimport {\n ROUTE_DEFINITIONS,\n COMPLETIONS_PATH,\n RESPONSES_PATH,\n MESSAGES_PATH,\n EMBEDDINGS_PATH,\n COHERE_CHAT_PATH,\n COHERE_EMBED_PATH,\n SEARCH_PATH,\n RERANK_PATH,\n MODERATIONS_PATH,\n IMAGES_PATH,\n SPEECH_PATH,\n MODELS_PATH,\n} from \"./route-registry.js\";\n\nexport interface CatalogRoute {\n method: string;\n path: string;\n service: string;\n description: string;\n}\n\n/** Flat `method + path` list, derived from the router registry. */\nexport const CATALOG_ROUTES: CatalogRoute[] = ROUTE_DEFINITIONS.map((r) => ({\n method: r.method,\n path: r.path,\n service: r.service,\n description: r.description,\n}));\n\nfunction pathParams(openApiPath: string): Record<string, unknown>[] {\n const params: Record<string, unknown>[] = [];\n for (const match of openApiPath.matchAll(/\\{([^}]+)\\}/g)) {\n params.push({\n name: match[1],\n in: \"path\",\n required: true,\n schema: { type: \"string\" },\n });\n }\n return params;\n}\n\nconst COMPONENTS: Record<string, unknown> = {\n ChatCompletionRequest: {\n type: \"object\",\n required: [\"model\", \"messages\"],\n properties: {\n model: { type: \"string\", description: \"Model ID\" },\n messages: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"role\", \"content\"],\n properties: {\n role: { type: \"string\", enum: [\"system\", \"user\", \"assistant\", \"tool\"] },\n content: {\n oneOf: [\n { type: \"null\" },\n { type: \"string\" },\n {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"type\"],\n properties: {\n type: {\n type: \"string\",\n enum: [\"text\", \"image_url\", \"input_audio\", \"file\"],\n },\n text: { type: \"string\" },\n image_url: {\n type: \"object\",\n properties: {\n url: { type: \"string\" },\n detail: { type: \"string\" },\n },\n },\n },\n },\n },\n ],\n },\n name: { type: \"string\" },\n tool_calls: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"id\", \"type\", \"function\"],\n properties: {\n id: { type: \"string\" },\n type: { type: \"string\", enum: [\"function\"] },\n function: {\n type: \"object\",\n required: [\"name\", \"arguments\"],\n properties: {\n name: { type: \"string\" },\n arguments: { type: \"string\" },\n },\n },\n },\n },\n },\n tool_call_id: { type: \"string\" },\n },\n },\n },\n stream: { type: \"boolean\" },\n temperature: { type: \"number\" },\n top_p: { type: \"number\" },\n max_tokens: { type: \"integer\" },\n max_completion_tokens: { type: \"integer\" },\n tools: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"type\", \"function\"],\n properties: {\n type: { type: \"string\", enum: [\"function\"] },\n function: {\n type: \"object\",\n required: [\"name\"],\n properties: {\n name: { type: \"string\" },\n description: { type: \"string\" },\n parameters: { type: \"object\" },\n },\n },\n },\n },\n },\n tool_choice: {\n oneOf: [\n { type: \"string\", enum: [\"none\", \"auto\", \"required\"] },\n {\n type: \"object\",\n required: [\"type\", \"function\"],\n properties: {\n type: { type: \"string\", enum: [\"function\"] },\n function: { type: \"object\", properties: { name: { type: \"string\" } } },\n },\n },\n ],\n },\n response_format: {\n type: \"object\",\n properties: {\n type: { type: \"string\", enum: [\"text\", \"json_object\", \"json_schema\"] },\n json_schema: { type: \"object\" },\n },\n },\n seed: { type: \"integer\" },\n stop: { oneOf: [{ type: \"string\" }, { type: \"array\", items: { type: \"string\" } }] },\n },\n },\n ChatCompletionEventStream: {\n type: \"string\",\n description:\n \"When stream:true, SSE frames contain data: followed by a JSON ChatCompletionChunk and a blank line. The final frame is data: [DONE] followed by a blank line. x-sse-data-schema describes each JSON data payload, not the complete stream.\",\n \"x-sse-data-schema\": { $ref: \"#/components/schemas/ChatCompletionChunk\" },\n },\n ChatCompletionChunk: {\n type: \"object\",\n required: [\"id\", \"object\", \"created\", \"model\", \"choices\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"chat.completion.chunk\"] },\n created: { type: \"integer\" },\n model: { type: \"string\" },\n choices: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"index\", \"delta\", \"finish_reason\"],\n properties: {\n index: { type: \"integer\" },\n delta: {\n type: \"object\",\n properties: {\n role: { type: \"string\" },\n content: { type: [\"string\", \"null\"] },\n reasoning_content: { type: \"string\" },\n tool_calls: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"index\"],\n properties: {\n index: { type: \"integer\" },\n id: { type: \"string\" },\n type: { type: \"string\", enum: [\"function\"] },\n function: {\n type: \"object\",\n properties: {\n name: { type: \"string\" },\n arguments: { type: \"string\" },\n },\n },\n },\n },\n },\n },\n },\n finish_reason: { type: [\"string\", \"null\"] },\n },\n },\n },\n },\n },\n ChatCompletionResponse: {\n type: \"object\",\n required: [\"id\", \"object\", \"created\", \"model\", \"choices\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"chat.completion\"] },\n created: { type: \"integer\" },\n model: { type: \"string\" },\n choices: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"index\", \"message\", \"finish_reason\"],\n properties: {\n index: { type: \"integer\" },\n message: {\n type: \"object\",\n required: [\"role\", \"content\"],\n properties: {\n role: { type: \"string\" },\n content: { type: [\"string\", \"null\"] },\n tool_calls: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n id: { type: \"string\" },\n type: { type: \"string\" },\n function: {\n type: \"object\",\n properties: {\n name: { type: \"string\" },\n arguments: { type: \"string\" },\n },\n },\n },\n },\n },\n },\n },\n finish_reason: {\n type: [\"string\", \"null\"],\n enum: [\"stop\", \"length\", \"tool_calls\", \"content_filter\", null],\n },\n },\n },\n },\n usage: {\n type: \"object\",\n properties: {\n prompt_tokens: { type: \"integer\" },\n completion_tokens: { type: \"integer\" },\n total_tokens: { type: \"integer\" },\n },\n },\n },\n },\n ResponsesRequest: {\n type: \"object\",\n required: [\"model\", \"input\"],\n properties: {\n model: { type: \"string\", description: \"Model ID\" },\n input: {\n oneOf: [\n { type: \"string\" },\n {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"role\", \"content\"],\n properties: {\n role: { type: \"string\" },\n content: { type: \"string\" },\n },\n },\n },\n ],\n },\n stream: { type: \"boolean\" },\n instructions: { type: \"string\" },\n max_output_tokens: { type: \"integer\" },\n temperature: { type: \"number\" },\n tools: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"type\"],\n properties: {\n type: { type: \"string\" },\n name: { type: \"string\" },\n },\n },\n },\n tool_choice: { type: \"string\" },\n },\n },\n ResponsesResponse: {\n type: \"object\",\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"response\"] },\n created_at: { type: \"integer\" },\n model: { type: \"string\" },\n status: { type: \"string\" },\n output: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"type\"],\n properties: {\n type: { type: \"string\" },\n id: { type: \"string\" },\n status: { type: \"string\" },\n role: { type: \"string\" },\n content: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n type: { type: \"string\" },\n text: { type: \"string\" },\n },\n },\n },\n },\n },\n },\n usage: {\n type: \"object\",\n properties: {\n input_tokens: { type: \"integer\" },\n output_tokens: { type: \"integer\" },\n total_tokens: { type: \"integer\" },\n },\n },\n },\n },\n MessagesRequest: {\n type: \"object\",\n required: [\"model\", \"messages\", \"max_tokens\"],\n properties: {\n model: { type: \"string\", description: \"Model ID\" },\n messages: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"role\", \"content\"],\n properties: {\n role: { type: \"string\", enum: [\"user\", \"assistant\"] },\n content: {\n oneOf: [\n { type: \"string\" },\n {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"type\"],\n properties: {\n type: {\n type: \"string\",\n enum: [\"text\", \"image\", \"tool_use\", \"tool_result\", \"thinking\"],\n },\n text: { type: \"string\" },\n id: { type: \"string\" },\n name: { type: \"string\" },\n input: { type: \"object\" },\n },\n },\n },\n ],\n },\n },\n },\n },\n max_tokens: { type: \"integer\" },\n system: { type: \"string\" },\n temperature: { type: \"number\" },\n top_p: { type: \"number\" },\n stream: { type: \"boolean\" },\n stop_sequences: { type: \"array\", items: { type: \"string\" } },\n tools: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"name\", \"input_schema\"],\n properties: {\n name: { type: \"string\" },\n description: { type: \"string\" },\n input_schema: { type: \"object\" },\n },\n },\n },\n tool_choice: { type: \"object\" },\n },\n },\n MessagesResponse: {\n type: \"object\",\n required: [\"id\", \"type\", \"role\", \"content\", \"model\", \"stop_reason\", \"usage\"],\n properties: {\n id: { type: \"string\" },\n type: { type: \"string\", enum: [\"message\"] },\n role: { type: \"string\", enum: [\"assistant\"] },\n content: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"type\"],\n properties: {\n type: { type: \"string\", enum: [\"text\", \"tool_use\"] },\n text: { type: \"string\" },\n id: { type: \"string\" },\n name: { type: \"string\" },\n input: { type: \"object\" },\n },\n },\n },\n model: { type: \"string\" },\n stop_reason: {\n type: [\"string\", \"null\"],\n enum: [\"end_turn\", \"max_tokens\", \"stop_sequence\", \"tool_use\", null],\n },\n usage: {\n type: \"object\",\n required: [\"input_tokens\", \"output_tokens\"],\n properties: {\n input_tokens: { type: \"integer\" },\n output_tokens: { type: \"integer\" },\n },\n },\n },\n },\n EmbeddingRequest: {\n type: \"object\",\n required: [\"model\", \"input\"],\n properties: {\n model: { type: \"string\", description: \"Model ID\" },\n input: {\n oneOf: [\n { type: \"string\" },\n { type: \"array\", items: { type: \"string\" } },\n { type: \"array\", items: { type: \"integer\" } },\n { type: \"array\", items: { type: \"array\", items: { type: \"integer\" } } },\n ],\n },\n encoding_format: { type: \"string\", enum: [\"float\", \"base64\"] },\n dimensions: { type: \"integer\" },\n },\n },\n EmbeddingResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"object\", \"index\", \"embedding\"],\n properties: {\n object: { type: \"string\", enum: [\"embedding\"] },\n index: { type: \"integer\" },\n embedding: { type: \"array\", items: { type: \"number\" } },\n },\n },\n },\n model: { type: \"string\" },\n usage: {\n type: \"object\",\n properties: {\n prompt_tokens: { type: \"integer\" },\n total_tokens: { type: \"integer\" },\n },\n },\n },\n },\n CohereChatRequest: {\n type: \"object\",\n required: [\"model\", \"messages\"],\n properties: {\n model: { type: \"string\", description: \"Model ID\" },\n messages: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"role\", \"content\"],\n properties: {\n role: { type: \"string\", enum: [\"system\", \"user\", \"assistant\", \"tool\"] },\n content: { type: \"string\" },\n tool_calls: { type: \"array\", items: { type: \"object\" } },\n tool_plan: { type: \"string\" },\n },\n },\n },\n temperature: { type: \"number\" },\n max_tokens: { type: \"integer\" },\n stream: { type: \"boolean\" },\n tools: { type: \"array\", items: { type: \"object\" } },\n documents: { type: \"array\", items: { type: \"object\" } },\n },\n },\n CohereChatResponse: {\n type: \"object\",\n properties: {\n id: { type: \"string\" },\n finish_reason: { type: \"string\" },\n message: {\n type: \"object\",\n properties: {\n role: { type: \"string\", enum: [\"assistant\"] },\n content: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n type: { type: \"string\" },\n text: { type: \"string\" },\n },\n },\n },\n tool_calls: { type: \"array\", items: { type: \"object\" } },\n },\n },\n usage: {\n type: \"object\",\n properties: {\n billed_units: {\n type: \"object\",\n properties: {\n input_tokens: { type: \"integer\" },\n output_tokens: { type: \"integer\" },\n },\n },\n },\n },\n },\n },\n CohereEmbedRequest: {\n type: \"object\",\n required: [\"model\", \"texts\"],\n properties: {\n model: { type: \"string\", description: \"Model ID\" },\n texts: { type: \"array\", items: { type: \"string\" } },\n input_type: {\n type: \"string\",\n enum: [\"search_document\", \"search_query\", \"classification\", \"clustering\"],\n },\n embedding_types: { type: \"array\", items: { type: \"string\" } },\n },\n },\n CohereEmbedResponse: {\n type: \"object\",\n properties: {\n id: { type: \"string\" },\n embeddings: { type: \"array\", items: { type: \"array\", items: { type: \"number\" } } },\n texts: { type: \"array\", items: { type: \"string\" } },\n meta: {\n type: \"object\",\n properties: {\n billed_units: {\n type: \"object\",\n properties: {\n input_tokens: { type: \"integer\" },\n output_tokens: { type: \"integer\" },\n },\n },\n },\n },\n },\n },\n OllamaChatRequest: {\n type: \"object\",\n required: [\"model\", \"messages\"],\n properties: {\n model: { type: \"string\" },\n messages: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"role\", \"content\"],\n properties: {\n role: { type: \"string\" },\n content: { type: \"string\" },\n images: { type: \"array\", items: { type: \"string\" } },\n tool_calls: { type: \"array\", items: { type: \"object\" } },\n },\n },\n },\n stream: { type: \"boolean\" },\n format: { type: \"string\" },\n options: { type: \"object\" },\n tools: { type: \"array\", items: { type: \"object\" } },\n },\n },\n OllamaChatResponse: {\n type: \"object\",\n properties: {\n model: { type: \"string\" },\n created_at: { type: \"string\" },\n message: {\n type: \"object\",\n properties: {\n role: { type: \"string\" },\n content: { type: \"string\" },\n tool_calls: { type: \"array\", items: { type: \"object\" } },\n },\n },\n done: { type: \"boolean\" },\n done_reason: { type: \"string\" },\n },\n },\n OllamaGenerateRequest: {\n type: \"object\",\n required: [\"model\", \"prompt\"],\n properties: {\n model: { type: \"string\" },\n prompt: { type: \"string\" },\n suffix: { type: \"string\" },\n system: { type: \"string\" },\n stream: { type: \"boolean\" },\n format: { type: \"string\" },\n options: { type: \"object\" },\n },\n },\n OllamaGenerateResponse: {\n type: \"object\",\n properties: {\n model: { type: \"string\" },\n created_at: { type: \"string\" },\n response: { type: \"string\" },\n done: { type: \"boolean\" },\n done_reason: { type: \"string\" },\n },\n },\n OllamaEmbedRequest: {\n type: \"object\",\n required: [\"model\"],\n anyOf: [\n { required: [\"prompt\"], properties: { prompt: { not: { type: \"null\" } } } },\n { required: [\"input\"], properties: { input: { not: { type: \"null\" } } } },\n ],\n properties: {\n model: { type: \"string\" },\n prompt: { type: [\"string\", \"null\"] },\n input: {\n anyOf: [\n { type: \"null\" },\n { type: \"string\" },\n { type: \"array\", items: { type: \"string\" } },\n { type: \"array\", items: { type: \"number\" } },\n { type: \"array\", items: { type: \"array\", items: { type: \"number\" } } },\n ],\n },\n },\n },\n OllamaEmbedResponse: {\n type: \"object\",\n required: [\"model\", \"embedding\"],\n properties: {\n model: { type: \"string\" },\n embedding: { type: \"array\", items: { type: \"number\" } },\n },\n },\n OllamaTagsResponse: {\n type: \"object\",\n properties: {\n models: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n name: { type: \"string\" },\n model: { type: \"string\" },\n modified_at: { type: \"string\" },\n size: { type: \"integer\" },\n digest: { type: \"string\" },\n details: { type: \"object\" },\n },\n },\n },\n },\n },\n ImageGenerationRequest: {\n type: \"object\",\n required: [\"prompt\"],\n properties: {\n prompt: { type: \"string\" },\n model: { type: \"string\" },\n size: { type: \"string\" },\n quality: { type: \"string\" },\n style: { type: \"string\", enum: [\"vivid\", \"natural\"] },\n n: { type: \"integer\" },\n response_format: { type: \"string\", enum: [\"url\", \"b64_json\"] },\n },\n },\n ImageEditRequest: {\n type: \"object\",\n required: [\"image\", \"prompt\"],\n properties: {\n image: { type: \"string\", format: \"binary\", description: \"Image to edit (multipart file)\" },\n prompt: { type: \"string\" },\n mask: { type: \"string\", format: \"binary\", description: \"Edit mask (multipart file)\" },\n model: { type: \"string\" },\n size: { type: \"string\" },\n n: { type: \"integer\" },\n response_format: { type: \"string\", enum: [\"url\", \"b64_json\"] },\n },\n },\n ImageResponse: {\n type: \"object\",\n properties: {\n created: { type: \"integer\" },\n data: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n url: { type: \"string\" },\n b64_json: { type: \"string\" },\n revised_prompt: { type: \"string\" },\n },\n },\n },\n },\n },\n SpeechRequest: {\n type: \"object\",\n required: [\"model\", \"input\"],\n properties: {\n model: { type: \"string\", description: \"Model ID\" },\n input: { type: \"string\", description: \"Text to synthesize\" },\n voice: { type: \"string\" },\n speed: { type: \"number\" },\n response_format: { type: \"string\", enum: [\"mp3\", \"opus\", \"aac\", \"flac\", \"wav\", \"pcm\"] },\n instructions: { type: \"string\" },\n },\n },\n TranscriptionRequest: {\n type: \"object\",\n required: [\"file\", \"model\"],\n properties: {\n file: { type: \"string\", format: \"binary\", description: \"Audio file (multipart)\" },\n model: { type: \"string\" },\n language: { type: \"string\" },\n response_format: { type: \"string\", enum: [\"json\", \"text\", \"srt\", \"vtt\"] },\n temperature: { type: \"number\" },\n },\n },\n TranscriptionResponse: {\n type: \"object\",\n required: [\"text\"],\n properties: {\n text: { type: \"string\" },\n language: { type: \"string\" },\n duration: { type: \"number\" },\n },\n },\n ModerationRequest: {\n type: \"object\",\n required: [\"input\"],\n properties: {\n input: { oneOf: [{ type: \"string\" }, { type: \"array\", items: { type: \"string\" } }] },\n model: { type: \"string\" },\n },\n },\n ModerationResponse: {\n type: \"object\",\n properties: {\n id: { type: \"string\" },\n model: { type: \"string\" },\n results: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"flagged\", \"categories\", \"category_scores\"],\n properties: {\n flagged: { type: \"boolean\" },\n categories: {\n type: \"object\",\n properties: {\n sexual: { type: \"boolean\" },\n hate: { type: \"boolean\" },\n harassment: { type: \"boolean\" },\n \"self-harm\": { type: \"boolean\" },\n \"sexual/minors\": { type: \"boolean\" },\n \"hate/threatening\": { type: \"boolean\" },\n \"violence/graphic\": { type: \"boolean\" },\n \"self-harm/intent\": { type: \"boolean\" },\n \"self-harm/instructions\": { type: \"boolean\" },\n harassment_threatening: { type: \"boolean\" },\n violence: { type: \"boolean\" },\n },\n },\n category_scores: {\n type: \"object\",\n properties: {\n sexual: { type: \"number\" },\n hate: { type: \"number\" },\n harassment: { type: \"number\" },\n \"self-harm\": { type: \"number\" },\n \"sexual/minors\": { type: \"number\" },\n \"hate/threatening\": { type: \"number\" },\n \"violence/graphic\": { type: \"number\" },\n \"self-harm/intent\": { type: \"number\" },\n \"self-harm/instructions\": { type: \"number\" },\n harassment_threatening: { type: \"number\" },\n violence: { type: \"number\" },\n },\n },\n },\n },\n },\n },\n },\n SearchRequest: {\n type: \"object\",\n required: [\"query\"],\n properties: {\n query: { type: \"string\" },\n max_results: { type: \"integer\" },\n search_depth: { type: \"string\" },\n include_answer: { type: \"boolean\" },\n },\n },\n SearchResponse: {\n type: \"object\",\n properties: {\n results: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"title\", \"url\", \"content\"],\n properties: {\n title: { type: \"string\" },\n url: { type: \"string\" },\n content: { type: \"string\" },\n score: { type: \"number\" },\n },\n },\n },\n answer: { type: \"string\" },\n },\n },\n RerankRequest: {\n type: \"object\",\n required: [\"query\", \"documents\"],\n properties: {\n model: { type: \"string\" },\n query: { type: \"string\" },\n documents: {\n type: \"array\",\n items: { oneOf: [{ type: \"string\" }, { type: \"object\" }] },\n },\n top_n: { type: \"integer\" },\n return_documents: { type: \"boolean\" },\n },\n },\n RerankResponse: {\n type: \"object\",\n properties: {\n id: { type: \"string\" },\n results: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"index\", \"relevance_score\"],\n properties: {\n index: { type: \"integer\" },\n relevance_score: { type: \"number\" },\n document: { type: \"object\" },\n },\n },\n },\n },\n },\n GeminiGenerateRequest: {\n type: \"object\",\n required: [\"contents\"],\n properties: {\n contents: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n role: { type: \"string\", enum: [\"user\", \"model\"] },\n parts: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n text: { type: \"string\" },\n inlineData: {\n type: \"object\",\n properties: {\n mimeType: { type: \"string\" },\n data: { type: \"string\" },\n },\n },\n },\n },\n },\n },\n },\n },\n generationConfig: {\n type: \"object\",\n properties: {\n temperature: { type: \"number\" },\n topP: { type: \"number\" },\n maxOutputTokens: { type: \"integer\" },\n stopSequences: { type: \"array\", items: { type: \"string\" } },\n },\n },\n safetySettings: { type: \"array\", items: { type: \"object\" } },\n tools: { type: \"array\", items: { type: \"object\" } },\n },\n },\n GeminiGenerateEventStream: {\n type: \"string\",\n description:\n \"SSE frames contain data: followed by a JSON GeminiGenerateResponse and a blank line. Each payload carries candidates with content.parts; the final payload carries finishReason and usageMetadata. The stream ends at EOF without a [DONE] frame. x-sse-data-schema describes each JSON data payload, not the complete stream.\",\n \"x-sse-data-schema\": { $ref: \"#/components/schemas/GeminiGenerateResponse\" },\n },\n GeminiGenerateResponse: {\n type: \"object\",\n properties: {\n candidates: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n index: { type: \"integer\" },\n content: {\n type: \"object\",\n properties: {\n role: { type: \"string\" },\n parts: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n text: { type: \"string\" },\n functionCall: { type: \"object\" },\n },\n },\n },\n },\n },\n finishReason: { type: \"string\" },\n },\n },\n },\n usageMetadata: {\n type: \"object\",\n properties: {\n promptTokenCount: { type: \"integer\" },\n candidatesTokenCount: { type: \"integer\" },\n totalTokenCount: { type: \"integer\" },\n },\n },\n modelVersion: { type: \"string\" },\n },\n },\n GeminiEmbedRequest: {\n type: \"object\",\n required: [\"content\"],\n properties: {\n content: {\n type: \"object\",\n properties: {\n parts: {\n type: \"array\",\n items: { type: \"object\", properties: { text: { type: \"string\" } } },\n },\n },\n },\n },\n },\n GeminiEmbedResponse: {\n type: \"object\",\n properties: {\n embedding: {\n type: \"object\",\n properties: {\n values: { type: \"array\", items: { type: \"number\" } },\n },\n },\n },\n },\n GeminiPredictRequest: {\n type: \"object\",\n required: [\"instances\"],\n properties: {\n instances: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n prompt: { type: \"string\" },\n },\n },\n },\n parameters: {\n type: \"object\",\n properties: {\n sampleCount: { type: \"integer\" },\n aspectRatio: { type: \"string\" },\n safetyFilterLevel: { type: \"string\" },\n },\n },\n },\n },\n GeminiPredictResponse: {\n type: \"object\",\n properties: {\n predictions: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n bytesBase64Encoded: { type: \"string\" },\n mimeType: { type: \"string\" },\n },\n },\n },\n },\n },\n InteractionsRequest: {\n type: \"object\",\n description:\n \"Gemini Interactions input normalized for fixture matching; streams unless stream is false.\",\n properties: {\n model: { type: \"string\" },\n input: {\n description: \"Text, turns, steps, or content blocks normalized for fixture matching.\",\n oneOf: [{ type: \"string\" }, { type: \"array\", items: { type: \"object\" } }],\n },\n system_instruction: { type: \"string\" },\n tools: { type: \"array\", items: { type: \"object\" } },\n generation_config: {\n type: \"object\",\n properties: {\n temperature: { type: \"number\" },\n max_output_tokens: { type: \"integer\" },\n },\n },\n stream: { type: \"boolean\", default: true },\n previous_interaction_id: { type: \"string\" },\n },\n },\n InteractionsResponse: {\n type: \"object\",\n description:\n \"Nonstreaming Interactions response. output_text is omitted for tool-only responses.\",\n required: [\"id\", \"status\", \"model\", \"role\", \"steps\", \"usage\"],\n properties: {\n id: { type: \"string\" },\n status: { type: \"string\", enum: [\"completed\", \"requires_action\"] },\n model: { type: \"string\" },\n role: { type: \"string\", enum: [\"model\"] },\n output_text: { type: \"string\" },\n steps: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n type: { type: \"string\", enum: [\"model_output\", \"function_call\"] },\n content: { type: \"array\", items: { type: \"object\" } },\n id: { type: \"string\" },\n name: { type: \"string\" },\n arguments: {},\n },\n },\n },\n usage: {\n type: \"object\",\n properties: {\n total_input_tokens: { type: \"number\" },\n total_output_tokens: { type: \"number\" },\n total_tokens: { type: \"number\" },\n },\n },\n },\n },\n InteractionsSSEStream: {\n type: \"string\",\n description:\n \"SSE data: JSON frames separated by a blank line, with no event: prefix or [DONE] sentinel. Event identity is in event_type; a complete stream ends with interaction.completed. Interruption may end the stream earlier.\",\n \"x-sse-data-schema\": { $ref: \"#/components/schemas/InteractionsSSEEvent\" },\n },\n InteractionsSSEEvent: {\n type: \"object\",\n required: [\"event_type\", \"event_id\"],\n properties: {\n event_type: {\n type: \"string\",\n enum: [\n \"interaction.created\",\n \"step.start\",\n \"step.delta\",\n \"step.stop\",\n \"interaction.completed\",\n ],\n },\n event_id: { type: \"string\" },\n index: { type: \"integer\" },\n interaction: {\n type: \"object\",\n properties: {\n id: { type: \"string\" },\n status: { type: \"string\", enum: [\"in_progress\", \"completed\", \"requires_action\"] },\n usage: { type: \"object\" },\n },\n },\n step: { type: \"object\" },\n delta: {\n type: \"object\",\n properties: {\n type: { type: \"string\", enum: [\"text\", \"arguments_delta\"] },\n text: { type: \"string\" },\n arguments: { type: \"string\" },\n },\n },\n },\n },\n BedrockInvokeRequest: {\n type: \"object\",\n description:\n \"Model-dependent Bedrock invoke body (e.g. Anthropic Claude messages shape or Llama prompt shape); passed through to fixture matching.\",\n },\n BedrockInvokeResponse: {\n type: \"object\",\n description: \"Model-dependent Bedrock invoke result, replayed from the matched fixture.\",\n },\n BedrockConverseRequest: {\n type: \"object\",\n required: [\"messages\"],\n properties: {\n messages: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"role\", \"content\"],\n properties: {\n role: { type: \"string\", enum: [\"user\", \"assistant\"] },\n content: { type: \"array\", items: { type: \"object\" } },\n },\n },\n },\n system: { type: \"array\", items: { type: \"object\" } },\n inferenceConfig: {\n type: \"object\",\n properties: {\n maxTokens: { type: \"integer\" },\n temperature: { type: \"number\" },\n topP: { type: \"number\" },\n stopSequences: { type: \"array\", items: { type: \"string\" } },\n },\n },\n toolConfig: { type: \"object\" },\n },\n },\n BedrockConverseResponse: {\n type: \"object\",\n properties: {\n output: {\n type: \"object\",\n properties: {\n message: {\n type: \"object\",\n properties: {\n role: { type: \"string\" },\n content: { type: \"array\", items: { type: \"object\" } },\n },\n },\n },\n },\n stopReason: { type: \"string\" },\n usage: {\n type: \"object\",\n properties: {\n inputTokens: { type: \"integer\" },\n outputTokens: { type: \"integer\" },\n totalTokens: { type: \"integer\" },\n },\n },\n },\n },\n VideoSubmitRequest: {\n type: \"object\",\n required: [\"prompt\"],\n properties: {\n model: { type: \"string\" },\n prompt: { type: \"string\" },\n size: { type: \"string\" },\n seconds: { type: \"string\" },\n n: { type: \"integer\" },\n },\n },\n VideoJob: {\n type: \"object\",\n required: [\"id\", \"status\"],\n properties: {\n id: { type: \"string\" },\n status: { type: \"string\", enum: [\"queued\", \"in_progress\", \"completed\", \"failed\"] },\n created_at: { type: \"integer\" },\n url: { type: \"string\" },\n progress: { type: \"number\" },\n },\n },\n GrokVideoSubmitResponse: {\n type: \"object\",\n required: [\"request_id\"],\n properties: { request_id: { type: \"string\" } },\n },\n GrokVideoJob: {\n type: \"object\",\n required: [\"request_id\", \"status\"],\n properties: {\n request_id: { type: \"string\" },\n status: { type: \"string\", enum: [\"pending\", \"in_progress\", \"done\", \"failed\", \"expired\"] },\n progress: { type: \"number\" },\n video: {\n type: \"object\",\n properties: { url: { type: \"string\" }, duration: { type: \"number\" } },\n },\n usage: {\n type: \"object\",\n properties: { cost_in_usd_ticks: { type: \"number\" } },\n },\n code: { type: \"string\" },\n error: { type: \"string\" },\n },\n },\n VideoStatusResponse: {\n oneOf: [\n { $ref: \"#/components/schemas/VideoJob\" },\n { $ref: \"#/components/schemas/GrokVideoJob\" },\n ],\n },\n OpenRouterVideoSubmitRequest: {\n type: \"object\",\n required: [\"model\", \"prompt\"],\n properties: {\n model: { type: \"string\" },\n prompt: { type: \"string\" },\n aspect_ratio: { type: \"string\" },\n duration: { type: \"number\" },\n },\n },\n OpenRouterVideoJob: {\n type: \"object\",\n required: [\"id\", \"status\"],\n properties: {\n id: { type: \"string\" },\n status: { type: \"string\", enum: [\"queued\", \"in_progress\", \"completed\", \"failed\"] },\n created_at: { type: \"integer\" },\n },\n },\n OpenRouterVideoModelsResponse: {\n type: \"object\",\n properties: {\n data: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"id\"],\n properties: {\n id: { type: \"string\" },\n canonical_slug: { type: \"string\" },\n name: { type: \"string\" },\n created: { type: \"integer\" },\n description: { type: \"string\" },\n context_length: { type: \"integer\" },\n },\n },\n },\n },\n },\n OpenRouterKeyResponse: {\n type: \"object\",\n properties: {\n data: {\n type: \"object\",\n properties: {\n label: { type: \"string\" },\n usage: { type: \"number\" },\n limit: { type: [\"number\", \"null\"] },\n limit_remaining: { type: [\"number\", \"null\"] },\n is_free_tier: { type: \"boolean\" },\n rate_limit: {\n type: \"object\",\n properties: {\n requests: { type: \"integer\" },\n interval: { type: \"string\" },\n },\n },\n },\n },\n },\n },\n OpenRouterCreditsResponse: {\n type: \"object\",\n properties: {\n data: {\n type: \"object\",\n properties: {\n total_credits: { type: \"number\" },\n total_usage: { type: \"number\" },\n },\n },\n },\n },\n BytePlusSubmitRequest: {\n type: \"object\",\n required: [\"model\", \"content\"],\n properties: {\n model: { type: \"string\" },\n content: { type: \"array\", items: { type: \"object\" } },\n },\n },\n BytePlusTaskStatus: {\n type: \"object\",\n required: [\"id\", \"status\"],\n properties: {\n id: { type: \"string\" },\n model: { type: \"string\" },\n status: { type: \"string\", enum: [\"queued\", \"running\", \"succeeded\", \"failed\", \"cancelled\"] },\n created_at: { type: \"integer\" },\n },\n },\n VeoSubmitRequest: {\n type: \"object\",\n description: \"Veo `:predictLongRunning` body (instances + parameters), recorded and replayed.\",\n properties: {\n instances: { type: \"array\", items: { type: \"object\" } },\n parameters: { type: \"object\" },\n },\n },\n VeoOperation: {\n type: \"object\",\n required: [\"name\"],\n properties: {\n name: { type: \"string\" },\n done: { type: \"boolean\" },\n metadata: { type: \"object\" },\n response: { type: \"object\" },\n error: { $ref: \"#/components/schemas/ErrorResponse\" },\n },\n },\n ElevenLabsTTSRequest: {\n type: \"object\",\n required: [\"text\"],\n properties: {\n text: { type: \"string\" },\n model_id: { type: \"string\" },\n voice_settings: {\n type: \"object\",\n properties: {\n stability: { type: \"number\" },\n similarity_boost: { type: \"number\" },\n style: { type: \"number\" },\n },\n },\n output_format: { type: \"string\" },\n },\n },\n ElevenLabsVoice: {\n type: \"object\",\n required: [\"voice_id\"],\n properties: {\n voice_id: { type: \"string\" },\n name: { type: \"string\" },\n category: { type: \"string\" },\n description: { type: \"string\" },\n },\n },\n ElevenLabsVoiceDeleteResponse: {\n type: \"object\",\n required: [\"status\"],\n properties: {\n status: { type: \"string\", enum: [\"ok\"] },\n },\n },\n ElevenLabsMusicRequest: {\n type: \"object\",\n properties: {\n prompt: { type: \"string\" },\n text: { type: \"string\" },\n model_id: { type: \"string\" },\n duration_seconds: { type: \"number\" },\n output_format: { type: \"string\" },\n },\n },\n SoundGenerationRequest: {\n type: \"object\",\n required: [\"text\"],\n properties: {\n text: { type: \"string\" },\n duration_seconds: { type: \"number\" },\n prompt_influence: { type: \"number\" },\n model_id: { type: \"string\" },\n output_format: { type: \"string\" },\n },\n },\n VoiceDesignRequest: {\n type: \"object\",\n required: [\"voice_description\"],\n properties: {\n voice_description: {\n type: \"string\",\n minLength: 20,\n description: \"At least 20 code points; shorter values 400.\",\n },\n model_id: { type: \"string\" },\n text: { type: \"string\" },\n auto_generate_text: { type: \"boolean\" },\n loudness: { type: \"number\" },\n quality: { type: \"string\" },\n seed: { type: \"integer\" },\n guidance_scale: { type: \"number\" },\n },\n },\n VoiceDesignPreviewResponse: {\n type: \"object\",\n properties: {\n previews: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"generated_voice_id\"],\n properties: {\n generated_voice_id: { type: \"string\" },\n audio_base_64: { type: \"string\" },\n media_type: { type: \"string\" },\n duration_secs: { type: \"number\" },\n language: { type: \"string\" },\n },\n },\n },\n text: { type: \"string\" },\n },\n },\n VoiceCreateRequest: {\n type: \"object\",\n required: [\"voice_name\", \"generated_voice_id\"],\n properties: {\n voice_name: { type: \"string\" },\n generated_voice_id: { type: \"string\" },\n voice_description: { type: \"string\" },\n labels: { type: \"object\" },\n },\n },\n VoiceCreateResponse: {\n type: \"object\",\n required: [\"voice_id\"],\n properties: {\n voice_id: { type: \"string\" },\n },\n },\n FalQueueSubmitResponse: {\n type: \"object\",\n required: [\"request_id\"],\n properties: {\n request_id: { type: \"string\" },\n response_url: { type: \"string\" },\n status_url: { type: \"string\" },\n },\n },\n FalQueueStatusResponse: {\n type: \"object\",\n required: [\"status\"],\n properties: {\n status: { type: \"string\", enum: [\"IN_QUEUE\", \"IN_PROGRESS\", \"COMPLETED\"] },\n request_id: { type: \"string\" },\n response: { type: \"object\" },\n queue_position: { type: \"integer\" },\n },\n },\n FalRunRequest: {\n type: \"object\",\n description: \"Model-dependent synchronous run input, matched against fixtures.\",\n },\n FalRunResponse: {\n type: \"object\",\n description: \"Synchronous fal.ai result, replayed from the matched fixture.\",\n },\n FalQueueSubmitRequest: {\n type: \"object\",\n description: \"Model-dependent queue input, matched against fixtures.\",\n },\n FileUploadRequest: {\n type: \"object\",\n required: [\"file\"],\n description: \"Multipart form (file + optional purpose/filename) or a JSON body.\",\n properties: {\n file: { type: \"string\", format: \"binary\", description: \"File bytes (multipart)\" },\n purpose: { type: \"string\" },\n filename: { type: \"string\" },\n },\n },\n FileObject: {\n type: \"object\",\n required: [\"id\", \"object\", \"bytes\", \"created_at\", \"filename\", \"purpose\", \"status\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"file\"] },\n bytes: { type: \"integer\" },\n created_at: { type: \"integer\" },\n filename: { type: \"string\" },\n purpose: { type: \"string\" },\n status: { type: \"string\", enum: [\"uploaded\", \"processed\", \"pending\", \"error\"] },\n status_details: { type: \"string\" },\n },\n },\n FileListResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: { type: \"array\", items: { $ref: \"#/components/schemas/FileObject\" } },\n },\n },\n FileDeleteResponse: {\n type: \"object\",\n required: [\"id\", \"object\", \"deleted\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"file\"] },\n deleted: { type: \"boolean\" },\n },\n },\n FineTuningJobCreateRequest: {\n type: \"object\",\n required: [\"training_file\", \"model\"],\n properties: {\n training_file: { type: \"string\" },\n model: { type: \"string\" },\n validation_file: { type: [\"string\", \"null\"] },\n suffix: { type: [\"string\", \"null\"] },\n hyperparameters: {\n type: \"object\",\n properties: {\n n_epochs: { oneOf: [{ type: \"integer\" }, { type: \"string\", enum: [\"auto\"] }] },\n batch_size: { oneOf: [{ type: \"integer\" }, { type: \"string\", enum: [\"auto\"] }] },\n learning_rate_multiplier: {\n oneOf: [{ type: \"number\" }, { type: \"string\", enum: [\"auto\"] }],\n },\n },\n },\n seed: { type: [\"integer\", \"null\"] },\n integrations: { type: [\"array\", \"null\"], items: { type: \"object\" } },\n method: { type: [\"object\", \"null\"] },\n metadata: { type: [\"object\", \"null\"] },\n },\n },\n FineTuningJob: {\n type: \"object\",\n required: [\"id\", \"object\", \"model\", \"training_file\", \"status\", \"created_at\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"fine_tuning.job\"] },\n model: { type: \"string\" },\n training_file: { type: \"string\" },\n validation_file: { type: [\"string\", \"null\"] },\n status: {\n type: \"string\",\n enum: [\"validating_files\", \"queued\", \"running\", \"succeeded\", \"cancelled\", \"failed\"],\n },\n created_at: { type: \"integer\" },\n finished_at: { type: [\"integer\", \"null\"] },\n fine_tuned_model: { type: [\"string\", \"null\"] },\n hyperparameters: { type: \"object\" },\n error: { type: [\"object\", \"null\"] },\n organization_id: { type: \"string\" },\n result_files: { type: \"array\", items: { type: \"string\" } },\n seed: { type: \"integer\" },\n trained_tokens: { type: [\"integer\", \"null\"] },\n },\n },\n FineTuningJobListResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: { type: \"array\", items: { $ref: \"#/components/schemas/FineTuningJob\" } },\n has_more: { type: \"boolean\" },\n },\n },\n FineTuningJobEvent: {\n type: \"object\",\n required: [\"id\", \"object\", \"created_at\", \"level\", \"message\", \"type\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"fine_tuning.job.event\"] },\n created_at: { type: \"integer\" },\n level: { type: \"string\", enum: [\"info\", \"warn\", \"error\"] },\n message: { type: \"string\" },\n type: { type: \"string\", enum: [\"message\"] },\n },\n },\n FineTuningJobEventListResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: { type: \"array\", items: { $ref: \"#/components/schemas/FineTuningJobEvent\" } },\n has_more: { type: \"boolean\" },\n },\n },\n BatchCreateRequest: {\n type: \"object\",\n required: [\"input_file_id\", \"endpoint\", \"completion_window\"],\n properties: {\n input_file_id: { type: \"string\" },\n endpoint: {\n type: \"string\",\n enum: [\"/v1/responses\", \"/v1/chat/completions\", \"/v1/embeddings\", \"/v1/completions\"],\n },\n completion_window: { type: \"string\", enum: [\"24h\"] },\n metadata: { type: \"object\" },\n },\n },\n BatchObject: {\n type: \"object\",\n required: [\n \"id\",\n \"object\",\n \"endpoint\",\n \"input_file_id\",\n \"completion_window\",\n \"status\",\n \"created_at\",\n ],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"batch\"] },\n endpoint: { type: \"string\" },\n input_file_id: { type: \"string\" },\n completion_window: { type: \"string\" },\n status: {\n type: \"string\",\n enum: [\n \"validating\",\n \"in_progress\",\n \"completed\",\n \"failed\",\n \"expired\",\n \"cancelling\",\n \"cancelled\",\n ],\n },\n created_at: { type: \"integer\" },\n metadata: { type: \"object\" },\n in_progress_at: { type: \"integer\" },\n completed_at: { type: \"integer\" },\n failed_at: { type: \"integer\" },\n expired_at: { type: \"integer\" },\n cancelling_at: { type: \"integer\" },\n cancelled_at: { type: \"integer\" },\n output_file_id: { type: \"string\" },\n error_file_id: { type: \"string\" },\n errors: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n code: { type: \"string\" },\n message: { type: \"string\" },\n param: { type: [\"string\", \"null\"] },\n line: { type: [\"integer\", \"null\"] },\n },\n },\n },\n },\n },\n request_counts: {\n type: \"object\",\n properties: {\n total: { type: \"integer\" },\n completed: { type: \"integer\" },\n failed: { type: \"integer\" },\n },\n },\n },\n },\n BatchListResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: { type: \"array\", items: { $ref: \"#/components/schemas/BatchObject\" } },\n has_more: { type: \"boolean\" },\n first_id: { type: [\"string\", \"null\"] },\n last_id: { type: [\"string\", \"null\"] },\n },\n },\n VectorStore: {\n type: \"object\",\n required: [\"id\", \"object\", \"created_at\", \"name\", \"usage_bytes\", \"file_counts\", \"status\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"vector_store\"] },\n created_at: { type: \"integer\" },\n name: { type: \"string\" },\n usage_bytes: { type: \"integer\" },\n file_counts: { type: \"object\" },\n status: { type: \"string\", enum: [\"expired\", \"in_progress\", \"completed\"] },\n metadata: { type: [\"object\", \"null\"] },\n expires_after: { $ref: \"#/components/schemas/VectorStoreExpiresAfter\" },\n chunking_strategy: { $ref: \"#/components/schemas/VectorStoreChunkingStrategyRequest\" },\n expires_at: { type: [\"integer\", \"null\"] },\n last_active_at: { type: [\"integer\", \"null\"] },\n },\n },\n VectorStoreDeleteResponse: {\n type: \"object\",\n required: [\"id\", \"object\", \"deleted\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"vector_store.deleted\"] },\n deleted: { type: \"boolean\", enum: [true] },\n },\n },\n VectorStoreListResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: { type: \"array\", items: { $ref: \"#/components/schemas/VectorStore\" } },\n first_id: { type: [\"string\", \"null\"] },\n last_id: { type: [\"string\", \"null\"] },\n has_more: { type: \"boolean\" },\n },\n },\n VectorStoreFile: {\n type: \"object\",\n required: [\n \"id\",\n \"object\",\n \"created_at\",\n \"vector_store_id\",\n \"status\",\n \"usage_bytes\",\n \"attributes\",\n ],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"vector_store.file\"] },\n created_at: { type: \"integer\" },\n vector_store_id: { type: \"string\" },\n status: { type: \"string\", enum: [\"in_progress\", \"completed\", \"failed\", \"cancelled\"] },\n usage_bytes: { type: \"integer\" },\n attributes: { $ref: \"#/components/schemas/VectorStoreAttributes\" },\n chunking_strategy: { $ref: \"#/components/schemas/VectorStoreFileChunkingStrategy\" },\n last_error: { type: [\"object\", \"null\"] },\n },\n },\n VectorStoreFileDeleteResponse: {\n type: \"object\",\n required: [\"id\", \"object\", \"deleted\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"vector_store.file.deleted\"] },\n deleted: { type: \"boolean\", enum: [true] },\n },\n },\n VectorStoreFileListResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: { type: \"array\", items: { $ref: \"#/components/schemas/VectorStoreFile\" } },\n first_id: { type: [\"string\", \"null\"] },\n last_id: { type: [\"string\", \"null\"] },\n has_more: { type: \"boolean\" },\n },\n },\n VectorFileBatch: {\n type: \"object\",\n required: [\"id\", \"object\", \"created_at\", \"vector_store_id\", \"status\", \"file_counts\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"vector_store.file_batch\"] },\n created_at: { type: \"integer\" },\n vector_store_id: { type: \"string\" },\n status: {\n type: \"string\",\n enum: [\"in_progress\", \"completed\", \"failed\", \"cancelled\", \"cancelling\"],\n },\n file_counts: { type: \"object\" },\n },\n },\n VectorFileBatchFilesResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: { type: \"array\", items: { $ref: \"#/components/schemas/VectorStoreFile\" } },\n first_id: { type: [\"string\", \"null\"] },\n last_id: { type: [\"string\", \"null\"] },\n has_more: { type: \"boolean\" },\n },\n },\n VectorSearchResponse: {\n type: \"object\",\n required: [\"object\", \"search_query\", \"data\", \"has_more\"],\n properties: {\n object: { type: \"string\", enum: [\"vector_store.search_results_page\"] },\n search_query: {\n oneOf: [{ type: \"string\" }, { type: \"array\", items: { type: \"string\" } }],\n },\n data: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"file_id\", \"filename\", \"score\", \"content\", \"attributes\"],\n properties: {\n file_id: { type: \"string\" },\n filename: { type: \"string\" },\n score: { type: \"number\" },\n attributes: {\n type: [\"object\", \"null\"],\n additionalProperties: { type: [\"string\", \"number\", \"boolean\"] },\n },\n content: { type: \"array\", items: { type: \"object\" } },\n },\n },\n },\n has_more: { type: \"boolean\" },\n },\n },\n VectorStoreExpiresAfter: {\n type: \"object\",\n required: [\"anchor\", \"days\"],\n properties: {\n anchor: { type: \"string\", enum: [\"last_active_at\"] },\n days: { type: \"integer\", minimum: 1, maximum: 365 },\n },\n },\n VectorStoreMetadata: {\n type: [\"object\", \"null\"],\n maxProperties: 16,\n propertyNames: { maxLength: 64 },\n additionalProperties: { type: \"string\", maxLength: 512 },\n },\n VectorStoreAttributes: {\n type: [\"object\", \"null\"],\n maxProperties: 16,\n propertyNames: { maxLength: 64 },\n additionalProperties: {\n oneOf: [{ type: \"string\", maxLength: 512 }, { type: \"number\" }, { type: \"boolean\" }],\n },\n },\n VectorStoreChunkingStrategyRequest: {\n oneOf: [\n {\n type: \"object\",\n required: [\"type\"],\n properties: { type: { type: \"string\", enum: [\"auto\"] } },\n },\n {\n type: \"object\",\n required: [\"type\", \"static\"],\n properties: {\n type: { type: \"string\", enum: [\"static\"] },\n static: {\n type: \"object\",\n required: [\"max_chunk_size_tokens\", \"chunk_overlap_tokens\"],\n properties: {\n max_chunk_size_tokens: { type: \"integer\", minimum: 100, maximum: 4096 },\n chunk_overlap_tokens: {\n type: \"integer\",\n minimum: 0,\n maximum: 2048,\n description: \"Must be at most half of max_chunk_size_tokens.\",\n },\n },\n },\n },\n },\n ],\n },\n VectorStoreFileChunkingStrategy: {\n type: \"object\",\n required: [\"type\", \"static\"],\n properties: {\n type: { type: \"string\", enum: [\"static\"] },\n static: {\n type: \"object\",\n required: [\"max_chunk_size_tokens\", \"chunk_overlap_tokens\"],\n properties: {\n max_chunk_size_tokens: { type: \"integer\", minimum: 100, maximum: 4096 },\n chunk_overlap_tokens: {\n type: \"integer\",\n minimum: 0,\n maximum: 2048,\n description: \"Must be at most half of max_chunk_size_tokens.\",\n },\n },\n },\n },\n },\n VectorStoreAttributeFilter: {\n oneOf: [\n {\n type: \"object\",\n required: [\"type\", \"key\", \"value\"],\n properties: {\n type: { type: \"string\", enum: [\"eq\", \"ne\", \"gt\", \"gte\", \"lt\", \"lte\"] },\n key: { type: \"string\" },\n value: { type: [\"string\", \"number\", \"boolean\"] },\n },\n },\n {\n type: \"object\",\n required: [\"type\", \"filters\"],\n properties: {\n type: { type: \"string\", enum: [\"and\", \"or\"] },\n filters: {\n type: \"array\",\n items: { $ref: \"#/components/schemas/VectorStoreAttributeFilter\" },\n },\n },\n },\n ],\n },\n VectorStoreCreateRequest: {\n type: \"object\",\n properties: {\n name: { type: \"string\" },\n file_ids: { type: \"array\", maxItems: 2000, items: { type: \"string\", minLength: 1 } },\n expires_after: { $ref: \"#/components/schemas/VectorStoreExpiresAfter\" },\n chunking_strategy: { $ref: \"#/components/schemas/VectorStoreChunkingStrategyRequest\" },\n metadata: { $ref: \"#/components/schemas/VectorStoreMetadata\" },\n },\n },\n VectorStoreUpdateRequest: {\n type: \"object\",\n properties: {\n name: { type: [\"string\", \"null\"] },\n expires_after: {\n oneOf: [{ $ref: \"#/components/schemas/VectorStoreExpiresAfter\" }, { type: \"null\" }],\n },\n metadata: { $ref: \"#/components/schemas/VectorStoreMetadata\" },\n },\n },\n VectorStoreFileCreateRequest: {\n type: \"object\",\n required: [\"file_id\"],\n properties: {\n file_id: { type: \"string\", minLength: 1 },\n attributes: { $ref: \"#/components/schemas/VectorStoreAttributes\" },\n chunking_strategy: { $ref: \"#/components/schemas/VectorStoreChunkingStrategyRequest\" },\n },\n },\n VectorStoreFileBatchCreateRequest: {\n type: \"object\",\n required: [\"file_ids\"],\n properties: {\n file_ids: {\n type: \"array\",\n minItems: 1,\n maxItems: 2000,\n uniqueItems: true,\n items: { type: \"string\", minLength: 1 },\n },\n attributes: { $ref: \"#/components/schemas/VectorStoreAttributes\" },\n chunking_strategy: { $ref: \"#/components/schemas/VectorStoreChunkingStrategyRequest\" },\n },\n },\n VectorStoreSearchRequest: {\n type: \"object\",\n required: [\"query\"],\n properties: {\n query: {\n oneOf: [\n { type: \"string\", minLength: 1 },\n { type: \"array\", minItems: 1, items: { type: \"string\", minLength: 1 } },\n ],\n },\n filters: { $ref: \"#/components/schemas/VectorStoreAttributeFilter\" },\n max_num_results: { type: \"integer\", minimum: 1, maximum: 50 },\n ranking_options: {\n type: \"object\",\n properties: {\n score_threshold: { type: \"number\", minimum: 0, maximum: 1 },\n },\n },\n },\n },\n ModelsListResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"id\", \"object\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"model\"] },\n created: { type: \"integer\" },\n owned_by: { type: \"string\" },\n },\n },\n },\n },\n },\n ReadyResponse: {\n type: \"object\",\n required: [\"status\"],\n properties: { status: { type: \"string\", enum: [\"ready\"] } },\n },\n HealthResponse: {\n type: \"object\",\n required: [\"status\"],\n properties: {\n status: { type: \"string\", enum: [\"ok\"] },\n services: { type: \"object\" },\n },\n },\n JournalEntry: {\n type: \"object\",\n required: [\"method\", \"path\", \"headers\", \"response\"],\n properties: {\n method: { type: \"string\" },\n path: { type: \"string\" },\n headers: { type: \"object\" },\n body: { type: [\"object\", \"null\"] },\n response: {\n type: \"object\",\n properties: {\n status: { type: \"integer\" },\n fixture: { type: [\"integer\", \"null\"] },\n },\n },\n service: { type: \"string\" },\n },\n },\n ChaosConfig: {\n type: \"object\",\n description: \"Install REPLACES the scope config wholesale; `{}` means explicitly no chaos.\",\n properties: {\n dropRate: { type: \"number\", minimum: 0, maximum: 1 },\n malformedRate: { type: \"number\", minimum: 0, maximum: 1 },\n disconnectRate: { type: \"number\", minimum: 0, maximum: 1 },\n rateLimitRate: { type: \"number\", minimum: 0, maximum: 1 },\n latencyMs: { type: \"integer\", minimum: 0, maximum: 30000 },\n },\n },\n ChaosEnvelope: {\n type: \"object\",\n properties: {\n chaos: { $ref: \"#/components/schemas/ChaosConfig\" },\n },\n },\n FixturesAddRequest: {\n type: \"object\",\n required: [\"fixtures\"],\n properties: {\n fixtures: { type: \"array\", items: { type: \"object\" } },\n },\n },\n FixturesAddResponse: {\n type: \"object\",\n properties: {\n added: { type: \"integer\" },\n },\n },\n FixturesInspectResponse: {\n type: \"object\",\n properties: {\n count: { type: \"integer\" },\n fixtures: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n index: { type: \"integer\" },\n match: { type: \"object\" },\n responseKind: { type: \"string\" },\n },\n },\n },\n },\n },\n FixturesClearResponse: {\n type: \"object\",\n properties: {\n cleared: { type: \"boolean\" },\n },\n },\n ResetResponse: {\n type: \"object\",\n properties: {\n reset: { type: \"boolean\" },\n deprecated: { type: \"boolean\" },\n deprecation: { type: \"string\" },\n },\n },\n ErrorInjectRequest: {\n type: \"object\",\n properties: {\n status: { type: \"integer\" },\n body: {\n type: \"object\",\n properties: {\n message: { type: \"string\" },\n type: { type: \"string\" },\n code: { type: \"string\" },\n },\n },\n },\n },\n ErrorInjectResponse: {\n type: \"object\",\n properties: {\n queued: { type: \"boolean\" },\n },\n },\n RoutesListResponse: {\n type: \"object\",\n properties: {\n count: { type: \"integer\" },\n routes: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"method\", \"path\", \"service\", \"description\"],\n properties: {\n method: { type: \"string\" },\n path: { type: \"string\" },\n service: { type: \"string\" },\n description: { type: \"string\" },\n },\n },\n },\n },\n },\n OpenApiDocument: {\n type: \"object\",\n description: \"The OpenAPI 3.1 document served by GET /__aimock/openapi.json.\",\n },\n ControlErrorResponse: {\n type: \"object\",\n required: [\"error\"],\n properties: { error: { type: \"string\" } },\n },\n FixtureValidationErrorResponse: {\n type: \"object\",\n required: [\"error\"],\n properties: {\n error: { type: \"string\" },\n details: {\n type: \"array\",\n description: \"Validation issues when fixture or MCP fake validation fails.\",\n items: { type: \"object\" },\n },\n },\n },\n ErrorResponse: {\n type: \"object\",\n properties: {\n error: {\n type: \"object\",\n properties: {\n message: { type: \"string\" },\n type: { type: \"string\" },\n code: {},\n },\n },\n },\n },\n};\n\ninterface QueryParam {\n name: string;\n description: string;\n schema: Record<string, unknown>;\n required?: boolean;\n}\n\n/** `METHOD path` → schemas + media types + query params for the operation. */\ninterface OperationSchemas {\n request?: string;\n response?: string;\n /** Request media type. Defaults to `application/json`. */\n reqContent?: string;\n /** Success response media type. Defaults to `application/json`. */\n respContent?: string;\n /** Additional SSE representation; names a string schema for the entire framed stream. */\n streamResponse?: string;\n /** Success status + description override (e.g. replayed removals). */\n successStatus?: string;\n successDescription?: string;\n /** Schema for this operation's 400 response; provider errors remain the default. */\n invalidRequest?: string;\n query?: QueryParam[];\n}\n\nconst JSON = \"application/json\";\nconst MULTIPART = \"multipart/form-data\";\nconst AUDIO = \"audio/mpeg\";\nconst OCTET = \"application/octet-stream\";\n\nconst VECTOR_LIST_QUERY: QueryParam[] = [\n {\n name: \"limit\",\n description: \"Maximum entries per page\",\n schema: { type: \"integer\", minimum: 1, maximum: 100, default: 20 },\n },\n {\n name: \"order\",\n description: \"Sort order by creation time\",\n schema: { type: \"string\", enum: [\"asc\", \"desc\"], default: \"desc\" },\n },\n {\n name: \"after\",\n description: \"Known entry ID to page after; mutually exclusive with before\",\n schema: { type: \"string\" },\n },\n {\n name: \"before\",\n description: \"Known entry ID to page before; mutually exclusive with after\",\n schema: { type: \"string\" },\n },\n];\n\nconst VECTOR_FILE_LIST_QUERY: QueryParam[] = [\n ...VECTOR_LIST_QUERY,\n {\n name: \"filter\",\n description: \"Filter by file ingestion status before pagination\",\n schema: { type: \"string\", enum: [\"in_progress\", \"completed\", \"failed\", \"cancelled\"] },\n },\n];\n\nconst JOURNAL_QUERY: QueryParam[] = [\n { name: \"limit\", description: \"Max entries (integer >= 0)\", schema: { type: \"integer\" } },\n { name: \"offset\", description: \"Entries to skip (integer >= 0)\", schema: { type: \"integer\" } },\n { name: \"path\", description: \"Substring filter on the request path\", schema: { type: \"string\" } },\n {\n name: \"method\",\n description: \"Exact method filter (case-insensitive)\",\n schema: { type: \"string\" },\n },\n { name: \"status\", description: \"Exact response status filter\", schema: { type: \"integer\" } },\n { name: \"service\", description: \"Exact service filter\", schema: { type: \"string\" } },\n { name: \"testId\", description: \"Test-id scope filter\", schema: { type: \"string\" } },\n { name: \"requestId\", description: \"Request-id filter\", schema: { type: \"string\" } },\n];\n\nconst SCHEMA_REFS: Record<string, OperationSchemas> = {\n [`POST ${COMPLETIONS_PATH}`]: {\n request: \"ChatCompletionRequest\",\n response: \"ChatCompletionResponse\",\n streamResponse: \"ChatCompletionEventStream\",\n },\n [`POST ${RESPONSES_PATH}`]: { request: \"ResponsesRequest\", response: \"ResponsesResponse\" },\n [`POST ${MESSAGES_PATH}`]: { request: \"MessagesRequest\", response: \"MessagesResponse\" },\n [`POST ${EMBEDDINGS_PATH}`]: { request: \"EmbeddingRequest\", response: \"EmbeddingResponse\" },\n [`POST ${COHERE_CHAT_PATH}`]: { request: \"CohereChatRequest\", response: \"CohereChatResponse\" },\n [`POST ${COHERE_EMBED_PATH}`]: { request: \"CohereEmbedRequest\", response: \"CohereEmbedResponse\" },\n [`POST ${IMAGES_PATH}`]: {\n request: \"ImageGenerationRequest\",\n response: \"ImageResponse\",\n },\n \"POST /v1/images/edits\": {\n request: \"ImageEditRequest\",\n reqContent: MULTIPART,\n response: \"ImageResponse\",\n },\n \"POST /v1/images/variations\": {\n successStatus: \"404\",\n successDescription:\n \"Removed upstream 2026-05-12 — aimock replays the removal with a 404 and an empty body.\",\n },\n [`POST ${SPEECH_PATH}`]: { request: \"SpeechRequest\", respContent: AUDIO },\n \"POST /v1/audio/transcriptions\": {\n request: \"TranscriptionRequest\",\n reqContent: MULTIPART,\n response: \"TranscriptionResponse\",\n },\n \"POST /v1/audio/translations\": {\n request: \"TranscriptionRequest\",\n reqContent: MULTIPART,\n response: \"TranscriptionResponse\",\n },\n [`POST ${MODERATIONS_PATH}`]: {\n request: \"ModerationRequest\",\n response: \"ModerationResponse\",\n },\n [`GET ${MODELS_PATH}`]: { response: \"ModelsListResponse\" },\n [`POST ${SEARCH_PATH}`]: { request: \"SearchRequest\", response: \"SearchResponse\" },\n [`POST ${RERANK_PATH}`]: { request: \"RerankRequest\", response: \"RerankResponse\" },\n \"POST /openai/deployments/{deploymentId}/chat/completions\": {\n request: \"ChatCompletionRequest\",\n response: \"ChatCompletionResponse\",\n streamResponse: \"ChatCompletionEventStream\",\n },\n \"POST /openai/deployments/{deploymentId}/embeddings\": {\n request: \"EmbeddingRequest\",\n response: \"EmbeddingResponse\",\n },\n // Ollama\n \"POST /api/chat\": { request: \"OllamaChatRequest\", response: \"OllamaChatResponse\" },\n \"POST /api/generate\": { request: \"OllamaGenerateRequest\", response: \"OllamaGenerateResponse\" },\n \"POST /api/embeddings\": { request: \"OllamaEmbedRequest\", response: \"OllamaEmbedResponse\" },\n \"POST /api/embed\": { request: \"OllamaEmbedRequest\", response: \"OllamaEmbedResponse\" },\n \"GET /api/tags\": { response: \"OllamaTagsResponse\" },\n // OpenAI Batches API\n \"POST /v1/batches/{batch_id}/cancel\": { response: \"BatchObject\" },\n \"GET /v1/batches/{batch_id}\": { response: \"BatchObject\" },\n \"GET /v1/batches\": {\n response: \"BatchListResponse\",\n query: [\n { name: \"limit\", description: \"Max batches\", schema: { type: \"integer\" } },\n { name: \"after\", description: \"Pagination cursor\", schema: { type: \"string\" } },\n ],\n },\n \"POST /v1/batches\": { request: \"BatchCreateRequest\", response: \"BatchObject\" },\n // OpenAI Files API\n \"GET /v1/files/{file_id}/content\": { respContent: OCTET },\n \"GET /v1/files/{file_id}\": { response: \"FileObject\" },\n \"DELETE /v1/files/{file_id}\": { response: \"FileDeleteResponse\" },\n \"GET /v1/files\": {\n response: \"FileListResponse\",\n query: [\n { name: \"purpose\", description: \"Filter by purpose\", schema: { type: \"string\" } },\n {\n name: \"order\",\n description: \"Sort order\",\n schema: { type: \"string\", enum: [\"asc\", \"desc\"] },\n },\n { name: \"limit\", description: \"Max files\", schema: { type: \"integer\" } },\n { name: \"after\", description: \"Pagination cursor\", schema: { type: \"string\" } },\n ],\n },\n \"POST /v1/files\": {\n request: \"FileUploadRequest\",\n reqContent: MULTIPART,\n response: \"FileObject\",\n },\n // OpenAI Vector Stores API\n \"POST /v1/vector_stores/{vector_store_id}/search\": {\n request: \"VectorStoreSearchRequest\",\n response: \"VectorSearchResponse\",\n },\n \"GET /v1/vector_stores/{vector_store_id}/file_batches/{batch_id}/files\": {\n response: \"VectorFileBatchFilesResponse\",\n query: VECTOR_FILE_LIST_QUERY,\n },\n \"POST /v1/vector_stores/{vector_store_id}/file_batches/{batch_id}/cancel\": {\n response: \"VectorFileBatch\",\n },\n \"GET /v1/vector_stores/{vector_store_id}/file_batches/{batch_id}\": {\n response: \"VectorFileBatch\",\n },\n \"POST /v1/vector_stores/{vector_store_id}/file_batches\": {\n request: \"VectorStoreFileBatchCreateRequest\",\n response: \"VectorFileBatch\",\n },\n \"GET /v1/vector_stores/{vector_store_id}/files/{file_id}\": { response: \"VectorStoreFile\" },\n \"DELETE /v1/vector_stores/{vector_store_id}/files/{file_id}\": {\n response: \"VectorStoreFileDeleteResponse\",\n },\n \"POST /v1/vector_stores/{vector_store_id}/files\": {\n request: \"VectorStoreFileCreateRequest\",\n response: \"VectorStoreFile\",\n },\n \"GET /v1/vector_stores/{vector_store_id}/files\": {\n response: \"VectorStoreFileListResponse\",\n query: VECTOR_FILE_LIST_QUERY,\n },\n \"GET /v1/vector_stores/{vector_store_id}\": { response: \"VectorStore\" },\n \"POST /v1/vector_stores/{vector_store_id}\": {\n request: \"VectorStoreUpdateRequest\",\n response: \"VectorStore\",\n },\n \"DELETE /v1/vector_stores/{vector_store_id}\": { response: \"VectorStoreDeleteResponse\" },\n \"GET /v1/vector_stores\": { response: \"VectorStoreListResponse\", query: VECTOR_LIST_QUERY },\n \"POST /v1/vector_stores\": { request: \"VectorStoreCreateRequest\", response: \"VectorStore\" },\n // OpenAI fine-tuning jobs\n \"POST /v1/fine_tuning/jobs/{job_id}/cancel\": { response: \"FineTuningJob\" },\n \"GET /v1/fine_tuning/jobs/{job_id}/events\": { response: \"FineTuningJobEventListResponse\" },\n \"GET /v1/fine_tuning/jobs/{job_id}\": { response: \"FineTuningJob\" },\n \"GET /v1/fine_tuning/jobs\": {\n response: \"FineTuningJobListResponse\",\n query: [\n { name: \"limit\", description: \"Max jobs\", schema: { type: \"integer\" } },\n { name: \"after\", description: \"Pagination cursor\", schema: { type: \"string\" } },\n ],\n },\n \"POST /v1/fine_tuning/jobs\": {\n request: \"FineTuningJobCreateRequest\",\n response: \"FineTuningJob\",\n },\n // Gemini\n \"POST /v1beta/models/{model}:predict\": {\n request: \"GeminiPredictRequest\",\n response: \"GeminiPredictResponse\",\n },\n \"POST /v1beta/interactions\": {\n request: \"InteractionsRequest\",\n response: \"InteractionsResponse\",\n streamResponse: \"InteractionsSSEStream\",\n },\n \"POST /v1beta/models/{model}:embedContent\": {\n request: \"GeminiEmbedRequest\",\n response: \"GeminiEmbedResponse\",\n },\n \"POST /v1beta/models/{model}:generateContent\": {\n request: \"GeminiGenerateRequest\",\n response: \"GeminiGenerateResponse\",\n },\n \"POST /v1beta/models/{model}:streamGenerateContent\": {\n request: \"GeminiGenerateRequest\",\n response: \"GeminiGenerateEventStream\",\n respContent: \"text/event-stream\",\n },\n // Vertex AI (same shapes over the full resource path)\n \"POST /v1/projects/{project}/locations/{location}/publishers/google/models/{model}:generateContent\":\n {\n request: \"GeminiGenerateRequest\",\n response: \"GeminiGenerateResponse\",\n },\n \"POST /v1/projects/{project}/locations/{location}/publishers/google/models/{model}:streamGenerateContent\":\n {\n request: \"GeminiGenerateRequest\",\n response: \"GeminiGenerateEventStream\",\n respContent: \"text/event-stream\",\n },\n // Bedrock\n \"POST /model/{modelId}/invoke\": {\n request: \"BedrockInvokeRequest\",\n response: \"BedrockInvokeResponse\",\n },\n \"POST /model/{modelId}/invoke-with-response-stream\": {\n request: \"BedrockInvokeRequest\",\n response: \"BedrockInvokeResponse\",\n },\n \"POST /model/{modelId}/converse\": {\n request: \"BedrockConverseRequest\",\n response: \"BedrockConverseResponse\",\n },\n \"POST /model/{modelId}/converse-stream\": {\n request: \"BedrockConverseRequest\",\n response: \"BedrockConverseResponse\",\n },\n // Video\n \"POST /v1/videos\": { request: \"VideoSubmitRequest\", response: \"VideoJob\" },\n \"POST /v1/videos/generations\": {\n request: \"VideoSubmitRequest\",\n response: \"GrokVideoSubmitResponse\",\n },\n \"GET /v1/videos/{id}\": { response: \"VideoStatusResponse\" },\n \"POST /api/v1/videos\": {\n request: \"OpenRouterVideoSubmitRequest\",\n response: \"OpenRouterVideoJob\",\n },\n \"GET /api/v1/videos/models\": { response: \"OpenRouterVideoModelsResponse\" },\n \"GET /api/v1/videos/{jobId}\": { response: \"OpenRouterVideoJob\" },\n \"GET /api/v1/videos/{jobId}/content\": { respContent: OCTET },\n \"POST /contents/generations/tasks\": {\n request: \"BytePlusSubmitRequest\",\n response: \"BytePlusTaskStatus\",\n },\n \"POST /api/v3/contents/generations/tasks\": {\n request: \"BytePlusSubmitRequest\",\n response: \"BytePlusTaskStatus\",\n },\n \"GET /contents/generations/tasks/{id}\": { response: \"BytePlusTaskStatus\" },\n \"GET /api/v3/contents/generations/tasks/{id}\": { response: \"BytePlusTaskStatus\" },\n \"POST /v1beta/models/{model}:predictLongRunning\": {\n request: \"VeoSubmitRequest\",\n response: \"VeoOperation\",\n },\n \"GET /v1beta/operations/{name}\": { response: \"VeoOperation\" },\n // OpenRouter discovery\n \"GET /api/v1/models\": { response: \"OpenRouterVideoModelsResponse\" },\n \"GET /api/v1/key\": { response: \"OpenRouterKeyResponse\" },\n \"GET /api/v1/credits\": { response: \"OpenRouterCreditsResponse\" },\n // ElevenLabs\n \"POST /v1/sound-generation\": { request: \"SoundGenerationRequest\", respContent: AUDIO },\n \"POST /v1/text-to-voice/design\": {\n request: \"VoiceDesignRequest\",\n response: \"VoiceDesignPreviewResponse\",\n },\n \"POST /v1/text-to-voice\": { request: \"VoiceCreateRequest\", response: \"VoiceCreateResponse\" },\n \"GET /v1/voices/{voice_id}\": { response: \"ElevenLabsVoice\" },\n \"DELETE /v1/voices/{voice_id}\": { response: \"ElevenLabsVoiceDeleteResponse\" },\n \"POST /v1/text-to-speech/{voice_id}\": { request: \"ElevenLabsTTSRequest\", respContent: AUDIO },\n \"POST /v1/music\": { request: \"ElevenLabsMusicRequest\", respContent: AUDIO },\n \"POST /v1/music/{subtype}\": { request: \"ElevenLabsMusicRequest\", respContent: AUDIO },\n // fal.ai\n \"POST /fal/queue/submit/{model}\": {\n request: \"FalQueueSubmitRequest\",\n response: \"FalQueueSubmitResponse\",\n },\n \"GET /fal/queue/requests/{requestId}\": { response: \"FalQueueStatusResponse\" },\n \"POST /fal/queue/requests/{requestId}\": { response: \"FalQueueStatusResponse\" },\n \"PUT /fal/queue/requests/{requestId}\": { response: \"FalQueueStatusResponse\" },\n \"POST /fal/run/{model}\": { request: \"FalRunRequest\", response: \"FalRunResponse\" },\n // Ops\n \"GET /health\": { response: \"HealthResponse\" },\n \"GET /ready\": { response: \"ReadyResponse\" },\n \"GET /metrics\": { respContent: \"text/plain; version=0.0.4\" },\n // Legacy journal\n \"GET /v1/_requests\": {\n response: \"JournalEntry\",\n query: [{ name: \"limit\", description: \"Max entries\", schema: { type: \"integer\" } }],\n },\n \"DELETE /v1/_requests\": {\n successStatus: \"204\",\n successDescription: \"Journal entries cleared (fixture sequencing preserved).\",\n },\n // Control API\n \"GET /__aimock/health\": { response: \"HealthResponse\" },\n \"GET /__aimock/journal\": {\n response: \"JournalEntry\",\n query: JOURNAL_QUERY,\n invalidRequest: \"ControlErrorResponse\",\n },\n \"GET /__aimock/fixtures\": {\n response: \"FixturesInspectResponse\",\n invalidRequest: \"ControlErrorResponse\",\n query: [\n {\n name: \"include\",\n description: \"Set to 'fixtures' for the full redacted dump\",\n schema: { type: \"string\", enum: [\"fixtures\"] },\n },\n ],\n },\n \"POST /__aimock/fixtures\": {\n request: \"FixturesAddRequest\",\n response: \"FixturesAddResponse\",\n invalidRequest: \"FixtureValidationErrorResponse\",\n },\n \"DELETE /__aimock/fixtures\": { response: \"FixturesClearResponse\" },\n \"GET /__aimock/chaos\": { response: \"ChaosEnvelope\", invalidRequest: \"ControlErrorResponse\" },\n \"POST /__aimock/chaos\": {\n request: \"ChaosConfig\",\n response: \"ChaosEnvelope\",\n invalidRequest: \"ControlErrorResponse\",\n },\n \"DELETE /__aimock/chaos\": { response: \"ChaosEnvelope\", invalidRequest: \"ControlErrorResponse\" },\n \"POST /__aimock/reset\": { response: \"ResetResponse\" },\n \"POST /__aimock/reset/journal\": { response: \"ResetResponse\" },\n \"POST /__aimock/reset/fixtures\": { response: \"ResetResponse\" },\n \"POST /__aimock/error\": {\n request: \"ErrorInjectRequest\",\n response: \"ErrorInjectResponse\",\n invalidRequest: \"ControlErrorResponse\",\n },\n \"GET /__aimock/openapi.json\": { response: \"OpenApiDocument\" },\n \"GET /__aimock/routes\": { response: \"RoutesListResponse\" },\n};\n\nfunction operationFor(\n method: string,\n path: string,\n service: string,\n description: string,\n): Record<string, unknown> {\n const params = pathParams(path);\n const refs = SCHEMA_REFS[`${method} ${path}`];\n const operation: Record<string, unknown> = {\n summary: description,\n tags: [service],\n };\n if (refs?.query) {\n for (const q of refs.query) {\n params.push({\n name: q.name,\n in: \"query\",\n required: q.required ?? false,\n description: q.description,\n schema: q.schema,\n });\n }\n }\n if (params.length > 0) operation.parameters = params;\n const reqContent = refs?.reqContent ?? JSON;\n if (refs?.request) {\n operation.requestBody = {\n required: true,\n content: {\n [reqContent]: {\n schema: { $ref: `#/components/schemas/${refs.request}` },\n },\n },\n };\n }\n const respContent = refs?.respContent ?? JSON;\n const successStatus = refs?.successStatus ?? \"200\";\n const successDescription = refs?.successDescription ?? \"OK\";\n const successSchema = refs?.response\n ? { $ref: `#/components/schemas/${refs.response}` }\n : respContent !== JSON\n ? { type: \"string\", format: \"binary\" }\n : undefined;\n // Array envelopes (journal listing) are bare arrays, not objects.\n const successContent =\n refs?.response === \"JournalEntry\"\n ? {\n [respContent]: {\n schema: { type: \"array\", items: { $ref: \"#/components/schemas/JournalEntry\" } },\n },\n }\n : successSchema\n ? { [respContent]: { schema: successSchema } }\n : undefined;\n operation.responses = {\n [successStatus]: {\n description: successDescription,\n ...(successContent || refs?.streamResponse\n ? {\n content: {\n ...successContent,\n ...(refs?.streamResponse\n ? {\n \"text/event-stream\": {\n schema: { $ref: `#/components/schemas/${refs.streamResponse}` },\n },\n }\n : undefined),\n },\n }\n : undefined),\n },\n ...(successStatus === \"200\"\n ? {\n \"400\": {\n description: \"Invalid request\",\n content: {\n [JSON]: {\n schema: { $ref: `#/components/schemas/${refs?.invalidRequest ?? \"ErrorResponse\"}` },\n },\n },\n },\n \"404\": {\n description: \"No fixture match\",\n content: {\n [JSON]: { schema: { $ref: \"#/components/schemas/ErrorResponse\" } },\n },\n },\n }\n : undefined),\n };\n return operation;\n}\n\nexport function buildOpenApiDocument(): Record<string, unknown> {\n const paths: Record<string, Record<string, unknown>> = {};\n for (const r of ROUTE_DEFINITIONS) {\n const item = (paths[r.path] ??= {});\n item[r.method.toLowerCase()] = operationFor(r.method, r.path, r.service, r.description);\n }\n return {\n openapi: \"3.1.0\",\n info: { title: \"aimock\", version: \"1.0.0\" },\n paths,\n components: { schemas: COMPONENTS },\n };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"openapi.js","names":[],"sources":["../src/openapi.ts"],"sourcesContent":["/**\n * Machine-readable route catalog for aimock.\n *\n * `GET /__aimock/openapi.json` returns an OpenAPI 3.1 document and\n * `GET /__aimock/routes` returns the same list in a `{ count, routes }` object for\n * shells that just need `method + path`. SDK codegen, docs checks, and\n * harness smoke tests can assert against this instead of hard-coding a\n * route list that drifts.\n *\n * The catalog is DERIVED from the router's single source of truth\n * (`route-registry.ts`, which `server.ts` also imports for dispatch and\n * `metrics.ts` imports for path labels), so it cannot drift from the mounted\n * routes. Every operation carries a real `requestBody` / `responses` schema\n * (or an explicit non-JSON media type for audio/binary bodies) — a client can\n * build requests from this document, not just read paths off it.\n */\n\nimport {\n ROUTE_DEFINITIONS,\n COMPLETIONS_PATH,\n RESPONSES_PATH,\n MESSAGES_PATH,\n MESSAGES_COUNT_PATH,\n EMBEDDINGS_PATH,\n COHERE_CHAT_PATH,\n COHERE_EMBED_PATH,\n SEARCH_PATH,\n RERANK_PATH,\n MODERATIONS_PATH,\n IMAGES_PATH,\n SPEECH_PATH,\n MODELS_PATH,\n} from \"./route-registry.js\";\n\nexport interface CatalogRoute {\n method: string;\n path: string;\n service: string;\n description: string;\n}\n\n/** Flat `method + path` list, derived from the router registry. */\nexport const CATALOG_ROUTES: CatalogRoute[] = ROUTE_DEFINITIONS.map((r) => ({\n method: r.method,\n path: r.path,\n service: r.service,\n description: r.description,\n}));\n\nfunction pathParams(openApiPath: string): Record<string, unknown>[] {\n const params: Record<string, unknown>[] = [];\n for (const match of openApiPath.matchAll(/\\{([^}]+)\\}/g)) {\n params.push({\n name: match[1],\n in: \"path\",\n required: true,\n schema: { type: \"string\" },\n });\n }\n return params;\n}\n\nconst COMPONENTS: Record<string, unknown> = {\n ChatCompletionRequest: {\n type: \"object\",\n required: [\"model\", \"messages\"],\n properties: {\n model: { type: \"string\", description: \"Model ID\" },\n messages: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"role\", \"content\"],\n properties: {\n role: { type: \"string\", enum: [\"system\", \"user\", \"assistant\", \"tool\"] },\n content: {\n oneOf: [\n { type: \"null\" },\n { type: \"string\" },\n {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"type\"],\n properties: {\n type: {\n type: \"string\",\n enum: [\"text\", \"image_url\", \"input_audio\", \"file\"],\n },\n text: { type: \"string\" },\n image_url: {\n type: \"object\",\n properties: {\n url: { type: \"string\" },\n detail: { type: \"string\" },\n },\n },\n },\n },\n },\n ],\n },\n name: { type: \"string\" },\n tool_calls: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"id\", \"type\", \"function\"],\n properties: {\n id: { type: \"string\" },\n type: { type: \"string\", enum: [\"function\"] },\n function: {\n type: \"object\",\n required: [\"name\", \"arguments\"],\n properties: {\n name: { type: \"string\" },\n arguments: { type: \"string\" },\n },\n },\n },\n },\n },\n tool_call_id: { type: \"string\" },\n },\n },\n },\n stream: { type: \"boolean\" },\n temperature: { type: \"number\" },\n top_p: { type: \"number\" },\n max_tokens: { type: \"integer\" },\n max_completion_tokens: { type: \"integer\" },\n tools: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"type\", \"function\"],\n properties: {\n type: { type: \"string\", enum: [\"function\"] },\n function: {\n type: \"object\",\n required: [\"name\"],\n properties: {\n name: { type: \"string\" },\n description: { type: \"string\" },\n parameters: { type: \"object\" },\n },\n },\n },\n },\n },\n tool_choice: {\n oneOf: [\n { type: \"string\", enum: [\"none\", \"auto\", \"required\"] },\n {\n type: \"object\",\n required: [\"type\", \"function\"],\n properties: {\n type: { type: \"string\", enum: [\"function\"] },\n function: { type: \"object\", properties: { name: { type: \"string\" } } },\n },\n },\n ],\n },\n response_format: {\n type: \"object\",\n properties: {\n type: { type: \"string\", enum: [\"text\", \"json_object\", \"json_schema\"] },\n json_schema: { type: \"object\" },\n },\n },\n seed: { type: \"integer\" },\n stop: { oneOf: [{ type: \"string\" }, { type: \"array\", items: { type: \"string\" } }] },\n },\n },\n ChatCompletionEventStream: {\n type: \"string\",\n description:\n \"When stream:true, SSE frames contain data: followed by a JSON ChatCompletionChunk and a blank line. The final frame is data: [DONE] followed by a blank line. x-sse-data-schema describes each JSON data payload, not the complete stream.\",\n \"x-sse-data-schema\": { $ref: \"#/components/schemas/ChatCompletionChunk\" },\n },\n ChatCompletionChunk: {\n type: \"object\",\n required: [\"id\", \"object\", \"created\", \"model\", \"choices\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"chat.completion.chunk\"] },\n created: { type: \"integer\" },\n model: { type: \"string\" },\n choices: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"index\", \"delta\", \"finish_reason\"],\n properties: {\n index: { type: \"integer\" },\n delta: {\n type: \"object\",\n properties: {\n role: { type: \"string\" },\n content: { type: [\"string\", \"null\"] },\n reasoning_content: { type: \"string\" },\n tool_calls: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"index\"],\n properties: {\n index: { type: \"integer\" },\n id: { type: \"string\" },\n type: { type: \"string\", enum: [\"function\"] },\n function: {\n type: \"object\",\n properties: {\n name: { type: \"string\" },\n arguments: { type: \"string\" },\n },\n },\n },\n },\n },\n },\n },\n finish_reason: { type: [\"string\", \"null\"] },\n },\n },\n },\n },\n },\n ChatCompletionResponse: {\n type: \"object\",\n required: [\"id\", \"object\", \"created\", \"model\", \"choices\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"chat.completion\"] },\n created: { type: \"integer\" },\n model: { type: \"string\" },\n choices: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"index\", \"message\", \"finish_reason\"],\n properties: {\n index: { type: \"integer\" },\n message: {\n type: \"object\",\n required: [\"role\", \"content\"],\n properties: {\n role: { type: \"string\" },\n content: { type: [\"string\", \"null\"] },\n tool_calls: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n id: { type: \"string\" },\n type: { type: \"string\" },\n function: {\n type: \"object\",\n properties: {\n name: { type: \"string\" },\n arguments: { type: \"string\" },\n },\n },\n },\n },\n },\n },\n },\n finish_reason: {\n type: [\"string\", \"null\"],\n enum: [\"stop\", \"length\", \"tool_calls\", \"content_filter\", null],\n },\n },\n },\n },\n usage: {\n type: \"object\",\n properties: {\n prompt_tokens: { type: \"integer\" },\n completion_tokens: { type: \"integer\" },\n total_tokens: { type: \"integer\" },\n },\n },\n },\n },\n ResponsesRequest: {\n type: \"object\",\n required: [\"model\", \"input\"],\n properties: {\n model: { type: \"string\", description: \"Model ID\" },\n input: {\n oneOf: [\n { type: \"string\" },\n {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"role\", \"content\"],\n properties: {\n role: { type: \"string\" },\n content: { type: \"string\" },\n },\n },\n },\n ],\n },\n stream: { type: \"boolean\" },\n instructions: { type: \"string\" },\n max_output_tokens: { type: \"integer\" },\n temperature: { type: \"number\" },\n tools: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"type\"],\n properties: {\n type: { type: \"string\" },\n name: { type: \"string\" },\n },\n },\n },\n tool_choice: { type: \"string\" },\n },\n },\n ResponsesResponse: {\n type: \"object\",\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"response\"] },\n created_at: { type: \"integer\" },\n model: { type: \"string\" },\n status: { type: \"string\" },\n output: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"type\"],\n properties: {\n type: { type: \"string\" },\n id: { type: \"string\" },\n status: { type: \"string\" },\n role: { type: \"string\" },\n content: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n type: { type: \"string\" },\n text: { type: \"string\" },\n },\n },\n },\n },\n },\n },\n usage: {\n type: \"object\",\n properties: {\n input_tokens: { type: \"integer\" },\n output_tokens: { type: \"integer\" },\n total_tokens: { type: \"integer\" },\n },\n },\n },\n },\n MessagesRequest: {\n type: \"object\",\n required: [\"model\", \"messages\", \"max_tokens\"],\n properties: {\n model: { type: \"string\", description: \"Model ID\" },\n messages: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"role\", \"content\"],\n properties: {\n role: { type: \"string\", enum: [\"user\", \"assistant\"] },\n content: {\n oneOf: [\n { type: \"string\" },\n {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"type\"],\n properties: {\n type: {\n type: \"string\",\n enum: [\"text\", \"image\", \"tool_use\", \"tool_result\", \"thinking\"],\n },\n text: { type: \"string\" },\n id: { type: \"string\" },\n name: { type: \"string\" },\n input: { type: \"object\" },\n },\n },\n },\n ],\n },\n },\n },\n },\n max_tokens: { type: \"integer\" },\n system: { type: \"string\" },\n temperature: { type: \"number\" },\n top_p: { type: \"number\" },\n stream: { type: \"boolean\" },\n stop_sequences: { type: \"array\", items: { type: \"string\" } },\n tools: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"name\", \"input_schema\"],\n properties: {\n name: { type: \"string\" },\n description: { type: \"string\" },\n input_schema: { type: \"object\" },\n },\n },\n },\n tool_choice: { type: \"object\" },\n },\n },\n MessagesResponse: {\n type: \"object\",\n required: [\"id\", \"type\", \"role\", \"content\", \"model\", \"stop_reason\", \"usage\"],\n properties: {\n id: { type: \"string\" },\n type: { type: \"string\", enum: [\"message\"] },\n role: { type: \"string\", enum: [\"assistant\"] },\n content: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"type\"],\n properties: {\n type: { type: \"string\", enum: [\"text\", \"tool_use\"] },\n text: { type: \"string\" },\n id: { type: \"string\" },\n name: { type: \"string\" },\n input: { type: \"object\" },\n },\n },\n },\n model: { type: \"string\" },\n stop_reason: {\n type: [\"string\", \"null\"],\n enum: [\"end_turn\", \"max_tokens\", \"stop_sequence\", \"tool_use\", null],\n },\n usage: {\n type: \"object\",\n required: [\"input_tokens\", \"output_tokens\"],\n properties: {\n input_tokens: { type: \"integer\" },\n output_tokens: { type: \"integer\" },\n },\n },\n },\n },\n EmbeddingRequest: {\n type: \"object\",\n required: [\"model\", \"input\"],\n properties: {\n model: { type: \"string\", description: \"Model ID\" },\n input: {\n oneOf: [\n { type: \"string\" },\n { type: \"array\", items: { type: \"string\" } },\n { type: \"array\", items: { type: \"integer\" } },\n { type: \"array\", items: { type: \"array\", items: { type: \"integer\" } } },\n ],\n },\n encoding_format: { type: \"string\", enum: [\"float\", \"base64\"] },\n dimensions: { type: \"integer\" },\n },\n },\n EmbeddingResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"object\", \"index\", \"embedding\"],\n properties: {\n object: { type: \"string\", enum: [\"embedding\"] },\n index: { type: \"integer\" },\n embedding: { type: \"array\", items: { type: \"number\" } },\n },\n },\n },\n model: { type: \"string\" },\n usage: {\n type: \"object\",\n properties: {\n prompt_tokens: { type: \"integer\" },\n total_tokens: { type: \"integer\" },\n },\n },\n },\n },\n CohereChatRequest: {\n type: \"object\",\n required: [\"model\", \"messages\"],\n properties: {\n model: { type: \"string\", description: \"Model ID\" },\n messages: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"role\", \"content\"],\n properties: {\n role: { type: \"string\", enum: [\"system\", \"user\", \"assistant\", \"tool\"] },\n content: { type: \"string\" },\n tool_calls: { type: \"array\", items: { type: \"object\" } },\n tool_plan: { type: \"string\" },\n },\n },\n },\n temperature: { type: \"number\" },\n max_tokens: { type: \"integer\" },\n stream: { type: \"boolean\" },\n tools: { type: \"array\", items: { type: \"object\" } },\n documents: { type: \"array\", items: { type: \"object\" } },\n },\n },\n CohereChatResponse: {\n type: \"object\",\n properties: {\n id: { type: \"string\" },\n finish_reason: { type: \"string\" },\n message: {\n type: \"object\",\n properties: {\n role: { type: \"string\", enum: [\"assistant\"] },\n content: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n type: { type: \"string\" },\n text: { type: \"string\" },\n },\n },\n },\n tool_calls: { type: \"array\", items: { type: \"object\" } },\n },\n },\n usage: {\n type: \"object\",\n properties: {\n billed_units: {\n type: \"object\",\n properties: {\n input_tokens: { type: \"integer\" },\n output_tokens: { type: \"integer\" },\n },\n },\n },\n },\n },\n },\n CohereEmbedRequest: {\n type: \"object\",\n required: [\"model\", \"texts\"],\n properties: {\n model: { type: \"string\", description: \"Model ID\" },\n texts: { type: \"array\", items: { type: \"string\" } },\n input_type: {\n type: \"string\",\n enum: [\"search_document\", \"search_query\", \"classification\", \"clustering\"],\n },\n embedding_types: { type: \"array\", items: { type: \"string\" } },\n },\n },\n CohereEmbedResponse: {\n type: \"object\",\n properties: {\n id: { type: \"string\" },\n embeddings: { type: \"array\", items: { type: \"array\", items: { type: \"number\" } } },\n texts: { type: \"array\", items: { type: \"string\" } },\n meta: {\n type: \"object\",\n properties: {\n billed_units: {\n type: \"object\",\n properties: {\n input_tokens: { type: \"integer\" },\n output_tokens: { type: \"integer\" },\n },\n },\n },\n },\n },\n },\n OllamaChatRequest: {\n type: \"object\",\n required: [\"model\", \"messages\"],\n properties: {\n model: { type: \"string\" },\n messages: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"role\", \"content\"],\n properties: {\n role: { type: \"string\" },\n content: { type: \"string\" },\n images: { type: \"array\", items: { type: \"string\" } },\n tool_calls: { type: \"array\", items: { type: \"object\" } },\n },\n },\n },\n stream: { type: \"boolean\" },\n format: { type: \"string\" },\n options: { type: \"object\" },\n tools: { type: \"array\", items: { type: \"object\" } },\n },\n },\n OllamaChatResponse: {\n type: \"object\",\n properties: {\n model: { type: \"string\" },\n created_at: { type: \"string\" },\n message: {\n type: \"object\",\n properties: {\n role: { type: \"string\" },\n content: { type: \"string\" },\n tool_calls: { type: \"array\", items: { type: \"object\" } },\n },\n },\n done: { type: \"boolean\" },\n done_reason: { type: \"string\" },\n },\n },\n OllamaGenerateRequest: {\n type: \"object\",\n required: [\"model\", \"prompt\"],\n properties: {\n model: { type: \"string\" },\n prompt: { type: \"string\" },\n suffix: { type: \"string\" },\n system: { type: \"string\" },\n stream: { type: \"boolean\" },\n format: { type: \"string\" },\n options: { type: \"object\" },\n },\n },\n OllamaGenerateResponse: {\n type: \"object\",\n properties: {\n model: { type: \"string\" },\n created_at: { type: \"string\" },\n response: { type: \"string\" },\n done: { type: \"boolean\" },\n done_reason: { type: \"string\" },\n },\n },\n OllamaEmbedRequest: {\n type: \"object\",\n required: [\"model\"],\n anyOf: [\n { required: [\"prompt\"], properties: { prompt: { not: { type: \"null\" } } } },\n { required: [\"input\"], properties: { input: { not: { type: \"null\" } } } },\n ],\n properties: {\n model: { type: \"string\" },\n prompt: { type: [\"string\", \"null\"] },\n input: {\n anyOf: [\n { type: \"null\" },\n { type: \"string\" },\n { type: \"array\", items: { type: \"string\" } },\n { type: \"array\", items: { type: \"number\" } },\n { type: \"array\", items: { type: \"array\", items: { type: \"number\" } } },\n ],\n },\n },\n },\n OllamaEmbedResponse: {\n type: \"object\",\n required: [\"model\", \"embedding\"],\n properties: {\n model: { type: \"string\" },\n embedding: { type: \"array\", items: { type: \"number\" } },\n },\n },\n OllamaCurrentEmbedRequest: {\n allOf: [{ $ref: \"#/components/schemas/OllamaEmbedRequest\" }],\n type: \"object\",\n properties: { dimensions: { type: \"integer\", minimum: 1, maximum: 100000 } },\n },\n OllamaCurrentEmbedResponse: {\n type: \"object\",\n required: [\"model\", \"embeddings\"],\n properties: {\n model: { type: \"string\" },\n embeddings: { type: \"array\", items: { type: \"array\", items: { type: \"number\" } } },\n },\n },\n OllamaTagsResponse: {\n type: \"object\",\n properties: {\n models: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n name: { type: \"string\" },\n model: { type: \"string\" },\n modified_at: { type: \"string\" },\n size: { type: \"integer\" },\n digest: { type: \"string\" },\n details: { type: \"object\" },\n },\n },\n },\n },\n },\n ImageGenerationRequest: {\n type: \"object\",\n required: [\"prompt\"],\n properties: {\n prompt: { type: \"string\" },\n model: { type: \"string\" },\n size: { type: \"string\" },\n quality: { type: \"string\" },\n style: { type: \"string\", enum: [\"vivid\", \"natural\"] },\n n: { type: \"integer\" },\n response_format: { type: \"string\", enum: [\"url\", \"b64_json\"] },\n },\n },\n ImageEditRequest: {\n type: \"object\",\n required: [\"image\", \"prompt\"],\n properties: {\n image: { type: \"string\", format: \"binary\", description: \"Image to edit (multipart file)\" },\n prompt: { type: \"string\" },\n mask: { type: \"string\", format: \"binary\", description: \"Edit mask (multipart file)\" },\n model: { type: \"string\" },\n size: { type: \"string\" },\n n: { type: \"integer\" },\n response_format: { type: \"string\", enum: [\"url\", \"b64_json\"] },\n },\n },\n ImageResponse: {\n type: \"object\",\n properties: {\n created: { type: \"integer\" },\n data: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n url: { type: \"string\" },\n b64_json: { type: \"string\" },\n revised_prompt: { type: \"string\" },\n },\n },\n },\n },\n },\n SpeechRequest: {\n type: \"object\",\n required: [\"model\", \"input\"],\n properties: {\n model: { type: \"string\", description: \"Model ID\" },\n input: { type: \"string\", description: \"Text to synthesize\" },\n voice: { type: \"string\" },\n speed: { type: \"number\" },\n response_format: { type: \"string\", enum: [\"mp3\", \"opus\", \"aac\", \"flac\", \"wav\", \"pcm\"] },\n instructions: { type: \"string\" },\n },\n },\n TranscriptionRequest: {\n type: \"object\",\n required: [\"file\", \"model\"],\n properties: {\n file: { type: \"string\", format: \"binary\", description: \"Audio file (multipart)\" },\n model: { type: \"string\" },\n language: { type: \"string\" },\n response_format: { type: \"string\", enum: [\"json\", \"text\", \"srt\", \"vtt\"] },\n temperature: { type: \"number\" },\n },\n },\n TranscriptionResponse: {\n type: \"object\",\n required: [\"text\"],\n properties: {\n text: { type: \"string\" },\n language: { type: \"string\" },\n duration: { type: \"number\" },\n },\n },\n ModerationRequest: {\n type: \"object\",\n required: [\"input\"],\n properties: {\n input: { oneOf: [{ type: \"string\" }, { type: \"array\", items: { type: \"string\" } }] },\n model: { type: \"string\" },\n },\n },\n ModerationResponse: {\n type: \"object\",\n properties: {\n id: { type: \"string\" },\n model: { type: \"string\" },\n results: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"flagged\", \"categories\", \"category_scores\"],\n properties: {\n flagged: { type: \"boolean\" },\n categories: {\n type: \"object\",\n properties: {\n sexual: { type: \"boolean\" },\n hate: { type: \"boolean\" },\n harassment: { type: \"boolean\" },\n \"self-harm\": { type: \"boolean\" },\n \"sexual/minors\": { type: \"boolean\" },\n \"hate/threatening\": { type: \"boolean\" },\n \"violence/graphic\": { type: \"boolean\" },\n \"self-harm/intent\": { type: \"boolean\" },\n \"self-harm/instructions\": { type: \"boolean\" },\n harassment_threatening: { type: \"boolean\" },\n violence: { type: \"boolean\" },\n },\n },\n category_scores: {\n type: \"object\",\n properties: {\n sexual: { type: \"number\" },\n hate: { type: \"number\" },\n harassment: { type: \"number\" },\n \"self-harm\": { type: \"number\" },\n \"sexual/minors\": { type: \"number\" },\n \"hate/threatening\": { type: \"number\" },\n \"violence/graphic\": { type: \"number\" },\n \"self-harm/intent\": { type: \"number\" },\n \"self-harm/instructions\": { type: \"number\" },\n harassment_threatening: { type: \"number\" },\n violence: { type: \"number\" },\n },\n },\n },\n },\n },\n },\n },\n SearchRequest: {\n type: \"object\",\n required: [\"query\"],\n properties: {\n query: { type: \"string\" },\n max_results: { type: \"integer\" },\n search_depth: { type: \"string\" },\n include_answer: { type: \"boolean\" },\n },\n },\n SearchResponse: {\n type: \"object\",\n properties: {\n results: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"title\", \"url\", \"content\"],\n properties: {\n title: { type: \"string\" },\n url: { type: \"string\" },\n content: { type: \"string\" },\n score: { type: \"number\" },\n },\n },\n },\n answer: { type: \"string\" },\n },\n },\n RerankRequest: {\n type: \"object\",\n required: [\"query\", \"documents\"],\n properties: {\n model: { type: \"string\" },\n query: { type: \"string\" },\n documents: {\n type: \"array\",\n items: { oneOf: [{ type: \"string\" }, { type: \"object\" }] },\n },\n top_n: { type: \"integer\" },\n return_documents: { type: \"boolean\" },\n },\n },\n RerankResponse: {\n type: \"object\",\n properties: {\n id: { type: \"string\" },\n results: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"index\", \"relevance_score\"],\n properties: {\n index: { type: \"integer\" },\n relevance_score: { type: \"number\" },\n document: { type: \"object\" },\n },\n },\n },\n },\n },\n GeminiGenerateRequest: {\n type: \"object\",\n required: [\"contents\"],\n properties: {\n contents: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n role: { type: \"string\", enum: [\"user\", \"model\"] },\n parts: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n text: { type: \"string\" },\n inlineData: {\n type: \"object\",\n properties: {\n mimeType: { type: \"string\" },\n data: { type: \"string\" },\n },\n },\n },\n },\n },\n },\n },\n },\n generationConfig: {\n type: \"object\",\n properties: {\n temperature: { type: \"number\" },\n topP: { type: \"number\" },\n maxOutputTokens: { type: \"integer\" },\n stopSequences: { type: \"array\", items: { type: \"string\" } },\n },\n },\n safetySettings: { type: \"array\", items: { type: \"object\" } },\n tools: { type: \"array\", items: { type: \"object\" } },\n },\n },\n GeminiGenerateEventStream: {\n type: \"string\",\n description:\n \"SSE frames contain data: followed by a JSON GeminiGenerateResponse and a blank line. Each payload carries candidates with content.parts; the final payload carries finishReason and usageMetadata. The stream ends at EOF without a [DONE] frame. x-sse-data-schema describes each JSON data payload, not the complete stream.\",\n \"x-sse-data-schema\": { $ref: \"#/components/schemas/GeminiGenerateResponse\" },\n },\n GeminiGenerateResponse: {\n type: \"object\",\n properties: {\n candidates: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n index: { type: \"integer\" },\n content: {\n type: \"object\",\n properties: {\n role: { type: \"string\" },\n parts: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n text: { type: \"string\" },\n functionCall: { type: \"object\" },\n },\n },\n },\n },\n },\n finishReason: { type: \"string\" },\n },\n },\n },\n usageMetadata: {\n type: \"object\",\n properties: {\n promptTokenCount: { type: \"integer\" },\n candidatesTokenCount: { type: \"integer\" },\n totalTokenCount: { type: \"integer\" },\n },\n },\n modelVersion: { type: \"string\" },\n },\n },\n GeminiEmbedRequest: {\n type: \"object\",\n required: [\"content\"],\n properties: {\n content: {\n type: \"object\",\n properties: {\n parts: {\n type: \"array\",\n items: { type: \"object\", properties: { text: { type: \"string\" } } },\n },\n },\n },\n },\n },\n GeminiEmbedResponse: {\n type: \"object\",\n properties: {\n embedding: {\n type: \"object\",\n properties: {\n values: { type: \"array\", items: { type: \"number\" } },\n },\n },\n },\n },\n GeminiPredictRequest: {\n type: \"object\",\n required: [\"instances\"],\n properties: {\n instances: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n prompt: { type: \"string\" },\n },\n },\n },\n parameters: {\n type: \"object\",\n properties: {\n sampleCount: { type: \"integer\" },\n aspectRatio: { type: \"string\" },\n safetyFilterLevel: { type: \"string\" },\n },\n },\n },\n },\n GeminiPredictResponse: {\n type: \"object\",\n properties: {\n predictions: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n bytesBase64Encoded: { type: \"string\" },\n mimeType: { type: \"string\" },\n },\n },\n },\n },\n },\n InteractionsRequest: {\n type: \"object\",\n description:\n \"Gemini Interactions input normalized for fixture matching; streams unless stream is false.\",\n properties: {\n model: { type: \"string\" },\n input: {\n description: \"Text, turns, steps, or content blocks normalized for fixture matching.\",\n oneOf: [{ type: \"string\" }, { type: \"array\", items: { type: \"object\" } }],\n },\n system_instruction: { type: \"string\" },\n tools: { type: \"array\", items: { type: \"object\" } },\n generation_config: {\n type: \"object\",\n properties: {\n temperature: { type: \"number\" },\n max_output_tokens: { type: \"integer\" },\n },\n },\n stream: { type: \"boolean\", default: true },\n previous_interaction_id: { type: \"string\" },\n },\n },\n InteractionsResponse: {\n type: \"object\",\n description:\n \"Nonstreaming Interactions response. output_text is omitted for tool-only responses.\",\n required: [\"id\", \"status\", \"model\", \"role\", \"steps\", \"usage\"],\n properties: {\n id: { type: \"string\" },\n status: { type: \"string\", enum: [\"completed\", \"requires_action\"] },\n model: { type: \"string\" },\n role: { type: \"string\", enum: [\"model\"] },\n output_text: { type: \"string\" },\n steps: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n type: { type: \"string\", enum: [\"model_output\", \"function_call\"] },\n content: { type: \"array\", items: { type: \"object\" } },\n id: { type: \"string\" },\n name: { type: \"string\" },\n arguments: {},\n },\n },\n },\n usage: {\n type: \"object\",\n properties: {\n total_input_tokens: { type: \"number\" },\n total_output_tokens: { type: \"number\" },\n total_tokens: { type: \"number\" },\n },\n },\n },\n },\n InteractionsSSEStream: {\n type: \"string\",\n description:\n \"SSE data: JSON frames separated by a blank line, with no event: prefix or [DONE] sentinel. Event identity is in event_type; a complete stream ends with interaction.completed. Interruption may end the stream earlier.\",\n \"x-sse-data-schema\": { $ref: \"#/components/schemas/InteractionsSSEEvent\" },\n },\n InteractionsSSEEvent: {\n type: \"object\",\n required: [\"event_type\", \"event_id\"],\n properties: {\n event_type: {\n type: \"string\",\n enum: [\n \"interaction.created\",\n \"step.start\",\n \"step.delta\",\n \"step.stop\",\n \"interaction.completed\",\n ],\n },\n event_id: { type: \"string\" },\n index: { type: \"integer\" },\n interaction: {\n type: \"object\",\n properties: {\n id: { type: \"string\" },\n status: { type: \"string\", enum: [\"in_progress\", \"completed\", \"requires_action\"] },\n usage: { type: \"object\" },\n },\n },\n step: { type: \"object\" },\n delta: {\n type: \"object\",\n properties: {\n type: { type: \"string\", enum: [\"text\", \"arguments_delta\"] },\n text: { type: \"string\" },\n arguments: { type: \"string\" },\n },\n },\n },\n },\n BedrockInvokeRequest: {\n type: \"object\",\n description:\n \"Model-dependent Bedrock invoke body (e.g. Anthropic Claude messages shape or Llama prompt shape); passed through to fixture matching.\",\n },\n BedrockInvokeResponse: {\n type: \"object\",\n description: \"Model-dependent Bedrock invoke result, replayed from the matched fixture.\",\n },\n BedrockConverseRequest: {\n type: \"object\",\n required: [\"messages\"],\n properties: {\n messages: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"role\", \"content\"],\n properties: {\n role: { type: \"string\", enum: [\"user\", \"assistant\"] },\n content: { type: \"array\", items: { type: \"object\" } },\n },\n },\n },\n system: { type: \"array\", items: { type: \"object\" } },\n inferenceConfig: {\n type: \"object\",\n properties: {\n maxTokens: { type: \"integer\" },\n temperature: { type: \"number\" },\n topP: { type: \"number\" },\n stopSequences: { type: \"array\", items: { type: \"string\" } },\n },\n },\n toolConfig: { type: \"object\" },\n },\n },\n BedrockConverseResponse: {\n type: \"object\",\n properties: {\n output: {\n type: \"object\",\n properties: {\n message: {\n type: \"object\",\n properties: {\n role: { type: \"string\" },\n content: { type: \"array\", items: { type: \"object\" } },\n },\n },\n },\n },\n stopReason: { type: \"string\" },\n usage: {\n type: \"object\",\n properties: {\n inputTokens: { type: \"integer\" },\n outputTokens: { type: \"integer\" },\n totalTokens: { type: \"integer\" },\n },\n },\n },\n },\n VideoSubmitRequest: {\n type: \"object\",\n required: [\"prompt\"],\n properties: {\n model: { type: \"string\" },\n prompt: { type: \"string\" },\n size: { type: \"string\" },\n seconds: { type: \"string\" },\n n: { type: \"integer\" },\n },\n },\n VideoJob: {\n type: \"object\",\n required: [\"id\", \"status\"],\n properties: {\n id: { type: \"string\" },\n status: { type: \"string\", enum: [\"queued\", \"in_progress\", \"completed\", \"failed\"] },\n created_at: { type: \"integer\" },\n url: { type: \"string\" },\n progress: { type: \"number\" },\n },\n },\n GrokVideoSubmitResponse: {\n type: \"object\",\n required: [\"request_id\"],\n properties: { request_id: { type: \"string\" } },\n },\n GrokVideoJob: {\n type: \"object\",\n required: [\"request_id\", \"status\"],\n properties: {\n request_id: { type: \"string\" },\n status: { type: \"string\", enum: [\"pending\", \"in_progress\", \"done\", \"failed\", \"expired\"] },\n progress: { type: \"number\" },\n video: {\n type: \"object\",\n properties: { url: { type: \"string\" }, duration: { type: \"number\" } },\n },\n usage: {\n type: \"object\",\n properties: { cost_in_usd_ticks: { type: \"number\" } },\n },\n code: { type: \"string\" },\n error: { type: \"string\" },\n },\n },\n VideoStatusResponse: {\n oneOf: [\n { $ref: \"#/components/schemas/VideoJob\" },\n { $ref: \"#/components/schemas/GrokVideoJob\" },\n ],\n },\n OpenRouterVideoSubmitRequest: {\n type: \"object\",\n required: [\"model\", \"prompt\"],\n properties: {\n model: { type: \"string\" },\n prompt: { type: \"string\" },\n aspect_ratio: { type: \"string\" },\n duration: { type: \"number\" },\n },\n },\n OpenRouterVideoJob: {\n type: \"object\",\n required: [\"id\", \"status\"],\n properties: {\n id: { type: \"string\" },\n status: { type: \"string\", enum: [\"queued\", \"in_progress\", \"completed\", \"failed\"] },\n created_at: { type: \"integer\" },\n },\n },\n OpenRouterVideoModelsResponse: {\n type: \"object\",\n properties: {\n data: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"id\"],\n properties: {\n id: { type: \"string\" },\n canonical_slug: { type: \"string\" },\n name: { type: \"string\" },\n created: { type: \"integer\" },\n description: { type: \"string\" },\n context_length: { type: \"integer\" },\n },\n },\n },\n },\n },\n OpenRouterKeyResponse: {\n type: \"object\",\n properties: {\n data: {\n type: \"object\",\n properties: {\n label: { type: \"string\" },\n usage: { type: \"number\" },\n limit: { type: [\"number\", \"null\"] },\n limit_remaining: { type: [\"number\", \"null\"] },\n is_free_tier: { type: \"boolean\" },\n rate_limit: {\n type: \"object\",\n properties: {\n requests: { type: \"integer\" },\n interval: { type: \"string\" },\n },\n },\n },\n },\n },\n },\n OpenRouterCreditsResponse: {\n type: \"object\",\n properties: {\n data: {\n type: \"object\",\n properties: {\n total_credits: { type: \"number\" },\n total_usage: { type: \"number\" },\n },\n },\n },\n },\n BytePlusSubmitRequest: {\n type: \"object\",\n required: [\"model\", \"content\"],\n properties: {\n model: { type: \"string\" },\n content: { type: \"array\", items: { type: \"object\" } },\n },\n },\n BytePlusTaskStatus: {\n type: \"object\",\n required: [\"id\", \"status\"],\n properties: {\n id: { type: \"string\" },\n model: { type: \"string\" },\n status: { type: \"string\", enum: [\"queued\", \"running\", \"succeeded\", \"failed\", \"cancelled\"] },\n created_at: { type: \"integer\" },\n },\n },\n VeoSubmitRequest: {\n type: \"object\",\n description: \"Veo `:predictLongRunning` body (instances + parameters), recorded and replayed.\",\n properties: {\n instances: { type: \"array\", items: { type: \"object\" } },\n parameters: { type: \"object\" },\n },\n },\n VeoOperation: {\n type: \"object\",\n required: [\"name\"],\n properties: {\n name: { type: \"string\" },\n done: { type: \"boolean\" },\n metadata: { type: \"object\" },\n response: { type: \"object\" },\n error: { $ref: \"#/components/schemas/ErrorResponse\" },\n },\n },\n ElevenLabsTTSRequest: {\n type: \"object\",\n required: [\"text\"],\n properties: {\n text: { type: \"string\" },\n model_id: { type: \"string\" },\n voice_settings: {\n type: \"object\",\n properties: {\n stability: { type: \"number\" },\n similarity_boost: { type: \"number\" },\n style: { type: \"number\" },\n },\n },\n output_format: { type: \"string\" },\n },\n },\n ElevenLabsVoice: {\n type: \"object\",\n required: [\"voice_id\"],\n properties: {\n voice_id: { type: \"string\" },\n name: { type: \"string\" },\n category: { type: \"string\" },\n description: { type: \"string\" },\n },\n },\n ElevenLabsVoiceDeleteResponse: {\n type: \"object\",\n required: [\"status\"],\n properties: {\n status: { type: \"string\", enum: [\"ok\"] },\n },\n },\n ElevenLabsMusicRequest: {\n type: \"object\",\n properties: {\n prompt: { type: \"string\" },\n text: { type: \"string\" },\n model_id: { type: \"string\" },\n duration_seconds: { type: \"number\" },\n output_format: { type: \"string\" },\n },\n },\n SoundGenerationRequest: {\n type: \"object\",\n required: [\"text\"],\n properties: {\n text: { type: \"string\" },\n duration_seconds: { type: \"number\" },\n prompt_influence: { type: \"number\" },\n model_id: { type: \"string\" },\n output_format: { type: \"string\" },\n },\n },\n VoiceDesignRequest: {\n type: \"object\",\n required: [\"voice_description\"],\n properties: {\n voice_description: {\n type: \"string\",\n minLength: 20,\n description: \"At least 20 code points; shorter values 400.\",\n },\n model_id: { type: \"string\" },\n text: { type: \"string\" },\n auto_generate_text: { type: \"boolean\" },\n loudness: { type: \"number\" },\n quality: { type: \"string\" },\n seed: { type: \"integer\" },\n guidance_scale: { type: \"number\" },\n },\n },\n VoiceDesignPreviewResponse: {\n type: \"object\",\n properties: {\n previews: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"generated_voice_id\"],\n properties: {\n generated_voice_id: { type: \"string\" },\n audio_base_64: { type: \"string\" },\n media_type: { type: \"string\" },\n duration_secs: { type: \"number\" },\n language: { type: \"string\" },\n },\n },\n },\n text: { type: \"string\" },\n },\n },\n VoiceCreateRequest: {\n type: \"object\",\n required: [\"voice_name\", \"generated_voice_id\"],\n properties: {\n voice_name: { type: \"string\" },\n generated_voice_id: { type: \"string\" },\n voice_description: { type: \"string\" },\n labels: { type: \"object\" },\n },\n },\n VoiceCreateResponse: {\n type: \"object\",\n required: [\"voice_id\"],\n properties: {\n voice_id: { type: \"string\" },\n },\n },\n FalQueueSubmitResponse: {\n type: \"object\",\n required: [\"request_id\"],\n properties: {\n request_id: { type: \"string\" },\n response_url: { type: \"string\" },\n status_url: { type: \"string\" },\n },\n },\n FalQueueStatusResponse: {\n type: \"object\",\n required: [\"status\"],\n properties: {\n status: { type: \"string\", enum: [\"IN_QUEUE\", \"IN_PROGRESS\", \"COMPLETED\"] },\n request_id: { type: \"string\" },\n response: { type: \"object\" },\n queue_position: { type: \"integer\" },\n },\n },\n FalRunRequest: {\n type: \"object\",\n description: \"Model-dependent synchronous run input, matched against fixtures.\",\n },\n FalRunResponse: {\n type: \"object\",\n description: \"Synchronous fal.ai result, replayed from the matched fixture.\",\n },\n FalQueueSubmitRequest: {\n type: \"object\",\n description: \"Model-dependent queue input, matched against fixtures.\",\n },\n FileUploadRequest: {\n type: \"object\",\n required: [\"file\"],\n description: \"Multipart form (file + optional purpose/filename) or a JSON body.\",\n properties: {\n file: { type: \"string\", format: \"binary\", description: \"File bytes (multipart)\" },\n purpose: { type: \"string\" },\n filename: { type: \"string\" },\n },\n },\n FileObject: {\n type: \"object\",\n required: [\"id\", \"object\", \"bytes\", \"created_at\", \"filename\", \"purpose\", \"status\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"file\"] },\n bytes: { type: \"integer\" },\n created_at: { type: \"integer\" },\n filename: { type: \"string\" },\n purpose: { type: \"string\" },\n status: { type: \"string\", enum: [\"uploaded\", \"processed\", \"pending\", \"error\"] },\n status_details: { type: \"string\" },\n },\n },\n FileListResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: { type: \"array\", items: { $ref: \"#/components/schemas/FileObject\" } },\n },\n },\n FileDeleteResponse: {\n type: \"object\",\n required: [\"id\", \"object\", \"deleted\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"file\"] },\n deleted: { type: \"boolean\" },\n },\n },\n FineTuningJobCreateRequest: {\n type: \"object\",\n required: [\"training_file\", \"model\"],\n properties: {\n training_file: { type: \"string\" },\n model: { type: \"string\" },\n validation_file: { type: [\"string\", \"null\"] },\n suffix: { type: [\"string\", \"null\"] },\n hyperparameters: {\n type: \"object\",\n properties: {\n n_epochs: { oneOf: [{ type: \"integer\" }, { type: \"string\", enum: [\"auto\"] }] },\n batch_size: { oneOf: [{ type: \"integer\" }, { type: \"string\", enum: [\"auto\"] }] },\n learning_rate_multiplier: {\n oneOf: [{ type: \"number\" }, { type: \"string\", enum: [\"auto\"] }],\n },\n },\n },\n seed: { type: [\"integer\", \"null\"] },\n integrations: { type: [\"array\", \"null\"], items: { type: \"object\" } },\n method: { type: [\"object\", \"null\"] },\n metadata: { type: [\"object\", \"null\"] },\n },\n },\n FineTuningJob: {\n type: \"object\",\n required: [\"id\", \"object\", \"model\", \"training_file\", \"status\", \"created_at\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"fine_tuning.job\"] },\n model: { type: \"string\" },\n training_file: { type: \"string\" },\n validation_file: { type: [\"string\", \"null\"] },\n status: {\n type: \"string\",\n enum: [\"validating_files\", \"queued\", \"running\", \"succeeded\", \"cancelled\", \"failed\"],\n },\n created_at: { type: \"integer\" },\n finished_at: { type: [\"integer\", \"null\"] },\n fine_tuned_model: { type: [\"string\", \"null\"] },\n hyperparameters: { type: \"object\" },\n error: { type: [\"object\", \"null\"] },\n organization_id: { type: \"string\" },\n result_files: { type: \"array\", items: { type: \"string\" } },\n seed: { type: \"integer\" },\n trained_tokens: { type: [\"integer\", \"null\"] },\n },\n },\n FineTuningJobListResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: { type: \"array\", items: { $ref: \"#/components/schemas/FineTuningJob\" } },\n has_more: { type: \"boolean\" },\n },\n },\n FineTuningJobEvent: {\n type: \"object\",\n required: [\"id\", \"object\", \"created_at\", \"level\", \"message\", \"type\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"fine_tuning.job.event\"] },\n created_at: { type: \"integer\" },\n level: { type: \"string\", enum: [\"info\", \"warn\", \"error\"] },\n message: { type: \"string\" },\n type: { type: \"string\", enum: [\"message\"] },\n },\n },\n FineTuningJobEventListResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: { type: \"array\", items: { $ref: \"#/components/schemas/FineTuningJobEvent\" } },\n has_more: { type: \"boolean\" },\n },\n },\n BatchCreateRequest: {\n type: \"object\",\n required: [\"input_file_id\", \"endpoint\", \"completion_window\"],\n properties: {\n input_file_id: { type: \"string\" },\n endpoint: {\n type: \"string\",\n enum: [\"/v1/responses\", \"/v1/chat/completions\", \"/v1/embeddings\", \"/v1/completions\"],\n },\n completion_window: { type: \"string\", enum: [\"24h\"] },\n metadata: { type: \"object\" },\n },\n },\n BatchObject: {\n type: \"object\",\n required: [\n \"id\",\n \"object\",\n \"endpoint\",\n \"input_file_id\",\n \"completion_window\",\n \"status\",\n \"created_at\",\n ],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"batch\"] },\n endpoint: { type: \"string\" },\n input_file_id: { type: \"string\" },\n completion_window: { type: \"string\" },\n status: {\n type: \"string\",\n enum: [\n \"validating\",\n \"in_progress\",\n \"completed\",\n \"failed\",\n \"expired\",\n \"cancelling\",\n \"cancelled\",\n ],\n },\n created_at: { type: \"integer\" },\n metadata: { type: \"object\" },\n in_progress_at: { type: \"integer\" },\n completed_at: { type: \"integer\" },\n failed_at: { type: \"integer\" },\n expired_at: { type: \"integer\" },\n cancelling_at: { type: \"integer\" },\n cancelled_at: { type: \"integer\" },\n output_file_id: { type: \"string\" },\n error_file_id: { type: \"string\" },\n errors: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n code: { type: \"string\" },\n message: { type: \"string\" },\n param: { type: [\"string\", \"null\"] },\n line: { type: [\"integer\", \"null\"] },\n },\n },\n },\n },\n },\n request_counts: {\n type: \"object\",\n properties: {\n total: { type: \"integer\" },\n completed: { type: \"integer\" },\n failed: { type: \"integer\" },\n },\n },\n },\n },\n BatchListResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: { type: \"array\", items: { $ref: \"#/components/schemas/BatchObject\" } },\n has_more: { type: \"boolean\" },\n first_id: { type: [\"string\", \"null\"] },\n last_id: { type: [\"string\", \"null\"] },\n },\n },\n VectorStore: {\n type: \"object\",\n required: [\"id\", \"object\", \"created_at\", \"name\", \"usage_bytes\", \"file_counts\", \"status\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"vector_store\"] },\n created_at: { type: \"integer\" },\n name: { type: \"string\" },\n usage_bytes: { type: \"integer\" },\n file_counts: { type: \"object\" },\n status: { type: \"string\", enum: [\"expired\", \"in_progress\", \"completed\"] },\n metadata: { type: [\"object\", \"null\"] },\n expires_after: { $ref: \"#/components/schemas/VectorStoreExpiresAfter\" },\n chunking_strategy: { $ref: \"#/components/schemas/VectorStoreChunkingStrategyRequest\" },\n expires_at: { type: [\"integer\", \"null\"] },\n last_active_at: { type: [\"integer\", \"null\"] },\n },\n },\n VectorStoreDeleteResponse: {\n type: \"object\",\n required: [\"id\", \"object\", \"deleted\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"vector_store.deleted\"] },\n deleted: { type: \"boolean\", enum: [true] },\n },\n },\n VectorStoreListResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: { type: \"array\", items: { $ref: \"#/components/schemas/VectorStore\" } },\n first_id: { type: [\"string\", \"null\"] },\n last_id: { type: [\"string\", \"null\"] },\n has_more: { type: \"boolean\" },\n },\n },\n VectorStoreFile: {\n type: \"object\",\n required: [\n \"id\",\n \"object\",\n \"created_at\",\n \"vector_store_id\",\n \"status\",\n \"usage_bytes\",\n \"attributes\",\n ],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"vector_store.file\"] },\n created_at: { type: \"integer\" },\n vector_store_id: { type: \"string\" },\n status: { type: \"string\", enum: [\"in_progress\", \"completed\", \"failed\", \"cancelled\"] },\n usage_bytes: { type: \"integer\" },\n attributes: { $ref: \"#/components/schemas/VectorStoreAttributes\" },\n chunking_strategy: { $ref: \"#/components/schemas/VectorStoreFileChunkingStrategy\" },\n last_error: { type: [\"object\", \"null\"] },\n },\n },\n VectorStoreFileDeleteResponse: {\n type: \"object\",\n required: [\"id\", \"object\", \"deleted\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"vector_store.file.deleted\"] },\n deleted: { type: \"boolean\", enum: [true] },\n },\n },\n VectorStoreFileListResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: { type: \"array\", items: { $ref: \"#/components/schemas/VectorStoreFile\" } },\n first_id: { type: [\"string\", \"null\"] },\n last_id: { type: [\"string\", \"null\"] },\n has_more: { type: \"boolean\" },\n },\n },\n VectorFileBatch: {\n type: \"object\",\n required: [\"id\", \"object\", \"created_at\", \"vector_store_id\", \"status\", \"file_counts\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"vector_store.file_batch\"] },\n created_at: { type: \"integer\" },\n vector_store_id: { type: \"string\" },\n status: {\n type: \"string\",\n enum: [\"in_progress\", \"completed\", \"failed\", \"cancelled\", \"cancelling\"],\n },\n file_counts: { type: \"object\" },\n },\n },\n VectorFileBatchFilesResponse: {\n type: \"object\",\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: { type: \"array\", items: { $ref: \"#/components/schemas/VectorStoreFile\" } },\n first_id: { type: [\"string\", \"null\"] },\n last_id: { type: [\"string\", \"null\"] },\n has_more: { type: \"boolean\" },\n },\n },\n VectorSearchResponse: {\n type: \"object\",\n required: [\"object\", \"search_query\", \"data\", \"has_more\"],\n properties: {\n object: { type: \"string\", enum: [\"vector_store.search_results_page\"] },\n search_query: {\n oneOf: [{ type: \"string\" }, { type: \"array\", items: { type: \"string\" } }],\n },\n data: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"file_id\", \"filename\", \"score\", \"content\", \"attributes\"],\n properties: {\n file_id: { type: \"string\" },\n filename: { type: \"string\" },\n score: { type: \"number\" },\n attributes: {\n type: [\"object\", \"null\"],\n additionalProperties: { type: [\"string\", \"number\", \"boolean\"] },\n },\n content: { type: \"array\", items: { type: \"object\" } },\n },\n },\n },\n has_more: { type: \"boolean\" },\n },\n },\n VectorStoreExpiresAfter: {\n type: \"object\",\n required: [\"anchor\", \"days\"],\n properties: {\n anchor: { type: \"string\", enum: [\"last_active_at\"] },\n days: { type: \"integer\", minimum: 1, maximum: 365 },\n },\n },\n VectorStoreMetadata: {\n type: [\"object\", \"null\"],\n maxProperties: 16,\n propertyNames: { maxLength: 64 },\n additionalProperties: { type: \"string\", maxLength: 512 },\n },\n VectorStoreAttributes: {\n type: [\"object\", \"null\"],\n maxProperties: 16,\n propertyNames: { maxLength: 64 },\n additionalProperties: {\n oneOf: [{ type: \"string\", maxLength: 512 }, { type: \"number\" }, { type: \"boolean\" }],\n },\n },\n VectorStoreChunkingStrategyRequest: {\n oneOf: [\n {\n type: \"object\",\n required: [\"type\"],\n properties: { type: { type: \"string\", enum: [\"auto\"] } },\n },\n {\n type: \"object\",\n required: [\"type\", \"static\"],\n properties: {\n type: { type: \"string\", enum: [\"static\"] },\n static: {\n type: \"object\",\n required: [\"max_chunk_size_tokens\", \"chunk_overlap_tokens\"],\n properties: {\n max_chunk_size_tokens: { type: \"integer\", minimum: 100, maximum: 4096 },\n chunk_overlap_tokens: {\n type: \"integer\",\n minimum: 0,\n maximum: 2048,\n description: \"Must be at most half of max_chunk_size_tokens.\",\n },\n },\n },\n },\n },\n ],\n },\n VectorStoreFileChunkingStrategy: {\n type: \"object\",\n required: [\"type\", \"static\"],\n properties: {\n type: { type: \"string\", enum: [\"static\"] },\n static: {\n type: \"object\",\n required: [\"max_chunk_size_tokens\", \"chunk_overlap_tokens\"],\n properties: {\n max_chunk_size_tokens: { type: \"integer\", minimum: 100, maximum: 4096 },\n chunk_overlap_tokens: {\n type: \"integer\",\n minimum: 0,\n maximum: 2048,\n description: \"Must be at most half of max_chunk_size_tokens.\",\n },\n },\n },\n },\n },\n VectorStoreAttributeFilter: {\n oneOf: [\n {\n type: \"object\",\n required: [\"type\", \"key\", \"value\"],\n properties: {\n type: { type: \"string\", enum: [\"eq\", \"ne\", \"gt\", \"gte\", \"lt\", \"lte\"] },\n key: { type: \"string\" },\n value: { type: [\"string\", \"number\", \"boolean\"] },\n },\n },\n {\n type: \"object\",\n required: [\"type\", \"filters\"],\n properties: {\n type: { type: \"string\", enum: [\"and\", \"or\"] },\n filters: {\n type: \"array\",\n items: { $ref: \"#/components/schemas/VectorStoreAttributeFilter\" },\n },\n },\n },\n ],\n },\n VectorStoreCreateRequest: {\n type: \"object\",\n properties: {\n name: { type: \"string\" },\n file_ids: { type: \"array\", maxItems: 2000, items: { type: \"string\", minLength: 1 } },\n expires_after: { $ref: \"#/components/schemas/VectorStoreExpiresAfter\" },\n chunking_strategy: { $ref: \"#/components/schemas/VectorStoreChunkingStrategyRequest\" },\n metadata: { $ref: \"#/components/schemas/VectorStoreMetadata\" },\n },\n },\n VectorStoreUpdateRequest: {\n type: \"object\",\n properties: {\n name: { type: [\"string\", \"null\"] },\n expires_after: {\n oneOf: [{ $ref: \"#/components/schemas/VectorStoreExpiresAfter\" }, { type: \"null\" }],\n },\n metadata: { $ref: \"#/components/schemas/VectorStoreMetadata\" },\n },\n },\n VectorStoreFileCreateRequest: {\n type: \"object\",\n required: [\"file_id\"],\n properties: {\n file_id: { type: \"string\", minLength: 1 },\n attributes: { $ref: \"#/components/schemas/VectorStoreAttributes\" },\n chunking_strategy: { $ref: \"#/components/schemas/VectorStoreChunkingStrategyRequest\" },\n },\n },\n VectorStoreFileBatchCreateRequest: {\n type: \"object\",\n required: [\"file_ids\"],\n properties: {\n file_ids: {\n type: \"array\",\n minItems: 1,\n maxItems: 2000,\n uniqueItems: true,\n items: { type: \"string\", minLength: 1 },\n },\n attributes: { $ref: \"#/components/schemas/VectorStoreAttributes\" },\n chunking_strategy: { $ref: \"#/components/schemas/VectorStoreChunkingStrategyRequest\" },\n },\n },\n VectorStoreSearchRequest: {\n type: \"object\",\n required: [\"query\"],\n properties: {\n query: {\n oneOf: [\n { type: \"string\", minLength: 1 },\n { type: \"array\", minItems: 1, items: { type: \"string\", minLength: 1 } },\n ],\n },\n filters: { $ref: \"#/components/schemas/VectorStoreAttributeFilter\" },\n max_num_results: { type: \"integer\", minimum: 1, maximum: 50 },\n ranking_options: {\n type: \"object\",\n properties: {\n score_threshold: { type: \"number\", minimum: 0, maximum: 1 },\n },\n },\n },\n },\n ModelsListResponse: {\n type: \"object\",\n required: [\"object\"],\n properties: {\n object: { type: \"string\", enum: [\"list\"] },\n data: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"id\", \"object\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"model\"] },\n created: { type: \"integer\" },\n owned_by: { type: \"string\" },\n },\n },\n },\n },\n },\n OpenAIModelResponse: {\n type: \"object\",\n required: [\"id\", \"object\", \"created\", \"owned_by\"],\n properties: {\n id: { type: \"string\" },\n object: { type: \"string\", enum: [\"model\"] },\n created: { type: \"integer\" },\n owned_by: { type: \"string\" },\n },\n },\n AnthropicModelInfo: {\n type: \"object\",\n required: [\n \"type\",\n \"id\",\n \"display_name\",\n \"created_at\",\n \"capabilities\",\n \"lifecycle\",\n \"line\",\n \"max_input_tokens\",\n \"max_tokens\",\n \"deprecated_at\",\n \"retires_at\",\n ],\n properties: {\n type: { type: \"string\", enum: [\"model\"] },\n id: { type: \"string\" },\n display_name: { type: \"string\" },\n created_at: { type: \"string\", format: \"date-time\" },\n capabilities: { type: [\"object\", \"null\"] },\n lifecycle: { type: \"string\", enum: [\"active\", \"deprecated\", \"retired\"] },\n line: { type: [\"string\", \"null\"] },\n max_input_tokens: { type: [\"integer\", \"null\"] },\n max_tokens: { type: [\"integer\", \"null\"] },\n deprecated_at: { type: [\"string\", \"null\"], format: \"date-time\" },\n retires_at: { type: [\"string\", \"null\"], format: \"date-time\" },\n },\n },\n AnthropicModelsListResponse: {\n type: \"object\",\n required: [\"data\", \"has_more\", \"first_id\", \"last_id\"],\n properties: {\n data: { type: \"array\", items: { $ref: \"#/components/schemas/AnthropicModelInfo\" } },\n has_more: { type: \"boolean\" },\n first_id: { type: [\"string\", \"null\"] },\n last_id: { type: [\"string\", \"null\"] },\n },\n },\n CatalogModelsListResponse: {\n description:\n \"OpenAI list by default. With policy modelCatalog=native, Anthropic headers select the native paged Anthropic list.\",\n oneOf: [\n { $ref: \"#/components/schemas/ModelsListResponse\" },\n { $ref: \"#/components/schemas/AnthropicModelsListResponse\" },\n ],\n },\n CatalogModelResponse: {\n oneOf: [\n { $ref: \"#/components/schemas/OpenAIModelResponse\" },\n { $ref: \"#/components/schemas/AnthropicModelInfo\" },\n ],\n },\n GeminiModel: {\n type: \"object\",\n required: [\n \"name\",\n \"baseModelId\",\n \"version\",\n \"displayName\",\n \"inputTokenLimit\",\n \"outputTokenLimit\",\n \"supportedGenerationMethods\",\n ],\n properties: {\n name: { type: \"string\" },\n baseModelId: { type: \"string\" },\n version: { type: \"string\" },\n displayName: { type: \"string\" },\n inputTokenLimit: { type: \"integer\" },\n outputTokenLimit: { type: \"integer\" },\n supportedGenerationMethods: { type: \"array\", items: { type: \"string\" } },\n },\n },\n GeminiModelsListResponse: {\n type: \"object\",\n required: [\"models\"],\n properties: {\n models: { type: \"array\", items: { $ref: \"#/components/schemas/GeminiModel\" } },\n nextPageToken: { type: \"string\" },\n },\n },\n AnthropicCountTool: {\n anyOf: [\n { $ref: \"#/components/schemas/MessagesRequest/properties/tools/items\" },\n {\n type: \"object\",\n required: [\"type\", \"name\"],\n properties: {\n type: { type: \"string\" },\n name: { type: \"string\" },\n description: { type: \"string\" },\n input_schema: { type: \"object\" },\n },\n },\n ],\n },\n AnthropicCountRequest: {\n type: \"object\",\n required: [\"messages\"],\n properties: {\n model: { type: \"string\" },\n messages: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"role\", \"content\"],\n properties: {\n role: { type: \"string\", enum: [\"user\", \"assistant\"] },\n // Counting accepts object blocks without generation-only content constraints.\n content: {\n oneOf: [{ type: \"string\" }, { type: \"array\", items: { type: \"object\" } }],\n },\n },\n },\n },\n system: { oneOf: [{ type: \"string\" }, { type: \"array\", items: { type: \"object\" } }] },\n tools: { type: \"array\", items: { $ref: \"#/components/schemas/AnthropicCountTool\" } },\n },\n },\n AnthropicCountResponse: {\n type: \"object\",\n required: [\"input_tokens\"],\n properties: { input_tokens: { type: \"integer\", minimum: 1 } },\n },\n GeminiCountContentRequest: {\n type: \"object\",\n required: [\"contents\"],\n properties: {\n contents: { $ref: \"#/components/schemas/GeminiGenerateRequest/properties/contents\" },\n systemInstruction: {\n type: [\"object\", \"null\"],\n properties: {\n parts: {\n type: [\"array\", \"null\"],\n items: { type: \"object\", properties: { text: { type: \"string\" } } },\n },\n },\n },\n tools: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n functionDeclarations: { type: \"array\", items: { type: \"object\" } },\n },\n },\n },\n },\n },\n GeminiCountRequest: {\n anyOf: [\n {\n allOf: [\n { $ref: \"#/components/schemas/GeminiCountContentRequest\" },\n { not: { required: [\"generateContentRequest\"] } },\n ],\n },\n {\n type: \"object\",\n required: [\"generateContentRequest\"],\n properties: {\n generateContentRequest: { $ref: \"#/components/schemas/GeminiCountContentRequest\" },\n },\n },\n ],\n },\n GeminiCountResponse: {\n type: \"object\",\n required: [\"totalTokens\"],\n properties: { totalTokens: { type: \"integer\", minimum: 1 } },\n },\n ReadyResponse: {\n type: \"object\",\n required: [\"status\"],\n properties: { status: { type: \"string\", enum: [\"ready\"] } },\n },\n HealthResponse: {\n type: \"object\",\n required: [\"status\"],\n properties: {\n status: { type: \"string\", enum: [\"ok\"] },\n services: { type: \"object\" },\n },\n },\n JournalEntry: {\n type: \"object\",\n required: [\"method\", \"path\", \"headers\", \"response\"],\n properties: {\n method: { type: \"string\" },\n path: { type: \"string\" },\n headers: { type: \"object\" },\n body: { type: [\"object\", \"null\"] },\n response: {\n type: \"object\",\n properties: {\n status: { type: \"integer\" },\n fixture: { type: [\"integer\", \"null\"] },\n },\n },\n service: { type: \"string\" },\n },\n },\n ChaosConfig: {\n type: \"object\",\n description: \"Install REPLACES the scope config wholesale; `{}` means explicitly no chaos.\",\n properties: {\n dropRate: { type: \"number\", minimum: 0, maximum: 1 },\n malformedRate: { type: \"number\", minimum: 0, maximum: 1 },\n disconnectRate: { type: \"number\", minimum: 0, maximum: 1 },\n rateLimitRate: { type: \"number\", minimum: 0, maximum: 1 },\n latencyMs: { type: \"integer\", minimum: 0, maximum: 30000 },\n },\n },\n ChaosEnvelope: {\n type: \"object\",\n properties: {\n chaos: { $ref: \"#/components/schemas/ChaosConfig\" },\n },\n },\n FixturesAddRequest: {\n type: \"object\",\n required: [\"fixtures\"],\n properties: {\n fixtures: { type: \"array\", items: { type: \"object\" } },\n },\n },\n FixturesAddResponse: {\n type: \"object\",\n properties: {\n added: { type: \"integer\" },\n },\n },\n FixturesInspectResponse: {\n type: \"object\",\n properties: {\n count: { type: \"integer\" },\n fixtures: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n index: { type: \"integer\" },\n match: { type: \"object\" },\n responseKind: { type: \"string\" },\n },\n },\n },\n },\n },\n FixturesClearResponse: {\n type: \"object\",\n properties: {\n cleared: { type: \"boolean\" },\n },\n },\n ResetResponse: {\n type: \"object\",\n properties: {\n reset: { type: \"boolean\" },\n deprecated: { type: \"boolean\" },\n deprecation: { type: \"string\" },\n },\n },\n ErrorInjectRequest: {\n type: \"object\",\n properties: {\n status: { type: \"integer\" },\n body: {\n type: \"object\",\n properties: {\n message: { type: \"string\" },\n type: { type: \"string\" },\n code: { type: \"string\" },\n },\n },\n },\n },\n ErrorInjectResponse: {\n type: \"object\",\n properties: {\n queued: { type: \"boolean\" },\n },\n },\n RoutesListResponse: {\n type: \"object\",\n properties: {\n count: { type: \"integer\" },\n routes: {\n type: \"array\",\n items: {\n type: \"object\",\n required: [\"method\", \"path\", \"service\", \"description\"],\n properties: {\n method: { type: \"string\" },\n path: { type: \"string\" },\n service: { type: \"string\" },\n description: { type: \"string\" },\n },\n },\n },\n },\n },\n OpenApiDocument: {\n type: \"object\",\n description: \"The OpenAPI 3.1 document served by GET /__aimock/openapi.json.\",\n },\n ControlErrorResponse: {\n type: \"object\",\n required: [\"error\"],\n properties: { error: { type: \"string\" } },\n },\n FixtureValidationErrorResponse: {\n type: \"object\",\n required: [\"error\"],\n properties: {\n error: { type: \"string\" },\n details: {\n type: \"array\",\n description: \"Validation issues when fixture or MCP fake validation fails.\",\n items: { type: \"object\" },\n },\n },\n },\n ErrorResponse: {\n type: \"object\",\n properties: {\n error: {\n type: \"object\",\n properties: {\n message: { type: \"string\" },\n type: { type: \"string\" },\n code: {},\n },\n },\n },\n },\n};\n\ninterface QueryParam {\n name: string;\n description: string;\n schema: Record<string, unknown>;\n required?: boolean;\n}\n\n/** `METHOD path` → schemas + media types + query params for the operation. */\ninterface OperationSchemas {\n request?: string;\n response?: string;\n /** Request media type. Defaults to `application/json`. */\n reqContent?: string;\n /** Success response media type. Defaults to `application/json`. */\n respContent?: string;\n /** Additional SSE representation; names a string schema for the entire framed stream. */\n streamResponse?: string;\n /** Success status + description override (e.g. replayed removals). */\n successStatus?: string;\n successDescription?: string;\n /** Schema for this operation's 400 response; provider errors remain the default. */\n invalidRequest?: string;\n query?: QueryParam[];\n}\n\nconst JSON = \"application/json\";\nconst MULTIPART = \"multipart/form-data\";\nconst AUDIO = \"audio/mpeg\";\nconst OCTET = \"application/octet-stream\";\n\nconst VECTOR_LIST_QUERY: QueryParam[] = [\n {\n name: \"limit\",\n description: \"Maximum entries per page\",\n schema: { type: \"integer\", minimum: 1, maximum: 100, default: 20 },\n },\n {\n name: \"order\",\n description: \"Sort order by creation time\",\n schema: { type: \"string\", enum: [\"asc\", \"desc\"], default: \"desc\" },\n },\n {\n name: \"after\",\n description: \"Known entry ID to page after; mutually exclusive with before\",\n schema: { type: \"string\" },\n },\n {\n name: \"before\",\n description: \"Known entry ID to page before; mutually exclusive with after\",\n schema: { type: \"string\" },\n },\n];\n\nconst VECTOR_FILE_LIST_QUERY: QueryParam[] = [\n ...VECTOR_LIST_QUERY,\n {\n name: \"filter\",\n description: \"Filter by file ingestion status before pagination\",\n schema: { type: \"string\", enum: [\"in_progress\", \"completed\", \"failed\", \"cancelled\"] },\n },\n];\n\nconst JOURNAL_QUERY: QueryParam[] = [\n { name: \"limit\", description: \"Max entries (integer >= 0)\", schema: { type: \"integer\" } },\n { name: \"offset\", description: \"Entries to skip (integer >= 0)\", schema: { type: \"integer\" } },\n { name: \"path\", description: \"Substring filter on the request path\", schema: { type: \"string\" } },\n {\n name: \"method\",\n description: \"Exact method filter (case-insensitive)\",\n schema: { type: \"string\" },\n },\n { name: \"status\", description: \"Exact response status filter\", schema: { type: \"integer\" } },\n { name: \"service\", description: \"Exact service filter\", schema: { type: \"string\" } },\n { name: \"testId\", description: \"Test-id scope filter\", schema: { type: \"string\" } },\n { name: \"requestId\", description: \"Request-id filter\", schema: { type: \"string\" } },\n];\n\nconst SCHEMA_REFS: Record<string, OperationSchemas> = {\n [`POST ${COMPLETIONS_PATH}`]: {\n request: \"ChatCompletionRequest\",\n response: \"ChatCompletionResponse\",\n streamResponse: \"ChatCompletionEventStream\",\n },\n [`POST ${RESPONSES_PATH}`]: { request: \"ResponsesRequest\", response: \"ResponsesResponse\" },\n [`POST ${MESSAGES_PATH}`]: { request: \"MessagesRequest\", response: \"MessagesResponse\" },\n [`POST ${EMBEDDINGS_PATH}`]: { request: \"EmbeddingRequest\", response: \"EmbeddingResponse\" },\n [`POST ${COHERE_CHAT_PATH}`]: { request: \"CohereChatRequest\", response: \"CohereChatResponse\" },\n [`POST ${COHERE_EMBED_PATH}`]: { request: \"CohereEmbedRequest\", response: \"CohereEmbedResponse\" },\n [`POST ${IMAGES_PATH}`]: {\n request: \"ImageGenerationRequest\",\n response: \"ImageResponse\",\n },\n \"POST /v1/images/edits\": {\n request: \"ImageEditRequest\",\n reqContent: MULTIPART,\n response: \"ImageResponse\",\n },\n \"POST /v1/images/variations\": {\n successStatus: \"404\",\n successDescription:\n \"Removed upstream 2026-05-12 — aimock replays the removal with a 404 and an empty body.\",\n },\n [`POST ${SPEECH_PATH}`]: { request: \"SpeechRequest\", respContent: AUDIO },\n \"POST /v1/audio/transcriptions\": {\n request: \"TranscriptionRequest\",\n reqContent: MULTIPART,\n response: \"TranscriptionResponse\",\n },\n \"POST /v1/audio/translations\": {\n request: \"TranscriptionRequest\",\n reqContent: MULTIPART,\n response: \"TranscriptionResponse\",\n },\n [`POST ${MODERATIONS_PATH}`]: {\n request: \"ModerationRequest\",\n response: \"ModerationResponse\",\n },\n [`GET ${MODELS_PATH}`]: {\n response: \"CatalogModelsListResponse\",\n query: [\n {\n name: \"limit\",\n description: \"Anthropic page size; OpenAI callers ignore query parameters.\",\n schema: { type: \"integer\", default: 20, minimum: 1, maximum: 1000 },\n },\n {\n name: \"after_id\",\n description: \"Anthropic cursor after this visible ID; unknown IDs return 400\",\n schema: { type: \"string\" },\n },\n {\n name: \"before_id\",\n description: \"Anthropic cursor before this visible ID; unknown IDs return 400\",\n schema: { type: \"string\" },\n },\n {\n name: \"lifecycle\",\n description:\n \"Union of lifecycle and lifecycle[] values; omitted means active and deprecated.\",\n schema: {\n type: \"array\",\n maxItems: 3,\n items: { type: \"string\", enum: [\"active\", \"deprecated\", \"retired\"] },\n },\n },\n {\n name: \"lifecycle[]\",\n description: \"Bracketed lifecycle encoding used by Anthropic SDKs\",\n schema: {\n type: \"array\",\n maxItems: 3,\n items: { type: \"string\", enum: [\"active\", \"deprecated\", \"retired\"] },\n },\n },\n ],\n },\n \"GET /v1/models/{id}\": { response: \"CatalogModelResponse\" },\n \"GET /v1beta/models\": {\n response: \"GeminiModelsListResponse\",\n query: [\n {\n name: \"pageSize\",\n description: \"Default 50; zero uses the default; values above 1000 clamp to 1000\",\n schema: { type: \"integer\", minimum: 0, default: 50 },\n },\n {\n name: \"pageToken\",\n description: \"Opaque offset token from the preceding page\",\n schema: { type: \"string\" },\n },\n ],\n },\n \"GET /v1beta/models/{model}\": { response: \"GeminiModel\" },\n [`POST ${MESSAGES_COUNT_PATH}`]: {\n request: \"AnthropicCountRequest\",\n response: \"AnthropicCountResponse\",\n },\n \"POST /v1beta/models/{model}:countTokens\": {\n request: \"GeminiCountRequest\",\n response: \"GeminiCountResponse\",\n },\n [`POST ${SEARCH_PATH}`]: { request: \"SearchRequest\", response: \"SearchResponse\" },\n [`POST ${RERANK_PATH}`]: { request: \"RerankRequest\", response: \"RerankResponse\" },\n \"POST /openai/deployments/{deploymentId}/chat/completions\": {\n request: \"ChatCompletionRequest\",\n response: \"ChatCompletionResponse\",\n streamResponse: \"ChatCompletionEventStream\",\n },\n \"POST /openai/deployments/{deploymentId}/embeddings\": {\n request: \"EmbeddingRequest\",\n response: \"EmbeddingResponse\",\n },\n // Ollama\n \"POST /api/chat\": { request: \"OllamaChatRequest\", response: \"OllamaChatResponse\" },\n \"POST /api/generate\": { request: \"OllamaGenerateRequest\", response: \"OllamaGenerateResponse\" },\n \"POST /api/embeddings\": { request: \"OllamaEmbedRequest\", response: \"OllamaEmbedResponse\" },\n \"POST /api/embed\": {\n request: \"OllamaCurrentEmbedRequest\",\n response: \"OllamaCurrentEmbedResponse\",\n },\n \"GET /api/tags\": { response: \"OllamaTagsResponse\" },\n // OpenAI Batches API\n \"POST /v1/batches/{batch_id}/cancel\": { response: \"BatchObject\" },\n \"GET /v1/batches/{batch_id}\": { response: \"BatchObject\" },\n \"GET /v1/batches\": {\n response: \"BatchListResponse\",\n query: [\n { name: \"limit\", description: \"Max batches\", schema: { type: \"integer\" } },\n { name: \"after\", description: \"Pagination cursor\", schema: { type: \"string\" } },\n ],\n },\n \"POST /v1/batches\": { request: \"BatchCreateRequest\", response: \"BatchObject\" },\n // OpenAI Files API\n \"GET /v1/files/{file_id}/content\": { respContent: OCTET },\n \"GET /v1/files/{file_id}\": { response: \"FileObject\" },\n \"DELETE /v1/files/{file_id}\": { response: \"FileDeleteResponse\" },\n \"GET /v1/files\": {\n response: \"FileListResponse\",\n query: [\n { name: \"purpose\", description: \"Filter by purpose\", schema: { type: \"string\" } },\n {\n name: \"order\",\n description: \"Sort order\",\n schema: { type: \"string\", enum: [\"asc\", \"desc\"] },\n },\n { name: \"limit\", description: \"Max files\", schema: { type: \"integer\" } },\n { name: \"after\", description: \"Pagination cursor\", schema: { type: \"string\" } },\n ],\n },\n \"POST /v1/files\": {\n request: \"FileUploadRequest\",\n reqContent: MULTIPART,\n response: \"FileObject\",\n },\n // OpenAI Vector Stores API\n \"POST /v1/vector_stores/{vector_store_id}/search\": {\n request: \"VectorStoreSearchRequest\",\n response: \"VectorSearchResponse\",\n },\n \"GET /v1/vector_stores/{vector_store_id}/file_batches/{batch_id}/files\": {\n response: \"VectorFileBatchFilesResponse\",\n query: VECTOR_FILE_LIST_QUERY,\n },\n \"POST /v1/vector_stores/{vector_store_id}/file_batches/{batch_id}/cancel\": {\n response: \"VectorFileBatch\",\n },\n \"GET /v1/vector_stores/{vector_store_id}/file_batches/{batch_id}\": {\n response: \"VectorFileBatch\",\n },\n \"POST /v1/vector_stores/{vector_store_id}/file_batches\": {\n request: \"VectorStoreFileBatchCreateRequest\",\n response: \"VectorFileBatch\",\n },\n \"GET /v1/vector_stores/{vector_store_id}/files/{file_id}\": { response: \"VectorStoreFile\" },\n \"DELETE /v1/vector_stores/{vector_store_id}/files/{file_id}\": {\n response: \"VectorStoreFileDeleteResponse\",\n },\n \"POST /v1/vector_stores/{vector_store_id}/files\": {\n request: \"VectorStoreFileCreateRequest\",\n response: \"VectorStoreFile\",\n },\n \"GET /v1/vector_stores/{vector_store_id}/files\": {\n response: \"VectorStoreFileListResponse\",\n query: VECTOR_FILE_LIST_QUERY,\n },\n \"GET /v1/vector_stores/{vector_store_id}\": { response: \"VectorStore\" },\n \"POST /v1/vector_stores/{vector_store_id}\": {\n request: \"VectorStoreUpdateRequest\",\n response: \"VectorStore\",\n },\n \"DELETE /v1/vector_stores/{vector_store_id}\": { response: \"VectorStoreDeleteResponse\" },\n \"GET /v1/vector_stores\": { response: \"VectorStoreListResponse\", query: VECTOR_LIST_QUERY },\n \"POST /v1/vector_stores\": { request: \"VectorStoreCreateRequest\", response: \"VectorStore\" },\n // OpenAI fine-tuning jobs\n \"POST /v1/fine_tuning/jobs/{job_id}/cancel\": { response: \"FineTuningJob\" },\n \"GET /v1/fine_tuning/jobs/{job_id}/events\": { response: \"FineTuningJobEventListResponse\" },\n \"GET /v1/fine_tuning/jobs/{job_id}\": { response: \"FineTuningJob\" },\n \"GET /v1/fine_tuning/jobs\": {\n response: \"FineTuningJobListResponse\",\n query: [\n { name: \"limit\", description: \"Max jobs\", schema: { type: \"integer\" } },\n { name: \"after\", description: \"Pagination cursor\", schema: { type: \"string\" } },\n ],\n },\n \"POST /v1/fine_tuning/jobs\": {\n request: \"FineTuningJobCreateRequest\",\n response: \"FineTuningJob\",\n },\n // Gemini\n \"POST /v1beta/models/{model}:predict\": {\n request: \"GeminiPredictRequest\",\n response: \"GeminiPredictResponse\",\n },\n \"POST /v1beta/interactions\": {\n request: \"InteractionsRequest\",\n response: \"InteractionsResponse\",\n streamResponse: \"InteractionsSSEStream\",\n },\n \"POST /v1beta/models/{model}:embedContent\": {\n request: \"GeminiEmbedRequest\",\n response: \"GeminiEmbedResponse\",\n },\n \"POST /v1beta/models/{model}:generateContent\": {\n request: \"GeminiGenerateRequest\",\n response: \"GeminiGenerateResponse\",\n },\n \"POST /v1beta/models/{model}:streamGenerateContent\": {\n request: \"GeminiGenerateRequest\",\n response: \"GeminiGenerateEventStream\",\n respContent: \"text/event-stream\",\n },\n // Vertex AI (same shapes over the full resource path)\n \"POST /v1/projects/{project}/locations/{location}/publishers/google/models/{model}:generateContent\":\n {\n request: \"GeminiGenerateRequest\",\n response: \"GeminiGenerateResponse\",\n },\n \"POST /v1/projects/{project}/locations/{location}/publishers/google/models/{model}:streamGenerateContent\":\n {\n request: \"GeminiGenerateRequest\",\n response: \"GeminiGenerateEventStream\",\n respContent: \"text/event-stream\",\n },\n // Bedrock\n \"POST /model/{modelId}/invoke\": {\n request: \"BedrockInvokeRequest\",\n response: \"BedrockInvokeResponse\",\n },\n \"POST /model/{modelId}/invoke-with-response-stream\": {\n request: \"BedrockInvokeRequest\",\n response: \"BedrockInvokeResponse\",\n },\n \"POST /model/{modelId}/converse\": {\n request: \"BedrockConverseRequest\",\n response: \"BedrockConverseResponse\",\n },\n \"POST /model/{modelId}/converse-stream\": {\n request: \"BedrockConverseRequest\",\n response: \"BedrockConverseResponse\",\n },\n // Video\n \"POST /v1/videos\": { request: \"VideoSubmitRequest\", response: \"VideoJob\" },\n \"POST /v1/videos/generations\": {\n request: \"VideoSubmitRequest\",\n response: \"GrokVideoSubmitResponse\",\n },\n \"GET /v1/videos/{id}\": { response: \"VideoStatusResponse\" },\n \"POST /api/v1/videos\": {\n request: \"OpenRouterVideoSubmitRequest\",\n response: \"OpenRouterVideoJob\",\n },\n \"GET /api/v1/videos/models\": { response: \"OpenRouterVideoModelsResponse\" },\n \"GET /api/v1/videos/{jobId}\": { response: \"OpenRouterVideoJob\" },\n \"GET /api/v1/videos/{jobId}/content\": { respContent: OCTET },\n \"POST /contents/generations/tasks\": {\n request: \"BytePlusSubmitRequest\",\n response: \"BytePlusTaskStatus\",\n },\n \"POST /api/v3/contents/generations/tasks\": {\n request: \"BytePlusSubmitRequest\",\n response: \"BytePlusTaskStatus\",\n },\n \"GET /contents/generations/tasks/{id}\": { response: \"BytePlusTaskStatus\" },\n \"GET /api/v3/contents/generations/tasks/{id}\": { response: \"BytePlusTaskStatus\" },\n \"POST /v1beta/models/{model}:predictLongRunning\": {\n request: \"VeoSubmitRequest\",\n response: \"VeoOperation\",\n },\n \"GET /v1beta/operations/{name}\": { response: \"VeoOperation\" },\n // OpenRouter discovery\n \"GET /api/v1/models\": { response: \"OpenRouterVideoModelsResponse\" },\n \"GET /api/v1/key\": { response: \"OpenRouterKeyResponse\" },\n \"GET /api/v1/credits\": { response: \"OpenRouterCreditsResponse\" },\n // ElevenLabs\n \"POST /v1/sound-generation\": { request: \"SoundGenerationRequest\", respContent: AUDIO },\n \"POST /v1/text-to-voice/design\": {\n request: \"VoiceDesignRequest\",\n response: \"VoiceDesignPreviewResponse\",\n },\n \"POST /v1/text-to-voice\": { request: \"VoiceCreateRequest\", response: \"VoiceCreateResponse\" },\n \"GET /v1/voices/{voice_id}\": { response: \"ElevenLabsVoice\" },\n \"DELETE /v1/voices/{voice_id}\": { response: \"ElevenLabsVoiceDeleteResponse\" },\n \"POST /v1/text-to-speech/{voice_id}\": { request: \"ElevenLabsTTSRequest\", respContent: AUDIO },\n \"POST /v1/music\": { request: \"ElevenLabsMusicRequest\", respContent: AUDIO },\n \"POST /v1/music/{subtype}\": { request: \"ElevenLabsMusicRequest\", respContent: AUDIO },\n // fal.ai\n \"POST /fal/queue/submit/{model}\": {\n request: \"FalQueueSubmitRequest\",\n response: \"FalQueueSubmitResponse\",\n },\n \"GET /fal/queue/requests/{requestId}\": { response: \"FalQueueStatusResponse\" },\n \"POST /fal/queue/requests/{requestId}\": { response: \"FalQueueStatusResponse\" },\n \"PUT /fal/queue/requests/{requestId}\": { response: \"FalQueueStatusResponse\" },\n \"POST /fal/run/{model}\": { request: \"FalRunRequest\", response: \"FalRunResponse\" },\n // Ops\n \"GET /health\": { response: \"HealthResponse\" },\n \"GET /ready\": { response: \"ReadyResponse\" },\n \"GET /metrics\": { respContent: \"text/plain; version=0.0.4\" },\n // Legacy journal\n \"GET /v1/_requests\": {\n response: \"JournalEntry\",\n query: [{ name: \"limit\", description: \"Max entries\", schema: { type: \"integer\" } }],\n },\n \"DELETE /v1/_requests\": {\n successStatus: \"204\",\n successDescription: \"Journal entries cleared (fixture sequencing preserved).\",\n },\n // Control API\n \"GET /__aimock/health\": { response: \"HealthResponse\" },\n \"GET /__aimock/journal\": {\n response: \"JournalEntry\",\n query: JOURNAL_QUERY,\n invalidRequest: \"ControlErrorResponse\",\n },\n \"GET /__aimock/fixtures\": {\n response: \"FixturesInspectResponse\",\n invalidRequest: \"ControlErrorResponse\",\n query: [\n {\n name: \"include\",\n description: \"Set to 'fixtures' for the full redacted dump\",\n schema: { type: \"string\", enum: [\"fixtures\"] },\n },\n ],\n },\n \"POST /__aimock/fixtures\": {\n request: \"FixturesAddRequest\",\n response: \"FixturesAddResponse\",\n invalidRequest: \"FixtureValidationErrorResponse\",\n },\n \"DELETE /__aimock/fixtures\": { response: \"FixturesClearResponse\" },\n \"GET /__aimock/chaos\": { response: \"ChaosEnvelope\", invalidRequest: \"ControlErrorResponse\" },\n \"POST /__aimock/chaos\": {\n request: \"ChaosConfig\",\n response: \"ChaosEnvelope\",\n invalidRequest: \"ControlErrorResponse\",\n },\n \"DELETE /__aimock/chaos\": { response: \"ChaosEnvelope\", invalidRequest: \"ControlErrorResponse\" },\n \"POST /__aimock/reset\": { response: \"ResetResponse\" },\n \"POST /__aimock/reset/journal\": { response: \"ResetResponse\" },\n \"POST /__aimock/reset/fixtures\": { response: \"ResetResponse\" },\n \"POST /__aimock/error\": {\n request: \"ErrorInjectRequest\",\n response: \"ErrorInjectResponse\",\n invalidRequest: \"ControlErrorResponse\",\n },\n \"GET /__aimock/openapi.json\": { response: \"OpenApiDocument\" },\n \"GET /__aimock/routes\": { response: \"RoutesListResponse\" },\n};\n\nfunction operationFor(\n method: string,\n path: string,\n service: string,\n description: string,\n): Record<string, unknown> {\n const params = pathParams(path);\n const refs = SCHEMA_REFS[`${method} ${path}`];\n const operation: Record<string, unknown> = {\n summary: description,\n tags: [service],\n };\n if (refs?.query) {\n for (const q of refs.query) {\n params.push({\n name: q.name,\n in: \"query\",\n required: q.required ?? false,\n description: q.description,\n schema: q.schema,\n });\n }\n }\n if (params.length > 0) operation.parameters = params;\n const reqContent = refs?.reqContent ?? JSON;\n if (refs?.request) {\n operation.requestBody = {\n required: true,\n content: {\n [reqContent]: {\n schema: { $ref: `#/components/schemas/${refs.request}` },\n },\n },\n };\n }\n const respContent = refs?.respContent ?? JSON;\n const successStatus = refs?.successStatus ?? \"200\";\n const successDescription = refs?.successDescription ?? \"OK\";\n const successSchema = refs?.response\n ? { $ref: `#/components/schemas/${refs.response}` }\n : respContent !== JSON\n ? { type: \"string\", format: \"binary\" }\n : undefined;\n // Array envelopes (journal listing) are bare arrays, not objects.\n const successContent =\n refs?.response === \"JournalEntry\"\n ? {\n [respContent]: {\n schema: { type: \"array\", items: { $ref: \"#/components/schemas/JournalEntry\" } },\n },\n }\n : successSchema\n ? { [respContent]: { schema: successSchema } }\n : undefined;\n operation.responses = {\n [successStatus]: {\n description: successDescription,\n ...(successContent || refs?.streamResponse\n ? {\n content: {\n ...successContent,\n ...(refs?.streamResponse\n ? {\n \"text/event-stream\": {\n schema: { $ref: `#/components/schemas/${refs.streamResponse}` },\n },\n }\n : undefined),\n },\n }\n : undefined),\n },\n ...(successStatus === \"200\"\n ? {\n \"400\": {\n description: \"Invalid request\",\n content: {\n [JSON]: {\n schema: { $ref: `#/components/schemas/${refs?.invalidRequest ?? \"ErrorResponse\"}` },\n },\n },\n },\n \"404\": {\n description: \"No fixture match\",\n content: {\n [JSON]: { schema: { $ref: \"#/components/schemas/ErrorResponse\" } },\n },\n },\n }\n : undefined),\n };\n return operation;\n}\n\nexport function buildOpenApiDocument(): Record<string, unknown> {\n const paths: Record<string, Record<string, unknown>> = {};\n for (const r of ROUTE_DEFINITIONS) {\n const item = (paths[r.path] ??= {});\n item[r.method.toLowerCase()] = operationFor(r.method, r.path, r.service, r.description);\n }\n return {\n openapi: \"3.1.0\",\n info: { title: \"aimock\", version: \"1.0.0\" },\n paths,\n components: { schemas: COMPONENTS },\n };\n}\n"],"mappings":"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"}
|