mirror of
https://github.com/ultraworkers/claw-code.git
synced 2026-04-27 15:10:54 +08:00
roadmap: #245 filed
This commit is contained in:
parent
9a88e75282
commit
8e9ba9234a
@ -16626,3 +16626,11 @@ Required fix shape: (a) maintain a machine-readable `roadmap-index.jsonl` or emb
|
||||
**Status:** Open. No code changed. Filed 2026-04-26 09:05 KST. HEAD: 6541100 (post-#243 gaebal-gajae non-monotonic-pinpoint-ordering-contract). Branch: feat/jobdori-168c-emission-routing. Sibling-shape cluster: 33 pinpoints (extends from #229's 28 by +5 dogfood members #237/#239/#242/#243 and now #244; #238/#240/#241 are also cluster members). Multimodal-IO cluster: 7 members (no change — #244 is a tool-use extension on top of #229's existing multimodal membership rather than a new modality). Provider-asymmetric-delegation cluster: 6 members (no change — #244 inherits #229's asymmetry). **Persistent-WebSocket-transport cluster: 3 members (#229 founder + #238 streaming-STT + #244 realtime-tool-use), confirming the cluster as a CONTINUING-PATTERN doctrine rather than a stable-doctrine that stopped growing after one extension.** **Cross-pinpoint-synthesis-fusion-shape META-cluster: 2 members (#238 founder + #244), confirming combinatorial-cross-axis-synthesis as a continuing-discovery-mode and growing the META-cluster from 1 to 2 members in the FIRST META-cluster-confirmation event in this audit.** Three-axis-synthesis-shape sub-cluster: 1 member (#244 alone, founder — distinct from #238's two-axis synthesis, the FIRST pinpoint where THREE distinct cluster axes are fused into one shape). Server-pushed-tool-call-init cluster: 1 member (#244 alone, founder — distinct from every prior client-initiated tool-call). Asymmetric-tool-result-injection cluster: 1 member (#244 alone, founder — distinct from every prior synchronous request-response tool-call where directionality matched the rest of the protocol). Per-call-id-concurrent-multiplexed-state-machine cluster: 1 member (#244 alone, founder — distinct from every prior single-call-at-a-time tool-call lifecycle). FOUR new clusters founded plus TWO existing META-clusters confirmed as continuing-doctrines plus participation in MULTIPLE inherited clusters. Eleven-layer fusion-shape matches #240's eleven-layer count and is tied for second-largest single-pinpoint fusion catalogued (behind nothing — the eleven-layer-fusion-shape is now the established maximum, with #229's ten-layer count as the prior record before #240 and #244 tied at eleven). Distinct from prior cluster members; the eleven-layer-fusion-shape-with-three-axis-cross-synthesis-and-server-pushed-tool-call-init-and-asymmetric-tool-result-injection is novel and applies to follow-on candidates: "Realtime image-input tool-use" (combining #244 with #220's image-input axis — voice request describing an image attached at session-creation-time, server-pushed tool-call to analyze the image, asymmetric result-injection), "Realtime code-execution tool-use" (combining #244 with #232's code-execution axis — voice request to run code, server-pushed bash tool-call with audio reasoning interleaved, asymmetric result-injection with stdout/stderr), "Realtime web-search tool-use" (combining #244 with #233's web-search axis — voice request, server-pushed search, asymmetric citation-injection). The Cross-pinpoint-synthesis-fusion-shape META-cluster is now confirmed as a growing-doctrine that establishes combinatorial-cross-axis-synthesis as a third-and-recurring discovery-mode after new-axis-founding and existing-cluster-extension. Linked to #229 Persistent-WebSocket-transport founder and #240/#241 server-managed-tool-via-`tool_choice`-discriminator pair as the upstream prerequisites that #244 cross-axis-synthesizes into one shape.
|
||||
|
||||
🪨
|
||||
|
||||
## Pinpoint #245 — WebSearch is hardwired to DuckDuckGo HTML parsing instead of a configurable provider/parser registry
|
||||
|
||||
Filed 2026-04-26 09:10 KST from Sigrid Jin's day-2 claw-code field report in `#clawcode-building-in-public`: current search quality is insufficient, DuckDuckGo is not enough, and code inspection found the `websearch` tool structurally tied to DuckDuckGo-specific parsing rules. The concrete product gap is not merely “add Brave/Tavily/Firecrawl”; it is that search provider selection and parser behavior are not externalized into a typed provider registry/config surface, so every upstream search-engine DOM/layout change risks breaking the tool and every provider swap requires code edits.
|
||||
|
||||
Observed/claimed shape from field report plus repo grep: local search tooling is centered around the existing client-side `WebSearch` path rather than a pluggable `SearchProvider` abstraction. There is no first-class `.config/searchProvider.json` parser registry, no `.claw/settings.json` search-provider section, no typed provider enum/config for `ddg | tavily | brave | firecrawl`, no per-provider parser contract, no provider capability flags (HTML scrape vs JSON API vs crawl/extract), no parser-version/provenance field on search results, and no health/fallback telemetry that says `DDG parser stale, falling back to Brave/Tavily/Firecrawl`. This is distinct from #233: #233 covers SERVER-MANAGED provider-native web-search-with-citations (`web_search_20250305`, OpenAI Responses web_search, encrypted/citation tool results). #245 covers the CLIENT-SIDE local WebSearch tool shadow that claw-code already has, and makes it provider-pluggable/config-driven instead of DuckDuckGo-parser-coupled.
|
||||
|
||||
Required fix shape: (a) introduce a `SearchProvider` config model in `.claw/settings.json` with selected provider, credentials/env binding, timeout/rate-limit, and fallback order; (b) support at least `ddg`, `tavily`, `brave`, and `firecrawl` as provider backends; (c) move provider parser/extractor rules into a loadable registry such as `.config/searchProvider.json` or a versioned bundled registry with user overrides; (d) define a normalized `SearchResult` contract with title/url/snippet/source/provider/parser_version/raw_score plus optional extracted content/citation metadata; (e) emit typed telemetry/events for provider selected, parser version used, parser failure, fallback taken, and zero-result-vs-parser-break distinction; (f) add tests with frozen fixtures per provider so search quality regressions do not silently look like “no results.” Acceptance: users can switch DDG→Tavily/Brave/Firecrawl without code changes, parser updates can ship as config/registry changes, and a DOM/API drift produces an observable parser/fallback event instead of silent degraded search. **Status:** Open. No source code changed. Filed as ROADMAP-only pinpoint from Sigrid Jin's direct field report. Cluster delta: client-side-websearch-tool-shadow +1, provider-configurability +1, parser-externalization cluster founded, search-quality/fallback-observability cluster founded; linked to #233 as the client-side configurable complement to server-managed web-search-with-citations.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user