fix: bound broad tool workflows

This commit is contained in:
Mikei386
2026-08-24 13:29:41 +02:00
parent 5db73d0a92
commit 308b8a4d1f
11 changed files with 186 additions and 29 deletions
+11 -2
View File
@@ -147,7 +147,7 @@ Der isolierte Eignungs- und Ausfalltest ist in
- Docker Compose
- SearXNG, per Digest gepinnt
- TinySearch 0.5.1, per Digest gepinnt
- TinySearch 0.6.1, per Digest gepinnt
- TinySearch ausschließlich im internen Docker-Netz, ohne Host-Port
- lokale ONNX-Embeddings
- OpenWebUI-native allgemeine Suche und Seitenabruf in allen normalen Profilen
@@ -209,7 +209,16 @@ höchstens zwölf Aufrufe desselben Werkzeugnamens und höchstens zweimal exakt
dieselbe Signatur. Nach Ende des Budgets stehen zusätzliche interne Runden ausschließlich
für eine sichtbare werkzeugfreie Schlussantwort bereit. Das produktive
OpenWebUI-Derivat trägt den Tag
`mike-ai/openwebui:main-01f4282-agent-loop-v6`.
`mike-ai/openwebui:main-01f4282-agent-loop-v7`. V7 begrenzt zusätzlich die
Werkzeugantworten in OpenWebUIs internen Fortsetzungsrunden auf 12.000 Zeichen
je Ergebnis und 64.000 Zeichen pro Antwortlauf. Damit greift die Begrenzung
auch bei Ergebnissen, die erst nach dem ersten Request entstehen.
Auto Tool Selector 4.2 hält native Websuche immer verfügbar, ergänzt bei
expliziter Webrecherche den TinySearch-Fallback und erkennt unter anderem
`Home Assistant`, `Home-Assistant` sowie direkte `ha_*`-Werkzeugbezüge. Für
Home Assistant verlangt er gezielte Zustandsabfragen und verbietet die
Ableitung einer `entity_id` aus einer YAML-`id`.
Der Platform Context MCP läuft ohne Docker-Socket, Shell, Egress oder Secrets.
Ein root-eigener Minutentimer erzeugt nur einen begrenzten Laufzeitsnapshot.
+16 -3
View File
@@ -39,8 +39,11 @@ benötigte deshalb kleinere, klarere Werkzeuge und harte Abbruchgrenzen.
erhält der Benutzer deshalb eine sichtbare Antwort aus den vorhandenen
Befunden samt ehrlicher Angabe fehlender Belege. Inlet-Filter allein können
dies nicht erzwingen, weil sie zwischen OpenWebUIs internen Werkzeugrunden
nicht erneut ausgeführt werden. Ein einzelnes Resultat ist auf 12.000, alle
Resultate zusammen auf 64.000 Zeichen begrenzt.
nicht erneut ausgeführt werden. Seit OpenWebUI-Derivat V7 sitzt die
Größenbegrenzung deshalb direkt in der internen Fortsetzungsschleife: ein
einzelnes Resultat ist auf 12.000, alle Resultate zusammen auf 64.000
Zeichen begrenzt. Zitate und sichtbarer Werkzeugstatus werden zuvor
verarbeitet; das Modell erhält eine markierte Kopf-/Ende-Verdichtung.
Die Basis ist unveränderlich auf OpenWebUI-Revision
`01f4282f1ffe0d6212f58d3afbeae21fffd0c4be` beziehungsweise Image-Digest
`sha256:6a773e5c3a246b65cbe74ce942b294292c0e5f81c138f703d111bc162f7d7c3d`
@@ -65,7 +68,7 @@ benötigte deshalb kleinere, klarere Werkzeuge und harte Abbruchgrenzen.
## Abnahme
- OpenWebUI-Filtertests: 34
- OpenWebUI-Filtertests: 36
- Web-MCP-Tests: 9
- Athena-Operator-Tests: 13
- Platform-Context-Test: bestanden
@@ -82,6 +85,16 @@ sudo /opt/mike-ai/stack/dev/verify_mcp_catalogs.sh
Er muss mit `MCP_CATALOG_SUITE_OK` enden.
## Reale Browserabnahme
Die angemeldete OpenWebUI-Sitzung bestand am 24. August 2026 folgende Läufe:
- unbekannte Website MakerWorld über native Suche plus TinySearch 0.6.1
- GitHub-Repository plus vorhandener Unraid-Container plus Athena-Planung
- mehrstufige Home-Assistant-YAML-Analyse ohne Vollinventar
- bewusst angeforderte 223-KB-Klasse einer Home-Assistant-Zustandsliste; V7
lieferte trotz 2.169 Zuständen nach 30,9 Sekunden eine sichtbare Kurzantwort
## Noch manuell zu prüfen
Ein echter Browsertest mit einer bewusst synthetischen CSV benötigt eine
+15 -2
View File
@@ -43,7 +43,9 @@ MCPs sind über feste WireGuard-Ports auch für Hermes und Pi erreichbar.
- bei ausgeschöpftem Budget folgt zwingend eine werkzeugfreie, sichtbare
Schlussantwort aus den bereits erhobenen Befunden
- Werkzeugausgaben bleiben kurz: 12.000 Zeichen je Ergebnis und 64.000 Zeichen
über den Verlauf; ältere Resultate werden zuerst verdichtet
über den Verlauf. Die Begrenzung sitzt in OpenWebUIs interner
Fortsetzungsschleife und greift daher auch auf Resultate, die erst nach dem
ersten Modellschritt entstehen.
Damit stoppt die Plattform bewiesene Schleifen, nicht normale lange Recherche.
Die früheren Grenzen von zwölf Gesamtaufrufen und vier Aufrufen je Werkzeug
@@ -54,7 +56,7 @@ waren für Qwen3.8-Agentenaufgaben zu klein.
| Client | Standardweg |
|---|---|
| OpenWebUI | native `search_web` und `fetch_url`, immer verfügbar |
| Hermes/Pi/andere MCP-Clients | `http://192.168.1.212:8203/mcp` (TinySearch) |
| Hermes/Pi/andere MCP-Clients | `http://192.168.1.212:8203/mcp` (TinySearch; laufender Alt-Gateway zusätzlich 8211 bis zum nächsten geplanten WireGuard-Neustart) |
| Spezial-/Rollbackbedarf | historischer `mcp-web` nur mit Compose-Profil `legacy-web` |
TinySearch stellt die vier Upstream-Werkzeuge `search`, `scrape_urls`,
@@ -81,3 +83,14 @@ Nach Änderungen müssen mindestens folgende Prüfungen erfolgreich sein:
6. Browserlauf mit einer unbekannten öffentlichen Website, GitHub plus
Laufzeitprüfung sowie einer mehrstufigen Home-/Unraid-Aufgabe
Produktive Abnahme am 24. August 2026:
- MakerWorld ohne Site-Adapter: 12 Werkzeugaufrufe, verifizierter Treffer mit
Downloadzahl und Direktlink, sichtbare Antwort nach 102,5 Sekunden
- GitHub + Unraid + Athena: 12 gezielte Repository-Leseaufrufe plus
Laufzeitprüfung; vorhandenen Deemix-Backendcontainer korrekt wiederverwendet
- Home Assistant YAML: drei auskommentierte Automatisierungen gefunden, ohne
vollständige Zustandsliste und mit sichtbarer Abschlussantwort nach 88,0 Sekunden
- absichtlicher Großausgabetest: 2.169 Home-Assistant-Zustände in einem
Werkzeugresultat; durch V7 intern verdichtet und nach 30,9 Sekunden korrekt
mit ausschließlich Anzahl und Testsatz beantwortet