Skip to content

fix: scope SDG Goals and Geography locators to combobox role - #51

Merged
saqibmanan merged 1 commit into
CIfrom
fix/scope-sdg-geography-locators
Sep 11, 2026
Merged

saqibmanan merged 1 commit into
CIfrom
fix/scope-sdg-geography-locators

Conversation

@saqibmanan

Copy link
Copy Markdown
Contributor

TAGS_INPUT/SECTOR_INPUT already scope their following::input search to [@role='combobox']; SDG_GOALS_CONTAINER and GEOGRAPHY_CONTAINER never got the same fix and still use the bare, unscoped following::input[1] -- which can grab the wrong field's input depending on render timing/DOM order.

Reproduced live: a real prod deploy's smoke test read back "Budget" as the selected SDG goal instead of the requested "13" (Climate Action). Verified prod's actual SDG table is correct (all 17 standard UN goals) -- confirming this was the test targeting the wrong element, not a data/app bug.

Verified fix passes against dev.

TAGS_INPUT and SECTOR_INPUT in the same file already scope their
following::input search to [@ROLE='combobox'], but SDG_GOALS_CONTAINER
and GEOGRAPHY_CONTAINER were never updated to match -- both still used
the bare unscoped following::input[1], which can grab any intervening
non-combobox input (date pickers, file uploads, etc.) depending on
render timing/DOM state. This is exactly the aliasing class of bug
get_pill_texts() was already hardened against (see its docstring) --
but that only helps once the input locator itself is correct.

Reproduced live: a real deploy run's smoke test read back 'Budget' as
the selected SDG goal instead of the requested '13' (Climate Action) --
prod's actual SDG data is fully correct (verified directly), confirming
the wrong <input> was targeted, not a data issue.
@saqibmanan
saqibmanan merged commit 18681c5 into CI Sep 11, 2026
3 checks passed
@saqibmanan
saqibmanan deleted the fix/scope-sdg-geography-locators branch September 11, 2026 11:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant