Files
planer2/daten/RAG/diagnose.md
2026-07-29 15:19:41 +02:00

14 KiB

Diagnose

kern

Ermöglicht Betreibern die Überprüfung von Systemzustand, Konfiguration und Datenqualität ohne produktive Änderungen

  • Alle Diagnosekommandos bieten --json-Ausgabe
  • Exit-Code 0 spiegelt Status OK wider
  • Exit-Code 1 zeigt Fehler oder Befunde an
  • Diagnoseoperationen verändern keine Daten
  • Kein Diagnosebefehl ruft LLM während der Prüfung auf
  • MAX_LINE_BYTES = 2097152
  • limit-Option: Standardwert 10
  • Diagnostic-only-Hinweis im Footer
  • Patchline-Pruefung bei Architecture Release Lock
  • Genau ein AgentRunner-Boundary-Call sichtbar

Abdeckung prüfen

Prüft ob gespeicherte Ingest-Facts eine Anfrage abdecken

  • Query muss nicht leer sein
  • index.ndjson muss existieren
  • Treffer nach State-Rang und Score sortiert
  • json gibt maschinenlesbare Daten zurück
  • Command mit Query ausführen
  • Diagnoseausgabe mit Abdeckungsdaten prüfen
  • Command mit --json ausführen
  • JSON-Struktur mit rows und summary prüfen
  • Command mit --min-score und --limit ausführen
  • Gefilterte Treffer nach Score geordnet

Abrufgrenzen prüfen

Prüft ob Retrieval-Architekturgrenzen eingehalten werden

  • Required-Dateien sind vorhanden
  • AgentRunner besitzt Retrieval-Orchestrierung
  • Genau ein Boundary-Call in AgentRunner
  • Boundary-Service bleibt dünn
  • Flow bleibt trace-only
  • ReadModel bleibt beschränkt
  • PostCallFocus erweitert keinen Constructor
  • RetrieverInterface bleibt minimal
  • HybridRetriever bleibt in Retrieval-Layer
  • Dokumentation sichert Architecture Release Lock
  • Command ausführen mit --json
  • Ausgabe zeigt Status OK

Bereitschaftsbericht ausgeben

Prüft Bereitschaft von Deployment und Scheduler und zeigt Ergebnisse an

  • json-Option gibt maschinenlesbares JSON aus
  • Standardausgabe zeigt DefinitionList und Tabelle
  • Exit-Code 0 bei Status OK
  • Befehl mit --json ausführen
  • JSON-Ausgabe validieren
  • Befehl ohne Option ausführen
  • Tabelle mit Status OK prüfen

Datenqualität prüfen

Prüft die Qualität von Text-Chunks im Original und nach Markdown-Umsetzung auf Datenverluste

  • Liest ausschließlich ohne Index-Schreibzugriff
  • Kein Ranking und keine Antwortlogik
  • Argument document-id ist erforderlich
  • Option version wählt eine bestimmte Dokumentversion
  • Option json liefert maschinenlesbare Ausgabe
  • php bin/console mto:agent:ingest:chunk-quality {uuid}
  • Ausgabe zeigt Titel und ausgewählte Version
  • Abschnitt Original zeigt Chunk-Profil
  • Abschnitt Markdown zeigt Chunk-Profil
  • Abschnitt Vergleich zeigt Kennzahlen und Delta
  • Abschnitt Interpretation zeigt strukturierte Hinweise

Diagnose anzeigen

Ermöglicht dem Administrator die MCP-Anbindungen und Wissensraum-Inhalte zu prüfen und zu verwalten

  • Nur Super-Administratoren haben Zugriff
  • Vier Ansichten: Übersicht, Anbindung, Wissensräume, System
  • Vorgangsvarianten werden als Flash-Meldungen zurückgemeldet
  • Formularaktionen erfordern gültiges CSRF-Token
  • Transienter Zustand wird über POST-GET-Redirect erhalten
  • Admin-MCP-Seite aufrufen
  • Route antwortet mit Status 200
  • Übersicht der Anbindungen sichtbar

Genre-Hotspots prüfen

Entdeckt genrespezifische Begriffe im Kerncode, die das Sprachmodell beeinflussen können

  • Ergebnis ist schreibgeschützt
  • json gibt maschinenlesbare Daten aus
  • strict gibt Nicht-Null-Exit-Code bei Befunden aus
  • details zeigt alle Ergebniszeilen
  • Terminal öffnen
  • Befehl ohne Parameter ausführen
  • Zusammenfassung mit Befunden erscheint

Guard-Mechanismus prüfen

Prüft die Guard-Implementierung ohne Seiteneffekte

  • Liest nur lokale Dateien
  • Keine Runtime-Aufrufe
  • Prüft 8 Testfälle
  • Befehl ausführen: mto:agent:proofing:unsupported-tool-term-guard-self-test
  • Status OK in JSON-Ausgabe prüfen
  • Alle 8 Testfälle bestanden

Hygieneregeln prüfen

