[docs] Selenium 5 release charter#17717
Conversation
PR Summary by QodoDocument Selenium 5 release charter and formalize ADR tracking workflow Description
Diagram
High-Level Assessment
Files changed (5)
|
Code Review by Qodo
1. --selenium-version flag not required
|
f5acd6e to
de97f5f
Compare
|
Code review by qodo was updated up to the latest commit de97f5f |
diemol
left a comment
There was a problem hiding this comment.
In the TLC meeting (2.7.2026) it was decided that Titus will address the comments, then we will review and approve to merge this.
|
Code review by qodo was updated up to the latest commit 5886f13 |
Code Review by Qodo
1.
|
|
Code review by qodo was updated up to the latest commit 6917144 |
📄 The agreed scope is in
docs/plans/selenium-5.md— read it there. This body is the context:why we need it, the required decisions, and the possible additions to consider.
Why we need this
We have dozens of ADR PRs in flight, and many assume different answers to "what is Selenium 5."
Binding-level efforts in .NET and Python are each moving on their own reading of the goal. We need
one agreed boundary for what blocks the release before arguing implementation details. This
charter is that boundary; the cross-binding mechanics are left to the ADRs it lists.
How the scope has moved
(
Selenium 5.0milestone) was: implementthe BiDi API, take Selenium Manager out of beta, deprecate CDP, with big breaking changes — and a
Classic fallback so enabling BiDi never changed existing behavior.
method with BiDi, each with a Classic fallback.
seleniumhq.github.io#2556.
This charter takes the #2556 scope. The Classic-fallback mechanism, in the plan since the start,
was removed from 5.0 scope at the 6/25 TLC meeting and folded into the classic-over-BiDi migration.
Where an older milestone or issue conflicts with the charter, the charter governs 5.0 scope.
Required decisions
Each must be settled by an accepted ADR before 5.0 ships; none is accepted yet. Each ADR has to
consolidate both what we agreed to implement — the surface, much of it settled at the summits
before we used ADRs — and how it behaves. The existing PRs cover only parts of that.
line? #17670 proposes internal-only.
#17709 describes three layers but does not
say which is supported, why, or how they differ — so it does not yet define the boundary. The ADR
has to pin where supported ends and internal begins, and on what basis.
and authentication; #13993) and how
handlers behave (observe vs. intercept, disposition, ordering;
#17685). [adr] Network async/event API proposal #17685 covers only the behavior; the
agreed surface still needs to be folded into the same decision.
DOM-mutation handlers; #13992) and how it
behaves. No ADR yet.
label and release independently of the bindings (e.g. how an unrecognized command is handled).
Proposed in #17741; issues
#11694,
#15754,
#17554.
Possible additions to consider
Subjects the charter defers; this PR is where we decide whether any should be required for 5.0. The
charter decides only whether a subject is in scope — each linked ADR is the design proposal
if it is. Each has an in-flight proposal:
partial-BiDi support / Classic fallback that goes with it (navigation: #17715,
#17232, POC #13190).
expect_*event waiting (#17671),response body & request timing (#17674),
navigation waiting (#17676).
(#17681).
(#17677), storage / cookies
(#17673), emulation
(#17675), user prompts
(#17672).