[A11Y-11106] Implement SIA-R118. - #2149
Merged
Merged
Conversation
🦋 Changeset detectedLatest commit: 2dccb5d The changes in this PR will be included in the next version bump. This PR includes changesets to release 76 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Jym77
suggested changes
Jul 21, 2026
Jym77
left a comment
Contributor
There was a problem hiding this comment.
Looks great.
There is a discussion around how we will concretely answer the questions (connection with an AI, …) and how we can reduce the number of requests/tokens used. This may be ignored for now, knowing we can change the rule later on. Two points to consider:
- In the current implementation, the questions are asked sequentially. This means that Dory does not know what is the next question until we get the answer to the current one, and thus each question has to be asked separately. We may still have some special code in Nemo (who is dispatching the questions to further systems) to detect that "does-image-contain-text" should actually ask about all the exceptions in one go and then unpack the answer and store it as several answers. This, however, forces a bit of the logic to be duplicated inside Nemo. Another possibility could be to ask all questions together (which may need a new return type of several boolean, or encoding them in an integer, …); so that if we later decide to add or remove one of them, we do not need any change in Nemo. (or we build a system in the Question class to group several questions into a single one, similar to the classic
Promise.allwrapper, this may be the most future-proof solution, but also the most complex one). - The "logo" exception is a case for which we can certainly make a good heuristic (if the image's name is
logoor*_logo_*, or a few other cases) (this would fit the (yet unbuilt) "tier 1" way to answer questions, which I am convinced we'll need to build just to save AI tokens by not asking repeatedly whetherlogo.jpghas essential text presentation… In the current "sequential" setup, that question is asked second. We could build the heuristic to answer the "does-image-contain-text" question instead, but that is definitely a mismatch (or the heuristic also say "yes" to that question if it detects a logo, which is also a bit confusing). No very neat way here, maybe the "group all questions" approach is the good one.
Anyway, these are probably more things to keep in mind for later and to revisit when we add the rule to the platform.
Jym77
approved these changes
Jul 23, 2026
rcj-siteimprove
previously approved these changes
Jul 29, 2026
pooya-si
enabled auto-merge
July 29, 2026 13:58
pooya-si
disabled auto-merge
July 29, 2026 13:58
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Implement SIA-R118.
Jira Ticket
A11Y-11106
Related Documentation
https://www.w3.org/TR/WCAG2/#images-of-text
https://github.com/Siteimprove/sanshikan/blob/main/rules/sia-r118.md