Prüft ob Batch-Hygieneregeln korrekt implementiert und nicht in die Antwortlaufzeit verdrahtet sind

  • source_noise_cleaner_entfernt_PDF_Restzeichen
  • validator_entfernt_QUELLSEGMENT_Echo
  • directory_cleanup_entfernt_leere_Admin-Upload_Ordner
  • directory_cleanup_verschiebt_Legacy_failed_Eintraege
  • batch_reports_sind_loeschbar_mit_CSRF_Schutz
  • document_delete_bereinigt_physische_Dateien
  • failed_skipped_resolvt_ausserhalb_inbox
  • keine_Hygiene_Dienste_in_Antwortlaufzeit_verdrahtet
  • Befehl mto:agent:knowledge:batch-hygiene-self-test ausfuehren
  • JSON-Ausgabe pruefen
  • Alle Faelle Status OK

Indizierungszustand prüfen

Prüft automatisch, ob der verzögerte Indizierungsvertrag in allen Dateien korrekt umgesetzt ist

  • Liest Controller, Services, Repositories und Templates ein
  • Prüft 19 Vertragsfälle zum verzögerten Indizierungsworkflow
  • Gibt Zusammenfassung oder strukturiertes JSON aus
  • Gibt Erfolgscode bei allen bestandenen Fällen zurück
  • Befehl mit --json ausführen
  • Ausgabe auf "OK" oder "FAILED" prüfen
  • FEHLGESCHLAGEN: Case entfernt ungültigen startJob-Aufruf in activateVersion
  • FEHLGESCHLAGEN: Case entfernt verzögertes setCurrentVersion in documentService
  • Alle Cases bestanden: Rückgabewert Command::SUCCESS

Konfiguration prüfen

Prüft ob alle RetrieX-Einstellungen gültig sind und zeigt Fehler oder Warnungen an

  • mto:agent:config:validate als Konsolenbefehl verfügbar
  • Gibt Fehler und Warnungen aus
  • json gibt maschinenlesbares Ergebnis aus
  • Rückgabewert 0 bei gültiger Konfiguration
  • Rückgabewert 1 bei ungültiger Konfiguration
  • Regression Guardrails werden geprüft
  • php bin/console mto:agent:config:validate ausführen
  • Ergebnis auf Fehler und Warnungen prüfen
  • Exitcode prüfen
  • Konfiguration gültig: Exitcode 0
  • php bin/console mto:agent:config:validate --json ausführen
  • JSON-Ausgabe enthält status, errors, warnings

Provenienz prüfen

Prüft ob Provenienzdiagnostik ohne Ranking- oder Antwortwirkung funktioniert

  • Liest Ingest-Service, Admin-Inspektor, Template und Styles
  • Prüft Provenienz-Metadaten in NDJSON
  • Prüft Diagnostik-Metadaten in NDJSON
  • Prüft Sidecar-Lesen ohne LLM-Aufruf
  • Prüft Admin-Ansicht mit Provenienz und Heading-Pfad
  • Prüft Read-only-Label in UI
  • Prüft Kein Antwort-Runtime-Einfluss
  • Prüft Genre-Neutralität der Diagnostik
  • mto agent ingest markdown-derived-chunk-diagnostics-self-test ausführen
  • Kommando endet erfolgreich
  • Ausgabe zeigt status OK
  • Alle 8 Cases zeigen status OK

Retrieval-Pipeline testen

Ermöglicht die Überprüfung der Retrieval-Pipeline mit detailliertem Debug-Output

  • Prompt als Argument erforderlich
  • Leerer Prompt erzeugt Fehler
  • json gibt Rohdaten ohne Formatierung aus
  • show-text zeigt ungekürzte Chunk-Texte
  • mto:agent:retrieval:test mit Prompt ausführen
  • Ausgabe auf Pipeline-Summary prüfen
  • mto:agent:retrieval:test --json ausführen
  • JSON-Struktur mit duration_ms und results vorhanden

Retrieval-Qualität testen

Prüft ob die Konfiguration passende Inhalte findet

  • Erfordert ROLE_KNOWLEDGE_ADMIN
  • GET zeigt leere Maske
  • POST führt TestRetrieval aus
  • Seite test-retrieval öffnen
  • Prompt eingeben und absenden
  • Ergebnisse werden angezeigt

Segmentierung prüfen

Prüft ob Segmentierung korrekt ausgeführt wird

  • Liest alle relevanten Dateien ein
  • Prüft required_files_present
  • Prüft execution_uses_complete_segment_plan
  • Prüft segment_prompt_is_fragment_only
  • Prüft llm_called_per_segment_with_long_transport
  • Prüft sidecar_records_segment_processing_without_raw_payloads
  • Prüft generated_version_remains_inactive
  • Prüft no_index_or_answer_runtime_wiring
  • Prüft no_genre_runtime_gate_markers
  • Report enthält Status und Zusammenfassung
  • mto:agent:ingest:segmented-markdown-normalization-self-test ausführen
  • Status OK oder FAIL prüfen
  • Testläufe als Zusammenfassung sehen

Shop-Suche testen

