Jeden pakiet dla zarządu składany z realnych danych orchestratora: top ryzyka, incydenty P0/P1, przekroczenia SLA, pokrycie dowodowe, ryzyko rezydualne, ekspozycja regulacyjna, następne działania i macierz właścicieli. Cel: przełożyć operacyjny stan bezpieczeństwa na jeden dokument decyzyjny dla CISO → zarząd. Strona jest jawnym rejestrem: co składamy z realnych, dowodliwych źródeł (LIVE), a co — warstwa prezentacji dla zarządu — pozostaje ROADMAP.
Board pack nie generuje nowych faktów — reużywa dowodliwych źródeł. Rejestr dowodów pochodzi z evidence-package, przebieg TLPT z report-package (DORA / TIBER), mapowanie obowiązków z legal-triggers, a wskaźnik pokrycia z coverage-score. Te warstwy są LIVE MVP. Sam „one-click", branding executive i wykresy trendu dla zarządu pozostają ROADMAP.
Najwyższe ryzyka wg severity × ekspozycja, z otwartych incydentów. Źródło: rejestr incydentów v1 (normalizacja P0–P3).
Dane: LIVE MVP · ranking executive: ROADMAP
Lista otwartych krytycznych i wysokich z wiekiem, właścicielem i statusem naprawy (open / retest / closed-with-evidence).
Dane: LIVE MVP
Incydenty po terminie remediacji względem progu SLA per severity. Zegar liczony od created_at.
Reguła zegara: LIVE MVP · progi SLA konfigurowalne: ROADMAP
Ile incydentów/twierdzeń ma dowód (evidence + hash) vs bez pokrycia. Link: coverage-score.
Dane: LIVE MVP
Ryzyko pozostające po naprawach — wskaźnik decyzyjny (nie werdykt). Otwarte P0/P1 bez close-with-evidence.
Wskaźnik: ROADMAP (metoda scoringu do zatwierdzenia)
Które incydenty uruchamiają obowiązki DORA / NIS2-KSC / RODO / AI Act i z jakim zegarem. Link: regulatory-packs.
Mapowanie: LIVE MVP (legal-triggers)
Lista next actions z priorytetem i terminem — wyprowadzona z otwartych P0/P1 i przekroczeń SLA.
Lista: LIVE MVP · workflow zatwierdzeń: ROADMAP
Kto odpowiada za które ryzyko / działanie (owner matrix). Źródło: pole owner incydentu / engagement.
Dane: LIVE MVP (o ile owner uzupełniony) · RACI: ROADMAP
Kanon statusów: status-matrix. Kanon liczby testów: Evidence Matrix /roadmap-dev (nie powielamy liczb testów na tej stronie).
| Sekcja pakietu | Realne źródło (reuse) | Status |
|---|---|---|
| Top risks · P0/P1 | rejestr incydentów v1 (normalizacja severity, PostgreSQL) | LIVE MVP |
| Przekroczenia SLA | zegar od created_at (reguła jak w legal-triggers) | LIVE MVP (progi = ROADMAP) |
| Pokrycie dowodowe | evidence-package + coverage-score (manifest + package_sha256) | LIVE MVP |
| Ekspozycja regulacyjna | legal-triggers (DORA/NIS2/RODO/AI Act + zegary) | LIVE MVP |
| Przebieg TLPT / engagement | report-package (timeline + evidence-register + hash) — DORA / TIBER | LIVE MVP |
| Ryzyko rezydualne · control effectiveness | scoring nad otwartymi P0/P1 bez close-with-evidence | ROADMAP (metoda do zatwierdzenia) |
| „One-click" generacja pakietu | pojedynczy endpoint agregujący powyższe | ROADMAP |
| Branding executive · wykresy trendu · podpisany PDF | warstwa prezentacji dla zarządu | ROADMAP (dziś: sha256 integralności) |
{
"board_pack": {
"generated_at": "2026-07-05T09:00:00Z", // SYNTETYCZNE
"scope": "Q2 2026 · przegd kwartalny CISO",
"period": "2026-04-01 .. 2026-06-30",
"status": "MVP · dane syntetyczne",
"summary": {
"incidents_open": 12,
"p0_open": 2,
"p1_open": 5,
"sla_breaches": 3,
"evidence_coverage": "link: /coverage-score", // nie wpisujemy liczby-kanonu tutaj
"residual_risk": "ROADMAP (wskanik decyzyjny)"
},
"top_risks": [
{ "id": "INC-2041", "title": "Podatno RCE w bramce API", "severity": "P0",
"owner": "team-appsec", "age_days": 4, "state": "open",
"evidence": "evidence-package #INC-2041 (sha256:...)" },
{ "id": "INC-2033", "title": "Ekspozycja S3 (misconfig)", "severity": "P1",
"owner": "team-cloud", "age_days": 11, "state": "retest" }
],
"sla_breaches": [
{ "id": "INC-1998", "severity": "P1", "sla_days": 7, "age_days": 11,
"over_by_days": 4, "owner": "team-cloud" }
],
"regulatory_exposure": [
{ "incident": "INC-2041", "regimes": ["DORA art.19", "NIS2/KSC 24h/72h"],
"clock": "orientacyjny · start ustala podmiot",
"detail": "link: /regulatory-packs" }
],
"next_actions": [
{ "action": "Hotfix + retest INC-2041", "priority": "P0", "due": "2026-07-07",
"owner": "team-appsec" },
{ "action": "Domknicie SLA INC-1998 (close-with-evidence)", "priority": "P1",
"due": "2026-07-10", "owner": "team-cloud" }
],
"owner_matrix": [
{ "owner": "team-appsec", "open_p0": 1, "open_p1": 1 },
{ "owner": "team-cloud", "open_p0": 0, "open_p1": 2 }
],
"manifest": {
"sources": ["incidents.v1", "evidence-package", "legal-triggers", "report-package"],
"package_sha256": "<liczony przy generacji>",
"note": "coverage = pokrycie dowodowe, NIE nieprzenikalno"
}
}
}
Wszystkie identyfikatory, liczby i nazwy zespołów powyżej są zmyślone.
Realny pakiet linkuje każdą pozycję do artefaktu dowodowego; pola bez pokrycia dowodowego nie trafiają do sekcji „fakty"
— zgodnie z regułą claim ≤ proof.
created_at), pokrycie dowodowe (link coverage-score), ryzyko rezydualne (wskaźnik). ryzyko rezydualne = ROADMAPpackage_sha256 integralności (reuse mechanizmu z evidence-package). hash LIVE MVP| Twierdzenie, którego NIE stawiamy | Co jest faktem |
|---|---|
| „System jest w 100% bezpieczny / nieprzenikalny" | Pakiet raportuje pokrycie dowodowe i stan incydentów — nie mierzy nieprzenikalności. |
| „To certyfikacja / audyt niezależny" | To agregacja danych podmiotu do decyzji zarządczej (DECISION-SUPPORT). |
| „Pakiet potwierdza pełną zgodność DORA/NIS2/RODO/AI Act" | Mapuje obowiązki i zegary (orientacyjne); zgodność ocenia człowiek/regulator. |
| „Gotowy produkt bankowy / produkcyjny" | Status MVP: źródła danych LIVE MVP; warstwa executive i one-click = ROADMAP. |
| „Ryzyko rezydualne = wartość zmierzona" | To wskaźnik decyzyjny; metoda scoringu jest ROADMAP do zatwierdzenia. |