Kasa działa
ważność krytycznamierzonysposób sklep_kasa
Strona kasy renderuje formularz zamówienia i co najmniej jedną metodę płatności.
Wdrożony 01.10 (badanie profilem). Z zewnątrz, tylko gdy koszyk dał się zbadać.
WIKI
wiedza ze źródeł zewnętrznychArtykuł o parametrze „Kasa działa” jest w przygotowaniu. Powstaje po kolei dla wszystkich 87 parametrów, każde twierdzenie z przypisem do źródła.
STATS
wyniki z systemu · tylko liczby zbiorczeTen parametr nie zapisuje odczytu per strona — przebieg zostawia tylko ustalenia, więc liczby sprawdzonych stron i wyników „ok” system nie ma. Pojawią się po wdrożeniu zapisu przebiegów per strona per parametr.
Ten parametr nie otworzył jeszcze żadnego ustalenia w bazie LAB247. Pusto nie znaczy „czysto” — znaczy, że nic nie przekroczyło reguły.
Harmonogram nie zapisał jeszcze przebiegu ze sposobem „sklep_kasa”. Zapis przebiegów z n8n działa od 2026-09-14.
CARD
karta z kodu CREATO_PING, odczyt 01.10.2026Jak ten parametr trafia do ClickUpa: wynik sondy to linia w subtasku 2. Pomiar, a usterka, którą otwiera — linia w subtasku 1. Podsumowanie (z identyfikatorem CWE i kategorią OWASP), skąd liczy się wskaźnik zagrożenia i status strony. Projekcja z bazy skanera odświeża oba subtaski co godzinę. Do 22.09 każde ustalenie dostawało własny subtask i status ze starego słownika (PODATNA, WARNING…) — te słowa zostały jeszcze w części opisów pomiaru niżej jako język wewnętrzny sond.
| Obszar i ważność | E-commerce · krytyczna (E02) |
|---|---|
| Workflow i częstotliwość | skaner_badanie działa na LAB247Skaner 2.0, badanie kohorty: premium co 12 h, reszta co 24–48 h · Od 2026-10-01 zestawy kohort (premium_pelny, tani_ciezki, tani_lekki) mają tury higiena, serwer, sklep, kasa i strony (wyciek ścieżek B41, CMS po EOL B44, kluczowe podstrony S08, odnośniki kontaktowe D10); nocny pomiar wydajności (trend, waga, od 01.10 też metryki pasma W01–W04 i W07) tylko premium — u reszty prośba o pomiar zagłodziłaby nocny plan. Sklep: strona bez WooCommerce = „nie dotyczy”. |
| Sonda i helper | sposób sklep_kasa · CREATO_PING/helpers/sklep_check.py |
| Testy |
|
| Typ wyniku | enum: ok / nie_dalo_sie_sprawdzic (z przyczyną, flaga nie_sklep) + 0 do 2 ustaleń: sklep_kasa_nie_dziala, sklep_brak_platnosci; w wyniku zakres (z_towarem, gosc_bez_towaru, katalog_bez_sprzedazy, bez_strony_kasy), lista bramek i stan strony kasy |
| Jednostka | brak — wynik jakościowy; kod HTTP i liczba bramek w HTML w dowodzie |
| Próg i reguła | sklep_kasa_nie_dziala: kasa 5xx albo błąd krytyczny PHP w treści; z towarem w koszyku także brak formularza przy kodzie 200 i formularz klasyczny bez żadnej metody płatności przy niepustej liście bramek ze Store API. sklep_brak_platnosci: strona kasy znaleziona, produkty do kupienia > 0 i pusta lista bramek. Timeout 15 s, połączenie 5 s. |
| Gdzie leżą pokrętła | CREATO_PING/helpers/sklep_check.py → kasa, _adres_kasy, _KASA_BLOK, _KASA_KLASYCZNA, _FATAL, TIMEOUT_SCREATO_PING/config/sklepy.toml → [proba_koszyka] domenyCREATO_PING/config/incident_policy.toml → [finding] sklep_kasa_nie_dziala, sklep_brak_platnosciCREATO_PING/skaner/scenariusze/*.toml → tura „kasa” (gdy sklep_koszyk ok albo fail) |
| Retencja odczytów | Surowy pomiar jako NIEZMIENNY wiersz tabeli `odczyty` w bazie skanera (wejście, wyjście, dowody, sha karty sondy i helpera, commit kodu) — trigger odrzuca każdą zmianę. Okno retencji z kohorty: 90 dni premium, 30 dni reszta; poza oknem zostają odczyty z werdyktem problemu, akcją albo etykietą, bo replay reguł ich potrzebuje (`skaner/retencja.py`). Do LAB247 ten kanał nie idzie (do bazy serwisu jadą dziś tylko sprawdzenia dostępności), więc poza odczytem zostaje werdykt w tabeli `werdykty` i sprawa w tabeli `sprawy`. |
| Znane rozbieżności |
|
| Karta przepisana z | CREATO_PING/helpers/sklep_check.py · CREATO_PING/config/sklepy.toml · CREATO_PING/config/incident_policy.toml · CREATO_PING/helpers/security_testy.py · CREATO_PING/skaner/scenariusze/premium_pelny.toml · CREATO_PING/skaner/scenariusze/ecommerce.toml · CREATO_PING/skaner/latest_readings.py · CREATO_PING/skaner/usterki.toml · CREATO_PING/skaner/ocena.py · odczyt 01.10.2026 |
sklep_kasa_nie_dziala: bramka polityki otwarta (gate=true) → sprawa w skanerze → Kasa sklepu nie działa — zamówienia nie przechodzą — waga 4 → ocena 7–8 (pomarańczowy), status strony „wysoki”, dopóki sprawa jest otwarta. sklep_brak_platnosci: bramka polityki otwarta (gate=true) → sprawa w skanerze → Sklep bez żadnej metody płatności — waga 4 → ocena 7–8 (pomarańczowy), status strony „wysoki”, dopóki sprawa jest otwarta. Oba atomy ważą 4 z tym samym uzasadnieniem co zepsuty koszyk. Zniknięcie bramek z działającego sklepu łapie dodatkowo parametr Zmiana metod płatności (linia bazowa). Helper nie wysyła sygnału zamknięcia.
| Kod | Finding | Severity | Pewność | Skutek | Finding / alarm | Waga → ocena | Co zrobić |
|---|---|---|---|---|---|---|---|
| E02.01 | Kasa sklepu nie działa — zamówienia nie przechodząsklep_kasa_nie_dziala | Wysoka | — | usterka niekrytyczna | tak / — | waga 4 → ocena 7–8 (pomarańczowy) | — |
| E02.02 | Sklep bez żadnej metody płatnościsklep_brak_platnosci | Wysoka | — | usterka niekrytyczna | tak / — | waga 4 → ocena 7–8 (pomarańczowy) | — |
| Kod i klucz | E02.01 · sklep_kasa_nie_dziala → shop_checkout_broken (klucz angielski przyjęty 01.10; skaner nadaje jeszcze stary) · w tabeli typów |
|---|---|
| Co znaczy | opis do opracowania |
| Kiedy powstaje | Strona kasy została znaleziona i spełnia co najmniej jeden warunek: kod ≥ 500; w HTML jest Fatal/Parse error albo „critical error”; z towarem w koszyku kod 200 bez bloku lub formularza checkout; z towarem, klasyczny formularz bez bloku, z bramkami w API, ale 0 elementów id=payment_method_* w HTML.Brak adresu kasy nie daje findingu (zakres katalog_bez_sprzedazy lub bez_strony_kasy). |
| Severity · pewność | Wysoka |
| Skutek dla strony | usterka niekrytyczna · zakłada Finding |
| Waga → ocena | waga 4 → ocena 7–8 (pomarańczowy) |
| Klasyfikacja | OCSF 1.9.0: poza klasami Findingu |
| Rekord OCSF | finding_info.analytic.uid = "E02.01" · analytic.name = "shop_checkout_broken" · finding_info.types = ["E02 Kasa działa"] |
| Co zrobić | — |
| Wersje typu |
|
| Kod i klucz | E02.02 · sklep_brak_platnosci → shop_no_payment_methods (klucz angielski przyjęty 01.10; skaner nadaje jeszcze stary) · w tabeli typów |
|---|---|
| Co znaczy | opis do opracowania |
| Kiedy powstaje | Koszyk API działa, strona kasy została znaleziona, payment_methods jest puste, a w próbce Store API /products jest co najmniej 1 produkt prosty w magazynie, do kupienia, z ceną > 0. |
| Severity · pewność | Wysoka |
| Skutek dla strony | usterka niekrytyczna · zakłada Finding |
| Waga → ocena | waga 4 → ocena 7–8 (pomarańczowy) |
| Klasyfikacja | OCSF 1.9.0: poza klasami Findingu |
| Rekord OCSF | finding_info.analytic.uid = "E02.02" · analytic.name = "shop_no_payment_methods" · finding_info.types = ["E02 Kasa działa"] |
| Co zrobić | — |
| Wersje typu |
|
LOOP
bez pętliTrafności jeszcze nie liczymy: zamknięcie subtaska nie niesie dziś werdyktu (prawdziwy / fałszywy / nie dało się sprawdzić). Cztery liczby pojawią się, gdy każde zamknięcie dostanie werdykt — to warunek startu pętli 1.
Ten parametr nie przeszedł jeszcze żadnej pętli. Kolejność po pierwszych pięciu grupach ustali miara trafności.