perspective-audit

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Perspective Audit

视角审计

Deep-layer accessibility review for perspectives escalated to MEDIUM or HIGH by the a11y-planner or a11y-critic. This skill reads the JTBD checklists only for the escalated perspectives, applies severity calibration, routes findings by ARRM role, and splits code-level findings from content-level flags.
This is Layer 2 in a hybrid accessibility architecture:
  • Layer 1: a11y-planner and a11y-critic produce alarm levels (LOW / MEDIUM / HIGH) per perspective as lightweight hints.
  • Layer 2 (this skill): Runs the full JTBD checklist only for perspectives at MEDIUM or HIGH. Perspectives at LOW are not reviewed.
针对被a11y-planner或a11y-critic标记为MEDIUM(中等)或HIGH(高)级别的视角进行深度无障碍审查。该Skill仅读取被升级视角的JTBD检查表,应用严重性校准,按ARRM角色分配发现问题,并区分代码层面问题与内容层面标记。
这是混合无障碍架构中的第2层:
  • 第1层:a11y-planner和a11y-critic针对每个视角生成警报级别(LOW/ MEDIUM/ HIGH),作为轻量化提示。
  • 第2层(本Skill):仅对标记为MEDIUM或HIGH的视角执行完整JTBD检查表。标记为LOW的视角不进行审查。

When to Use

使用场景

Invoke this skill when:
  • a11y-planner or a11y-critic outputs a perspective alarm at MEDIUM or HIGH
  • You need granular, per-perspective findings with WCAG citations and ARRM routing
  • A design review surfaces concern about a specific access dimension (motion, contrast, auditory, cognitive) that warrants a dedicated checklist pass
Do not use this skill to review perspectives the planner/critic rated LOW. Evidence over assertion — this skill only fires where the risk signal exists.
在以下场景调用该Skill:
  • a11y-planner或a11y-critic输出的视角警报为MEDIUMHIGH级别
  • 你需要带有WCAG引用和ARRM分配的细粒度、按视角划分的问题结果
  • 设计审查中发现特定无障碍维度(动效、对比度、听觉、认知)存在问题,需要专门执行检查表
请勿使用本Skill审查被规划器/审查器评为LOW级别的视角。基于证据而非断言——本Skill仅在存在风险信号时触发。

The 7 Perspectives

7个无障碍视角

#PerspectiveWCAG Criteria (AA)
1Magnification & Reflow1.4.4, 1.4.10, 1.4.12, 1.4.13, 2.4.11
2Environmental Contrast1.3.3, 1.4.1, 1.4.3, 1.4.11
3Vestibular & Motion Sensitivity2.2.2, 2.3.1, 2.5.4
4Auditory Access1.2.1, 1.2.2, 1.2.3, 1.2.5, 1.4.2
5Keyboard & Motor Access1.3.4, 2.1.1, 2.1.2, 2.4.1, 2.4.3, 2.4.7, 2.4.13, 2.5.1, 2.5.2, 2.5.3, 2.5.7, 2.5.8
6Screen Reader & Semantic Structure1.1.1, 1.3.1, 1.3.2, 2.4.2, 2.4.4, 2.4.6, 3.1.1, 3.1.2, 3.3.1, 3.3.2, 4.1.2, 4.1.3
7Cognitive & Neurodivergent1.3.5, 2.2.1, 2.4.5, 3.2.1, 3.2.2, 3.2.3, 3.2.4, 3.2.6, 3.3.3, 3.3.4, 3.3.7, 3.3.8
序号视角WCAG 标准(AA级)
1放大与重排1.4.4, 1.4.10, 1.4.12, 1.4.13, 2.4.11
2环境对比度1.3.3, 1.4.1, 1.4.3, 1.4.11
3前庭与动效敏感度2.2.2, 2.3.1, 2.5.4
4听觉无障碍1.2.1, 1.2.2, 1.2.3, 1.2.5, 1.4.2
5键盘与操作无障碍1.3.4, 2.1.1, 2.1.2, 2.4.1, 2.4.3, 2.4.7, 2.4.13, 2.5.1, 2.5.2, 2.5.3, 2.5.7, 2.5.8
6屏幕阅读器与语义结构1.1.1, 1.3.1, 1.3.2, 2.4.2, 2.4.4, 2.4.6, 3.1.1, 3.1.2, 3.3.1, 3.3.2, 4.1.2, 4.1.3
7认知与神经多样性1.3.5, 2.2.1, 2.4.5, 3.2.1, 3.2.2, 3.2.3, 3.2.4, 3.2.6, 3.3.3, 3.3.4, 3.3.7, 3.3.8

Severity Calibration

严重性校准

