Expand description
Shared Chrome DevTools Protocol browser runtime for Right Suite products.
BrowserSessionowns one Chrome process and any number of pages. Launch uses Chrome for Testing (chrome_for_testing_path); the system browser only withLaunchOptions::system_chromeorLaunchOptions::system_chrome_only. Shutdown and drop close gracefully (CDPBrowser.close/ SIGTERM to the process group, bounded waits, SIGKILL last).ProfileSpecselects a temporary, named persistent, or caller-owned directory profile.- Pointer and keyboard actions use real
Input.dispatch*Eventcommands, soevent.isTrusted,:hover, focus, and default actions behave as for a user. NetworkPolicyblocks loopback/link-local/private/reserved/file:targets (redirects, subresources, and every proxied connection included) before they reach the network; denials are typed (BrowserError::Blocked).AdmissionHookthen gates every effect before it happens.BrowserEventreports start/stop/crash/denied with session id, reason, and time.BrowserPage::observereturns refs that are checked for staleness before use.
Structs§
- Admission
Request - One typed request to perform an effect. Typed text is never included, only its length, so admission logs stay content-free.
- Blocked
Request - Copy of the old string-only blocked record, kept per page.
- Browser
Event - One structured, content-free lifecycle event for the caller’s journal. Never carries typed text, page content, or full URLs.
- Browser
Page - Browser
Request - One network request about to leave the browser, as seen by the allow callback.
- Browser
Session - One Chrome process with any number of pages.
- Console
Line - Launch
Options - Network
Policy - Typed SSRF/host policy. See the module docs for defaults.
- Observation
- Observed
Node - Pinned
Connection - One connection the proxy made, with the address it pinned.
- Policy
Denial - Typed network-policy denial returned as
crate::BrowserError::Blocked. - Rect
Enums§
- Action
Kind - Address
Class - Address class of a destination. Everything except
Publicis blocked by default. - Block
Reason - Why the network policy refused a request.
- Browser
Error - Decision
- Lifecycle
Kind - Policy
Decision - Answer of the per-request allow callback.
- Profile
Spec - Where the browser keeps cookies, storage, and logins.
- Target
- What an action addresses.
Constants§
- CHROME_
FOR_ TESTING_ ENV - Environment variable naming an explicit Chrome for Testing executable.
- CHROME_
FOR_ TESTING_ INSTALL_ HINT - How to get Chrome for Testing; part of
BrowserError::ChromeForTestingNotFound. - CHROME_
FOR_ TESTING_ ROOT_ ENV - Override the RightKit-managed Chrome for Testing version root.
Functions§
- chrome_
for_ testing_ candidates - Known Chrome for Testing install locations, in resolution order: RightKit-managed
versions (
RIGHTKIT_CHROME_FOR_TESTING_ROOToverrides the root), app installs, then Puppeteer’s cache (PUPPETEER_CACHE_DIR), then Playwright’s (PLAYWRIGHT_BROWSERS_PATH), newest version first within each cache. - chrome_
for_ testing_ path - Resolve Chrome for Testing:
explicit, thenRIGHTKIT_CHROME_FOR_TESTING, thenchrome_for_testing_candidates. Errors with install instructions; never returns regular Chrome. - classify_
ip - find_
chrome - System Chrome, Chromium, then Edge.
CHROMEenv overrides. Launch uses this only withLaunchOptions::system_chromeorLaunchOptions::system_chrome_only; preferchrome_for_testing_pathfor isolated automation.
Type Aliases§
- Admission
Hook - Allow
Callback - Event
Sink - Network
Request - Former name, kept for existing callers.
- Resolver
- Result