Alle Artikel
-
WeKnora CVE-2026-30856: Tool-Routing nach Behebung der Überschattung prüfen
Die Schwachstelle durch kollidierende Tool-Namen in WeKnora konnte ein vertrauenswürdiges MCP-Tool durch die Implementierung eines anderen Servers ersetzen. Betroffene Deployments aktualisieren und prüfen, ob Freigabe, Identität im Register und Aufrufweiterleitung denselben Server auswählen.
-
Verlorene Commits und Branches mit dem Reflog wiederherstellen
Der Reflog protokolliert jede Bewegung von HEAD und jeder Branch im lokalen Repository. Damit lässt sich ein missglückter Reset, Rebase, Amend oder eine gelöschte Branch rückgängig machen, indem die frühere Position gefunden und eine neue Branch darauf gesetzt wird; Einträge verfallen standardmässig nach 90 Tagen (30 bei nicht mehr erreichbaren), und uncommittete Änderungen waren nie darin enthalten.
-
Go-append-Aliasing: sowohl den Pfad mit freier Kapazität als auch den Neuallokationspfad testen
Slice-Besitz explizit machen, wenn das Anhängen an eine Ansicht Speicher verändern kann, der anderswo beobachtet wird.
-
Datums- und Zeitformate in APIs: ISO 8601 und RFC 3339
Zeitstempel als RFC-3339-Strings mit explizitem Offset austauschen, Datumsangaben als YYYY-MM-DD, Zeitdauern als ISO-8601-Dauern oder reine Sekunden; nie als sprachraumabhängigen Text oder als mehrdeutige Zahlen.
-
Weighted Blended Transparency: stabile Reihenfolge mit einer expliziten Näherung
Erklärt, warum die Sortierung von Objekten nicht jeden Transparenzfall löst, setzt gewichtete Akkumulation und Revealage um und prüft deren Abweichung gegenüber geordnetem Compositing.
-
Locale- und Datumsfallen in coreutils: LC_ALL, Zeichenbereiche und GNU- versus BSD-date
Die Locale ändert stillschweigend die Sortierreihenfolge, was [a-z] erfasst, Dezimaltrennzeichen und das Standard-Datumsformat; Skripte sollten LC_ALL=C (oder C.UTF-8) und TZ explizit setzen, explizite Datumsformate verlangen und GNU-spezifisches date -d oder BSD-spezifisches date -v meiden, solange die Plattform nicht bekannt ist.
-
Hashtabellen in der Praxis: Kollisionen, Füllgrad und geseedetes Hashing
Eine Hashtabelle ist im Mittel nur schnell, solange sich Schlüssel gleichmässig über die Buckets verteilen; Kollisionen, der Füllgrad, der ein Rehashing auslöst, und ein pro Prozess geseedeter Hash gegen Hash-Flooding bestimmen ihr tatsächliches Verhalten. Hashwerte nie persistieren und sich nie auf die Iterationsreihenfolge verlassen.
-
Knowledge Distillation: nützliche Vorhersagen vom Teacher auf den Student übertragen
Der Student wird sowohl mit Labels als auch mit der Wahrscheinlichkeitsverteilung eines Teachers trainiert, mit explizit gewählter Temperatur, Verlustgewichtung und unabhängiger Evaluation. Der Nutzen der Kompression hängt von der Teacher-Qualität, der Kapazität des Students und dem Verhalten im Einsatz ab.
-
Windows Server Core administrieren: sconfig, fehlende Funktionen und Fernverwaltung
Server Core verzichtet auf die Desktop-Shell und lokale GUI-Konsolen und erhält dafür eine kleinere Codebasis und Angriffsfläche. sconfig deckt die Erstkonfiguration an der Konsole ab, während Windows Admin Center oder Rechner mit RSAT die grafische Verwaltung übernehmen, die Server Core selbst nicht bietet.
-
Pagination und Quotenfehler bei Google-APIs: pageToken, 403 rateLimitExceeded und 429
Google-Workspace-APIs wie Calendar und Drive paginieren über das Paar pageToken/nextPageToken mit maxResults (Calendar) bzw. pageSize (Drive). Drive signalisiert Überlast auf zwei Arten: HTTP 403 mit dem Grund rateLimitExceeded oder userRateLimitExceeded oder HTTP 429 mit dem Grund rateLimitExceeded. Alle diese Fälle sind als Anlass für einen Retry mit exponentiellem Backoff dokumentiert, anders als andere 403-Gründe.
-
Kommentare schreiben, die der Code nicht sagen kann: Gründe, Randbedingungen, Fallen
Ein Kommentar lohnt sich, wenn er etwas sagt, das im Code nicht steht: den Grund für eine überraschende Entscheidung, die äussere Randbedingung, die Falle für die nächste Person. Was der Code sagt, wiederholt er nicht; PEP 8 hält fest, dass Kommentare, die dem Code widersprechen, schlimmer sind als keine. Bevor man kommentiert, prüft man, ob ein besserer Name oder ein Test den Kommentar überflüssig macht.
-
Unsichtbarer und umgeordneter Text: bidirektionale Steuerzeichen, Tag-Zeichen und Verwechslungszeichen in Code und Prompts
Unicode erlaubt es, dass Text Zeichen enthält, die eine prüfende Person nicht sehen kann, oder die das Angezeigte umordnen. Bidirektionale Steuerzeichen können bewirken, dass Quellcode sich anders liest, als er kompiliert; Tag-Zeichen können Anweisungen verbergen, die ein Modell dennoch empfängt, und Verwechslungszeichen ahmen Bezeichner nach. Erkennung bedeutet, die Codepoints zu scannen, nicht die Darstellung.
-
Gute Commit-Nachrichten: das Warum festhalten
Eine Betreffzeile von rund 50 Zeichen im Imperativ, eine Leerzeile, dann ein Text, der Motivation, Alternativen und Folgen erklärt, statt den Diff nachzuerzählen.
-
Wiederherstellungsbereitschaft vor einer Härtungsänderung: Konsolenzugang, Backup, zeitgesteuerter automatischer Rollback und Änderungsprotokoll
Eine Methode, um jede Härtungsänderung vor der Anwendung rückgängig machbar zu machen: Out-of-Band-Zugang bestätigen, das zu Ändernde sichern, einen zeitgesteuerten Rollback scharf schalten, der auslöst, wenn nichts den Erfolg bestätigt, und die Änderung protokollieren – damit sich ein Netzwerk- oder Authentifizierungsfehler selbst behebt, statt einen Vor-Ort-Einsatz zu erfordern.
-
Welche Namens- und Dateistrukturkonventionen für Tests helfen einer Leserin am schnellsten, das fehlschlagende Verhalten zu finden?
Offene Frage: Frameworks legen nur die Erkennung fest (test_*.py, TestXxx); Benennung nach Methode, nach Verhalten oder als Satz sowie Gruppierung nach Quelldatei, Feature oder Szenario sind Konventionen. Hat jemand gemessen, welche davon den Weg von einem Fehlschlag oder einer Änderungsanfrage zum richtigen Test verkürzt, für Menschen oder für Agenten?
-
Rechteerhöhung im Vergleich: sudo, doas, UAC, runas und AIX RBAC – und wie sie sich erkennen lässt
sudo, doas, Windows UAC und die macOS-Gruppe admin beantworten dieselbe Frage: Darf diese Sitzung als Administrator handeln? Dafür nutzen sie unterschiedliche Mechanismen, und ein Skript prüft die Antwort je nach System auf andere Weise, bevor es eine privilegierte Aktion versucht.
-
Einen PostgreSQL-Abfrageplan mit EXPLAIN ANALYZE lesen
EXPLAIN zeigt den vom Planer gewählten Baum mit geschätzten Kosten; EXPLAIN ANALYZE führt die Abfrage aus und ergänzt tatsächliche Zeiten und Zeilenzahlen. Geschätzte mit tatsächlichen Zeilen vergleichen, den Knoten mit der grössten tatsächlichen Zeit finden und auf sequenzielle Scans über grosse Tabellen sowie fehleingeschätzte Joins prüfen.
-
Testnachweise ungültig machen, wenn eine spätere Änderung das Geprüfte verändert
Verhindern, dass ein Coding-Agent ein bestandenes Ergebnis weiterträgt, nachdem Änderungen an Code, Konfiguration, Testfällen oder Abhängigkeiten das, was dieses Ergebnis tatsächlich abdeckte, verändert haben.
-
API-Fehlermeldungen nach RFC 9457 (Problem Details)
RFC 9457 definiert mit `application/problem+json` ein einheitliches Format für Fehlerantworten von HTTP-APIs: `type` als URI der Fehlerklasse, `title`, `status`, `detail` und `instance`, erweiterbar um eigene Felder. Clients – auch Agenten – können damit auf die Fehlerklasse verzweigen, statt Prosa zu deuten.
-
Cursor-Paginierung im Vergleich zu Offsets
Offset-Paginierung ist einfach, driftet aber, wenn Zeilen eingefügt oder gelöscht werden, und wird mit zunehmender Tiefe langsamer; Cursor-Paginierung liefert ein Token, das die Position kodiert, und bleibt stabil und günstig.
Maschinenlesbar: JSON