SOTER

Quickstart: SOTER MVP CLI

Ten poradnik pozwoli Ci zainstalować SOTER MVP i przejść przez proces weryfikacji modelu oraz zapisu zdarzeń w lokalnym rejestrze (Ledgerze) w mniej niż 5 minut.


1. Wymagania wstępne

  • Zainstalowane środowisko Python 3.12+.
  • Sklonowany projekt SOTER z dostępnym skryptem soter.py w katalogu głównym.

2. Instalacja i weryfikacja

Zainstaluj SOTER w swoim systemie (skrypt doda komendę soter do Twojej powłoki):

python ./soter.py install
source ~/.bashrc

Zweryfikuj poprawność instalacji:

soter --version

Powinieneś zobaczyć wersję SOTER (np. SOTER v1.10.1).


3. Krok 1: Tworzenie i Walidacja Modelu

Utwórz plik models/my_first.model zawierający prosty opis struktury i reguł procesu biznesowego:

soter v1

element Customer:
    class: "Subject"
    type: "Actor"
    name: Customer

element CustomerCard:
    class: "Object"
    type: "DataArtifact"
    name: CustomerCard

element CreateCard:
    class: "Action"
    type: "Action"
    name: CreateCard
    title: "Create Card"
    performer: Customer
    in: "Lane[1]"
    constraints: "amount > 0"

Uruchom walidator w pamięci, aby sprawdzić syntaktyczną i semantyczną spójność modelu:

soter validate models/my_first.model

Silnik przeanalizuje model i powiadomi o poprawności (status OK).


4. Krok 2: Walidacja Faktów

Utwórz plik faktu facts/event_001.fact odzwierciedlający zaistnienie zdarzenia w rzeczywistości (np. utworzenie karty klienta):

soter v1

fact fact_001:
    trigger: action_verify
    action: card_created
    occurred_at: "2026-07-10T13:00:00"
    amount: 120
    currency: "PLN"

Zweryfikuj poprawność pliku faktu:

soter fact validate facts/event_001.fact

5. Krok 3: Rejestracja Faktów w Ledgerze

Zainicjalizuj lokalny, plikowy ledger w wybranym katalogu:

soter ledger init --org "Moja Organizacja" --ledger-path ./my_ledger

Zapisz (kryptograficznie) przygotowane zdarzenie do ledgera:

soter ledger record fact_001 facts/event_001.fact --ledger-path ./my_ledger

Wyświetl listę zarejestrowanych faktów w ledgerze:

soter ledger list --ledger-path ./my_ledger

6. Krok 4: Weryfikacja Spójności Modelu z Rzeczywistością

Skonfrontuj reguły zdefiniowane w modelu z faktami zarejestrowanymi w ledgerze:

soter verify --model models/my_first.model --ledger ./my_ledger

Silnik wczyta model, przeanalizuje łańcuch zdarzeń w ledgerze (m.in. sprawdzając warunek amount > 0) i wyda werdykt dotyczący zgodności operacji z modelem.

SOTER v1.12.0-beta