Announcement capture trusts a page global the page can define or replace
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 52/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- playwright, typescript
- Ambito
- accessibility, testing-qa
Direzione di ricerca
Start by locating the announcement capture and checkPage adoption code, then read how the toast ancestor walk accesses attributes over CDP. Trace how the CLI init script exposes window.__usablDrain and how the path helper is guarded. Add tests for a page that predefines the drain and one that replaces it after load; each should produce a gap or failure, never a pass.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
What happens
Flow requirements read announcements through window.__usablDrain, a function in the page's own JavaScript world.
- On an adopted page (
checkPage), the capture is installed only if__usablDrainis not already defined. A page that defines its own before adoption keeps it. - On a CLI page, the init script defines it first, but page script can replace it afterwards.
Either way, page code can hand usabl announcements no screen reader spoke.
Why it matters
A flow requirement's expectedAnnouncement can pass on text the page supplied directly. That is a false green, and page text is supposed to be untrusted data.
Fix direction
Run the capture in an isolated world, the way the toast ancestor walk now reads attributes over CDP, or bind the drain to a value page script cannot reach. Add tests for a page that predefines the drain and for a page that replaces it after load. Both must give a gap or a failure, never a pass. The path helper has the same kind of guard and should be checked at the same time.
- Lingua principale
- TypeScript
- Stelle
- 0
- Fork
- 0
- Merge medio
- 2h 48m
- PR unite (30g)
- 8
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di usabl-dev/usabl
-
area: engine bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
-
Stop hook allows a stop on an unknown verdict, and the self-check prints IDLE for a null verdictApertaarea: assistants bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
area: engine bug security
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
Overlay: browser context failures are counted per plugin, not per browser, and close is not sharedApertaarea: overlay bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 64/100
-
area: engine enhancement performance
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
Tutte le issue di usabl-dev/usabl
Issue simili
-
createAI: the ai peer range allows ai@6, which the provider cannot work withForse già presa @akhil9tiet l’ha presa oggi. Apertabug
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 83/100
cloudflare/agents#2690 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
[fullsend] E2E: theme — global-header ignores app.branding.fullLogo (RHDHBUGS-3670)Forse già presa @fullsend-ai-coder l’ha presa oggi. Apertae2e-failure ready-to-code
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 78/100
redhat-developer/rhdh-plugin-export-overlays#4503 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
needs triage 📥
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 86/100
ethereum/ethereum-org-website#19601 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
cloudscape-design/components#5184 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
agilepathway/label-checker#805 ·
I maintainer di solito rispondono entro 1 giorno