trading-system-docs/red-queen-architecture/MISSION_STATE_MACHINE.md

150 lines
6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# MISSION_STATE_MACHINE — Zustandsmaschinen
> **Geltungsbereich:** Red Queen Autonomous Engineering System v1
> **Status:** Zustandsmaschinen-Spezifikation (NICHT implementiert)
> **Hinweis:** Diese Datei beschreibt das Verhalten; die Implementierung erfolgt in späteren
> Phasen (SELF-IMPROVEMENT-Policy). **Hier wird nichts umgesetzt.**
---
## 1. Überblick
Es gibt zwei verbundene Zustandsmaschinen:
1. **MISSION** — der Gesamtvorgang (mehrere Work Packages umfassend).
2. **WORK PACKAGE (WP)** — einzelne Arbeitseinheit innerhalb einer Mission.
Beide haben **Sonderzustände** für Abweichungen (Block, Pause, Fehler, Eskalation, Abbruch).
---
## 2. Mission-Zustände
### Reguläre Zustände
| Zustand | Bedeutung |
|---------|-----------|
| `CREATED` | Mission angelegt, noch nicht geplant |
| `PLANNING` | Planung durch PLANNER/Red Queen läuft |
| `READY` | Plan & WP validiert, ausführbar |
| `RUNNING` | WPs werden ausgeführt |
| `REVIEW` | Ergebnisse werden geprüft (Checker/Review) |
| `COMPLETED` | Alle WP DONE, Review abgeschlossen |
### Sonderzustände
| Zustand | Bedeutung |
|---------|-----------|
| `BLOCKED` | Nicht fortführbar (Circuit Breaker, Konflikt) |
| `PAUSED` | Angehalten (kein Fortschritt), wieder aufnehmbar |
| `FAILED` | Endgültig fehlgeschlagen (nicht weiter) |
| `CANCELLED` | Abgebrochen (Mensch/Red Queen) |
| `ESCALATED` | Weitergereicht an höhere Instanz (Christian / Human Decision) |
---
## 3. Work Package-Zustände
### Normal
| Zustand | Bedeutung |
|---------|-----------|
| `TODO` | Geplant, nicht angefangen |
| `READY` | Bereit zur Ausführung |
| `IN_PROGRESS` | Wird ausgeführt (Maker/Debugger) |
| `CHECKING` | Ergebnis wird geprüft (Checker/Tester) |
| `DONE` | Akzeptiert (PASS), Task abgeschlossen |
### Sonder
| Zustand | Bedeutung |
|---------|-----------|
| `FAILED` | Gescheitert (final) |
| `BLOCKED` | Nicht ausführbar (Block) |
| `ESCALATED` | An höhere Instanz weitergeleitet |
---
## 4. Erlaubte Transitions — Mission
| Von | Nach | Auslöser (WHO) | Erforderliche Evidence | Bemerkung |
|-----|------|----------------|------------------------|-----------|
| `CREATED` | `PLANNING` | Red Queen | Missions-Auftrag vorhanden | |
| `PLANNING` | `READY` | Red Queen | Plan validiert, WP gültig | |
| `PLANNING` | `BLOCKED` | Red Queen / Circuit | Plan-validierung fehlt | Block |
| `READY` | `RUNNING` | Red Queen | Start freigegeben | |
| `RUNNING` | `REVIEW` | Red Queen | WP-DONE-Meilenstein | Prüfphase |
| `REVIEW` | `COMPLETED` | Checker/Red Queen | PASS aller relevanten WP | Fertig |
| `REVIEW` | `RUNNING` | Red Queen | Nachbesserung nötig | Iteration |
| `RUNNING` | `PAUSED` | Red Queen | Fortschrittslosigkeit/Block | Warte |
| `PAUSED` | `RUNNING` | Red Queen | Freigabe vorhanden | |
| `RUNNING` | `BLOCKED` | Red Queen/Circuit | Trigger dokumentiert | |
| `BLOCKED` | `PAUSED` | Red Queen | Block gelöst, warte | |
| `BLOCKED` | `RUNNING` | Red Queen | Freigabe | |
| `BLOCKED` | `ESCALATED` | Red Queen | Block + Notwendigkeit | |
| `PAUSED` | `CANCELLED` | Christian | Abbruchanordnung | |
| `RUNNING` | `FAILED` | Red Queen | Finaler Fehler | |
| `RUNNING` | `CANCELLED` | Christian | Abbruch | |
| `BLOCKED` | `CANCELLED` | Christian | Abbruch | |
| `ESCALATED` | `RUNNING` | Christian/Higher | Entscheidung + Freigabe | |
| `ESCALATED` | `CANCELLED` | Christian | Entscheidung = Abbruch | |
| `ESCALATED` | `COMPLETED` | Higher | Entscheidung = OK | |
## 4. Erlaubte Transitions — WP
| Von | Nach | Auslöser (WHO) | Evidence |
|-----|------|------|---------|
| `TODO` | `READY` | Red Queen | Plan/Validierung |
| `READY` | `IN_PROGRESS` | Red Queen (Delegation) | Startgenehmigung |
| `IN_PROGRESS` | `CHECKING` | MAKER/DEBUGGER | Ergebnis erstellt |
| `CHECKING` | `DONE` | CHECKER/Red Queen | PASS |
| `CHECKING` | `IN_PROGRESS` | Red Queen | FAIL→Repair (Repair-Zyklus) |
| `IN_PROGRESS` | `FAILED` | Red Queen | Nicht mehr reparierbar |
| `IN_PROGRESS` | `BLOCKED` | Red Queen/Circuit | Block dokumentiert |
| `BLOCKED` | `IN_PROGRESS` | Red Queen | Block gelöst |
| `BLOCKED` | `ESCALATED` | Red Queen | Weiterleitung |
| `ESCALATED` | `IN_PROGRESS` | Higher/Human | Freigabe |
| `ESCALATED` | `FAILED` | Higher/Human | Entscheidung |
---
## 5. VERBOTENE Transitions
Alle nicht gelisteten Übergänge sind **verboten** (Hard STOP). Insbesondere:
| Von | Nach | Grund |
|------|------|-------|
| `RUNNING` | `COMPLETED` | Umgehung der Review-Prüfung |
| `RUNNING` | `DONE` (WP) | Umgehung von CHECKING |
| `CREATED`/`PLANNING` | `COMPLETED` | Kein Abschluss ohne Ausführung+Review |
| `FAILED` | `RUNNING` | Ein FAILED bleibt final, nur Neustart als neue Mission/WP |
| `CANCELLED` | jede aktive | Abgebrochene können nicht reaktiviert werden |
| `BLOCKED` | `COMPLETED` | Block verhindert Abschluss |
- **WP darf ohne CHECKING nicht DONE werden.**
- **FAILED/CANCELLED sind Endzustände** (nicht ohne neue Anlage zurück).
---
## 6. Transition-Verantwortlichkeiten
| Transitions-Typ | WHO |
|-----------------|-----|
| Alle normalen Transitionen | Red Queen (Lead) steuert & validiert |
| Genehmigte Korrektur | Red Queen + MAKER |
| Prüfung | CHECKER (frisch, unabhängig) |
| PAUSEN / Block | Red Queen |
| Abbruch | nur Christian (Mensch) |
| Escalation | Red Queen (an Christian/Higher) |
- Kein Sub-Agent kann selbst eine WP DONE setzen, ohne den Review-Zyklus (CHECKING→PASS).
- Red Queen validiert jede Transition via **State Validation** (Safety Layer) — ungültige
Transitions werden zurückgewiesen.
---
## 7. Recovery-Regeln
- `FAILED` WP/Mission: **nicht re-aktivieren**, stattdessen neue WP/Mission mit vollem
Review und ggf. Debugger erstellen.
- `BLOCKED`: Block-Ursache klären; wenn Auflösbar → freigeben; sonst `ESCALATED`.
- `PAUSED`: Wiederaufnahme nur mit Freigabe von Red Queen und erneutem State-Validierungs-
Prüfung (verpasste Abhängigkeiten ausschließen).
- Jede Recovery-Entscheidung wird im **Attempt Ledger** (SAFETY_CONTRACT) dokumentiert.
- Bei unklarem Zustand: **STOPP und Human/Christian fragen** (keine Ratesactionen).