1. Obszar PRAWNY
| ☐/☑ | Pozycja kontrolna | Kryterium akceptacji | Dowód |
|---|---|---|---|
| ☐ | Claimy bez sugestii certyfikacji/notyfikacji | Brak sformułowań sugerujących certyfikat, akredytację lub status jednostki notyfikowanej; usługi opisane jako advisory/readiness. | /trust-center |
| ☐ | Pozycjonowanie audit-only / readiness | Materiały publiczne konsekwentnie pozycjonują ofertę jako audytową/gotowościową, nie wykonawczą ani gwarantującą zgodność. | /docs/ai-act-readiness.html |
| ☐ | Parasol prawny GRL | Podmiot odpowiedzialny i parasol prawny (GRL) jednoznacznie wskazane; relacja UnionAI ↔ podmiot prawny udokumentowana. | /governance |
| ☐ | RODO / ochrona danych | Polityka prywatności opublikowana, podstawy przetwarzania i prawa podmiotów danych opisane; wskazany kontakt DPO. | /privacy |
| ☐ | Brak nadclaimów AI Act | Żadne stwierdzenie nie deklaruje „pełnej zgodności z AI Act”; claimy ograniczone do mapowania/gotowości i readiness. | /docs/ai-act-readiness.html |
2. Obszar TECHNICZNY
| ☐/☑ | Pozycja kontrolna | Kryterium akceptacji | Dowód |
|---|---|---|---|
| ☐ | Granica uwierzytelnienia (auth boundary) | Zasoby prywatne wymagają tokenu; anonimowy dostęp do danych o zakresie PRIVATE zwraca 401/403 (brak wycieku payloadu i metadanych). | /api/auth/* |
| ☐ | Rate limiting | Limit zapytań aktywny na wrażliwych endpointach; mechanizm z fallbackiem (Redis → in-memory), zweryfikowany pod obciążeniem. | smoke / CI |
| ☐ | Hash-chain evidence | Łańcuch dowodów weryfikowalny end-to-end; brak bypassu walidacji; integralność lokalnych artefaktów potwierdzona. | /api/evidence/verify |
| ☐ | HA / backup | Wdrożenie wielomaszynowe (HA) i polityka kopii zapasowych; persystencja stanu przeżywa restart. | /status |
| ☐ | Smoke CI | Pipeline CI (Unit + Smoke) zielony na ostatnim deployu; testy regresyjne dla auth i evidence. | CI (Unit + Smoke) |
| ☐ | Brak sekretów w repo/UI | Klucze i tokeny wyłącznie w sekretach środowiska; brak wartości wrażliwych w kodzie, repozytorium i warstwie UI. | audyt repo + skan sekretów |
3. Obszar COMPLIANCE
| ☐/☑ | Pozycja kontrolna | Kryterium akceptacji | Dowód |
|---|---|---|---|
| ☐ | Macierz gotowości AI Act | Matryca readiness mapuje wymogi na status implementacji; luki oznaczone i przypisane. | /docs/ai-act-readiness.html |
| ☐ | Rejestr ryzyk | Ryzyka skatalogowane z oceną, właścicielem i statusem mitigacji; aktualny. | /risk-register |
| ☐ | Polityka incydentów | Proces zgłaszania, klasyfikacji i komunikacji incydentów udokumentowany i dostępny publicznie. | /incidents |
| ☐ | Nadzór ludzki (human oversight) | Mechanizmy nadzoru człowieka nad działaniami agentów opisane; punkty interwencji i eskalacji zdefiniowane. | /human-oversight |
| ☐ | Manifest dowodów | Manifest evidence kompletny; artefakty z hashami sha256; brak nierozliczonych wpisów null bez wyjaśnienia. | /evidence/manifest.json |
Jak zlecić review
Przegląd zewnętrzny powinien być wykonany przez niezależne strony trzecie — samoocena nie spełnia kryterium tej bramki. Rekomendowany skład:
- Niezależny audytor prawny — weryfikacja claimów, pozycjonowania audit-only, parasola GRL i zgodności RODO.
- Pentest / audyt bezpieczeństwa — niezależna firma (np. wybór operatora: RSpace (rspace.com.pl)) potwierdzająca auth boundary, rate limiting i brak sekretów.
- Przegląd compliance — niezależna weryfikacja macierzy AI Act readiness, rejestru ryzyk i polityk (incydenty, nadzór ludzki).
Wynik: raport zewnętrzny z datą, zakresem, ustaleniami i statusem każdej pozycji checklisty. Pozycje ☐ przechodzą w ☑ wyłącznie na podstawie potwierdzenia audytora.
Wynik przeglądu
Pierwszy przegląd nieinwazyjny: 2026-05-24. Raport i status remediacji: docs/reports/EXTERNAL_REVIEW_2026-05-24.md.
- Przegląd techniczny nieinwazyjny (kod/OpenAPI/endpointy): ✅ 2026-05-24 — GO CONTROLLED / NIE FULL GO. Raport: EXTERNAL_REVIEW_2026-05-24.md
- Przegląd prawno-komunikacyjny: ✅ 2026-05-24 — GO CONTROLLED; claimy złagodzone (LEGAL_CLAIMS_MATRIX).
- EU AI Act readiness review: ✅ 2026-05-24 — GO CONTROLLED warunkowo. Raport: AI_ACT_READINESS_REVIEW_2026-05-24.md
- Self-pentest (aktywny, bounded, self-assessment — NIE niezależny): ✅ 2026-05-24 — 0 BLOCKER/CRITICAL/MAJOR, 2× MINOR naprawione. Raport: SELF_PENTEST_2026-05-24.md
- Pentest niezależny (RSpace, rspace.com.pl): ✅ 2026-05-25 — wejściowo 5 CRITICAL / 11 MAJOR / 5 MINOR (NIE GOTOWE DO PRODUKCJI). Remediacja: wszystkie CRITICAL + MAJOR + 4/5 MINOR zaadresowane i zweryfikowane live (3 fale, origin/main). Re-weryfikacja RSpace: ZATWIERDZONA 2026-05-25 ("zweryfikowane i zatwierdzone"). Raport: RSPACE_PENTEST_2026-05-25.md. Pozostaje: 3 podpisy /production-gate.
Readiness review — zakres: matryca ról provider/deployer/operator, klasyfikacja high-risk per use-case, human oversight, rejestr ryzyk, polityka incydentów, claim ≤ proof. Status: GO CONTROLLED — readiness review, NIE certyfikacja/notyfikacja/ocena zgodności. Warunek P2-07: zamknięcie BLOCKER/CRITICAL (zaadresowane) + aktywny pentest + podpisy.
Remediacja: CRITICAL-01 (CSP), CRITICAL-02 (CORS allowlist), BLOCKER-01 (incident/governance auth, agent unverified, ack pending), BLOCKER-02 (status language), MAJOR-02/03 — zamknięte. Otwarte: refaktor klas endpointów + quarantine, evidence v2, CI security tooling. Szczegóły w raporcie.
Status zbiorczy: niezależny pentest (RSpace) WYKONANY i ZATWIERDZONY 2026-05-25; wszystkie CRITICAL + MAJOR zaadresowane, zweryfikowane live i przyjęte przez audytora. FULL GO (P2-07) OSIĄGNIĘTY: 3 podpisy /production-gate złożone + NETWORK_STATUS=PRODUCTION przełączony 2026-05-26. Sieć działa w trybie produkcyjnym (FULL LIVE).
Ścieżka dowodowa remediacji (pentest RSpace)
Zbiorczo, bez ujawniania technicznych szczegółów podatności. Pełny raport: docs/reports/RSPACE_PENTEST_2026-05-25.md.
| Klasa ustaleń | Severity | Status | Data remediacji | Weryfikacja |
|---|---|---|---|---|
| 5× CRITICAL (auth / eskalacja) | CRITICAL | zamknięte | 2026-05-25 | RSpace re-weryfikacja ZATWIERDZONA |
| 11× MAJOR (rate-limit / TLS / JWT / CORS / hash-chain / expo) | MAJOR | zaadresowane | 2026-05-25 | RSpace + commit 7d004e7 / 011a1c4 |
| 4/5 MINOR | MINOR | zaadresowane | 2026-05-25 | commit 7853ff4 |