K0NSULT // ai-truth/ipIII
k0nsult.cloud / ai-truth / ipIII / orchestrator / migration-guide

Migration Guide — wersjonowanie, kompatybilność, aktualizacje

Dla dev/ops integrujących ipIII (Evidence & Resilience Orchestrator): jak wersjonujemy strony, API i schemat bazy, co dziś gwarantujemy w kompatybilności wstecznej, jaka jest ścieżka aktualizacji oraz jaka jest polityka breaking changes. Doktryna claim ≤ proof: pre-1.0 = jawnie brak formalnej gwarancji SemVer, nie udajemy inaczej.

Uczciwy zakres tej strony. ipIII jest dziś w fazie controlled pilot (v0.8, przed v1.0) — zobacz release notes. W tej fazie polityka wersjonowania jest świadomie prostsza niż formalny SemVer produktu enterprise: opisujemy poniżej dokładnie co jest dziś LIVE jako proces aktualizacji, a co jest ROADMAP (planowane dopiero po v1.0). To nie jest porada prawna ani gwarancja SLA — kwestie kontraktowe wymagają przeglądu prawnika/integratora po stronie partnera.
3 osie wersjonowania: strony (statyczne) · API (kontrakt v1) · schemat (additive-only).

ipIII nie ma jednego numeru wersji obejmującego wszystko. Strony /ai-truth/ipIII/* są statycznym HTML wersjonowanym przez commit w repozytorium (bez build-stepu). API ma własny prefiks kontraktu /api/ip3/v1. Schemat bazy jest aktualizowany przyrostowo (idempotentne CREATE TABLE IF NOT EXISTS / ALTER TABLE ... ADD COLUMN IF NOT EXISTS uruchamiane przy starcie serwera), nie osobnym numerem wersji. Kanon numeru wersji produktu = release notes (dziś: v0.8 controlled pilot).

DZIŚ: v0.8 controlled pilotAPI kontrakt v1 (0.1.0-reference)schemat additive-onlyformalny SemVer = po v1.0 (ROADMAP)

1 · Wersjonowanie — trzy niezależne osie

Jak wersjonowana dziśGdzie sprawdzićStatus
Produkt (ipIII jako całość) Numer opisowy w release notes (v0.8 controlled pilot), nie ścisły SemVer. Kolejne wydania opisane jako przyrosty do v1.0. /release-notes LIVE
API (kontrakt) Jeden aktywny prefiks /api/ip3/v1. Kontrakt referencyjny oznaczony jako 0.1.0-reference — to opis endpointów (OpenAPI-lite), nie SLA. Dziś nie istnieje /v2. /api-docs LIVE v1
Schemat bazy danych Brak osobnego numeru wersji. Tabele domeny ipIII tworzone/rozszerzane idempotentnie w kodzie tras (CREATE TABLE IF NOT EXISTS, ADD COLUMN IF NOT EXISTS) przy starcie procesu — additive-only, bez formalnych down-migracji dla tej domeny. /model-danych LIVE (proces)
Strony (dokumentacja/UI) Statyczny HTML w repozytorium (public/envois/ait-ip3-*.html), bez build-stepu i bez osobnego numeru wersji strony — wersją jest commit git. URL-e (canonical) traktujemy jako stabilne. /status-matrix LIVE
Formalna, ogłoszona polityka SemVer (np. MAJOR.MINOR.PATCH z jawną definicją breaking change dla API) jest planowana po v1.0 — dziś jej nie ma i nie udajemy inaczej. Do tego czasu obowiązuje sekcja 3 poniżej.

2 · Kompatybilność wsteczna — co obowiązuje dziś

Poniżej jawnie: co jest dziś stabilne (można na tym polegać) i co może się zmienić bez formalnego okresu wypowiedzenia w fazie pre-1.0.

Stabilne dziś LIVE

Ścieżki URL /ai-truth/ipIII/* (canonical) — nie usuwamy stron bez przekierowania.

Prefiks API /api/ip3/v1 — endpointy oznaczone LIVE w kontrakcie nie znikają w ramach v1.

Kształt evidence-package (manifest + package_sha256 + chain-of-custody) — pola nie są usuwane, mogą być dodawane.

Może się zmienić bez formalnego deprecation window pre-1.0

Dokładny kształt pól JSON w odpowiedziach nowych endpointów (dodawanych w trakcie pilota) — traktuj jako kontrakt referencyjny, nie SLA.

Nazwy wewnętrznych statusów/enumów w warstwie dev (np. workflow remediacji) — dopóki nie oznaczone jako LIVE w status-matrix.

Struktura tabel w schemacie — zmiany są dziś additive-only (dodawanie kolumn/tabel), ale formalna gwarancja „nigdy nie usuniemy kolumny" nie jest jeszcze ogłoszona.

3 · Ścieżka aktualizacji — strony / API / schemat

3.1 Strony (dokumentacja, dashboardy statyczne)

Krok 1 — sprawdź canonical. Adres /ai-truth/ipIII/<slug> jest stabilny; jeśli integrujesz linki głębokie, linkuj do canonical, nie do kopii treści.
Krok 2 — sprawdź status na stronie. Każda strona domeny ipIII niesie własny znacznik LIVE / ROADMAP przy elementach — status może się zmienić między odwiedzinami (np. element ROADMAP → LIVE po wdrożeniu). Nie cache'uj statusu dłużej niż potrzeba.
Krok 3 — kanon liczb i statusów. Jeśli różne strony podają rozbieżne liczby testów/endpointów, kanonem jest Evidence Matrix (testy) i status-matrix (statusy elementów).

3.2 API

Krok 1 — trzymaj się prefiksu /api/ip3/v1. To jedyny aktywny kontrakt. Endpointy oznaczone x-status: LIVE w referencji OpenAPI-lite (/api-docs) działają na żywej bazie z JWT/RBAC. Endpointy poza tym prefiksem (np. legacy placeholder) traktuj jako GAP, nie jako kontrakt.
Krok 2 — nie zakładaj /v2. Dziś nie istnieje kolejna wersja API. Gdy powstanie, zostanie ogłoszona tu i w aktualizacjach z okresem równoległego działania v1 — to zobowiązanie na przyszłość (ROADMAP), nie opis dzisiejszego stanu.
Krok 3 — integracja przyrostowa. Zacznij od jednego konektora importu (Burp/ZAP/Nessus/Qualys/CSV — patrz connectors), potwierdź evidence-package end-to-end na danych testowych, dopiero potem podłącz kolejne strumienie. Retest regresyjny każdej integracji po zmianie schematu (sekcja 3.3).

3.3 Schemat bazy danych

Model dziś: additive-only, bez przestoju. Tabele domeny ipIII są tworzone i rozszerzane idempotentnie (CREATE TABLE IF NOT EXISTS, ADD COLUMN IF NOT EXISTS) przy starcie serwera — restart procesu = bezpieczne dogranie brakujących obiektów, bez ręcznego kroku migracji dla integratora. Zobacz strukturę: /model-danych.
Czego dziś brakuje (jawnie). Brak osobnego, wersjonowanego katalogu migracji dla domeny ipIII (inne domeny K0NSULT mają katalog migrations/ z datowanymi plikami SQL — ipIII na razie nie tego wzorca). Brak formalnych down-migracji (cofnięcie zmiany schematu wymaga ręcznej interwencji operatora bazy). To oznaczamy jako ROADMAP, nie ukrywamy.
Rekomendacja dla ops przed integracją produkcyjną partnera. Przed podłączeniem realnego źródła danych: (1) kopia zapasowa bazy przed każdym wdrożeniem nowej wersji kodu, (2) test na środowisku nieprodukcyjnym, (3) porównanie package_sha256 evidence-package przed/po zmianie jako regresja integralności. To praktyka operacyjna, nie zastępuje formalnego runbooka DR — zobacz backup & DR.

4 · Polityka breaking changes

FazaCo to oznacza dla integratoraStatus
Dziś (pre-1.0, controlled pilot) Brak formalnie ogłoszonej polityki SemVer i deprecation window. Zmiany komunikowane opisowo w aktualizacjach i release notes. Endpointy oznaczone LIVE w kontrakcie v1 nie są dziś usuwane bez zapowiedzi, ale nie jest to jeszcze zobowiązanie kontraktowe — do ustalenia indywidualnie z partnerem pilota. stan dziś
Po v1.0 (planowana polityka) Formalny SemVer dla API (MAJOR = breaking, ogłoszony minimalny okres równoległego działania starej i nowej wersji), jawny changelog kanoniczny per wersja, oznaczenie Deprecated na endpointach przed usunięciem. Ta polityka jest dziś projektem, nie działającym mechanizmem. ROADMAP
Zasada, której trzymamy się już dziś mimo braku formalnej polityki. Nie usuwamy endpointu LIVE ani pola evidence-package „po cichu" w ramach jednego wydania — zmiana o takim charakterze jest odnotowywana w aktualizacjach. To dyscyplina zespołu, nie jeszcze wyegzekwowany mechanizm kontraktowy (SLA) — rozróżnienie ważne dla działu prawnego/procurement partnera.

5 · Checklist aktualizacji dla dev/ops

  1. Przeczytaj aktualizacje i release notes przed każdym wdrożeniem nowej wersji kodu ipIII.
  2. Zweryfikuj, czy endpointy, z których korzystasz, są nadal oznaczone LIVE w status-matrix.
  3. Wykonaj kopię zapasową bazy przed wdrożeniem (schemat additive-only zmniejsza ryzyko, ale go nie eliminuje).
  4. Uruchom test regresyjny evidence-package (porównanie package_sha256) na środowisku nieprodukcyjnym.
  5. Sprawdź znane ograniczenia — część z nich (np. brak mTLS, brak OIDC) wpływa na sposób bezpiecznej integracji, nie tylko na funkcje.
  6. Jeśli zmiana dotyczy obowiązków regulacyjnych (DORA/NIS2/RODO/AI Act) — konsultacja z prawnikiem/DPO partnera przed wdrożeniem; Legal Trigger Engine to wsparcie decyzji, nie porada prawna.
Granica etyczna i prawna. Ta strona to materiał techniczny dla integratora (decision-support), nie porada prawna ani zobowiązanie SLA. Kwestie kontraktowe (okresy wypowiedzenia, kary umowne za breaking change, DPA) wymagają przeglądu prawnika/DPO po stronie partnera i osobnej umowy — nie są ustalane treścią tej strony. ipIII pozostaje narzędziem obrony i zgodności (GRC/blue); nie wykonuje nieautoryzowanych skanów ani działań poza pisemnymi Rules of Engagement.

Powiązane: release-notes · roadmap-dev · status-matrix · known-limitations · api-docs · model-danych · deployment-modes.