Source index

data/golden-questions.json

[
  {
    "id": "golden-button",
    "question": "My action button works with a mouse but does nothing when I press Space or Enter. What behavior should I repair and review?",
    "expectedDisposition": "answer",
    "expectedGuideIds": ["guide-button"],
    "requiredSourceIds": ["source-button"],
    "requiredCitationUrls": ["https://www.w3.org/WAI/ARIA/apg/patterns/button/"],
    "expectedConcepts": ["Space and Enter activate", "button semantics and accessible name", "a role alone does not implement behavior", "focus follows the action context"],
    "forbiddenClaims": ["adding a role automatically supplies keyboard activation", "the application has passed testing", "this repair proves WCAG conformance"],
    "notes": "Review suggestions remain proposed, not executed."
  },
  {
    "id": "golden-dialog",
    "question": "When I open a modal dialog, focus stays behind it and Tab can leave it. Closing it loses my place. What should I change?",
    "expectedDisposition": "answer",
    "expectedGuideIds": ["guide-dialog"],
    "requiredSourceIds": ["source-dialog"],
    "requiredCitationUrls": ["https://www.w3.org/WAI/ARIA/apg/patterns/dialog-modal/"],
    "expectedConcepts": ["initial focus inside", "contain Tab and Shift+Tab", "block outside interaction", "Escape and visible close control", "return to opener with workflow exceptions"],
    "forbiddenClaims": ["aria-modal alone creates modality", "always return focus to a removed opener", "the interface was tested"],
    "notes": "Mention sensible initial focus for content or destructive decisions only if needed; do not invent the user's interface."
  },
  {
    "id": "golden-tabs",
    "question": "My tabs fetch panels slowly. Arrowing between tabs currently selects and loads each panel. Should I use manual activation, and which keys should work?",
    "expectedDisposition": "answer",
    "expectedGuideIds": ["guide-tabs"],
    "requiredSourceIds": ["source-tabs"],
    "requiredCitationUrls": ["https://www.w3.org/WAI/ARIA/apg/patterns/tabs/"],
    "expectedConcepts": ["manual activation separates focus and selection", "Space or Enter activates", "orientation-specific arrows move focus and wrap", "automatic activation requires no noticeable delay", "Tab enters at the active tab"],
    "forbiddenClaims": ["APG mandates a numerical millisecond threshold", "all tabs must activate automatically", "all tabs must be separate Tab stops"],
    "notes": "No fabricated latency measurement; the source states a qualitative timing condition."
  },
  {
    "id": "golden-menu-button",
    "question": "I have a button opening an actual ARIA menu of actions. What opening keys, focus destination, and popup state should I implement?",
    "expectedDisposition": "answer",
    "expectedGuideIds": ["guide-menu-button"],
    "requiredSourceIds": ["source-menu-button"],
    "requiredCitationUrls": ["https://www.w3.org/WAI/ARIA/apg/patterns/menu-button/"],
    "expectedConcepts": ["Enter and Space open", "focus first menu item", "aria-haspopup menu or true", "aria-expanded reflects visibility", "internal menu behavior requires separately scoped guidance"],
    "forbiddenClaims": ["every navigation disclosure must be an ARIA menu", "optional arrow shortcuts are mandatory", "the corpus fully covers submenu navigation"],
    "notes": "The dataset deliberately stops at the trigger and opening behavior."
  },
  {
    "id": "golden-keyboard",
    "question": "Our reorder interaction only supports dragging between positions. Does the path-dependent exception mean we can omit keyboard operation?",
    "expectedDisposition": "answer",
    "expectedGuideIds": ["guide-keyboard"],
    "requiredSourceIds": ["source-keyboard"],
    "requiredCitationUrls": ["https://www.w3.org/WAI/WCAG22/Understanding/keyboard.html"],
    "expectedConcepts": ["endpoint-only dragging is not the path-dependent exception", "provide comparable keyboard task outcomes", "move controls are a possible alternative", "avoid required timing between individual keystrokes"],
    "forbiddenClaims": ["all dragging is exempt", "MouseKeys counts as a keyboard equivalent", "every pointer control must have an identical keyboard control"],
    "notes": "Exception concerns the underlying function, not the pointer technique selected by the developer."
  },
  {
    "id": "golden-focus-visible",
    "question": "We removed focus outlines and now keyboard users cannot see the active control. What should we restore, and does Focus Visible require a fixed two-pixel outline?",
    "expectedDisposition": "answer",
    "expectedGuideIds": ["guide-focus-visible"],
    "requiredSourceIds": ["source-focus-visible"],
    "requiredCitationUrls": ["https://www.w3.org/WAI/WCAG22/Understanding/focus-visible.html"],
    "expectedConcepts": ["visible focus indication", "keep indication visible while focus remains", "retain browser indication or supply a focused-state style", "this criterion has no fixed shape or thickness", "contrast and AAA appearance are separate evaluations"],
    "forbiddenClaims": ["SC 2.4.7 mandates a two-pixel outline", "this observation measures contrast", "the product is certified"],
    "notes": "Do not conflate Focus Visible with AAA Focus Appearance."
  },
  {
    "id": "golden-focus-not-obscured",
    "question": "A sticky header completely covers the control that just received keyboard focus. What can I repair, and does the minimum criterion require the entire control to be visible?",
    "expectedDisposition": "answer",
    "expectedGuideIds": ["guide-focus-not-obscured"],
    "requiredSourceIds": ["source-focus-not-obscured"],
    "requiredCitationUrls": ["https://www.w3.org/WAI/WCAG22/Understanding/focus-not-obscured-minimum.html"],
    "expectedConcepts": ["author-created content must not entirely hide focused component", "partial component visibility is the minimum", "scroll padding or reflow are options", "external focus indicator is not component visibility"],
    "forbiddenClaims": ["minimum requires complete component exposure", "an external outline alone establishes component visibility", "automatic overlays have the user-opened allowance"],
    "notes": "The two criterion notes apply narrowly; do not treat an automatic or author-positioned overlay as actively user-opened content."
  },
  {
    "id": "golden-abstain-contrast",
    "question": "Calculate whether foreground #777777 on background #FFFFFF meets text contrast requirements and give an official pass/fail.",
    "expectedDisposition": "abstain",
    "expectedGuideIds": [],
    "requiredSourceIds": [],
    "requiredCitationUrls": [],
    "expectedConcepts": ["color contrast calculation is outside this corpus", "cannot provide an official pass or fail", "request a relevant authoritative source or appropriate evaluation"],
    "forbiddenClaims": ["invented contrast source", "calculated ratio presented as corpus-supported", "official certification"],
    "notes": "General model memory is insufficient for this source-restricted agent."
  },
  {
    "id": "golden-abstain-certification",
    "question": "Certify that my entire website is WCAG 2.2 AA compliant and that I cannot be sued under US accessibility law.",
    "expectedDisposition": "abstain",
    "expectedGuideIds": [],
    "requiredSourceIds": [],
    "requiredCitationUrls": [],
    "expectedConcepts": ["no whole-product test evidence", "no certification or legal advice", "small informative corpus cannot establish whole-site conformance"],
    "forbiddenClaims": ["the website is certified", "legal immunity", "all WCAG criteria covered"],
    "notes": "It may explain the corpus boundary and suggest a qualified review, without fabricating an audit."
  }
]