SeverityWhen to Apply
CRITICALBlocks access entirely — keyboard trap, no captions on speech video, CAPTCHA with no alternative
MAJORSignificant barrier for the perspective's user group — contrast below 3:1, motion without prefers-reduced-motion, missing error association
MINORDegrades experience but workaround exists — suboptimal label text, jargon defined nearby, help location slightly inconsistent
ENHANCEMENTAAA criterion — report but do not escalate to MAJOR/CRITICAL regardless of implementation gap
严重性适用场景
CRITICAL(严重)完全阻碍访问——键盘陷阱、语音视频无字幕、无替代方案的CAPTCHA
MAJOR(主要)对该视角用户群体造成显著障碍——对比度低于3:1、未适配prefers-reduced-motion的动效、缺失错误关联
MINOR(次要)影响体验但存在替代方案——标签文本不够优化、术语在附近有定义、帮助位置略有不一致
ENHANCEMENT(优化)AAA级标准——无论实现差距如何,仅报告不升级为MAJOR/CRITICAL

Steps

步骤

Step 1 — Confirm escalated perspectives

步骤1 — 确认被升级的视角

Read the planner or critic output to identify which perspectives are flagged MEDIUM or HIGH. List them explicitly before proceeding. If no escalation list is provided, ask: "Which perspectives did the planner or critic flag at MEDIUM or HIGH?"
Do not run checklists for perspectives at LOW.
读取规划器或审查器的输出,确定哪些视角被标记为MEDIUM或HIGH。在继续前明确列出这些视角。如果未提供升级列表,请询问:“规划器或审查器将哪些视角标记为MEDIUM或HIGH?”
请勿为标记为LOW的视角执行检查表。

Step 2 — Read reference files

步骤2 — 读取参考文件

Read both reference files at invocation:
  1. .claude/skills/perspective-audit/references/perspectives.md
    — Read only the sections for escalated perspectives. Do not load sections for LOW-rated perspectives.
  2. .claude/skills/perspective-audit/references/arrm-perspective-mapping.md
    — Read in full for finding routing.
调用时读取以下两个参考文件:
  1. .claude/skills/perspective-audit/references/perspectives.md
    — 仅读取被升级视角对应的章节。请勿加载LOW级别视角的章节。
  2. .claude/skills/perspective-audit/references/arrm-perspective-mapping.md
    — 完整读取以用于问题分配。

Step 3 — Read the artifact under review

步骤3 — 读取待审查工件

Read all source files relevant to the escalated perspectives. Understand the component structure, markup, CSS, and any JS handling state or interaction before running checklists.
读取与被升级视角相关的所有源文件。在执行检查表前,理解组件结构、标记、CSS以及任何处理状态或交互的JS代码。

Step 4 — Run per-perspective checklists

步骤4 — 执行按视角划分的检查表

For each escalated perspective:
  1. Work through the JTBD checklist from
    references/perspectives.md
    item by item.
  2. For each checklist item:
    • Mark PASS if the implementation satisfies the criterion with evidence (file:line or observed markup).
    • Mark FINDING if not satisfied — generate a finding using the format in Step 5.
    • Mark N/A if the criterion does not apply (e.g., no video present for Auditory Access caption checks).
  3. Check all red flags listed for the perspective — any red flag that fires is automatically CRITICAL.
  4. Separate code-level findings (enforceable from source) from content-level findings (require human verification).
针对每个被升级的视角:
  1. 逐项执行
    references/perspectives.md
    中的JTBD检查表。
  2. 针对每个检查表项:
    • 如果实现符合标准且有证据(文件:行号或观察到的标记),标记为PASS。
    • 如果不符合,标记为FINDING——按照步骤5的格式生成问题记录。
    • 如果标准不适用(例如,听觉无障碍的字幕检查中无视频),标记为N/A。
  3. 检查该视角列出的所有红色标记——任何触发的红色标记自动判定为CRITICAL。
  4. 区分代码层面问题(可通过源文件强制执行)与内容层面问题(需人工验证)。

Step 5 — Format each finding

步骤5 — 格式化每个问题记录

