Wszystkie materialne zmiany w serwisie — nowe narzędzia, aktualizacje treści, KSC nowelizacja, NIS2 errata. Powyżej trzy najnowsze wyróżnienia opisane szczegółowo; poniżej miesięcznie pogrupowany auto-feed wszystkich aktualizacji stron.
Ostatnia kluczowa zmiana: . W tym miesiącu odnotowano 8 wyróżnień(ej).
Narzędzie
Audyt 8-person: cztery narzędzia na stronie głównej, uczciwe etykiety eksportu, szablon CSV
Adwersaryjny audyt narzędzi w przeglądarce przez osiem person (CISO, audytor, pentester, dostępność, mobile, druk) wykrył cztery istotne braki UX. Strona główna eksponuje teraz wszystkie cztery narzędzia — w tym weryfikator /audyt-pack, wcześniej trudny do odnalezienia. Etykietę „Pobierz PDF” zmieniono na „Drukuj memo (PDF)” — eksport statyczny otwiera dialog druku, nie pobiera pliku. Klasyfikator przyjmuje opcjonalną nazwę prawną podmiotu prosto do pola about.name, a klasyfikator grupowy zyskał pobieranie pustego szablonu CSV.
Higiena druku board-pack + wdrożenie produkcyjne z automatycznym pingiem IndexNow
Persona „recenzent druku” wykryła wyciek elementów strony do wydruku memo: nagłówek, stopka, pływające CTA, pasek postępu czytania i spis treści pojawiały się obok właściwego letterheadu. Siedem komponentów otrzymało print:hidden — wydrukowane memo pokazuje teraz wyłącznie letterhead i treść wyniku, gotowe dla zarządu. Całość wdrożono na produkcję ze smoke-testem wszystkich tras. Ping IndexNow wpięto na stałe w potok wdrożenia jako krok nieblokujący, by nigdy nie został pominięty.
Druga runda hardenizacji po operacyjnym audycie. /audyt-pack otrzymał 3-warstwową ochronę uploadu 5 MB (JS cap + widoczna podpowiedź + aria-describedby), bo brak limitu groził wyciekiem danych operatora przez swap OS — łamiąc gwarancję prywatności. Cleanup 7 konfliktów WAI-ARIA role + aria-live (skopiowany antypattern). Nowy gate V13 zapobiega regresji. Fix perfu F1: React.memo na EntityAdvancedRow trzyma edycję poniżej 6 ms przy obu rozwiniętych drawerach. Replay w przeglądarce potwierdził wszystkie obrony end-to-end.
Klasyfikator grupowy NIS2 — kreator dla holdingów (G1)
Trzecie narzędzie interaktywne — wielopodmiotowa klasyfikacja NIS2/KSC dla grup kapitałowych. Operator wczytuje CSV z listą spółek zależnych, edytuje wartości w tabeli (drawer dla pól zaawansowanych), silnik uruchamia per-entity i zwraca agregat K/V/W + sumę kar Art. 34. Pobiera grupowe Audit Defense Memo (JSON-LD) z dwuwarstwowym hashem: groupHash + zagnieżdżone memoHash. /audyt-pack rozpoznaje typ memo i renderuje per-entity tabelę werdyktów. 60+ testów akceptacyjnych.
Operacyjny audyt jako użytkownik wykrył: Chrome auto-translate zamrażał interfejs trzech nowych komponentów (klasyfikator grupowy, weryfikator, scorer dostawców) — ten sam wzorzec co K-fix-2 (#142). Wprowadzono V10 — walidator build-time wymagający translate=no + notranslate na każdej interaktywnej powierzchni. Drugi fix: błędna polska gramatyka 1 Kluczowych (genitive plural z licznikiem 1) — utworzono współdzielony moduł i18n/polish-plural z 21 testami pokrywającymi singular/paucal/genitive plus mod-100 wyjątki.
Nowa strona /audyt-pack zamyka trylogię Memo audytowego. Audytor wkleja JSON-LD z Klasyfikatora, strona uruchamia ten sam silnik na polu input i porównuje wynik z deklaracją memo w 7 wymiarach: klasyfikacji, rozmiarze MŚP, confidence, cyklu audytu i raportowania, kolejności firingu reguł, ostrzeżeniach. 4 scenariusze: match, match-stale (silnik zaktualizowany od wygenerowania memo), mismatch (tabela różnic), invalid. Pełna logika po stronie przeglądarki, plik memo nie jest nigdzie wysyłany. 23 testy akceptacyjne pokrywają wszystkie ścieżki.
Memo audytowe (D1) — pobieranie JSON-LD z klasyfikatora
Klasyfikator NIS2 otrzymał nową opcję eksportu — „Memo audytowe (JSON-LD)”. Pojedynczy plik dla audytora lub zarządu zawierający klasyfikację, pełną ścieżkę uzasadnienia z cytatami EUR-Lex/ISAP/Min. Cyfr., pinning wersji silnika reguł (v1.4.0) oraz blok podpisu kierownika podmiotu. Schemat JSON-LD ze schema.org Report — gotowe pod ingest przez Archer, ServiceNow, OneTrust. Każdy fired rule rozwiązany do publicznego URL. Memo jest reprodukowalny: te same wejścia + wersja silnika dają identyczne bajty. Rejestr reguł podbity z v1.2.0 do v1.4.0 (dodano R40 telekom i R41 urząd gminy).
Obowiązki techniczne NIS2 — mapowanie na ISO 27001 wg BSI Group
Strona o obowiązkach technicznych NIS2 została przebudowana na podstawie publicznego narzędzia BSI Group „NIS2 względem ISO/IEC 27001 — Narzędzie do mapowania”. BSI jest brytyjską jednostką certyfikującą ISO akredytowaną przez UKAS i jednym z autorów pierwszej wersji standardu. Strona zawiera teraz mapowanie Art. 20 (governance), Art. 21 a–j (dziesięć minimalnych środków), Art. 23 (raportowanie) oraz Art. 24 (europejskie schematy certyfikacji) na konkretne klauzule normy głównej ISO/IEC 27001:2022 oraz kontrole Załącznika A. Atrybucja BSI wskazana w widocznym callout u góry strony.
Klasyfikator NIS2 — reguła R41 dla urzędu gminy (próg 50 FTE)
Silnik klasyfikatora obsługuje teraz urząd gminy zgodnie z pkt 1.8 odpowiedzi Ministerstwa Cyfryzacji. Urząd gminy zatrudniający na dzień 1 stycznia danego roku co najmniej 50 osób w przeliczeniu na pełny etat na podstawie umowy o pracę jest Podmiotem Kluczowym; pozostałe są Podmiotami Ważnymi. Nowe pola urzadGminy oraz employeesOn1January umożliwiają audytowalny snapshot. Gdy operator nie poda snapshotu, silnik korzysta z bieżącej liczby etatów i podnosi ostrzeżenie do poziomu krytycznego. Dodano 19 testów akceptacyjnych; łącznie 668 testów jednostkowych pomyślnie.
Walidator cytatów Ministerstwa Cyfryzacji w build chain
Dodano nowy walidator scripts/validate-citations.mjs, który skanuje wszystkie pliki źródłowe oraz dokumenty pod kątem cytatów do oficjalnej wykładni Ministerstwa Cyfryzacji w formacie pkt N.N. Każdy taki cytat jest sprawdzany względem rejestru src/data/ministry-qa.ts; nieznany lub błędnie wpisany numer pkt powoduje twardy fail builda z dokładnym wskazaniem pliku, linii i kolumny. Walidator został wpięty do npm run build za walidatorem mobilnej responsywności. Aktualnie przeskanowane: 157 plików, 131 unikalnych zarejestrowanych punktów Q&A.
Organ właściwy na każdej z 7 stron branżowych (Q11.1)
Każda strona /branze/* otrzymała wyróżniony callout z nazwą organu właściwego do spraw cyberbezpieczeństwa zgodnie z pkt 11.1 wykładni Ministerstwa Cyfryzacji. Siedem stron sektorowych wskazuje: Minister Energii, Minister Infrastruktury (transport + woda + ścieki), Minister Zdrowia plus MON (ochrona zdrowia), Minister Klimatu i Środowiska (odpady), Minister Rolnictwa (żywność), Minister Finansów i Gospodarki (produkcja). Nowy plik src/data/sector-organ.ts dokumentuje pełną listę 20 sektorów wraz ze wskazaniem przypadków współsprawowania nadzoru (pkt 11.2).
Klasyfikator NIS2 — telekom mikro i mały to Podmiot Ważny (R40)
Silnik klasyfikatora otrzymał regułę R40-telecom-size-mapping zgodną z wytyczną Ministerstwa Cyfryzacji pkt 1.9. Wcześniej operator telekomunikacyjny z włączonym Art. 2 ust. 2 lit. a) ppkt i) klasyfikował się jako Kluczowy niezależnie od wielkości. Po naprawie mikroprzedsiębiorca oraz mały przedsiębiorca telekomunikacyjny to Podmiot Ważny, a Średni i Duży telekom pozostają Kluczowymi. Wynik renderuje ostrzeżenie TELECOM_SIZE_DOWNRANK z cytatem do Min. Cyfr. pkt 1.9. Dziewięć nowych testów akceptacyjnych zabezpiecza regułę.
Podmioty K/V — telekom, K wygrywa, cykl audytu, S46 6 miesięcy
Pillar Podmioty Kluczowe i Ważne dopasowany do oficjalnej wykładni Ministerstwa Cyfryzacji. Dodane: tabela mapowania wielkości telekomu (Duży/Średni do Kluczowy; Mały/Mikro do Ważny), wyjaśnienie cyklu audytu (Kluczowy co 3 lata oraz na żądanie, Ważny wyłącznie na żądanie), FAQ rozstrzygnięcia gdy podmiot spełnia kryteria obu kategorii (wygrywa Kluczowy). Skorygowany termin rejestracji w S46 z dwóch miesięcy na sześć miesięcy plus konkretna data graniczna 3 października 2026 r. dla podmiotów spełniających warunki na dzień wejścia ustawy. Źródło: Min. Cyfr. pkt 1.9, 1.10, 1.11, 1.12, 2.1.
Art. 12a — kalendarz kar do 2028 + kara ekstraordynaryjna
Aktualizacja sekcji kar zgodnie z pytaniami i odpowiedziami Ministerstwa Cyfryzacji. Dodane: kalendarz stosowania kar (większość kar od 3 kwietnia 2028 r.; kara ekstraordynaryjna od dnia wejścia w życie ustawy), progi minimalne (kluczowe 20 000 zł, ważne 15 000 zł), kara okresowa (od 500 zł do 100 000 zł dziennie), kara ekstraordynaryjna do 100 mln zł oraz odrębna kara administracyjna dla kierownika (300 procent prywatnie, 100 procent publicznie). Źródło: Min. Cyfr. pkt 12.1, 12.4, 12.5, 12.6.
Marka marketingowa, pod którą publikowany jest niniejszy serwis, została zmieniona z Alterity Solutions na Cyber Alterity. Wydawcą prawnym pozostaje Alterity sp. z o.o., domena marki to cyberalterity.pl, redakcja oraz dane kontaktowe są bez zmian. Aktualizacja objęła stopkę, schema.org Organization, obrazy OG, kanał RSS, manifest oraz wszystkie strony użytkowe serwisu.
Menu hamburger na mobile otwierało się jako 56-pikselowy pasek przy górze ekranu — przyczyna: backdrop-filter na nagłówku tworzył nowy CSS containing block, który przechwytywał position:fixed dla drawera. Naprawa: drawer i backdrop są portalowane do document.body i wypełniają cały viewport. Równolegle subset czcionek Inter + Newsreader (570 do 141 KB, oszczędność 75 procent na cold load), tap-targets podniesione do 44×44 px na nieinline elementach (WCAG 2.5.5), dodano walidator validate-mobile.mjs blokujący tę klasę regresji na buildzie.
Strona główna otrzymała dedykowaną sekcję „Narzędzia” surfaceującą bezpośrednio z hero wszystkie 4 narzędzia: klasyfikator podmiotów, klasyfikator dostawców, mapowanie NIS2 × KSC × ISO oraz stronę metodologii. Skraca to ścieżkę od odwiedzin do uruchomienia narzędzia.
Uruchomiona została strona /metodologia dokumentująca wszystkie decyzje inżynierskie stojące za 4 narzędziami: silniki rules-as-data, polityka cytowań, IP firewall, prywatność (URL hash), cykl walidacji zmian. Strona adresowana do CISO, audytorów organu właściwego, procurement i partnerów potrzebujących weryfikowalnej metodyki.
Strona /ekspert została wzbogacona o strukturalną listę 3 certyfikatów z linkami do organów wystawiających (ISO 27001 Lead Auditor, CompTIA CySA+, klauzula ZASTRZEŻONE), 3 ról kariery w timeline, 9 specjalizacji, 2 państwowe zatwierdzenia (NASK-PIB, ULC EASA PART-IS). Schemat Person.hasCredential[] + knowsAbout[] z DefinedTerm — wzmocniony sygnał E-E-A-T dla wszystkich treści serwisu.
Silnik klasyfikatora wzbogacony o typ Severity (critical/warning/info) na każdym ostrzeżeniu oraz typ Step (1-5) na każdej regule. Wynik klasyfikatora renderuje 5-krokowe drzewo decyzyjne z grupowaniem reguł per krok, severity-sortowane ostrzeżenia z ikonami a11y-safe. 158 testów jednostkowych zabezpiecza spójność.
Po incydencie nieskutecznego cache purge'u (HTML cache wskazywał na nieistniejące hashe CSS po deployu) wprowadzony został pełen automatyczny pipeline: scripts/deploy.mjs wykonuje pełny zone purge_everything, polling propagacji i smoke retry. Smoke test rozszerzony o HEAD-check wszystkich pod-zasobów (CSS/JS/preload) z weryfikacją MIME — łapie błędy typu „HTML wskazuje na 404 sub-resource” przed użytkownikiem.
Infrastruktura
CSP violation reporting — Cloudflare Pages Function
Dodano endpoint /csp-report (Cloudflare Pages Function) odbierający raporty naruszeń CSP. Pomaga wczesnym wykrywaniu błędów konfiguracji CSP (np. zewnętrznych embedów, które nie zostały dodane do allow-listy).
Auto-feed aktualizacji treści
Każda strona w serwisie ma pole updatedAt w registry. Auto-feed pokazuje wszystkie strony pogrupowane miesięcznie wg ostatniej materialnej aktualizacji (z wyłączeniem stron objętych wyróżnieniem powyżej — żeby nie duplikować).
Monthly review EUR-Lex (NIS2 errata + nowe acts implementing) + ISAP (KSC nowelizacja). Każda strona w serwisie ma pole updatedAt w src/data/routes.ts; wszystkie nowe wartości muszą być datami dzisiejszymi lub wcześniejszymi (test sanity check w build pipeline). Pełna dokumentacja walidacji zmian w metodologii narzędzi.