ZURÜCK ZU DEN FALLSTUDIEN
RUST-WERKZEUG / STATISCHE CODEANALYSE

SynEvidÄnderungsfolgen als begrenzten Graph untersuchen

SynEvid analysiert Repositories lokal, bildet unterstützte Symbole und Beziehungen in einem typisierten Graph ab und berechnet begrenzte Auswirkungsbereiche. CLI, MCP, Web Inspector und CI sind getrennte Integrationsflächen. Im Rust-Analyse-Kern gibt es keinen LLM-Aufruf.

Prototyp in aktiver Entwicklung · Quellreview an einen Commit gebunden; aktueller Testlauf und Produktionsbetrieb werden nicht behauptet.
STATUS- UND GRENZHINWEISStatische Analyse findet nur Beziehungen, die Parser und Adapter erkennen. Dynamische Aufrufe bleiben teilweise unaufgelöst; ein Treffer beweist keine Laufzeitausführung.
// PROBLEM UND UMFANG

Welche Aufgabe das System angeht

Nach Änderungen an Symbolen oder Verträgen möchte ein Entwickler mögliche Aufrufer, Regeln und betroffene Tests erkennen. Statische Beziehungen sind hilfreich, dürfen aber fehlende Syntaxabdeckung oder dynamisches Verhalten nicht als sichere Aussage ausgeben.

// DESIGNENTSCHEIDUNG

Wie Verantwortlichkeiten getrennt sind

Ein Scanner liest Repository und optionalen Git-Kontext. Sprachadapter erzeugen Symbole, Verträge und Kanten mit Herkunft. Diff, Impact-Traversal und Invarianten nutzen dieses Modell. BLAKE3-Digests bilden prüfbare Artefakte, sind aber weder Signatur noch Korrektheitsbeweis.

// 01 / SYSTEMARCHITEKTUR

Komponenten und Vertrauensgrenzen

Quellcode-abgeleitetes Systembild, keine bestätigte Live-Deployment-Topologie.

SYSTEMLAYERS UND SCHNITTSTELLENOPTIONALE DIENSTE GELTEN NUR BEI KONFIGURATION
01 / REPOSITORY-SCANNER

Pfade, Ignore-Regeln, Dateilimits und Snapshotdaten begrenzen die gelesene Arbeitskopie.

02 / SPRACHADAPTER

Im geprüften Snapshot gibt es TypeScript/JavaScript- und Python-Adapter; unbekannte Syntax begrenzt die Abdeckung.

03 / TYPISIERTER GRAPH

Symbole und statisch extrahierte Beziehungen tragen Kantenart und Provenienz.

04 / ANALYSE

Diff, begrenzte BFS-Auswirkungssuche, Invarianten, Verträge und Testauswahl nutzen das Graphmodell.

05 / ARTEFAKTE UND SCHNITTSTELLEN

Terminal, JSON, SARIF, lokale SQLite, MCP-Prozess, Inspector und externer CI-Runner bilden getrennte Grenzen.

// 02 / ABLAUF

Ein konkreter Pfad durch die Implementierung

Optionale Pfade und Grenzen sind in den Schritten benannt.

  1. SCHRITT 01

    Snapshot

    Repository lokal scannen; optional früheren Snapshot oder Git-Stand als Basis wählen.

  2. SCHRITT 02

    Änderungen

    Datei-, Symbol-, Kanten- und Vertragsdifferenzen berechnen.

  3. SCHRITT 03

    Reichweite

    Von geänderten Symbolen über gewählte Kanten und bis zur Tiefen- und Knotengrenze suchen.

  4. SCHRITT 04

    Regeln prüfen

    Konfigurierte Schicht-, Zyklus-, Abhängigkeits- oder API-Invarianten prüfen; unvollständige Abdeckung darf kein Pass werden.

  5. SCHRITT 05

    Bericht

    Befunde, Pfade, Abdeckung und kanonischen Digest als Terminal-, JSON- oder SARIF-Ausgabe prüfen.

// 03 / METHODIK UND MODELL

Was die Regel tatsächlich ausdrückt

Die Implementierung nutzt Breitensuche, stabile Sortierung und markiert abgeschnittene Suchen. BLAKE3 wird auf kanonisierte JSON-Felder angewandt; es authentifiziert keinen Urheber.

IMPLEMENTIERUNGSSKIZZE
I(s,K,D,d,B) = erreichbare v über K in Richtung D ab s; dist(v) ≤ d und |I| ≤ B
// 04 / BELEGE UND PRÜFSTATUS

Was sich aus dem Repository belegen lässt

Quellinventar, dokumentierte Ergebnisse und ausgeführte Prüfungen bleiben getrennt.

QUELLSTAND

Review-Commit 05e11481575f59acda2f107badbad87ecb745dbd; Cargo nennt Version 0.1.0, der Changelog markiert sie als unveröffentlicht.

ARCHITEKTUR

Workspace mit 21 Rust-Engine-Crates und separater Integrationstest-Crate. MCP ruft über stdio ein lokales autopsy-CLI auf; Inspector liest exportierte Dateien.

TESTSTATUS

README nennt 831 bestandene Tests. Diese Prüfung führte die Suite nicht aus und ordnet die Zahl keinem aktuellen CI-Lauf zu.

BENCHMARK

README und Reproduktionsbericht widersprechen sich. Der Bericht nennt 100 % Recall, aber 6,11 % Precision und 10,87 % F1; bis zur Reproduktion sind diese Zahlen vorläufig.

// GRENZEN

Offene Annahmen und Risiken

Diese Punkte begrenzen, wie weit die Architektur- und Evidenzaussagen interpretiert werden sollten.

  • Dynamische Dispatches werden nicht als verifizierte Abhängigkeiten inferiert.
  • Der statische Inspector liest exportierte Artefakte; er ist kein gehosteter Live-Dienst.
  • MCP nutzt stdio und einen lokalen Prozess; GitHub Actions läuft extern auf einem CI-Runner.
  • Benchmark-README, JSON und Markdown müssen aus einem reproduzierbaren Lauf abgeglichen werden.
// 05 / QUELLEN

Implementierung und Belege nachlesen

Versionierte Links führen zum geprüften Quellstand, sofern der Audit einen solchen festhält. Nicht versionierte Links können sich ändern.