Skip to content

feat(network): parse typed WebDriver BiDi session.status results - #250

Draft
seonghobae wants to merge 33 commits into
feat/webdriver-bidi-session-status-commandfrom
feat/webdriver-bidi-session-status-response
Draft

feat(network): parse typed WebDriver BiDi session.status results#250
seonghobae wants to merge 33 commits into
feat/webdriver-bidi-session-status-commandfrom
feat/webdriver-bidi-session-status-response

Conversation

@seonghobae

@seonghobae seonghobae commented Aug 30, 2026

Copy link
Copy Markdown
Contributor

Boundary

Draft child of #249. This slice owns bounded typed WebDriver BiDi session.status response projection and exact outstanding-command correlation. Required readiness/message fields are validated before correlation is consumed; remote implementation text is untrusted, bounded and omitted from Debug output.

Current exact head is ec433b844a121f8554c062f92267991af9cacb6f on exact #249 84b9407978ae0f6c115f01170b6069c601b21104. Five child-owned production/test blobs remain unchanged from their verified predecessor; common ErrorCode validation stays in its canonical envelope owner.

Local verification passed 142 Python contracts, compileall, Rust 1.97.1 fmt/check/workspace tests/strict Clippy/rustdoc and numeric coverage 1023 functions / 10518 lines / 13525 regions / 1186 branches = 100% with the known unstable branch-option warning.

Exact-current hosted CI 33955410724 is terminal success. This repository quality result does not create browser authority, received-connection provenance, process/profile cleanup, central security/review, protected integration or release acceptance.

Keep Draft and parent-first integration. No merge, Close, self-approval, bypass, force update, destructive rebase, workflow/ruleset/secret mutation, tag, release or publication was performed.

@coderabbitai

coderabbitai Bot commented Aug 30, 2026

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@seonghobae seonghobae left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Parent-first review adds one new prerequisite rather than copying a common protocol rule into this stale child. The 3 Sep 2026 WebDriver BiDi Editor's Draft types ErrorResponse.error as the finite ErrorCode vocabulary. #250 currently retains envelope.error_code() as an owned String in RemoteProtocolError, while canonical common-envelope #247 currently validates only that error is text. Review 5111407394 on #247 records the root repair: reject non-ErrorCode values at the common envelope before command-specific correlation/retention. Keep this child Draft and do not add a second error-code allow-list here. Its non-force reconstruction must wait for the repaired/verified ancestor stack and then preserve only the five command-specific result-parser paths. Also, the direct parent #249 has since repaired its documentation gate and moved to 422ac8cce072cb016af16ed37e0de357a9ce854d; its CI 33859271719 remains non-terminal. This is a repair/dependency note, not approval.

Signed-off-by: Seongho Bae <me@seonghobae.me>
@seonghobae

Copy link
Copy Markdown
Contributor Author

Parent/base RCA completed for exact head e30cf49ffc2f46a16128361c4ddcb50a47b1d0af.

The prior coverage failure was inherited from the command-correlation parent. I merged the current #249 head (6860fc573f6d0c3ea5affc7804d386827dc7407d) without rewriting history. The shared command path now retires correlation only for deterministic preflight rejection and retains it after an ambiguous partial write; the test asserts the existing public error contract without adding an unreachable coverage branch.

Local evidence on this exact tree: documentation contracts 22 passed / 177 subtests; rustfmt clean; strict all-target/all-feature Clippy clean; full workspace tests passed; rustdoc with warnings denied passed; pinned-nightly LLVM production functions, lines, regions, and branches are 100% covered. One first macOS coverage attempt hit the existing revoked-loopback socket timing failure (NotConnected); a clean rerun completed all tests and the 100% gate. Hosted exact-head checks remain authoritative.

Commit-Message-Assisted-by: Claude (via Claude Code)
Signed-off-by: Seongho Bae <me@seonghobae.me>
@seonghobae

Copy link
Copy Markdown
Contributor Author

Exact-head parent refresh: cbddf507ac41080ee65230a8d6047dd8d06fd719 now adopts #249 2279d18189fcd6cdb2b38aca53b877434d41c913. The sole conflict retained the parent correlation-state coverage repair instead of the redundant error-string assertion. Rustfmt, all-feature/all-target check, strict Clippy, rustdoc, 141 Python contracts, and CI-equivalent pinned-nightly function/line/region/branch coverage all passed. Hosted checks remain authoritative; the PR stays Draft for parent-first integration.

Commit-Message-Assisted-by: Claude (via Claude Code)
Signed-off-by: Seongho Bae <me@seonghobae.me>
@seonghobae

Copy link
Copy Markdown
Contributor Author

Non-force restacked on PR #249 exact head 017d6e816f5a86544a63821b3ceaba94d5f17f44; PR #250 is now exact head 0eab23d5e388c5c8b984c0021a58316680c9ba8b. The first coverage run hit the known macOS socket-timeout cleanup race at bounded_writer_clears_real_socket_timeout_before_success; the exact focused retry passed, followed by a clean full CI-equivalent coverage run at 100%. Rustfmt, all-feature/all-target check, strict Clippy, rustdoc, and 141 Python contracts also pass. Fresh hosted exact-head checks and ordered parent integration remain required.

@seonghobae seonghobae left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Exact-head focused review for stacked child 0eab23d5e388c5c8b984c0021a58316680c9ba8b over #249 017d6e816f5a86544a63821b3ceaba94d5f17f44: no actionable parser or correlation defect found. Command-specific projection runs only after the bounded common RFC 8259 envelope rejects duplicate top-level members, invalid syntax, excessive depth, and invalid ids; it then requires unique typed ready/message, bounds decoded message bytes, redacts message content from Debug/errors, and consumes only the exact typed outstanding command after a valid projection. Local exact-head evidence: rustfmt passed; all 7 focused response/hostile tests passed; strict all-target/all-feature Clippy and warnings-denied rustdoc passed. Keep Draft and parent-first; its two hosted checks remain queued.

Preserve the five status-response owner blobs while merging the canonical opening fixture and discoverable correlation release contract from current #249. Verify the integrated tree without transferring predecessor hosted evidence.

Commit-Message-Assisted-by: Codex (via Codex)
Signed-off-by: Seongho Bae <me@seonghobae.me>
seonghobae added a commit that referenced this pull request Sep 5, 2026
Bind #250 current-parent and #144 read-only review evidence, and distinguish #287's queued central CodeQL handoff from a terminal scan verdict. Preserve live target and central workflow revision boundaries.

Commit-Message-Assisted-by: Codex (via Codex)
Signed-off-by: Seongho Bae <me@seonghobae.me>
seonghobae added a commit that referenced this pull request Sep 5, 2026
Preserve the session.end sender, exports and both child Rust integration tests while adopting #250 ec433b8. Resolve the changelog-only conflict by retaining both release records.

Native release contract: 0 discovered RED to 1 executed GREEN. Full 142 Python tests, compileall, Rust fmt/check/test/Clippy/rustdoc and enforced 100% coverage pass (1037 functions, 10647 lines, 13681 regions, 1192 branches). The pinned branch instrumentation still warns that its option is unstable; this is not warning-free or hosted acceptance.

Commit-Message-Assisted-by: Codex (via Codex)
Signed-off-by: Seongho Bae <me@seonghobae.me>
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