원문: https://github.com/facebook/astryx/wiki/Accessibility-Checklist · 번역 기준: 2026-09-03
현재의 in-repo 기록들이 Astryx 접근성 요구 사항과 blocking 정책을 정의합니다. 이 페이지는 그것들을 적용하기 위한 실용적인 소비자/기여자 워크시트입니다. 기여자는 리뷰 전에 이를 사용하며, lab → core 승격(promotion)에는 이 체크리스트의 완료가 필요합니다(packages/lab/README.md 참고).
이 페이지는 컴포넌트 접근성에 대한 실용적 가이드를 보존합니다. AST-009 assistive-technology verification이 어떤 변경에 실제 assistive-technology/브라우저 증거가 필요한지, 그 증거가 무엇을 증명하는지, 그리고 미결(pending) 실제 AT 증거가 언제 stable release를 block하는지에 대한 현행 in-repo 기록입니다.
이 편집 가능한 가이드 페이지는 CONTRIBUTING.md에서 참조되며 Night Watch Component Auditor가 소비합니다. 이 페이지는 정책을 만들거나 override하지 않습니다.
Component Audit Rubric은 등급화 가능한(gradeable) 검사를 통해 현행 정책을 적용하며 이 페이지를 실용 워크시트로 사용합니다. AT 게이트 항목은 여전히 일반 rubric 검사를 사용합니다; AST-009는 실제 AT 트리거 분류, receipt, 예외, 재검증, stable-release 처리를 추가합니다.
⚠️ 동기화를 유지하십시오. 이 체크리스트는 현행 in-repo 요구 사항을 공유 primitive와 CI enforcement에 매핑합니다. 그 기록이나 구현이 바뀌면, 대응하는 Component Audit Rubric 검사, AST-009 상호 참조, CONTRIBUTING 포인터를 업데이트하십시오. 이 페이지만 편집하는 것은 정책을 바꾸지 않습니다.
동등물을 직접 만들지(hand-rolling) 말고 공유 primitive — VisuallyHidden, useAnnounce, useFocusTrap, 그리고 focus hook들(useListFocus, useGridFocus, useTreeFocus) — 을 compose 하십시오. 이것들은 WAI-ARIA APG 패턴을 구현하며 한 번만 테스트됩니다; 이 중 하나를 새로 재구현하는 것(bespoke reimplementation)은 리뷰 reject 사유입니다.
11개 항목입니다. 리뷰나 감사(audit)가 정확히 인용할 수 있도록 각각 아래에 자체 섹션이 있습니다. 승격 PR의 경우, 11개 전부를 복사해 PR 본문에서 각각 체크하십시오. 변경이 AT 특화 focus 결과, 음성/점자 announcement, virtual-cursor 진입, mode 변경, 또는 알려진 AT/브라우저 차이를 주장한다면, AST-009 assistive-technology verification 아래에서도 분류하십시오.
aria-label, 또는 aria-labelledby).aria-busy를 노출하고, focus 가능 상태를 유지하며, aria-disabled와 guard된 pointer 및 keyboard handler를 통해 중복 activation을 차단합니다. API가 그 작업을 interruptible하다고 명시적으로 선언할 때만 actionable 상태를 유지합니다. Busy 상태의 편집 컨트롤도 사용자가 입력을 계속하거나 수정할 수 있도록 focus 가능 상태를 유지합니다. Busy 상태를 구현하기 위한 목적만으로 native disabled를 사용하지 마십시오.direction에서 방향을 자동 감지하며, keydown 시 lazy하게 읽습니다 — isRtl override는 deprecated이며 전달해서는 안 됩니다).