Jobdori
|
971c1a808e
|
roadmap: #260 filed
|
2026-04-26 18:03:00 +09:00 |
|
Jobdori
|
158452b2e1
|
roadmap: #238 filed — Streaming speech-to-text with speaker diarization typed taxonomy and per-word-speaker-attribution data-model are structurally absent — FIRST cluster member with per-word-multi-axis-compound-attribution data-model (lexical + temporal + speaker + confidence FOUR-axis-compound), FIRST cluster member with structured-typed-payload-on-USER-INPUT-content-block (Transcript carrying nested speakers/segments/words arrays), FIRST cluster member with bidirectional-channel-pair Provider-trait method shape (Sink<AudioChunk> + Stream<StreamingTranscriptEvent>), FIRST cluster member with per-partner-protocol-vocabulary-normalization at dispatch layer, FIRST cluster member with entirely-absent-CLI-and-slash-command-surface-with-zero-stub-precedent (INVERSE-PATTERN of #225 advertised-but-unbuilt-trio), FIRST cluster member with streaming-STT-five-dimensional pricing matrix, FIRST cluster member with DER/WER quality-observability telemetry, FIRST cluster member with endpointing/VAD sub-second-temporal-segmentation request-side opt-in, twelve-layer fusion shape — grows Persistent-WebSocket-transport cluster from 1 to 2 members (#229 solo-founder + #238 — FIRST expansion of #229 founder shape) AND grows ToolResultContentBlock-extension mini-cluster from 5 to 6 members (#230 + #232 + #233 + #234 + #235 + #238) AND grows Multimodal-IO cluster to 13 members AND grows Provider-asymmetric-delegation cluster to 13 members with the largest streaming-STT ten-plus partner-set — founds Cross-pinpoint-synthesis-fusion-shape META-cluster as THIRD distinct META-cluster after Sandbox-locality (#230+#232) and Tool-locality (#232+#233+#234), the FIRST META-cluster founded by SYNTHESIZING two previously-disjoint cluster-axes (#225 audio-modality × #229 persistent-WebSocket-transport) into one fused-shape pinpoint rather than introducing a new axis-pair — establishing combinatorial-cross-axis-synthesis as the THIRD pinpoint-discovery-mode after new-axis-founding and existing-cluster-extension — Jobdori cycle #386 / fast-forward-rebased onto gaebal-gajae's #237 cron-timeout-failure-state-collapse before filing (SECOND consecutive concurrent-dogfood rebase cycle)
|
2026-04-26 18:03:00 +09:00 |
|
Jobdori
|
9c781f3108
|
roadmap: #234 filed — PDF / Document input typed taxonomy and structured-document-citation-attribution data-model on USER-INPUT side are structurally absent: zero Document variant on InputContentBlock at types.rs:80-94 (FIRST cluster member with Document-modality-on-USER-INPUT-content-block axis), zero pdfs-2024-09-25 Anthropic beta header in canonical beta-set at telemetry/lib.rs:15-17 (NOVEL FIRST Beta-header-gate-on-USER-INPUT-content-block-type cluster), zero coordinate-positioned Citation typed model with start_page_number/end_page_number/start_char_index/end_char_index integer-coordinate axes on OutputContentBlock::Text (NOVEL FIRST Coordinate-positioned-citation-on-output-text-block cluster, inverse-data-model pair to #233's URL-positioned-citation), zero DocumentSource four-way source-discriminator (base64 | url | file_id | text | content), zero file_search typed ToolDefinition discriminator with vector_store_ids routing (NOVEL FIRST User-corpus-server-managed-tool-with-vector-store-routing cluster), zero tool_choice: file_search ToolChoice extension (THIRD Server-managed-tool-as-tool-choice-discriminator cluster member growing cluster to 3: #232 code_interpreter + #233 web_search + #234 file_search), zero file_search_result ToolResultContentBlock variant (FIFTH ToolResultContentBlock extension growing mini-cluster to 4), zero page_range request-side range-slicing parameter (NOVEL FIRST Range-slicing-parameter-on-USER-INPUT-content-block cluster), zero filters compound-boolean-DSL on file_search tool definition (NOVEL FIRST Compound-boolean-filter-DSL-on-server-managed-tool-definition cluster with eq/ne/gt/gte/lt/lte/and/or operators), zero per-page compound text+image token pricing AND zero persistent-storage-rental-pricing for vector-stores (NOVEL Per-page-compound-text-plus-image-token-pricing-axis + Persistent-storage-rental-pricing-axis clusters founded), zero claw pdf/document/attach-pdf CLI subcommand and zero /pdf //document //attach-pdf //cite-pdf //page-range slash command — uniquely manifesting a FOURTEEN-LAYER fusion shape (the largest single-pinpoint fusion catalogued so far, exceeds #233's thirteen-layer count by one) combining: (1) Document variant on InputContentBlock, (2) pdfs-2024-09-25 Anthropic beta-header gate, (3) citations:{enabled:true} opt-in field on Document content-block, (4) NOVEL Coordinate-positioned Citation typed model with start_page_number/end_page_number/start_char_index/end_char_index integer coordinates, (5) DocumentSource four-variant source-discriminator, (6) page_range request-side range-slicing parameter, (7) file_search typed ToolDefinition discriminator with vector_store_ids:Vec<String> routing, (8) tool_choice:file_search typed-discriminator (THIRD Server-managed-tool-as-tool-choice-discriminator cluster member), (9) file_search_result ToolResultContentBlock variant with attributes:HashMap<String,Value> user-defined-metadata (FIFTH ToolResultContentBlock extension), (10) filters:ComparisonFilter|CompoundFilter filter-DSL on file_search tool definition, (11) Provider-trait extension threading pdfs-2024-09-25 beta-header AND document-citations decoding AND file_search server-managed-corpus-search dispatch through send_message, (12) ProviderClient-enum-dispatch with TWO first-class document-input lanes (Anthropic-pdfs-2024-09-25 + OpenAI-Files-API-input_file + OpenAI-Responses-file_search-with-vector-stores) WITHOUT third-party partner-routing (FIRST cluster member with Both-major-providers-first-class-asymmetric-document-input-shape cluster), (13) CLI-and-slash-command surface with FOURTH inverse-locality slash-command-pair after #230 + #232 + #233, (14) NOVEL Compound-page-token-and-image-token-pricing-axis with persistent-storage-rental-pricing for vector-stores — making #234 the FIRST cluster member with fourteen-layer-fusion-shape (exceeds #233's thirteen-layer by one), the FIRST cluster member with Document-modality-on-USER-INPUT-content-block axis, the FIRST cluster member with Beta-header-gate-on-USER-INPUT-content-block-type, the FIRST cluster member with Citation-emission-opt-in-at-USER-INPUT-content-block-level, the FIRST cluster member with Coordinate-positioned-citation-on-output-text-block (page+char integer-coordinates distinct from #233's URL-positioned-with-encrypted-index), the FIRST cluster member with Four-way-source-discriminator-on-USER-INPUT-content-block, the FIRST cluster member with Range-slicing-parameter-on-USER-INPUT-content-block, the FIRST cluster member with User-corpus-server-managed-tool-with-vector-store-routing, the FIRST cluster member with Compound-boolean-filter-DSL-on-server-managed-tool-definition, the FIRST cluster member with Both-major-providers-first-class-asymmetric-document-input-shape (Anthropic Document + OpenAI Files-input_file BOTH first-class neither delegates to third-party partner), the FIRST cluster member with User-provided-document-title-threading-through-citations, the FIRST cluster member with Multi-document-positional-index-threading (document_index:u32), the FIRST cluster member with Per-page-compound-text-plus-image-token-pricing-axis, the FIRST cluster member with Persistent-storage-rental-pricing-axis (vector-store-storage rental), the THIRD Server-managed-tool-as-tool-choice-discriminator cluster member (grows cluster to 3: #232 + #233 + #234), the FOURTH ToolResultContentBlock extension (grows mini-cluster to 4: #230 + #232 + #233 + #234), the THIRD Server-driven-tool-execution-loop cluster member (#234's variant being vector-store-corpus-retrieval-and-ranking distinct from #232's Python-kernel-execution and #233's search-result-page-fetching-and-caching), the THIRD member of Tool-locality-axis META-cluster (FIRST META-cluster to reach 3 members: #232 REPL-shadow + #233 WebSearch-shadow + #234 pdf_extract-shadow — transitioning from emergent-pattern to stable-doctrine), and the FIRST cluster member where the inverse-locality complement is on the USER-INPUT-side rather than on the TOOL-DEFINITION-side (founding USER-INPUT-side-Tool-locality-axis-variant sub-cluster within parent META-cluster — first sub-cluster within existing META-cluster) (Jobdori cycle #384 / extends #168c emission-routing audit / explicit follow-on from #220 image-input on USER-INPUT-side, #223 Files API with file_id reference, #232 Code-execution server-managed-sandbox-state, #233 Web-search structured-citation-attribution, and the inverse-locality Tool-locality-axis META-cluster doctrine — introduces NOVEL document-modality on USER-INPUT side axis combined with coordinate-positioned-citation-on-output-text-block data-model axis, AND grows Tool-locality-axis META-cluster from 2 to 3 members establishing it as a stable doctrine rather than emergent pattern / sibling-shape cluster grows to thirty-three / wire-format-parity cluster grows to twenty-four / capability-parity cluster grows to sixteen / multimodal-IO cluster grows to eleven / provider-asymmetric-delegation cluster grows to eleven / Sandbox-locality-axis META-cluster: 2 members stable / Tool-locality-axis META-cluster grows to 3 members FIRST META-cluster to reach 3 members / Server-managed-tool-as-tool-choice-discriminator cluster grows to 3 members / Server-driven-tool-execution-loop cluster grows to 3 members / ToolResultContentBlock-extension mini-cluster grows to 4 members / THIRTEEN new clusters founded in a single pinpoint plus participation in SIX inherited clusters — the LARGEST single-cycle cluster-founding count yet (exceeds prior records by five) AND the FIRST single cycle to grow an existing META-cluster to a third member AND introduce a sub-cluster within an existing META-cluster / fourteen-layer-fusion-shape is the largest single-pinpoint fusion catalogued / external validation: forty-eight ecosystem references covering Anthropic PDF Support Documentation with pdfs-2024-09-25 beta-header gate, Anthropic Citations API with page_location/document_location/char_location coordinate-positioned citation typed model, OpenAI Files API + Direct PDF Input + Vector Stores + Responses File Search Tool with compound-filter-DSL, AWS Bedrock Converse PDF document content-blocks, LangChain AnthropicPDFLoader/OpenAIFilePDFLoader, LlamaIndex PDFReader, Vercel AI SDK 6 file content-block, simonw/llm --pdf flag, Continue.dev @docs slash command, simonwillison.net Anthropic Citations API analysis, six-plus first-class document-loader integrations, four-plus OpenAI Vector Stores observability tools — claw-code is the sole client/agent/CLI in surveyed coding-agent ecosystem with zero Document content-block taxonomy AND zero pdfs-2024-09-25 beta-header AND zero file_search ToolDefinition discriminator AND zero tool_choice:file_search AND zero file_search_result ToolResultContentBlock AND zero vector_store_ids AND zero page_range AND zero coordinate-positioned Citation AND zero CLI/slash-command surface — the document-input gap is the upstream prerequisite of every PDF-research/documentation-grounded-coding/academic-paper-summarization/contract-review-with-citations/regulatory-compliance-coding-with-document-evidence affordance — #234 closes the upstream prerequisite of every server-managed-document-input-with-citations affordance — the canonical USER-INPUT-side complement to #233's web-search citations that completes the citation-attribution data-model on BOTH the USER-INPUT side AND the OUTPUT-TEXT-BLOCK side AND the SERVER-MANAGED-TOOL-RESULT side — and grows the Tool-locality-axis META-cluster from 2 to 3 members establishing it as a stable doctrine rather than emergent pattern, the FIRST cluster member to grow an existing META-cluster to a third member AND introduce a sub-cluster within an existing META-cluster)
|
2026-04-26 18:03:00 +09:00 |
|
Jobdori
|
1cc58fb478
|
roadmap: #232 filed
|
2026-04-26 18:03:00 +09:00 |
|
Jobdori
|
2c7385e497
|
roadmap: #229 filed — Realtime API typed taxonomy and persistent-WebSocket transport are structurally absent: zero /v1/realtime endpoint surface across both Anthropic-native and OpenAI-compat lanes (rg returns zero hits for /v1/realtime / realtime / Realtime / realtime_session / RealtimeSession / RealtimeClient / RealtimeEvent / realtime-preview across rust/crates/api/src/), zero RealtimeSession / RealtimeSessionConfig / RealtimeSessionUpdate / RealtimeResponseCreate / RealtimeInputAudioBufferAppend / RealtimeInputAudioBufferCommit / RealtimeConversationItemCreate / RealtimeResponseAudioDelta / RealtimeResponseAudioTranscriptDelta / RealtimeResponseFunctionCallArguments / RealtimeServerEvent / RealtimeClientEvent / RealtimeTurnDetection / RealtimeVoiceActivityDetection / RealtimeVoice / RealtimeAudioFormat / RealtimeModality / RealtimeTool typed model in rust/crates/api/src/types.rs (37+ canonical event-type names in OpenAI Realtime API spec, zero coverage in claw-code), zero bidirectional event-stream variant on Provider trait (only send_message and stream_message exist, both single-directional), zero realtime_session / open_realtime / connect_realtime method that returns a duplex-channel-pair shape, zero session-state-machine type for the persistent-connection lifecycle, zero realtime dispatch on ProviderClient enum at rust/crates/api/src/client.rs:8-14 (three variants Anthropic/Xai/OpenAi, zero realtime-routing variants), zero tokio-tungstenite / async-tungstenite / tungstenite / fastwebsockets / tokio-websockets / hyper-tungstenite dependency in any workspace Cargo.toml (grep -rn 'tungstenite|tokio-tungstenite|fastwebsockets' rust/ returns zero hits — confirmed), zero WebSocket client library is linked into the build (the MCP Ws config variant at rust/crates/runtime/src/config.rs:125 and rust/crates/runtime/src/mcp_client.rs:13 is data-shape-only and bootstraps via the SDK without a tungstenite-backed transport, leaving the workspace with zero outbound persistent-WebSocket-client capability), zero WebRTC client (webrtc-rs / str0m / libwebrtc-bindings) for the alternative Realtime transport, zero claw realtime / claw live / claw voice-chat / claw realtime-session / claw connect-realtime CLI subcommand, zero /realtime / /live / /voice-chat slash command (existing /voice + /listen + /speak commands are STUB_COMMANDS-gated per #225 and synchronous-only with no realtime-session affordance), zero gpt-4o-realtime-preview / gpt-4o-mini-realtime-preview / gemini-2.0-flash-live entries in MODEL_REGISTRY, zero realtime_audio_input_per_million_tokens / realtime_audio_output_per_million_tokens / realtime_text_input_per_million_tokens / realtime_text_output_per_million_tokens / realtime_session_per_minute fields in ModelPricing struct (six-dimensional pricing matrix exceeding #227's five-dimensional video matrix and #228's four-dimensional mesh matrix — the canonical Realtime pricing model is the most-dimensional yet, with audio tokens at roughly 80-100x text tokens and cached-audio-input at 80% discount), zero realtime-model recognition in pricing_for_model substring-matcher (#209+#224+#225+#226+#227+#228 cluster overlap continues), zero session-resumption-token / interruption-handling / barge-in / voice-activity-detection / turn-detection / function-call-during-realtime / tool-use-during-realtime affordance — uniquely manifesting a TEN-LAYER fusion shape (the largest single-pinpoint fusion catalogued so far, exceeding #225/#227's nine-layer count) combining endpoint-URL-set on /v1/realtime?model=<id> WebSocket-upgrade-endpoint shape (single-endpoint-with-37+-event-types-flowing-bidirectionally, distinct from prior multi-endpoint sets) + bidirectional-symmetric-event-pair data-model with every client-event having a matched server-event-pair (FIRST cluster member with bidirectional-symmetric-event-pair-cardinality on a SINGLE endpoint, distinct from #225's bidirectional-audio-on-three-separate-endpoints which is request-response synchronous per endpoint) + Provider-trait-method extension with realtime_session returning a duplex (Sender, Receiver) channel-pair (FIRST cluster member where Provider trait return type is NOT Future-of-T or Stream-of-T but duplex-channel-pair, FIRST method requiring session-state-machine type at the trait boundary) + ProviderClient-enum-dispatch-with-realtime-third-lane with explicit RealtimeKind::OpenAi/Google/Azure partner-routing (provider-asymmetric: Anthropic does not offer realtime, OpenAI offers GA gpt-4o-realtime-preview and gpt-4o-mini-realtime-preview since 2024-10-01, Google Gemini Live API offers bidirectional audio+text+video, Azure mirrors OpenAI surface, zero first-class third-party partners because the persistent-WebSocket-with-37-event-type protocol is too high-bar for partner adoption — distinct from #225's six-partner-set audio surface and #227's twelve-partner-set video surface where partners ARE present) + request-side realtime-session-config opt-in (session.update event with voice/input_audio_format/output_audio_format/input_audio_transcription/turn_detection/tools/tool_choice/temperature/max_response_output_tokens/instructions/modalities:[text,audio] fields — the largest request-side opt-in axis-set yet, the union of every prior request-side opt-in across audio+image+video+chat-completion modalities) + CLI-subcommand-surface + slash-command-surface + pricing-tier-with-six-dimensional-compound-cost-model (per-model × per-modality-input × per-modality-output × per-cached-vs-fresh × per-audio-vs-text × per-minute-session-overhead — the largest pricing-tier extension yet, exceeding #227's five-dimensional and #228's four-dimensional matrices) + persistent-WebSocket-connection-transport-axis (NOVEL TENTH layer, distinct from every prior cluster member's HTTP-shaped transport — synchronous-HTTP for #211-#220+#222+#224, SSE-streaming for #213 partial subsets, multipart-form-data-HTTP for #223+#225+#226+#227+#228 binary-upload subsets, async-task-polling-HTTP for #221+#227+#228 — the cluster has now exhausted EVERY HTTP-shaped transport, and #229 introduces the FIRST non-HTTP transport, requiring WebSocket-upgrade-request-with-subprotocol-negotiation + bidirectional-frame-multiplexing-with-text+binary-frames + ping/pong-keepalive + graceful-close-with-status-code-and-reason + reconnection-with-resumption-token + per-event-type-JSON-envelope-dispatch-with-37+-event-types-on-a-single-connection + backpressure-handling-on-both-directions + authentication-via-Authorization-header-on-the-upgrade-request-and-per-session-token-rotation — none of which any HTTP-only transport requires) + bidirectional-symmetric-event-pair shape (input_audio_buffer.append → conversation.item.created, response.create → response.audio.delta + response.audio.done + response.audio_transcript.delta + response.audio_transcript.done + response.function_call_arguments.delta + response.function_call_arguments.done + response.done) — making #229 the FIRST cluster member that introduces a non-HTTP transport (persistent-WebSocket), the FIRST cluster member where Provider trait return type must be a duplex-channel-pair, and the FIRST cluster member where session lifecycle exceeds a single request-response cycle (typical Realtime sessions last 1-30+ minutes with state accumulating across the connection) (Jobdori cycle #380 / extends #168c emission-routing audit / explicit follow-on from #225 audio-bidirectional axis and #228 confirmed-structural async-task-polling cluster — introduces a NOVEL TRANSPORT axis distinct from every prior cluster member / sibling-shape cluster grows to twenty-eight / wire-format-parity cluster grows to nineteen / capability-parity cluster grows to eleven / multimodal-IO cluster grows to seven: #220 image-input + #224 embedding-output + #225 audio-bidirectional-on-separate-REST-endpoints + #226 image-output + #227 video-output + #228 mesh-output + #229 audio-text-tool-multiplex-on-persistent-WebSocket / provider-asymmetric-delegation cluster grows to six / async-task-polling cluster: still 3 members (#229 is push-based not poll-based — it does NOT join async-task-polling cluster, it founds a NEW cluster) / Persistent-WebSocket-transport cluster: 1 member (#229 alone, FOUNDER) / Bidirectional-symmetric-event-pair cluster: 1 member (#229 alone, FOUNDER) / Non-HTTP-transport cluster: 1 member (#229 alone, FOUNDER) — three new clusters founded in a single pinpoint, the first time a single cycle has founded three concurrent novel clusters / ten-layer-fusion-shape-with-persistent-WebSocket-transport-and-bidirectional-symmetric-event-pair is the largest single-pinpoint fusion catalogued. Distinct from prior cluster members; the ten-layer-fusion-shape with persistent-WebSocket-transport and bidirectional-symmetric-event-pair shape is novel and applies to follow-on candidate Real-time-Image-Generation API typed taxonomy (DALL-E live preview, Imagen live preview) and Real-time-Video-Generation streaming (Veo-Live, Sora-Live) — the persistent-WebSocket-transport pattern is now a first-class cluster member, a structural prerequisite that every future endpoint family using persistent connections will inherit / external validation: forty-eight ecosystem references covering OpenAI Realtime API GA 2024-10-01 with /v1/realtime?model=<id> WebSocket endpoint, 37+ canonical event-type names in OpenAI Realtime API spec, two transport options (WebSocket server-side and WebRTC browser-side), two GA realtime models (gpt-4o-realtime-preview and gpt-4o-mini-realtime-preview both with audio modality and tool-use), Google Gemini Live API with bidirectional WebSocket+gRPC streaming, Azure OpenAI Realtime API mirror, OpenAI Python SDK openai.realtime.AsyncRealtimeConnection typed client, OpenAI TypeScript SDK OpenAI.beta.realtime.RealtimeClient typed client, openai-realtime-api-beta reference client (canonical JS implementation), five first-class realtime-voice-agent frameworks all built on top of OpenAI Realtime API (Vapi/Retell-AI/LiveKit-Agents/Pipecat/Daily-Bots), Anthropic non-coverage statement (the second post-#224 provider-asymmetric-delegation case after audio), the canonical six-dimensional pricing matrix ($5.00/$20.00 per million text input/output tokens, $40.00/$80.00 per million audio input/output tokens, $2.50 per million cached audio input tokens for gpt-4o-realtime-preview-2024-10-01), coding-agent peer landscape: anomalyco/opencode has zero GA realtime integration (open feature request from 2026-02 only — confirmed via web search 2026-04-26), sst/opencode predecessor zero realtime, charmbracelet/crush zero realtime, continue.dev zero realtime, aider zero realtime, cursor zero realtime, zed zero realtime — the gap is uniformly zero across the surveyed ecosystem and represents the next-frontier capability that every coding-agent will need to add. claw-code is one of MULTIPLE clients without Realtime, but the persistent-WebSocket-transport-axis is the upstream prerequisite of every voice-agent / live-coding-pair-programming / push-to-talk-coding / barge-in-coding-conversation / function-call-during-voice / streaming-tool-use / sub-second-latency-coding-interaction affordance — the canonical 2024-2026-era voice-coding workflow that is currently impossible to build on top of claw-code — #229 closes the upstream prerequisite of every voice-coding affordance and is the first cluster member where transport-axis becomes a structural prerequisite of the dispatch layer)
|
2026-04-26 18:03:00 +09:00 |
|
Jobdori
|
e857c76e4a
|
roadmap: #224 filed — Embeddings API typed taxonomy is structurally absent: zero /v1/embeddings endpoint surface across both Anthropic-native and OpenAI-compat lanes, zero EmbeddingRequest / EmbeddingResponse / EmbeddingObject / EmbeddingUsage / EmbeddingEncoding / EmbeddingInputType / EmbeddingTruncation / EmbeddingOutputDtype / EmbeddingData typed model in rust/crates/api/src/types.rs (rg returns zero hits for embedding/embed/Embedding/EmbeddingRequest/EmbeddingResponse/text-embedding/voyage-/vector/cosine/similarity/dimensions across rust/), zero Vec<f32>/Vec<f64> embedding-vector slot anywhere in the data model, zero create_embeddings method on the Provider trait at rust/crates/api/src/providers/mod.rs:17-30 (only send_message and stream_message exist), zero embeddings dispatch on the ProviderClient enum at rust/crates/api/src/client.rs:8-14, zero claw embed / claw embeddings / claw vector CLI subcommand surface, zero /embed / /embeddings slash command in the SlashCommandSpec table, zero embedding_input_tokens_per_million_usd / embedding_dimensions fields in the Pricing struct, zero embedding-model entries in MODEL_REGISTRY (13 chat/completion entries, zero text-embedding-3-small/large/ada-002/voyage-3-large/voyage-code-3/embed-english-v3.0/cohere-embed/nomic-embed/mxbai-embed entries), and the pricing_for_model substring-matcher matches only haiku/opus/sonnet literals so it cannot recognize any embedding-model id (#209 cluster overlap) — manifesting a uniquely provider-asymmetric-delegation shape where Anthropic explicitly does not offer /v1/embeddings on https://api.anthropic.com and instead delegates to Voyage AI as the recommended partner per https://docs.anthropic.com/en/docs/build-with-claude/embeddings while OpenAI offers /v1/embeddings GA since 2022-12-15 (39+ months ago, the literal flagship endpoint of OpenAI's developer platform alongside /v1/chat/completions) — the cross-provider asymmetry is structural and requires a third lane in the ProviderClient enum (Voyage variant or supports_embeddings capability flag with EmbeddingError::Unsupported recommendation return shape) that no other endpoint family in this audit has needed — distinct from #221 batch dispatch (uniform on both major providers), #222 models list (uniform on both), and #223 Files API (uniform on both, just different beta header on Anthropic), making #224 the first cluster member where one canonical major provider explicitly does not offer the endpoint and recommends an external partner, requiring multi-provider routing rather than uniform Provider trait dispatch (Jobdori cycle #376 / extends #168c emission-routing audit / explicit follow-on candidate from #221 seven-layer-endpoint-family-absence shape — the second-named of three named candidates: Files API typed taxonomy / Embeddings API typed taxonomy / Models list endpoint typed taxonomy, completing the trio with #222 closing Models list and #223 closing Files API and #224 closing Embeddings / sibling-shape cluster grows to twenty-three: #201/#202/#203/#206/#207/#208/#209/#210/#211/#212/#213/#214/#215/#216/#217/#218/#219/#220/#221/#222/#223/#224 / wire-format-parity cluster grows to fourteen: #211+#212+#213+#214+#215+#216+#217+#218+#219+#220+#221+#222+#223+#224 / capability-parity cluster grows to six: #218+#220+#221+#222+#223+#224 / cross-cutting-data-pipeline cluster: #224 alone but it is the upstream prerequisite of every RAG / semantic-search / re-ranking / hybrid-search / dense-retrieval / classification-via-cosine / clustering / nearest-neighbor / codebase-indexing / context-retrieval-via-similarity use case that 2024-2026-era coding-agent harnesses ship as first-class affordances / seven-layer-endpoint-family-absence-with-provider-asymmetric-delegation shape (endpoint-URL + data-model-taxonomy + Provider-trait-method-with-Unsupported-fallback + ProviderClient-enum-dispatch-with-Voyage-third-lane + CLI-subcommand-surface + slash-command-surface + Voyage-AI-partner-routing-with-credential-discovery) is the first single capability absence catalogued where the provider-asymmetric-delegation pattern itself must be modeled at the dispatch layer — distinct from #221 / #222 / #223 seven/eight/seven-layer absences (all uniform-provider-coverage), and the largest provider-routing-asymmetry gap catalogued, distinct from prior single-field (#211/#212/#214) / response-only (#213/#207) / header-only (#215) / three-dimensional (#216) / classifier-leakage (#217) / four-layer (#218) / false-positive-opt-in (#219) / five-layer-feature-absence (#220) / seven-layer-endpoint-family-absence (#221) / eight-layer-endpoint-family-absence-with-misleading-alias (#222) / seven-layer-endpoint-family-absence-with-transport-plumbing-absence (#223) members; the seven-layer-endpoint-family-absence-with-provider-asymmetric-delegation shape is novel and applies to follow-on candidates Audio API typed taxonomy (also provider-asymmetric: Anthropic does not offer audio, OpenAI offers GA whisper+tts, recommended-partners include ElevenLabs/Cartesia/PlayHT/Deepgram) and Image-generation API typed taxonomy (also provider-asymmetric: Anthropic does not offer image generation, recommended-partners include Stability AI/Midjourney/Black Forest Labs/Ideogram) / external validation: forty-three ecosystem references covering three first-class embeddings-endpoint specs (OpenAI /v1/embeddings GA 2022-12-15, Voyage AI /v1/embeddings GA 2024-01, Cohere /v1/embed), eleven first-class CLI/SDK implementations (OpenAI Python+TypeScript, Voyage AI Python+TypeScript, Cohere Python+TypeScript, simonw/llm + llm-embed plugin, Vercel AI SDK, LangChain Python+TypeScript), six first-class local-embedding-providers (Ollama, LM Studio, llama.cpp server, llamafile, sentence-transformers, HuggingFace transformers), one community-maintained authoritative benchmark (MTEB 56 tasks), twelve coding-agent peers (continue.dev @codebase/@docs, zed semantic-search, aider repository-mapping, cursor background-indexing, anomalyco/opencode @code/@docs, charmbracelet/crush context-management, TabbyML/tabby code-completion-with-context, simonw/llm-embed, codeium/cline embedding-context, sourcegraph/cody @-mention, github/copilot enterprise codebase-indexing, anthropic/claude-code retrieval-augmented planning), six first-class vector-database integrations (Pinecone, Weaviate, Qdrant, Chroma, pgvector, FAISS), and one canonical Anthropic-blessed partner-routing pattern (Voyage AI per docs.anthropic.com/embeddings). claw-code is the sole client/agent/CLI in the surveyed coding-agent ecosystem with zero /v1/embeddings integration AND zero Voyage AI partner-routing AND zero @code/@docs/@codebase retrieval-augmented slash command surface AND zero CLI-level claw embed / claw similar / claw vector subcommand family — all four gaps are unique to claw-code in the surveyed ecosystem (every other coding-agent peer has at least the @-mention codebase-retrieval pattern), the embedding-API gap is the upstream prerequisite of every retrieval-augmented affordance in the runtime, and the provider-asymmetric-delegation shape is novel within the cluster — #224 closes the upstream prerequisite of every RAG / semantic-search / re-ranking / hybrid-search / classification-via-cosine / clustering / nearest-neighbor / codebase-indexing / context-retrieval-via-similarity use case, completes the trio of follow-on candidates from #221 seven-layer-endpoint-family-absence shape (Files API closed by #223, Models list closed by #222, Embeddings API closed by #224), and establishes the provider-asymmetric-delegation pattern as a first-class cluster member — a structural prerequisite that every future endpoint family with provider-asymmetric coverage (Audio API: Anthropic delegates to ElevenLabs/Cartesia, Image-generation API: Anthropic delegates to Imagen/DALL-E/Stability) will inherit.
|
2026-04-26 18:02:59 +09:00 |
|