K0NSULT // ai-truth/ipIII
k0nsult.cloud / ai-truth / ipIII / orchestrator / evidence-vault

Evidence Vault — szkielet (SPEC / ROADMAP), uczciwie

Ta strona opisuje docelowy magazyn dowodów (S3-compatible, retencja per klasa, legal hold, eksport) — to jest specyfikacja, nie działający komponent. Dziś dowody żyją w PostgreSQL z hash-chain (sha256 + chain-of-custody) — to jest LIVE. Vault jako osobna warstwa storage z politykami retencji i blokadą prawną to ROADMAP. Zero mieszania tych dwóch rzeczy.

Czym jest ta strona. To dokument specyfikacyjny (SPEC), nie deklaracja gotowego produktu. Opisujemy architekturę docelowego magazynu dowodów wraz z tym, co z niej działa dziś (evidence w bazie + hash-chain) a co jest planem (ROADMAP). Zgodnie z doktryną claim ≤ proof: żaden element poniżej oznaczony jako ROADMAP nie jest prezentowany jako działający. Element nieistniejący w kodzie = ROADMAP, nigdy LIVE.
Dziś: evidence w DB + hash-chain (LIVE). Vault S3 + retencja + legal hold: SPEC/ROADMAP.

Evidence-package (GET /reports/evidence-package/:id) generuje dziś JSON i PDF z manifestem, package_sha256 oraz śladem chain-of-custody, zapisane jako rekordy w żywej PostgreSQL. To jest dowodliwy szkielet integralności — nie jest to jednak dedykowany magazyn (vault) z politykami retencji per klasa dowodu, blokadą prawną (legal hold) ani eksportem do zewnętrznego storage S3-compatible. Ta strona opisuje, czego brakuje do takiego vaulta i dlaczego to osobny etap dojrzałości.

OŚ DOJRZAŁOŚCI: evidence w DB + hash-chain (dziś, LIVE)storage S3-compatibleretencja per klasalegal holdeksport z manifestem podpisanym

Co jest LIVE dziś (dowód: kod + endpoint)

Evidence-package JSON/PDF LIVE

GET /reports/evidence-package/:id — manifest, package_sha256, ślad audytowy, chain-of-custody. Realny generator PDF bez zewnętrznych zależności.

Import → evidence (sha256) LIVE

Parsery Burp/ZAP/Nessus/CSV → normalizacja severity → incydent + evidence z sha256 i chain-of-custody zapisane w PostgreSQL (import = MEDIA_SIGNAL, nie dowód naprawy).

Close-with-evidence LIVE v1

Reguła egzekwowana w bazie: zamknięcie incydentu bez statusu CONFIRMED zwraca 422. Retest zmienia package_sha256 evidence-package.

Storage brak dedykowanego

Dziś: obiekty evidence i pliki PDF żyją w PostgreSQL / procesie generowania on-demand — nie w osobnym S3-compatible object store z własnymi politykami dostępu.

Evidence Vault — specyfikacja docelowa (ROADMAP)

Poniżej opisujemy elementy, które składałyby się na dedykowany vault. Żaden z nich nie istnieje dziś jako uruchomiony komponent — to plan architektoniczny.

ElementCelOpis (SPEC)Status
Storage backend Trwałość niezależna od bazy aplikacyjnej Obiektowy magazyn S3-compatible (np. MinIO / kompatybilny provider) jako warstwa pod evidence-package i surowe artefakty (raporty skanerów, załączniki). Odseparowany od bazy transakcyjnej — awaria aplikacji nie zagraża dowodom. ROADMAP
Retencja per klasa Różne okresy przechowywania wg typu dowodu i wymogu regulacyjnego Polityki retencji przypisane do klasy dowodu (np. finding-evidence, engagement-report, incident-audit-log) z różnymi okresami zgodnymi z wymogami sektorowymi (DORA/NIS2 orientacyjnie — wymaga potwierdzenia przez dział compliance/prawnika instytucji, nie jest to porada prawna). ROADMAP
Legal hold Blokada usunięcia/nadpisania podczas postępowania Flaga na obiekcie/klasie dowodu wstrzymująca automatyczne usuwanie zgodnie z retencją, gdy trwa postępowanie, spór lub żądanie organu. Wymaga audytowalnego rejestru „kto i kiedy nałożył hold”. ROADMAP
Eksport z manifestem Przekazanie dowodu na zewnątrz (audytor, organ, partner) w formie weryfikowalnej Paczka eksportowa: artefakty + manifest (hash każdego pliku, chain-of-custody, zakres czasowy) + docelowo podpis formalny (PAdES/TSA — patrz znane ograniczenia). Dziś mamy odpowiednik tylko dla evidence-package (manifest + sha256), nie dla całego vaulta. ROADMAP
Kontrola dostępu per obiekt Granularne uprawnienia niezależne od RBAC aplikacji Polityki dostępu na poziomie pojedynczego obiektu w vault (np. tylko rola audytora + rola CISO), odrębne od dzisiejszego RBAC na poziomie API (który jest LIVE). ROADMAP
Weryfikacja integralności w czasie Wykrycie nadpisania/usunięcia poza kontrolą aplikacji Okresowa rekalkulacja hash i porównanie z manifestem zapisanym w chwili wstawienia, niezależnie od warstwy aplikacyjnej — dowód, że dowód się nie zmienił. ROADMAP

Dlaczego to osobny etap (nie „już prawie gotowe")

Hash-chain w bazie ≠ vault. Posiadanie sha256 i chain-of-custody w rekordzie PostgreSQL dowodzi integralności treści w danym momencie odczytu, ale nie daje: (1) izolacji storage od aplikacji, (2) wymuszonej retencji, (3) blokady prawnej niezależnej od logiki aplikacyjnej. Świadomie nie nazywamy dzisiejszego stanu „vaultem" — to byłby overclaim.
Kolejność budowy. Zanim vault, potrzebne jest ustabilizowane API evidence-package (już LIVE) oraz — z rejestru znanych ograniczeń — hardening auth/transport (P0). Vault bez mTLS i bez OIDC byłby dowodowo słabszym ogniwem niż dzisiejsza baza za JWT+RBAC.

Skrót statusu

3
LIVE dziś
import sha256 · evidence-package · close-with-evidence
6
Elementy vaulta — ROADMAP
storage · retencja · legal hold · eksport · ACL · re-check integralności
0
Elementów udających LIVE
zero overclaim, zero ukrytych funkcji
Granica prawna. Sugestie okresów retencji i legal hold powyżej mają charakter wsparcia decyzji (decision-support), nie stanowią porady prawnej. Ostateczne okresy przechowywania i warunki blokady muszą zostać potwierdzone przez radcę prawnego/dział compliance instytucji wdrażającej, zgodnie z jej jurysdykcją i sektorem.

Powiązane: rejestr znanych ograniczeń (auth/transport/PDF/tenancy) → /known-limitations · pełna roadmapa sprintów z dowodami → /roadmap-dev · macierz statusów → /status-matrix.