Anleitungen
Gefährdungsregister
Eine Gefährdung ist etwas, das an Ihrem System schiefgehen kann, aufgeschrieben mit der verantwortlichen Person und dem, was sie misst. Das Register liegt neben der Release-Policy in hazards.yaml, wird also wie der Rest des Projekts in Pull Requests geprüft, und jeder Lauf hält fest, gegen welche Version es gelesen wurde.
Das Register schreiben
version: 1
hazards:
- id: rag-leak
title: A poisoned document makes the assistant disclose a customer's data
systems: [support-bot]
triggers: [a retrieved document carries an instruction]
exposed: customers whose tickets the assistant reads
severity: {level: 5, narrative: customer data leaves the company}
occurrence: {level: 2}
detectability: {level: 3}
controls: [retrieved text is quoted, never obeyed]
residual: Low while the leak ceiling holds; reviewed after every model change.
owner: [email protected]
review_by: 2026-12-01
state: open
measured_by: [no-leak]
tested_by: [safety]Jede Gefährdung nennt in measured_by die Regeln, die sie messen. Das müssen Obergrenzen aus release.yaml sein: eine max:-Regel oder eine max_failures:-Regel (Risikoobergrenzen). Eine Untergrenze misst, wie oft etwas gut geht; eine Gefährdung, die mit einer Untergrenze gemessen wird, wird abgelehnt. systems und tested_by grenzen ein, aus welchen Systemen und Suites die Evidenz gelesen wird; fehlen sie, zählen alle.
Schwere, Auftreten und Entdeckbarkeit sind die ordinalen Bewertungen einer Fehlermöglichkeits- und Einflussanalyse, von 1 bis 5, vergeben von Menschen. Oloproof zeigt sie so, wie sie vergeben wurden, und kombiniert sie nie: keine Risikoprioritätszahl und kein Restrisiko-Score, denn das Produkt ordinaler Bewertungen ist eine Präzision, die niemand gemessen hat. Das Restrisiko ist der Satz der verantwortlichen Person. Der state einer Gefährdung (open, mitigated, accepted oder closed) gehört dem Team und ist nie eine Entscheidung.
Es prüfen
oloproof hazards checkDie Prüfung lehnt ein Register ab, dessen Gefährdungen eine Regel nennen, die die Policy nicht enthält, oder eine Untergrenze, und endet mit 2. Sonst listet sie jede Gefährdung mit Bewertungen, verantwortlicher Person und Zustand, meldet eine überfällige Überprüfung und liest jede messende Regel beim letzten Lauf jedes Systems auf jeder Suite, so wie die Engine sie entschieden hat. Eine Gefährdung ohne messende Regel wird als ungemessen geführt, und eine Regel, die kein letzter Lauf entschieden hat, wird genannt. --json schreibt denselben Bericht für eine Pipeline.
Wo es erscheint
oloproof run hält das Register mit dem Lauf fest, oloproof push bringt es in Ihren Workspace, und oloproof export schreibt es neben die Bundles, die eine lokale Workbench liest. Die Seite Safety and risk zeigt jede Gefährdung über den Obergrenzen, mit ihren Bewertungen, ihren Kontrollen und den Zuständen der messenden Obergrenzen, jeweils mit ihrer Evidenz verlinkt. Wo ein Register sich geändert hat und wieder zurück, ist das aktuelle das Register, das der neueste Lauf festgehalten hat, nicht das zuletzt geschriebene. Ein Entscheidungsdatensatz nennt das Register, das sein Lauf festgehalten hat; record verify führt es als Wort des Teams.
Wie es weitergeht
- Risikoobergrenzen behandelt die Regeln, mit denen eine Gefährdung gemessen wird.
- Gating behandelt, wie eine Obergrenze ein Release blockiert.