Most danych tylko do odczytu
/ Widok wyjątków
Warstwa odczytowa normalizuje dane z trzech źródeł, ukrywa poprawne rekordy i pokazuje tylko sprawy wymagające uwagi człowieka.
Checkpoint, replay, retry i webhook
Scenariusze są deterministyczne. Checkpoint jest zapisywany po zakończonej stronie, a stan biznesowy jest aktualizowany idempotentnym upsert po source_id. To nie jest obietnica rozproszonego exactly-once.
CORR-RUN-DB-INCREMENTAL_BASELINE · tryb incremental-baseline · checkpoint: 2026-09-16T08:15:00Z
| Etap | Zdarzenie | Encja | Dowód |
|---|---|---|---|
| rozpoczęcie | RUN_STARTED | run | Uruchomiono deterministyczny przebieg. |
| pobranie | PAGE_FETCHED | page-1 | 2 rekordy · kursor cursor-1 |
| zastosowanie | RECORD_INSERTED | SRC-1001 | wersja 1 |
| zastosowanie | RECORD_INSERTED | SRC-1002 | wersja 1 |
| checkpoint | CHECKPOINT_SAVED | cursor | 2026-09-16T08:05:00Z · kursor 2026-09-16T08:05:00Z |
| pobranie | PAGE_FETCHED | page-2 | 2 rekordy · kursor cursor-2 |
| zastosowanie | RECORD_INSERTED | SRC-1003 | wersja 1 |
| zastosowanie | RECORD_INSERTED | SRC-1004 | wersja 1 |
| checkpoint | CHECKPOINT_SAVED | cursor | 2026-09-16T08:15:00Z · kursor 2026-09-16T08:15:00Z |
| zakończenie | RUN_COMPLETED | run | Import referencyjny zakończony. |
Stan docelowy i dowody
{
"summary": {
"input": 4,
"inserted": 4,
"updated": 0,
"unchanged": 0,
"rejected": 0,
"duplicatesPrevented": 0
},
"target": [
{
"source_id": "SRC-1001",
"version": 1,
"updated_at": "2026-09-16T08:00:00Z",
"status": "active",
"payload": {
"amount": 120,
"note": "baseline"
}
},
{
"source_id": "SRC-1002",
"version": 1,
"updated_at": "2026-09-16T08:05:00Z",
"status": "active",
"payload": {
"amount": 80,
"note": "baseline"
}
},
{
"source_id": "SRC-1003",
"version": 1,
"updated_at": "2026-09-16T08:10:00Z",
"status": "active",
"payload": {
"amount": 44,
"note": "page-2"
}
},
{
"source_id": "SRC-1004",
"version": 1,
"updated_at": "2026-09-16T08:15:00Z",
"status": "active",
"payload": {
"amount": 68,
"note": "page-2"
}
}
],
"evidence": {
"checkpointRule": "Checkpoint jest zapisywany po zakończonej stronie. Rekordy są aktualizowane idempotentnym upsert po source_id."
}
}Syntetyczne rekordy zamówień, zapasu i wysyłek.
Odczyt → normalizacja → reguły bez zapisu do źródła.
Termin, status, zapas, identyfikator i wysyłka.
Kolejka wyjątków z dowodem i rekomendacją działania.
Powtarzalny zestaw danych: 11 wyjątków; filtr i eksport zachowują treść wyniku.
Kontrolowana zmiana: usunięty numer śledzenia wysyłki SHP-001 dla ORD-001. Reguła wskazuje konkretną wysyłkę wymagającą sprawdzenia.
Kolejka spraw do obsługi
30 zamówień, stan magazynowy i statusy wysyłek z celowo zasianymi wyjątkami.
Normalne rekordy zostaną odsunięte
Po uruchomieniu zobaczysz krótką kolejkę wyjątków zamiast ręcznego przeglądania wszystkich danych.
Mały zakres od odczytu do decyzji
Reguły są demonstracyjne. W realnym wdrożeniu ich treść i dostępność źródeł trzeba uzgodnić dla konkretnego procesu.
3 źródła
Zamówienia, magazyn i wysyłki z eksportu lub interfejsu tylko do odczytu.
Wspólny model
Nazwy pól i identyfikatory są sprowadzone do jednej struktury.
Jawne wyjątki
Kompletność, statusy, SKU, zapas, duplikaty i opóźnienia.
Kolejka działania
Priorytet, źródło, wykryta wartość i zalecany następny krok.
Stały wynik
Wszystkie zasiane wyjątki wykryte, eksport zgodny z widokiem.
Widok wyjątków bez przebudowy systemu
Jeden wskazany eksport lub źródło tylko do odczytu → uzgodnione reguły → widok wyjątków → raport / eksport.
Pierwszy etap może bazować na próbce, eksporcie lub dostępie tylko do odczytu i nie wymagać uprawnień do zapisu produkcyjnego. Sposób dostępu dobierany jest do możliwości konkretnego ERP i uzgodnionego zakresu.
Opisz zakres