Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
f0e66ad
docs(wcag): specyfikacja fazy 2 — skrot / oraz nawigacja po grafie
mpasternak Aug 7, 2026
2c2ddd2
docs(wcag): korekty speca fazy 2 po recenzji adwersarialnej
mpasternak Aug 7, 2026
fe888ae
docs(wcag): plan wdrozenia fazy 2 (skrot / oraz nawigacja po grafie)
mpasternak Aug 7, 2026
306d0c9
feat(wcag): modul preferencji skrotow jednoznakowych (2.1.4)
mpasternak Aug 7, 2026
8087bfc
fix(wcag): fallback w pamięci dla skrótów w trybie prywatnym + 2 testy
mpasternak Aug 7, 2026
e2e3309
feat(wcag): przelacznik skrotow w stopce, likwidacja duplikatu handle…
mpasternak Aug 7, 2026
2a50e77
feat(wcag): modul nawigacji po grafie powiazan (2.5.7)
mpasternak Aug 7, 2026
497442a
feat(wcag): przyciski nawigacji po grafie bez przeciagania (2.5.7)
mpasternak Aug 7, 2026
f894595
feat(wcag): obsluga grafu powiazan klawiatura (2.1.1, 2.4.7)
mpasternak Aug 7, 2026
c71df2e
fix(wcag): nie przechwytuj skrotow przegladarki w grafie + testy JS
mpasternak Aug 7, 2026
f2144ba
test(wcag): testy przegladarkowe skrotu / oraz nawigacji po grafie
mpasternak Aug 7, 2026
a9b84b7
test(wcag): usun flakiness testow grafu (pusta siec + dobicie do maxZ…
mpasternak Aug 10, 2026
e40db38
docs(wcag): domkniecie 2.1.4 i 2.5.7 w wykazie, newsfragment
mpasternak Aug 10, 2026
47b31a3
fix(test): pakiet `tests/` przeslanial modul `powiazania_autorow.tests`
mpasternak Aug 10, 2026
26cd2ef
test+refactor(wcag): guardy strony uczelni pod testem, trzy drobiazgi…
mpasternak Aug 12, 2026
c4e7e11
docs(wcag): trwaly dokument stanu prac i pozostalych zadan
mpasternak Aug 13, 2026
f95fc4a
feat(wcag): kompasowy uklad przyciskow grafu + nawigacja pod grafem n…
mpasternak Aug 16, 2026
8e08719
docs(wcag): znalezisko z recenzji — nieobramowany skrot `/` w adminie
mpasternak Aug 16, 2026
153ac0e
fix(wcag): domkniecie znalezisk z recenzji — spoiwo DOM pod testem, m…
mpasternak Aug 16, 2026
b20a38b
test(wcag): podmieniaj caly localStorage zamiast lepic metody na Storage
mpasternak Aug 16, 2026
89b7ff0
Merge remote-tracking branch 'origin/dev' into fix-wcag-2140-2570
mpasternak Aug 16, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1,600 changes: 1,600 additions & 0 deletions docs/superpowers/plans/2026-08-07-wcag-skrot-i-graf.md

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -510,6 +510,12 @@ naprawione — patrz sekcja „Odroczone niezgodności". Formuła „naprawa
stwierdzona → B…" dla `3.1.2` niżej jest poprawna i pozostaje bez zmian —
tam naprawa faktycznie zaszła.

**Korekta (2026-08-07):** odroczenie z korekty wyżej okazało się
tymczasowe — oba kryteria naprawiono dzień później
(`2026-08-07-wcag-skrot-i-graf-design.md`). Pierwotne brzmienie wierszy
`2.1.4` i `2.5.7` w tabeli („naprawa stwierdzona → B1/B5") jest więc znów
aktualne: audyt ma te naprawy zweryfikować, nie odnotować niezgodność.

### Zrozumiałość

| Kryterium | Poz. | Źródło werdyktu |
Expand Down Expand Up @@ -555,6 +561,12 @@ naprawione — decyzje i uzasadnienia w sekcji „Odroczone niezgodności".
„Zadanie brzmi »napraw«" było zamiarem na starcie tej sekcji, nie jest
opisem tego, co się faktycznie stało z każdym z czterech kryteriów.

**Korekta (2026-08-07):** ostatecznie naprawiono wszystkie cztery. 2.1.4
i 2.5.7 domknęła kolejna iteracja
(`2026-08-07-wcag-skrot-i-graf-design.md`), więc pierwotne „Zadanie brzmi
»napraw«" opisuje jednak to, co się stało — tyle że w dwóch podejściach,
nie w jednym.

### 2.1.4 Character Key Shortcuts (A) — skrót `/`

`base.html:39-49` wiąże jednoznakowy skrót `/` na poziomie `document`.
Expand All @@ -572,6 +584,14 @@ przeniesiony w zasięg focusa pola wyszukiwania.

**Korekta (2026-08-06):** kryterium **odroczono**, nie naprawiono. Skrót
`/` działa dokładnie tak samo jak w opisie wyżej — bez zmian w kodzie.

**Korekta (2026-08-07):** kryterium **naprawione**. Z trzech dopuszczonych
wyjść wybrano pierwsze — wyłączalność. Preferencja siedzi w `localStorage`
(nie w profilu, więc działa też dla anonima), przełącznik „Skróty
klawiszowe" jest w stopce, a wszystkie trzy handlery `/` sprawdzają ją
przed otwarciem wyszukiwarki. Opis w akapitach wyżej („Obecny kod nie
spełnia żadnego") dotyczy stanu sprzed tej naprawy. Szczegóły:
`2026-08-07-wcag-skrot-i-graf-design.md`.
Rekomendacja z sekcji „Otwarte decyzje" (zawężenie do focusa pola
wyszukiwania) nie została wdrożona. Wpis w wykazie: sekcja „Odroczone
niezgodności".
Expand Down Expand Up @@ -677,6 +697,16 @@ jednowskaźnikowej. Powód: koszt nieproporcjonalny do pozostałych napraw w
tej iteracji, funkcja opcjonalna i w części wdrożeń wyłączona. Wpis w
wykazie: sekcja „Odroczone niezgodności".

**Korekta (2026-08-07):** kryterium **naprawione**, i to obiema drogami
wymienionymi wyżej. Graf dostał siedem przycisków nawigacji (cztery
kierunki, przybliż, oddal, dopasuj) oraz obsługę klawiaturą (strzałki,
`+`/`-`, `Home`) na fokusowalnym kontenerze — przy okazji domyka to
2.1.1 dla tego widoku. Handler robi `preventDefault` wyłącznie dla
obsłużonych klawiszy, żeby nie stworzyć pułapki klawiaturowej (2.1.2),
i przepuszcza kombinacje z Ctrl/Cmd/Alt, żeby nie przechwycić zoomu
przeglądarki (1.4.4). Szczegóły:
`2026-08-07-wcag-skrot-i-graf-design.md`.

## Hipotezy do zbadania w audycie

Poniższe **nie są stwierdzonymi naruszeniami**. To miejsca, w których
Expand Down Expand Up @@ -908,6 +938,11 @@ nie da się ułożyć:
wyżej), a `2.1.4` i `2.5.7` zostały świadomie odroczone, nie naprawione
(sekcja „Odroczone niezgodności"). Szczegóły:
`2026-08-06-wcag-naprawy-stwierdzone-design.md`.
**Korekta (2026-08-07):** krok (3) domknięto w drugim podejściu — `2.1.4`
i `2.5.7` naprawiono nazajutrz
(`2026-08-07-wcag-skrot-i-graf-design.md`). Cały krok „Naprawy
stwierdzone" jest więc wykonany; kroki (4)–(7) nie mają już na co czekać
po tej stronie.
4. **Baseline freeze.** Dopiero **po** (3) i po zamrożeniu próbki. Kolejność
jest istotna: baseline zakładany przed naprawami zaksięgowałby dług,
który zaraz znika, i wymuszałby natychmiastową aktualizację pliku.
Expand Down Expand Up @@ -939,6 +974,14 @@ globalny, nadal niewyłączalny), wpis w wykazie niezgodności zamiast
implementacji zawężenia do focusa. Powód i szczegóły: sekcja „Odroczone
niezgodności".

**Korekta (2026-08-07):** rekomendacja nadal nie została przyjęta, ale
kryterium **naprawiono inaczej** — przez wyłączalność, nie przez zawężenie
do focusa. Założenie stojące za rekomendacją („dwa pierwsze wyjścia
wymagają interfejsu ustawień, a ten nie istnieje dla anonima") okazało się
zbyt ostrożne: preferencja w `localStorage` plus jeden przycisk w stopce
wystarczą, bez budowania profilu użytkownika. Skrót działa więc nadal
globalnie — dla tych, którzy go nie wyłączyli.

**Motywy uczelniane w raporcie silnika.** `vizja`, `mwsl`, `uafm` to
motywy konkretnych klientów, nie warianty produktu. Jeśli test (b) wykaże
w nich zły kontrast, naprawa **zmienia branding uczelni** — decyzja nie
Expand Down Expand Up @@ -1041,22 +1084,15 @@ Zapisane tutaj, bo raport zgodności — właściwe miejsce takich wpisów —
jeszcze nie istnieje. Szczegóły i uzasadnienia:
`2026-08-06-wcag-naprawy-stwierdzone-design.md`.

**2.1.4 Character Key Shortcuts (A) — skrót `/`.**
Handler w `src/django_bpp/templates/base.html:39-49` wiąże `/` na
`document`, wykluczając jedynie `input`/`textarea`/`select`. Nie spełnia
żadnego z trzech warunków kryterium (wyłączalny, przemapowywalny, aktywny
tylko przy focusie). Stan: **niezgodne, świadomie odroczone**. Powód: brak
nacisku regulacyjnego i brak odbiorcy raportu; wszystkie trzy dopuszczone
wyjścia mają koszt produktowy (utrata skrótu globalnego albo zbudowanie
interfejsu preferencji dla użytkownika anonimowego).

**2.5.7 Dragging Movements (AA) — graf powiązań.**
`src/powiazania_autorow/templates/powiazania_autorow/graf.html`, widok
publiczny bramkowany per uczelnia (`czy_pokazywac_siec_powiazan`,
`src/bpp/views/browse.py:245`). Nawigacja wyłącznie przez przeciąganie.
Stan: **niezgodne, świadomie odroczone**. Powód: koszt nieproporcjonalny do
pozostałych napraw w tej iteracji, a funkcja jest opcjonalna i w części
wdrożeń wyłączona.
Wpisy, które przestały być aktualne, zostają w sekcji z datą domknięcia
zamiast zniknąć — inaczej nie dałoby się odtworzyć, co i kiedy uznano za
niezgodność.

**2.1.4 i 2.5.7 — domknięte 2026-08-07.**
Oba kryteria zostały naprawione w kolejnej iteracji: skrót `/` dostał
mechanizm wyłączania (localStorage + przełącznik w stopce), graf powiązań —
przyciski nawigacji i obsługę klawiaturą. Szczegóły:
`2026-08-07-wcag-skrot-i-graf-design.md`.

**3.1.2 — tytuł przełożony (`tytul`).**
Stan: **spełnione częściowo**. Oznaczamy tytuł oryginalny; przekład zostaje
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,11 @@ i raportu bez odbiorcy byłoby produkcją artefaktu, którego nikt nie czyta.
- 2.5.7 — nawigacja po grafie powiązań
- 3.1.2 dla tytułu przełożonego (`tytul`) — patrz „Decyzja o polu `jezyk_alt`"

**Korekta (2026-08-07):** 2.1.4 i 2.5.7 nie zostały ostatecznie odroczone —
domknęła je kolejna iteracja (`2026-08-07-wcag-skrot-i-graf-design.md`).
Zakres tej iteracji, opisany wyżej, pozostaje bez zmian; nieaktualna jest
tylko prognoza, że oba kryteria zostaną z niego trwale wyłączone.

**Nie wchodzi (poza tą iteracją):**

- bramka CI z axe-core, baseline, strona wzorników
Expand Down Expand Up @@ -499,24 +504,15 @@ miejsce. Zapisujemy je w specyfikacji z 2026-08-05 (nowa sekcja
„Odroczone niezgodności"), bo to dokument, który przyszły audyt przeczyta
jako pierwszy; issue na GitHubie by zaginęło.

Każdy wpis zawiera kryterium, stan, uzasadnienie i datę decyzji.

**2.1.4 Character Key Shortcuts (A) — skrót `/`.**
Handler w `src/django_bpp/templates/base.html:39-49` wiąże `/` na
`document`, wykluczając jedynie `input`/`textarea`/`select`. Nie spełnia
żadnego z trzech warunków kryterium (wyłączalny, przemapowywalny, aktywny
tylko przy focusie). Stan: **niezgodne, świadomie odroczone**. Powód: brak
nacisku regulacyjnego i brak odbiorcy raportu; wszystkie trzy dopuszczone
wyjścia mają koszt produktowy (utrata skrótu globalnego albo zbudowanie
interfejsu preferencji dla użytkownika anonimowego).

**2.5.7 Dragging Movements (AA) — graf powiązań.**
`src/powiazania_autorow/templates/powiazania_autorow/graf.html`, widok
publiczny bramkowany per uczelnia (`czy_pokazywac_siec_powiazan`,
`src/bpp/views/browse.py:245`). Nawigacja wyłącznie przez przeciąganie.
Stan: **niezgodne, świadomie odroczone**. Powód: koszt nieproporcjonalny do
pozostałych napraw w tej iteracji, a funkcja jest opcjonalna i w części
wdrożeń wyłączona.
Każdy wpis zawiera kryterium, stan, uzasadnienie i datę decyzji. Wpisy,
które przestały być aktualne, zostają z datą domknięcia zamiast zniknąć —
inaczej nie dałoby się odtworzyć, co i kiedy uznano za niezgodność.

**2.1.4 i 2.5.7 — domknięte 2026-08-07.**
Oba kryteria zostały naprawione w kolejnej iteracji: skrót `/` dostał
mechanizm wyłączania (localStorage + przełącznik w stopce), graf powiązań —
przyciski nawigacji i obsługę klawiaturą. Szczegóły:
`2026-08-07-wcag-skrot-i-graf-design.md`.

**3.1.2 — tytuł przełożony (`tytul`).**
Stan: **spełnione częściowo**. Oznaczamy tytuł oryginalny; przekład zostaje
Expand Down
Loading