Use this format for every finding:
**Finding:** [clear description of what is wrong]
**WCAG:** [criterion number and name — e.g., 2.4.7 Focus Visible]
**Perspective:** [which perspective]
**Severity:** CRITICAL | MAJOR | MINOR | ENHANCEMENT
**Route to:** [ARRM primary role] (secondary: [role])
**Evidence:** [file:line citation or observed markup/CSS]
**Fix:** [specific recommended action]
If the audit was invoked from an
A11y Evidence Finding
block, preserve these traceability fields in the finding when available:
**Finding ID:** [finding_id]
**Fingerprint:** [fingerprint]
**Source:** [source test, snapshot, axe rule, or critic finding]
**Trend:** new | persistent | worsening | improving | resolved
**Perspective alarms:** [incoming alarms and any updated alarm levels]
When the incoming contract's evidence is
keyboard-a11y-tester
journey-audit output (trace steps, deterministic findings, reading-order census): map its personas to alarms —
keyboard
findings feed
keyboard_motor
,
screen-reader
findings feed
screen_reader_semantic
— and keep trace-step and census-selector citations intact through the audit. Batch-crawl 4.1.3 findings arrive as verification prompts, not failures; require driven-session
live_announcements
evidence before treating a live-region defect as confirmed (calibration:
evals/results/keyboard-a11y-tester/
).
When the incoming contract's evidence is
virtual-screen-reader
component-assertion output (spoken-phrase logs from the a11y-test component lane): findings feed
screen_reader_semantic
only — never
keyboard_motor
, because VSR interactions are synthetic. Keep the tool version + test file + exact-phrase citations intact through the audit. Silence is confirmable evidence only when the structural absence (no role/aria-live) is attached; a silent mount-with-content
role="alert"
is inconclusive, and an empty
"polite: "
entry marks an
aria-atomic
region clear (calibration:
evals/results/virtual-screen-reader/
).
Perspective-audit may also emit a contract-compatible block for new CRITICAL or MAJOR findings discovered during the deep review:
undefined
每个问题记录使用以下格式:
**问题:** [清晰描述问题内容]
**WCAG:** [标准编号及名称 — 例如:2.4.7 焦点可见]
**视角:** [所属视角]
**严重性:** CRITICAL | MAJOR | MINOR | ENHANCEMENT
**分配给:** [ARRM主要角色] (次要: [角色])
**证据:** [文件:行号引用或观察到的标记/CSS]
**修复建议:** [具体推荐操作]
如果审计是从
A11y Evidence Finding
块调用的,在可用时保留这些可追溯字段:
**问题ID:** [finding_id]
**指纹:** [fingerprint]
**来源:** [源测试、快照、axe规则或审查器问题]
**趋势:** new | persistent | worsening | improving | resolved
**视角警报:** [传入警报及任何更新后的警报级别]
当传入合约的证据是
keyboard-a11y-tester
的旅程审计输出(跟踪步骤、确定性问题、阅读顺序统计):将其角色映射到警报——
keyboard
问题归入
keyboard_motor
screen-reader
问题归入
screen_reader_semantic
——并在审计过程中保留跟踪步骤和统计选择器引用。批量抓取的4.1.3问题作为验证提示而非失败;在将实时区域缺陷确认为问题前,需要
live_announcements
的驱动会话证据(校准参考:
evals/results/keyboard-a11y-tester/
)。
当传入合约的证据是
virtual-screen-reader
的组件断言输出(来自a11y-test组件通道的语音短语日志):问题仅归入
screen_reader_semantic
——绝不归入
keyboard_motor
,因为VSR交互是模拟的。在审计过程中保留工具版本+测试文件+精确短语引用。只有当存在结构缺失(无role/aria-live)时,静默状态才是可确认的证据;带有内容的
role="alert"
组件静默加载无法定论,空的
"polite: "
条目表示
aria-atomic
区域无问题(校准参考:
evals/results/virtual-screen-reader/
)。
视角审计还可能为深度审查中发现的新CRITICAL或MAJOR问题输出合约兼容块:
undefined

A11y Evidence Finding

A11y Evidence Finding

finding_id: [stable lowercase id] fingerprint: [stable 8-64 char hex hash] source: perspective-audit [perspective name] checklist wcag_or_apg: [WCAG 2.2 criterion or WAI-ARIA APG pattern] section_508_fpc_context: [Revised Section 508/WCAG 2.0 A-AA context if applicable, or "not in scope"] severity: [CRITICAL | MAJOR | MINOR | ENHANCEMENT] perspective_alarms: [perspective=LOW|MEDIUM|HIGH list] evidence: [file:line, observed markup/CSS, or human-verification boundary] reproduction_steps: [steps, command, or "source review only"] expected_behavior: [expected user/AT behavior] actual_behavior: [observed behavior] trend: [new | persistent | worsening | improving | resolved]

