test(browser): verify semantic role and name before controlled action - #71
Draft
seonghobae wants to merge 2 commits into
Draft
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This was referenced Aug 11, 2026
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.
Partial implementation of #28, stacked on PR #70.
Buyer-visible gap
PR #70 proves real pinned-Chromium input/click/post-condition execution for the controlled Agent Task, but its controlled targets are located only by fixture CSS and the branch explicitly does not claim semantic role/name evidence. This lane adds a bounded browser-computed accessibility evidence check before either controlled action proceeds.
Dependency
This Draft is stacked on unchanged exact PR #70 head
f9917cdd8050c9fdf0aefa669f4d981af85479d6and must remain Draft while #70/#65 are active.TDD / RCA sequence
977d2682dc191ca6b26b9de631a3642680abdbc0required_get_element_semantics, W3C WebDriver computed-role/computed-label endpoints, exacttextbox/Task textandbutton/Submit tasksemantics, and credential-free evidence booleans.31454219111, Rust contracts job93664601520, checked out that exact test-only head and failed at the intended repository contract because_get_element_semanticsdid not exist. This is the observed RED boundary.5f1f972f3e9888faa44af184fd54a466d20b6ddbadds only the bounded semantic read/verify step around the existing controlled elements. The runner still uses CSS solely to obtain the synthetic fixture element handle, then reads browser-computed role/name through WebDriver before clear/type or click. Mismatched or malformed semantics fail closed with bounded credential-free errors.Exact-head proof
On exact head
5f1f972f3e9888faa44af184fd54a466d20b6ddbagainst unchanged exact prerequisite #70 headf9917cdd8050c9fdf0aefa669f4d981af85479d6:31454448709: success, including Python repository contracts, canonical formatting, locked workspace/all-target check, full tests, strict Clippy, rustdoc and exact owned production function/line/region/branch coverage;31454448710, job93665257103: success using Chrome for Testing150.0.7871.129/ revisionr1639810;3/3, pass rate1.0; every trial reportsinput_semantics_verified=true,submit_semantics_verified=true,post_condition=true,input_echo_verified=true,extensions_disabled=true, andprofile_cleaned=true;mv3-compatibility-5f1f972f3e9888faa44af184fd54a466d20b6ddb, artifact ID9087505678, upload SHA-25681a0fe4190a413a088a9fd8b3094367966b84c77770c8a7fce1f85bba3c888e5;No predecessor-head result is transferred.
Truth boundary
This remains executable CI evidence, not the final OriginWeave browser runtime. CSS selectors remain controlled test-harness locators; verifying browser-computed role/name does not itself implement role/name search, a versioned WebDriver BiDi/CDP product adapter, OriginWeave
SemanticNodeObservationcomposition, opaque node-handle registration, typed policy dispatch, source-node/network provenance, resource telemetry, or real-site compatibility. Those remain separate boundaries of issue #28.