From 3194180efbfdb063c59e8ed0ef8fd8a3ee8f3fe1 Mon Sep 17 00:00:00 2001 From: Till JS Date: Mon, 20 Apr 2026 18:36:07 +0200 Subject: [PATCH] docs(plans): mark shared-llm tool-call integration as deferred MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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) --- docs/plans/planner-function-calling.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/plans/planner-function-calling.md b/docs/plans/planner-function-calling.md index 1b3538f3a..40fc3b5ba 100644 --- a/docs/plans/planner-function-calling.md +++ b/docs/plans/planner-function-calling.md @@ -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