diff --git a/__tests__/src/rules/no-interactive-element-to-noninteractive-role-test.js b/__tests__/src/rules/no-interactive-element-to-noninteractive-role-test.js
index d8b55159..9adc44eb 100644
--- a/__tests__/src/rules/no-interactive-element-to-noninteractive-role-test.js
+++ b/__tests__/src/rules/no-interactive-element-to-noninteractive-role-test.js
@@ -372,6 +372,7 @@ const neverValid = [
{ code: '', errors: [expectedError] },
{ code: '', errors: [expectedError] },
{ code: '
;', errors: [expectedError] },
+ { code: ';', errors: [expectedError] },
/* Custom elements */
{ code: '', errors: [expectedError], settings: componentsSettings },
];
diff --git a/src/util/isInteractiveElement.js b/src/util/isInteractiveElement.js
index a9e3f991..350b3438 100644
--- a/src/util/isInteractiveElement.js
+++ b/src/util/isInteractiveElement.js
@@ -102,7 +102,10 @@ function checkIsInteractiveElement(tagName, attributes): boolean {
}
// Check in elementAXObjects for AX Tree associations for this element.
const isInteractiveAXElement = some(iterFrom(interactiveElementAXObjectSchemas), elementSchemaMatcher);
- if (isInteractiveAXElement) {
+ if (
+ isInteractiveAXElement
+ || tagName === 'summary' // TODO: Remove this hard-coded addition once axobject-query is updated.
+ ) {
return true;
}