Operative Praxis
Praktisches Operator-Handbuch: Neue Story erstellen · Premise-Mapping · 8-Gate-Assessment · Tägliche Abläufe. Für Operator und Entwickler, die täglich im System arbeiten.
0 · Neu: Tagesadministration fuer Objekte, Kunden und Projekte
Auf deine Praxisfrage gibt es jetzt ein eigenes Grosskapitel mit SOPs und aufgesplittetem Objektbaum: Taegliche Administration: Objekte, Kunden, Projekte.
1 · Neue Story erstellen – der vollständige Ablauf
Eine Story ist die operative Einheit: ein abgrenzbares, commit-fähiges Vorhaben mit Premise-Coverage, Skill-Assignment und HITL-Gate.
- Intake klassifizieren: Typ (
new_feature | premises_change | contract_change | drift_fix | audit), Scope (Dateipfade), Actor-ID, Phase (report | adaptive | strict). - Canonical Sources prüfen: Alle 7 Quellen lesbar? (→ Priority Registry in Gate-Matrix unten). Wenn eine Quelle fehlt: sofort BLOCK.
- Premise-IDs mappen: Welche Prefixe betrifft die Änderung? (→ Prefix-Tabelle Abschnitt 2). Mindestens einen P-Präfix identifizieren.
- 8-Gate-Assessment: Jeden der 8 Gates evaluieren. Ergebnis:
pass | pass-inferred | block | escalate. Beistrict: keinpass-inferredzulässig. - HITL-Gate entscheiden: Handoff-Signal setzen wenn nötig. Checkliste: Änderung sichtbar für User? Daten betroffen? Architektur-Impact? → ESCALATE.
- GO-Entscheidung aufzeichnen: Alle Gates passed → Story-Revision erstellen unter
iio/public/revisions/mit Decision-Metadata. - Commit + Publish: Story läuft durch den Trace-Pfad (→ Abschnitt 5): Skill → Base → Public.
2 · Premise-Prefix-Referenz (18 Layer)
Jede Änderung im System muss auf mindestens einen Premise-Präfix gemappt werden. Prefix bestimmt den Gate-Einstiegspunkt.
iio/specs/, iio/base/ oder ein AGENTS.md berührt, sind immer P-EXEC und P-SAFE co-aktiv (alle Gates).
3 · 8-Gate-Assessment Matrix
Gates werden in dieser Reihenfolge evaluiert. Jedes Gate kann pass, pass-inferred, block oder escalate ausgeben. Ein einziges BLOCK stoppt den flow.
| # | Gate | Was wird geprüft | BLOCK-Trigger | Quelle |
|---|---|---|---|---|
| 1 | actor | Gültiger Actor-ID; keine anonyme Transaktion | Kein Actor-ID im Intake | contract.yaml |
| 2 | story | Story-Scope klar definiert; Premise-Coverage nachgewiesen | Scope leer; keine P-IDs identifiziert | layer-premises-catalog.yaml |
| 3 | role | Actor hat die Rolle(n) für diese Änderung | Rolle nicht in team-workflow.yaml eingetragen |
team-workflow.yaml |
| 4 | boundary | Änderung überschreitet keine Scope-Grenzen; Root Placement korrekt | Datei außerhalb erlaubtem Placement; Cross-Scope ohne Delegation | root-placement-policy.yaml |
| 5 | composition | Layer-Abhängigkeiten korrekt; keine zirkulären Referenzen | Upstream-Layer nicht stabil; Zirkularität erkannt | LAYER-INTEGRATION.md |
| 6 | skill | Verwendete Skills mit passender Evidenzklasse zugewiesen | Skill ohne Evidence-Klasse; proficiency_level zu niedrig | SKILL-REGISTRY-LAYER.md |
| 7 | transaction | Transaktion vollständig: TX-ID, Timestamp, Actor, Payload-Hash | Fehlende Pflichtfelder im TX-Schema | TRANSACTION-LAYER.md |
| 8 | audit | Audit-Trail vollständig; kein Evidence-Gap; Reviewer bestimmt | Evidence fehlt oder nicht reproduzierbar; kein Reviewer | contract.yaml + team-workflow.yaml |
4 · Tägliche Abläufe — Quick Reference
Die häufigsten Operator-Aktionen und welche Gate-Subset sie auslösen.
Story committen (Routine)
- Intake:
new_feature, Actor gesetzt - Premise-IDs: ≥1 identifiziert
- Gates 1–8 evaluiert, alles pass
- Kein HITL-Signal → direkt GO
- Revision-Eintrag in
public/revisions/ - Git commit mit TX-ID im Message
Premise ändern (P-Change)
- Intake:
premises_change - Evidence vorhanden? Wenn nein → BLOCK
- Alle betroffenen P-IDs auflisten
- P-EXEC + P-SAFE immer co-aktiv
- Phase auf
strictsetzen - HITL-Gate: immer ESCALATE
- Reviewer in
team-workflow.yamlbestätigt
Drift beheben (Fix)
- Intake:
drift_fix - Quell-Datei identifizieren (wo ist canonical?)
- Fix NUR an Quelle — nie am Downstream-Artefakt
- Gates 4 (boundary) + 7 (txn) + 8 (audit)
- Drift-Eintrag in
governance-depth-mapschließen
Periodischer Audit
- Intake:
audit, Phasestrict - Alle 7 Canonical Sources durchlaufen
- Alle aktiven OPs: noch gate-compliant?
- Drift-Heatmap aktualisieren
- Offene HITL-Gates schließen oder eskalieren
- Audit-Revision erstellen
Manual / Public aktualisieren
- Intake:
new_featureoderdrift_fix - P-LANG + P-OPS prüfen (boundary-Gate)
- Quelle zuerst: spec/base → dann manual/public
- CSS/Nav: nur in
_shell.js/_public-shell.js - Kein per-Seite-Workaround
Neue Node registrieren
- Intake:
new_feature - P-PROJ (actor + story-Gate)
- Root-Placement:
root-placement-policy.yaml - AGENTS.md für neue Unterordner setzen
- Gateway-Check: Überschneidung mit anderen Nodes?
- HITL: Sichtbarkeit für andere Nodes? → ESCALATE
5 · Worked Example: Premise-Assessment in der Praxis
Konkretes Beispiel: Ein Operator fügt eine neue Manual-Seite hinzu, die Governance-Informationen zeigt. Wie läuft das Assessment ab?
request_type : new_feature
scope : iio/manual/operative-praxis.html, iio/theme/_shell.js, iio/manual/index.html
actor_id : operator/main
phase : report
priority : normal
blocking_gate : boundary
evidence_present: yes
| Prefix | Warum betroffen | Gate-Impact |
|---|---|---|
P-LANG | Neue Seite publiziert Inhalte im Manual | boundary-Gate |
P-OPS | Operator-Governance-Doku geändert | txn + audit |
P-STORY | Story-Konzept beschrieben → Story-Gate | story-Gate |
| Gate | Ergebnis | Evidenz |
|---|---|---|
| actor | pass | operator/main bekannt in team-workflow.yaml |
| story | pass | P-LANG, P-OPS, P-STORY identifiziert; scope klar |
| role | pass | operator/main hat new_feature-Berechtigung |
| boundary | pass | iio/manual/ liegt in erlaubtem Placement |
| composition | pass | Kein Upstream-Layer verändert |
| skill | pass-inferred | Keine neue Skill-Datei; vorhandene Manual-Skills gelten |
| transaction | pass | TX-ID wird im Git-Commit-Message gesetzt |
| audit | pass | File-Änderungen sind reproduzierbar; keine Evidence-Gaps |
6 · Fail-Closed: Wann der Operator stopp macht
Fail-Closed ist kein Notfallmodus — es ist der Default. Diese Situationen erzwingen immer einen STOP, auch wenn kein expliziter BLOCK ausgegeben wurde.
| Situation | Default | Warum |
|---|---|---|
| Scope nicht bestimmbar | BLOCK | Kein Premise-Mapping ohne Scope möglich |
| Canonical Source nicht lesbar | BLOCK | Gate-Bewertung ohne Quelle ist ungültig |
| Actor-ID fehlt | BLOCK | Kein gültiger Transaktionsanker |
| Evidence nicht vorhanden (bei premises_change) | BLOCK | Premise-Änderung ohne Evidence ist strukturell ungültig |
| Gate-Ergebnis unklar / widersprüchlich | ESCALATE | Unsicherheit → HITL-Entscheid nötig; AI entscheidet hier nicht selbst |
| Reviewer nicht bestimmt (bei audit) | BLOCK | Audit ohne Reviewer ist nicht abgeschlossen |
| Downstream-Seite ohne Upstream-Quelle | BLOCK | Keine "Quick Fix" an Artefakten erlaubt; immer Quelle zuerst |
| Architektur-Impact unbekannt | ESCALATE | Ko-Evolutionsgrenze: Mensch muss impact einschätzen |
7 · Ko-Evolution: Human ↔ Agent Rollenverteilung
IIO ist kein Automatisierungs-System im klassischen Sinne. Es ist ein Ko-Evolutions-Framework: Mensch und Agent tragen komplementäre Verantwortlichkeiten.
Human (HITL-Operator)
- Premises definieren und legitimieren
- Gate-Entscheidung bei ESCALATE
- Architektur-Impact beurteilen
- Team-Workflow und Reviewer bestimmen
- Sichtbarkeit für andere Nodes prüfen
- Roadmap und Story-Priorität setzen
- System-Design verantworten (OBEN in der Klettermetapher)
Agent (AI Operator)
- Gate-1–8 deterministisch evaluieren
- Premise-Mapping aus Scope ableiten
- BLOCK- und ESCALATE-Signale korrekt senden
- Evidence-Ketten zusammenstellen
- Revisionen und Audit-Trails erstellen
- Downstream-Artefakte nach Freigabe erzeugen
- Never infer intent beyond evidenced scope