Plany wykonania (Planfile)
Fundament bezpieczeństwa Clonerd (Plan-Approval Model). Każda zmiana stanu środowiska generuje plan audytowalny, który wymaga jawnego zatwierdzenia przed wykonaniem.
1. Diagramy Procesów i Architektury
A. Topologia nawigacji i wywołań akcji
flowchart TD
subgraph S["Kontekst: MANAGER"]
V["Widok: Plany wykonania (Planfile)
Przejście do szczegółowego przeglądu diffa planu"] A_1["planfile.load
Wczytanie zadań do wykonania ze sprintu"] A_2["planfile.import
Konwersja ticketa na plan Clonerd do zatwierdzenia"] end V --> A_0 V --> A_1 V --> A_2
?view=plans"]
end
subgraph Actions["Dostępne akcje i procedury CQRS"]
A_0["plan.reviewPrzejście do szczegółowego przeglądu diffa planu"] A_1["planfile.load
Wczytanie zadań do wykonania ze sprintu"] A_2["planfile.import
Konwersja ticketa na plan Clonerd do zatwierdzenia"] end V --> A_0 V --> A_1 V --> A_2
B. Maszyna stanów i cykl życia operacji
stateDiagram-v2
[*] --> Draft : Intencja użytkownika
Draft --> AwaitingApproval : Przygotuj plan (record.save)
AwaitingApproval --> ReviewDiff : Podgląd zmian (?tab=plan)
ReviewDiff --> Succeeded : Zatwierdź i wykonaj
ReviewDiff --> Cancelled : Odrzuć plan
Succeeded --> AuditRecord : Zapis do rejestru audytu
Cancelled --> [*]
AuditRecord --> [*]
C. Sekwencja wykonania CQRS
sequenceDiagram
autonumber
actor U as Użytkownik / Agent
participant UI as Interfejs (Plany wykonania (Planfile))
participant CQRS as Dyspozytor CQRS
participant API as Backend API (:8891)
participant DB as Baza / Runtime
U->>UI: Kliknięcie / Wywołanie akcji [plan.review]
UI->>CQRS: dispatch('plan.review', data)
CQRS->>API: Żądanie HTTP REST / RPC
API->>DB: Mutacja / Odczyt stanu
DB-->>API: Potwierdzenie zapisu
API-->>CQRS: Wynik operacji + ślad zdarzenia
CQRS-->>UI: Aktualizacja stanu (state)
UI-->>U: Re-render widoku i powiadomienie (toast)
2. Zarejestrowane Polecenia CQRS
| Akcja UI | Procedura URI | URN w kodzie | Opis |
|---|---|---|---|
plan.review | proc://clonerd.dev/cmd/plan/review/v1 | urn:clonerd:code:js:actions:collection#reviewPlan | Przejście do szczegółowego przeglądu diffa planu |
planfile.load | proc://clonerd.dev/cmd/planfile/load/v1 | urn:clonerd:code:js:actions:planfile#load | Wczytanie zadań do wykonania ze sprintu |
planfile.import | proc://clonerd.dev/cmd/planfile/import/v1 | urn:clonerd:code:js:actions:planfile#import | Konwersja ticketa na plan Clonerd do zatwierdzenia |
3. Powiązane Endpointy API
| Metoda | Ścieżka REST | Opis |
|---|---|---|
| GET | /api/plans | Lista przygotowanych i wykonanych planów |
| POST | /api/plans | Stworzenie nowego planu modyfikacji |
| POST | /api/plans/{id}/execute | Zatwierdzenie i uruchomienie procedury planu |