Skip to content

CI verification for upstream browser-state PR #21 (do not merge) - #2

Closed
ElliotDrel wants to merge 4 commits into
mainfrom
fix/browser-state-contract
Closed

ElliotDrel wants to merge 4 commits into
mainfrom
fix/browser-state-contract

Conversation

@ElliotDrel

Copy link
Copy Markdown
Owner

Verification-only PR for munimtechnologies#21. Runs the existing identical CI workflow, including Swift build and real-Chrome smoke tests, on f2a466b. Upstream CI requires maintainer approval. No CI policy is bypassed or weakened; this fork run supplies independent platform evidence. Do not merge this verification PR. The fixing PR is upstream munimtechnologies#21.

…rols

Keep hidden and inert background subtrees out of dialog snapshots without dropping reachable offscreen controls. Preserve global actionable indices across bounded pages and expose scope, totals, and continuation in both native backends.

Add real Chromium regression coverage, malformed-option tests, Rust formatter coverage, native e2e checks, and CI/documentation updates. Fixes munimtechnologies#18.
Wait for an expected visible CSS selector on state-returning actions or read-only snapshots instead of treating a loaded tab as application readiness. Preserve action success separately from readiness met, timeout, error, or not_requested. Forward the contract and render status consistently in Rust and Swift, with site-policy checks on every observation.

Add a real Chromium regression proven to fail on deb4c7a, delayed-dialog MCP integration checks, contract tests, and safe retry documentation. Verified Windows and Linux Rust suites, 16 full browser integration checks, extension/build tests, and tool schema parity.
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 7, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-07T14:30:00.623057Z f2a466b PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@coderabbitai

coderabbitai Bot commented Oct 7, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: ab416bc6-241d-4f0d-bdb1-ebb966ac0de3
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f2a466b3d5

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +1213 to +1214
} catch (error) {
return outcome("error", { error: error.message || "evaluate failed" });

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Retry transient evaluation failures during navigation

When browser_navigate or a click starts a full-document navigation, Runtime.evaluate can reject while the old execution context is being destroyed. This catch immediately reports a final readiness error instead of polling until the configured deadline, after which withState immediately snapshots and may fail the whole call or return stale state. Retry transient navigation/context-loss errors within the wait budget while continuing to treat invalid selectors as terminal.

Useful? React with 👍 / 👎.

Comment on lines +620 to +623
// Tag the full selected scope so indices stay global and earlier pages remain
// actionable when paging an unchanged UI. Only label/serialize this page.
el.setAttribute('data-cu-idx', String(index));
if (index < offset || index >= offset + limit) continue;

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Restrict actions to indices exposed by snapshots

On a page with more controls than the requested limit, this assigns data-cu-idx to every control even though only the requested page is returned. After the initial 250-element snapshot, browser_click or browser_request_credentials can therefore accept index 250 or higher and act on a control the caller has never observed, whereas the previous implementation left unreturned controls unaddressable. Track which index ranges have actually been exposed and reject actions against unseen indices while preserving previously viewed pages.

Useful? React with 👍 / 👎.

@ElliotDrel ElliotDrel closed this Oct 7, 2026
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