Prüft die Shop-Suche mit detaillierter Ausgabe von Suchvorschau, Ergebnissen und optionalem Repair

  • Standard-Query: 'zeige mir produkte unter 5000 euro'
  • repair aktiviert zusätzliche Search-Repair-Suche
  • json gibt maschinenlesbare Ausgabe aus
  • Primärsuche wird immer ausgeführt
  • mto:agent:test:shop-search ausführen
  • Suchvorschau und Primärergebnisse prüfen
  • mto:agent:test:shop-search laptop --repair ausführen
  • Repair-Auswertung mit Ergebnissen prüfen
  • mto:agent:test:shop-search laptop --json ausführen
  • JSON-Ausgabe mit query, preview und repair prüfen

Sicherheitsstatus prüfen

Prüft den Security- und Datenschutz-Bereitschaftsgrad ohne Seiteneffekte

  • Kommandoname: mto:agent:enterprise:security-data-protection-readiness
  • json gibt maschinenlesbares JSON aus
  • Erfolg bei Status OK
  • Fehler bei Status nicht OK
  • php bin/console mto:agent:enterprise:security-data-protection-readiness
  • Tabelle mit Cases wird ausgegeben
  • php bin/console mto:agent:enterprise:security-data-protection-readiness --json
  • JSON-Objekt wird ausgegeben

Stapel-Upload verifizieren

Prüft die Integrität des Batch-Upload-Systems ohne Dokumente zu importieren

  • Trockenlauf ohne Dokumentenimport
  • Ruft kein LLM auf
  • Ändert keine Daten im Wissensspeicher
  • Gibt maschinenlesbares JSON aus
  • Prüft CSRF-Schutz, Dienstintegration und Fortschrittsanzeige
  • Prüft PDF-Schutz, Speichergrenzen und Leerraum-Bereinigung
  • Prüft CLI-Progress und keine Agent-Verschaltung
  • PHP-Befehl aus src Command KnowledgeBatchAdminUploadSelfTestCommand.php ausführen
  • Alle 10 Cases in der Tabelle prüfen
  • Jeder Case zeigt Status OK oder FAIL

Systemzustand prüfen

Prüft NDJSON und FAISS-Konsistenz

  • Gibt JSON aus
  • OK-Status gibt SUCCESS zurück
  • Fehler-Status gibt FAILURE zurück
  • php bin console mto:agent:vector:health
  • Konsistente Indices: OK-Status in JSON
  • Fehler: FAILURE und Fehlermeldung in JSON

Tag-Index-Gesundheit prüfen

Prüft die Konsistenz zwischen Tag-Daten und FAISS-Index

  • summary zeigt Zusammenfassung statt JSON
  • Exitcode 0 bei Status OK oder OK_EMPTY
  • Exitcode 1 bei allen anderen Status
  • Prüft tags_ndjson_exists, vector_exists, meta_valid
  • bin console mto:agent:tag:health ausführen
  • LMB auf --summary
  • Zusammenfassung mit Status, Zählern und Gültigkeit
  • Befehl mit Exitcode 0 beendet

Tags neu indizieren

Echtzeitaktualisierung des Neuindizierungsfortschritts im Browser

  • Lädt alle 2 Sekunden neuen Status
  • Sendet Ereignis nur bei Hash-Änderung
  • Sendet Keepalive alle 10 Sekunden
  • Endet bei Verbindungsabbruch
  • Stream-Endpunkt aufrufen
  • MIME-Typ text event stream prüfen
  • Antwortet mit Stream
  • Event-Stream antwortet

Verankerung testen

Diagnostiziert die Verankerung von Nachfolgedialogen in der Historie

  • Kein Laufzeitverhalten geändert
  • Report als Text oder JSON ausgebbar
  • sample führt integrierten Smoke-Test aus
  • Historie aus Datei, STDIN oder Option lesbar
  • Sample-Dry-Run ausführen
  • Text-Report auf erkennbaren Anker prüfen
  • Kernprodukt und Nachfolgedialog identifizieren

Vergleichsgrenzen validieren

Prueft, ob alle Dateien und Muster fuer die Chunk-Qualitaetsvalidierung vorhanden sind

  • Liest src Service Admin DocumentChunkQualityComparisonService php
  • Liest src Command IngestChunkQualityCommand php
  • Liest src Controller Admin DocumentController php
  • Liest templates admin document show html twig
  • Liest public assets styles base css
  • Liest DocumentMarkdownSegmentationPlanService php
  • Liest AgentRunner php und KnowledgeIngestService php
  • Prueft Dateien auf vorhandene Strings mit str_contains
  • Prueft Dateien auf abwesende Strings mit !str_contains
  • Gibt FAIL zurueck sobald ein Fall fehlschlaegt
  • x-Icon
  • php bin console mto agent ingest chunk-quality-self-test ausfuehren
  • Rueckgabe auf vollstaendige Faelle pruefen
  • Status OK bei allen gueltigen Implementierungen

Titelvorschläge-Selbsttest bereitstellen

Konfigurationsquellen prüfen

Batch-Markdown-Normalisierung testen