File-Discovery-Workflow
Umfassender technischer Leitfaden zum 5-stufigen KI-Workflow, der relevante Dateien für die Aufgabenausführung identifiziert und filtert.
PlanToCode identifiziert die richtigen Dateien, bevor Sie planen oder Befehle ausführen. Der 5-stufige Workflow grenzt den Umfang ein und hält den Kontext eng.
Workflow-Architektur
Der Workflow arbeitet als orchestriertes Hintergrundjob-System mit fünf unterschiedlichen Phasen, die sequenziell ausgeführt werden. Jede Phase baut auf der Ausgabe der vorherigen Phase auf und verfeinert progressiv die Dateiauswahl basierend auf Aufgabenanforderungen.
Das System verwendet eine verteilte Job-Architektur, bei der jede Phase als unabhängiger Hintergrundjob läuft und Abbruch, Wiederholungslogik und detaillierte Fortschrittsverfolgung ermöglicht. Echtzeitevents werden während der Ausführung veröffentlicht, um sofortiges Feedback an die Benutzeroberfläche zu geben.
Wichtige Architekturmerkmale:
- • Ereignisgesteuerte Fortschrittsberichterstattung mit WebSocket-ähnlichen Updates
- • Umfassende Fehlerbehandlung mit automatischen Wiederholungsmechanismen
- • Kostenverfolgung und Timeout-Management für KI-Operationen
- • Caching von Zwischenergebnissen für Performance-Optimierung
- • Git-Integration mit Fallback auf Verzeichnis-Traversierung
5-Stufen-Workflow-Prozess
Stufe 1: Root-Ordner-Auswahl
Bestimmt das Projekt-Root-Verzeichnis und validiert den Git-Repository-Status. Diese Stufe etabliert das Basisverzeichnis für alle nachfolgenden Dateioperationen und konfiguriert Ausschlussmuster.
Stufe 2: Regex-Dateifilter
Generiert intelligente Regex-Muster basierend auf der Aufgabenbeschreibung zur Durchführung der initialen Dateifilterung. Diese Stufe kombiniert git ls-files-Ausgabe mit Binärdateierkennung, um eine vorläufige Dateiliste zu erstellen.
Stufe 3: KI-Dateirelevanz-Bewertung
Setzt KI-Modelle ein, um Dateiinhalte zu analysieren und die Relevanz für die spezifische Aufgabenbeschreibung zu bewerten. Diese Stufe führt tiefe Inhaltsanalyse durch, um Dateien zu identifizieren, die am wahrscheinlichsten für die gegebene Aufgabe nützlich sind.
Stufe 4: Erweiterte Pfad-Finder
Entdeckt zusätzliche relevante Dateien durch Beziehungsanalyse und Abhängigkeitsverfolgung. Diese Stufe identifiziert Dateien, die möglicherweise nicht mit initialen Mustern übereinstimmen, aber kontextuell wichtig sind.
Konfigurationsoptionen
Workflow-Konfiguration
Timeout-Management
Konfigurieren Sie die maximale Ausführungszeit für den gesamten Workflow oder einzelne Phasen, um unbegrenztes Hängen zu verhindern.
timeoutMs: 300000 // 5 minutes defaultAusschlussmuster
Definieren Sie Verzeichnisse und Dateimuster, die vom Discovery-Prozess ausgeschlossen werden sollen.
excludedPaths: ["node_modules", ".git", "dist", "build"]Wiederholungskonfiguration
Legen Sie maximale Wiederholungsversuche für fehlgeschlagene Phasen mit exponentiellem Backoff fest.
maxRetries: 3 // Per stage retry limitAPI-Nutzungsbeispiele
Einen Workflow starten
const tracker = await WorkflowTracker.startWorkflow(
sessionId,
"Add user authentication to the login page",
"/path/to/project",
["node_modules", "dist"],
{ timeoutMs: 300000 }
);Fortschritt überwachen
tracker.onProgress((state) => {
console.log(`Stage: ${state.currentStage}`);
console.log(`Progress: ${state.progressPercentage}%`);
});
tracker.onComplete((results) => {
console.log(`Selected ${results.selectedFiles.length} files`);
});Ergebnisse abrufen
const results = await tracker.getResults(); const selectedFiles = results.selectedFiles; const intermediateData = results.intermediateData; const totalCost = results.totalActualCost;
Performance-Überlegungen
Speicherverwaltung
Der Workflow implementiert intelligente Speicherverwaltung mit Datei-Caching (30-Sekunden-TTL), Batch-Verarbeitung (100 Dateien pro Batch) und automatischer Bereinigung von Zwischendaten, um Speicherüberlastung zu verhindern.
Kostenoptimierung
KI-Stufen verfolgen tatsächliche Kosten aus API-Antworten, implementieren intelligentes Batching zur Minimierung der Token-Nutzung und liefern Kostenschätzungen vor der Ausführung, um bei der Ausgabenverwaltung zu helfen.
Performance-Überwachung
Eingebaute Performance-Verfolgung überwacht Ausführungszeiten, Speichernutzung, Durchsatz-Metriken und liefert Empfehlungen zur Optimierung basierend auf historischer Datenanalyse.
Integrationsmuster
Desktop-Anwendung
Der Workflow integriert sich nahtlos mit der Desktop-Anwendung über Tauri-Befehle und bietet nativen Dateisystemzugriff und ereignisgesteuerte Updates über die WorkflowTracker-Klasse.
Implementierungspläne-Integration
Ausgewählte Dateien werden automatisch in das Implementierungspläne-Panel eingespeist und stellen sicher, dass die Plangenerierung denselben optimierten Dateikontext verwendet, ohne eine erneute Ausführung des Discovery-Workflows zu erfordern.
Session-Management
Workflow-Ergebnisse werden pro Session gecacht, sodass mehrere Operationen innerhalb derselben Session den entdeckten Dateikontext wiederverwenden können, was die Performance für iterative Entwicklungs-Workflows erheblich verbessert.
Fehlerbehandlung & Fehlerbehebung
Häufige Probleme
- • Git-Repository nicht gefunden: Fällt zurück auf Verzeichnis-Traversierung mit Standardausschlüssen
- • Binärdateierkennung: Verwendet sowohl erweiterungsbasierte als auch inhaltsbasierte Binärerkennung
- • Token-Limit überschritten: Implementiert intelligentes Batching und liefert klare Fehlermeldungen
- • Netzwerk-Timeouts: Automatische Wiederholung mit exponentiellem Backoff für transiente Fehler
Fehlerkategorien
- • Validierungsfehler: Ungültige Session-ID, fehlende Aufgabenbeschreibung oder ungültiges Projektverzeichnis
- • Workflow-Fehler: Phasenspezifische Fehler mit detailliertem Kontext und Wiederholungsvorschlägen
- • Abrechnungsfehler: Unzureichende Credits oder Zahlungsfehler mit umsetzbarer Anleitung
- • Systemfehler: Dateisystemzugriff, Git-Befehlsfehler oder Speichereinschränkungen
Debugging-Tools
Der Workflow bietet umfassende Protokollierung, Performance-Metrik-Export und detaillierten Fehlerkontext einschließlich Phaseninformationen, Wiederholungsversuchen und Zwischendaten zur Fehlerbehebung.
Workflow-Statusverwaltung
Statusübergänge
Der Workflow durchläuft klar definierte Zustände: Erstellt → Läuft → Pausiert (optional) → Abgeschlossen/Fehlgeschlagen/Abgebrochen. Jeder Statusübergang veröffentlicht Ereignisse, die für Echtzeit-Updates überwacht werden können.
Zwischendatenspeicherung
Jede Phase speichert ihre Ausgabe in einem strukturierten Zwischendatenformat, einschließlich Verzeichnisbaum-Inhalt, Regex-Muster, gefilterte Dateilisten und Pfad-Korrekturergebnisse. Diese Daten sind für das Debugging zugänglich und können verwendet werden, um Workflows von bestimmten Phasen aus fortzusetzen.
Ereignisgesteuerte Updates
Das System veröffentlicht Echtzeitevents für Workflow-Statusänderungen, Phasenabschlüsse und Fehlerbedingungen. Diese Ereignisse ermöglichen responsive Benutzeroberflächen und Integration mit externen Überwachungssystemen.
Benötigen Sie die Desktop-App?
Der File-Discovery-Workflow läuft innerhalb des Desktop-Clients zusammen mit Implementierungsplanung und Terminal-Sessions.