v1.2.0-alpha: GPU Compute & Der Iron Shield 🛡️
KnotenCore startet in die v1.2.0-alpha Phase! Die Sprints 187 bis 193 legen wichtige Fundamente: Parallele Datenverarbeitung via GPGPU Compute Pipelines, performanterer Bytecode durch AOT-Optimierungen und ein absolut dichter Sandbox-Schutz. Hier sind die Neuerungen im Detail.
⚡ WGPU GPGPU & Matrix Standard-Bibliothek (Sprint 187)
Sprint 187 erweitert unsere WGPU-Architektur um Allzweck-GPU-Computing (GPGPU). Durch die Einbindung von DispatchCompute und das Packen komplexer Array-Strukturen in f32 Storage-Buffer können Skripte jetzt parallele Berechnungen direkt auf der Grafikkarte via WGSL-Shadern ausführen.
Flankiert wird dies durch neue mathematische Hilfsfunktionen wie math_vector_scale und math_matrix_transform (basierend auf glam::Mat4) direkt in der FFI-Bridge. Ein mächtiges Werkzeugset für komplexe 3D-Physik und orbitale Bewegungssimulationen.
🛡️ Sandbox-Härtung durch den Iron Shield (Sprints 190, 193)
Sicherheit hat bei einer Ausführungsumgebung für autonome KI-Agenten oberste Priorität. Die Sprints 190 und 193 schlossen verbleibende Lücken im Sandbox-Modell:
- Symlink-Blockierung: Lese- und Schreibzugriffe prüfen Pfade über
std::fs::symlink_metadata. Symbolische Links werden strikt abgewiesen, was Pfad-Traversierungen auf das Host-System verhindert. - Domain-Whitelist Suffix-Schutz: Eine potenzielle Lücke beim Domain-Whitelisting wurde geschlossen. Zuvor reichte ein einfacher Suffix-Match (wodurch
evilgoogle.comalsgoogle.comdurchging). Nun müssen Domains exakt oder als Subdomain übereinstimmen (domain == whitelist || domain.ends_with(".whitelist")). - FFI Panic-Protection: Das dynamische Modul-Routing ist jetzt komplett in
catch_unwindgehüllt. Fehler innerhalb nativer Module führen nicht mehr zum Absturz der gesamten Host-Engine, sondern werden als strukturiertesExecResult::Faultgemeldet.
📉 Compiler-Optimierung Phase 1 (Sprint 192)
In Sprint 192 wurde die erste Stufe der AOT-Compiler-Optimierungen verifiziert und integriert. KnotenCore reduziert Code-Größe und VM-Instruktionen nun über:
- Constant Folding: Arithmetische Ausdrücke wie
5 + 10 * 2werden bereits zur Compile-Zeit zuIntLiteral(25)vereinfacht. - Logisches & Bitweises Folding: Vergleiche mit deterministischen Eingaben kollabieren direkt zu Literalen.
- Dead Code Elimination (DCE): Unlesbarer oder unerreichbarer Code in Verzweigungen (
If) und Schleifen wird vor der Bytecode-Generierung restlos entfernt.
Abgesichert durch 29 neue Unittests stellen diese Optimierungen sicher, dass von KIs generierter Code mit minimalem VM-Overhead läuft.