docs(plans): mark shared-llm tool-call integration as deferred

B1 (token usage) and B2 (server-iteration auto-execution) shipped in
the follow-up session. B3 — extending the LlmBackend interface with
tool-call passthrough and wiring both runners through the orchestrator
instead of direct-fetch — was scoped out after honest re-evaluation:

- Browser-local Gemma can't do tool-calling reliably, so the tier-
  fallback value is low (the tool-tier collapses to mana-server/cloud
  anyway).
- BYOK/cloud routing via mana-llm proxy is functionally equivalent
  between direct-fetch and orchestrator paths.
- ~6 h of work across 8 files with no concrete user-facing unblock.

Kept the entry point documented for whenever a use-case actually
needs tier-routing of planner calls.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Till JS 2026-04-20 18:36:07 +02:00
parent 728027c478
commit 3194180efb

View file

@ -252,6 +252,7 @@ Kein Datenschutz-Unterschied — Encrypted Tables bleiben verschlüsselt, Execut
- **Dry-Run-Mode** — „simuliere was passieren würde". Optional. Für jetzt reicht manual-Cadence + Revert.
- **Typed Tool-Params** — Generierung von TS-Types aus dem Catalog. Separater PR.
- **Browser-local LLM als Planner**`@mana/local-llm` (Gemma via transformers.js) unterstützt Tool-Calling nicht zuverlässig. Bleibt Out-of-Scope.
- **shared-llm Tool-Call-Integration** (deferred 2026-04-20) — der webapp- und server-LlmClient sprechen aktuell direkt gegen mana-llm (`/v1/chat/completions`), an `LlmOrchestrator` vorbei. Damit verpassen Planner-Calls die Tier-Routing-Logik (BYOK / browser → server → cloud Fallback, per-task-Override). Ursprünglich Teil des Plans, aber die konkreten Vorteile sind gering: Browser-local Gemma unterstützt Function-Calling nicht zuverlässig (fällt als Tool-Tier eh aus), und BYOK/Cloud über mana-llm-Proxy ist mit Direct-Fetch funktional äquivalent. Einstiegspunkt für später: `LlmBackend`-Interface in `packages/shared-llm/src/types.ts` um `tools`/`toolCalls` erweitern, Backends durchreichen, Adapter `createLlmClientFromOrchestrator(task)` bauen. ~6 h Aufwand wenn der Use-Case konkret wird.
## PR-Struktur-Vorschlag