fix(a11y): name directory navigation from translatable text - #637
fix(a11y): name directory navigation from translatable text#637seonghobae wants to merge 6 commits into
Conversation
|
👋 Jules, reporting for duty! I'm here to lend a hand with this pull request. When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down. I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job! For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with New to Jules? Learn more at jules.google/docs. For security, I will only act on instructions from the user who triggered this task. |
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueThanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Current exact authority
master@728f0f33323e43573d6664209891099502827d5db242c314aea49357c0ea2171a88778d4cfb92171src/main/kotlin/html4tree/main.kt,src/test/kotlin/html4tree/MainTest.ktReview → minimal repair
The valid local change replaces the navigation landmark's literal
aria-label="디렉토리 목록"witharia-labelledby="nav-heading"and adds a visually hidden<h2 id="nav-heading">디렉토리 목록</h2>. The generated text node can participate in ordinary document translation while still supplying the navigation landmark's accessible name. The existing regression pins that source structure.The generated branch also appended a repository-wide
.jules/palette.mdrule that generalized this one implementation choice into a universal navigation doctrine. Normal descendantb242c314aea49357c0ea2171a88778d4cfb92171restores.jules/palette.mdto the exact protected blob604d7810eaba3b51cc8c14b97b160a0b1a81a12b. The protected Palette already carries the relevant hidden-text/translation guidance; no force push or destructive rebase was used.Evidence boundary
Source-string assertions do not establish that Chrome Translate, Safari/VoiceOver, NVDA, or another browser/assistive-technology combination actually translates and announces the landmark as intended. The hidden
<h2>also deliberately adds a heading-navigation target, so that document-outline change must be verified rather than called an unconditional accessibility improvement.Before Ready, verify on this exact generated document in a current browser:
nav-headingand no duplicateid/name;Do not claim blanket screen-reader, WCAG, or browser-translation compatibility from source inspection alone.
Exact-head evidence
Fresh exact-head workflows are non-terminal: CI
34014106553, Security Scan34014106662, SAST Semgrep34014106589, and CodeQL PR34014106611are queued. Predecessor results do not transfer, and no qualifying independent current-head approval is assumed.Delivery Gate: 의도성 PASS; 기능 완전성 PARTIAL pending real-browser landmark/translation execution; 콘텐츠 적합성 PASS after generated doctrine removal; 복원력 PARTIAL pending responsive/keyboard checks; 증거성 FAIL/PENDING until current browser/a11y evidence exists; 고유성 N/A.
Keep Draft. No self-approval, gate weakening, force update, destructive rebase, generated-doctrine promotion, fabricated screenshot/AT evidence, or predecessor GREEN transfer.