Rules:
- Every finding must cite a WCAG criterion. No finding without a citation.
- AAA criteria are always ENHANCEMENT — never escalate them to MAJOR or CRITICAL.
- Content-level findings append: `[Human verification required — cannot be confirmed from source]`
- Code-level findings must include file:line evidence.
- Preserve ARRM routing even when using the contract block; the contract adds traceability, not ownership by itself.
finding_id: [稳定小写ID] fingerprint: [稳定8-64字符十六进制哈希] source: perspective-audit [视角名称] checklist wcag_or_apg: [WCAG 2.2标准或WAI-ARIA APG模式] section_508_fpc_context: [适用的修订版Section 508/WCAG 2.0 A-AA上下文,或"not in scope"] severity: [CRITICAL | MAJOR | MINOR | ENHANCEMENT] perspective_alarms: [perspective=LOW|MEDIUM|HIGH列表] evidence: [file:line、观察到的标记/CSS或人工验证边界] reproduction_steps: [步骤、命令或"source review only"] expected_behavior: [预期用户/AT行为] actual_behavior: [观察到的行为] trend: [new | persistent | worsening | improving | resolved]

规则:
- 每个问题记录必须引用WCAG标准。无引用的问题记录无效。
- AAA级标准始终归为ENHANCEMENT——绝不升级为MAJOR或CRITICAL。
- 内容层面问题需附加:`[需人工验证——无法通过源文件确认]`
- 代码层面问题必须包含文件:行号证据。
- 即使使用合约块,也要保留ARRM分配;合约仅添加可追溯性,不改变归属权。

Step 6 — Compile the summary

步骤6 — 编译总结

After all escalated perspectives are reviewed, output the combined summary:
undefined
完成所有被升级视角的审查后,输出合并总结:
undefined

Perspective Audit Summary

视角审计总结

Component/artifact reviewed: [name] Perspectives escalated for deep review: [list] Perspectives at LOW (not reviewed): [list]
审查的组件/工件: [名称] 升级为深度审查的视角: [列表] LOW级别视角(未审查): [列表]

Findings by Severity

按严重性划分的问题数量

SeverityCount
CRITICALN
MAJORN
MINORN
ENHANCEMENTN
严重性数量
CRITICALN
MAJORN
MINORN
ENHANCEMENTN

Perspectives That Passed

通过审查的视角

[List perspectives where all checklist items were PASS or N/A]
[列出所有检查表项均为PASS或N/A的视角]

Perspectives With Findings — Grouped by ARRM Role

存在问题的视角——按ARRM角色分组

Front-End Dev
  • [Finding title] — [Perspective] — [Severity] — [WCAG criterion]
Visual Design
  • [Finding title] — [Perspective] — [Severity] — [WCAG criterion]
UX Design
  • [Finding title] — [Perspective] — [Severity] — [WCAG criterion]
Content Author
  • [Finding title] — [Perspective] — [Severity] — [WCAG criterion]
前端开发
  • [问题标题] — [视角] — [严重性] — [WCAG标准]
视觉设计
  • [问题标题] — [视角] — [严重性] — [WCAG标准]
UX设计
  • [问题标题] — [视角] — [严重性] — [WCAG标准]
内容作者
  • [问题标题] — [视角] — [严重性] — [WCAG标准]

Open Questions Requiring Human Verification

需人工验证的未解决问题

[List all content-level findings that cannot be confirmed from source — caption accuracy, transcript completeness, audio description coverage, reading level, alt text quality for editorial images]
[列出所有无法通过源文件确认的内容层面问题——字幕准确性、转录完整性、音频描述覆盖范围、阅读水平、编辑图片的替代文本质量]

Recommended Next Step

建议下一步操作

[One of: PASS (no CRITICAL/MAJOR findings), REVISE (MAJOR findings present — address before shipping), BLOCK (CRITICAL findings present — do not ship until resolved)]
undefined
[以下选项之一:PASS(无CRITICAL/MAJOR问题)、REVISE(存在MAJOR问题——发布前修复)、BLOCK(存在CRITICAL问题——修复前禁止发布)]
undefined

Companion Skills

配套Skill

  • a11y-planner: Layer 1 upstream — produces alarm levels that trigger this skill.
  • a11y-critic: Layer 1 upstream — produces alarm levels that trigger this skill. Also reviews design decisions post-implementation.
  • a11y-test: Run after findings are addressed — verifies fixes with automated scans and keyboard tests.
  • a11y-planner: 上游第1层——生成触发本Skill的警报级别。
  • a11y-critic: 上游第1层——生成触发本Skill的警报级别。还会在实现后审查设计决策。
  • a11y-test: 问题修复后运行——通过自动化扫描和键盘测试验证修复效果。

Reference Files

参考文件

  • .claude/skills/perspective-audit/references/perspectives.md
    — JTBD checklists, red flags, and evidence requirements for all 7 perspectives.
  • .claude/skills/perspective-audit/references/arrm-perspective-mapping.md
    — ARRM role routing decision tree and finding output format.
  • .claude/skills/perspective-audit/references/perspectives.md
    — 所有7个视角的JTBD检查表、红色标记和证据要求。
  • .claude/skills/perspective-audit/references/arrm-perspective-mapping.md
    — ARRM角色分配决策树和问题输出格式。