Referenz v1.0.4

API-Dokumentation

Vollständige Referenz für Dienst-Interfaces, Datenmodelle, WorkflowPipeline-Knotentypen und Coclico 1.0.4 Konfiguration.

Hinweis: Diese Seite ist größtenteils auf Französisch verfügbar. Eine vollständige deutsche Übersetzung folgt in Kürze. Code-Beispiele sind auf Englisch (C#).

Übersicht

Diese Dokumentation deckt alle öffentlichen Coclico-Interfaces ab. Aktuelle Version: 1.0.4.

  • Haupt-Namespace: Coclico.Services
  • Modelle: Coclico.Models
  • ViewModels: Coclico.ViewModels
  • Framework: .NET 10, C# preview, WPF-UI 4.2

ICacheService

Thread-sicherer In-Memory-Cache mit TTL pro Eintrag. Implementiert durch CacheService (Singleton).

public interface ICacheService
{
    T? Get<T>(string key);
    void Set<T>(string key, T value, TimeSpan? ttl = null);
    bool TryGet<T>(string key, out T? value);
    void Invalidate(string key);
    void InvalidateAll();
}

IDynamicTracer

Echtzeit-Systemtelemetrie. Implementiert durch DynamicTracerService (Singleton).

public record TelemetrySnapshot(
    DateTimeOffset Timestamp,
    double CpuPercent,
    long RamUsedMb,
    long RamTotalMb,
    double NetworkInKbps,
    double NetworkOutKbps
);

IRollbackService

Snapshot-Verwaltung für KI-Patch-Rollback. Muss vor jedem KI-ausgelösten File.WriteAllText aufgerufen werden.

public interface IRollbackService
{
    Task<Guid> CreateSnapshotAsync(string filePath, CancellationToken ct = default);
    Task RestoreAsync(Guid snapshotId, CancellationToken ct = default);
    IReadOnlyList<SnapshotInfo> GetSnapshots();
    Task PruneAsync(TimeSpan maxAge);
}

IOptimizationEngine

Autonomes Optimierungsmodul (Phase 2). Führt alle 30 Sekunden einen Analysezyklus im Hintergrund aus.

public interface IOptimizationEngine
{
    Task StartAsync(CancellationToken ct);
    Task StopAsync();
    OptimizationResult? LastResult { get; }
    event Action<OptimizationResult>? CycleCompleted;
}

ISourceAnalyzer

Roslyn-basierte AST-Analyse von C#-Quellcode (Phase 3.3). Berechnet pro Methode: CC, Halstead-Metriken und Wartbarkeitsindex.

public record MethodMetrics(
    string MethodName,
    int CyclomaticComplexity,   // CC Warnschwelle: > 10
    double HalsteadVolume,
    double HalsteadDifficulty,
    double HalsteadEffort,
    double MaintainabilityIndex  // 0–100, höher ist besser
);

IAuditLog

Append-only NDJSON-Protokoll mit vollständigem KI-Entscheidungskontext (AiDecisionContext) für vollständige LLM-Rückverfolgbarkeit. Bereinigung über AuditRetentionDays.

AppSettings

Hauptkonfigurationsmodell. Verwaltet durch SettingsService, gespeichert in %APPDATA%\Coclico\settings.json.

public class AppSettings
{
    public string Language { get; set; } = "de";
    public string Theme { get; set; } = "Dark";
    public string AccentColor { get; set; } = "#6366F1";
    public LaunchMode LaunchMode { get; set; } = LaunchMode.Manual;
    public bool AutoPatcherAuditOnly { get; set; } = true;
    public int AuditRetentionDays { get; set; } = 90;
    public bool UseVulkanAcceleration { get; set; } = true;
}

NodeType — 28 Knotentypen

Prozesse: KillProcess, LaunchProcess, RestartService, StopService, StartService | Registrierung: SetRegistryValue, DeleteRegistryKey | Dateien: CreateDirectory, DeleteFile, MoveFile, CopyFile | Skripte: RunScript | Bereinigung: CleanTemp, EmptyRecycleBin, FlushDns, ClearBrowserCache, ClearEventLogs, ClearPrefetch, ClearThumbnailCache, ClearWindowsErrorReports | Speicher: FreeRam, SetWorkingSet | Netzwerk: PingHost, DisableNetworkAdapter, EnableNetworkAdapter | Steuerung: Wait, Condition, Log, Notification

ConditionOperator — 10 Operatoren

Equals, NotEquals, GreaterThan, LessThan, GreaterOrEqual, LessOrEqual, Contains, NotContains, IsEmpty, IsNotEmpty

OnErrorAction

  • ContinueNext (Standard) — Fehler protokollieren, weiter zum nächsten Knoten
  • StopChain — Ausführung sofort beenden
  • SkipToEnd — Zwischenknoten überspringen, nur letzten Knoten ausführen

Deep Clean Kategorien — 10

Windows-Temp, Browser-Cache, Systemprotokolle, Papierkorb, Benutzer-Temp, Miniaturansichten-Cache, Windows-Fehlerberichte, Alte Installer, DNS-Cache (dnsapi.dll), Prefetch-Dateien.

Anwendungsquellen — 8

Registry HKLM, Registry HKCU, Steam (libraryfolders.vdf), Epic Games (JSON-Manifeste), GOG Galaxy (SQLite), Ubisoft Connect, EA App (XML-Manifeste), Rockstar Games Launcher, Microsoft Store (AppX-Pakete über PowerShell).

Dateistruktur

%APPDATA%\Coclico\
├── settings.json
├── security-policy.json
├── flow-chains\        # WorkflowPipeline-Definitionen
├── audit\              # NDJSON-Prüfprotokoll
├── logs\               # Serilog täglich rollierend (14 Tage)
├── rollback\           # IRollbackService-Snapshots
└── resource\model\
    └── IA-support-chat.gguf

Audit NDJSON-Format

Jede Zeile ist ein unabhängiges JSON-Objekt mit: Zeitstempel, Aktionstyp, KI-Kontext (Modell, Prompt-Hash, Antwort-Tokens, Latenz) und Patch-Validierungsergebnis (Original-CC, Patch-CC, Digital Twin-Genehmigung).