Source: pinned Chrome 152.0.7977.82. The schema contains 58 domains, 665 commands, 234 events and 611 named types. Wire types and parameter validation do not imply semantic support.
implemented declares the described command scope with regression evidence; partial records remaining limits; unsupported makes no semantic claim. Evidence links identify tests, not an assertion that every Chrome option is covered. See compatibility scope and the complete JSON inventory.
| Domain | Commands: implemented / partial / unsupported | Events: implemented / partial / unsupported |
|---|---|---|
| Accessibility | 0 / 0 / 8 | 0 / 0 / 2 |
| Ads | 0 / 0 / 1 | 0 / 0 / 0 |
| Animation | 0 / 0 / 10 | 0 / 0 / 4 |
| Audits | 0 / 0 / 4 | 0 / 0 / 1 |
| Autofill | 0 / 0 / 4 | 0 / 0 / 1 |
| BackgroundService | 0 / 0 / 4 | 0 / 0 / 2 |
| BluetoothEmulation | 0 / 0 / 15 | 0 / 0 / 3 |
| Browser | 0 / 9 / 10 | 0 / 0 / 2 |
| CSS | 0 / 12 / 27 | 0 / 4 / 2 |
| CacheStorage | 0 / 0 / 5 | 0 / 0 / 0 |
| Cast | 0 / 0 / 6 | 0 / 0 / 2 |
| Console | 0 / 0 / 3 | 0 / 0 / 1 |
| CrashReportContext | 0 / 0 / 1 | 0 / 0 / 0 |
| DOM | 0 / 28 / 25 | 0 / 9 / 10 |
| DOMDebugger | 0 / 0 / 10 | 0 / 0 / 0 |
| DOMSnapshot | 0 / 0 / 4 | 0 / 0 / 0 |
| DOMStorage | 0 / 0 / 6 | 0 / 0 / 4 |
| Debugger | 5 / 1 / 27 | 3 / 1 / 1 |
| DeviceAccess | 0 / 0 / 4 | 0 / 0 / 1 |
| DeviceOrientation | 0 / 0 / 2 | 0 / 0 / 0 |
| DigitalCredentials | 0 / 0 / 1 | 0 / 0 / 0 |
| Emulation | 0 / 9 / 38 | 0 / 0 / 2 |
| EventBreakpoints | 0 / 0 / 3 | 0 / 0 / 0 |
| Extensions | 0 / 0 / 8 | 0 / 0 / 0 |
| FedCm | 0 / 0 / 7 | 0 / 0 / 2 |
| Fetch | 1 / 6 / 2 | 0 / 1 / 1 |
| FileSystem | 0 / 0 / 1 | 0 / 0 / 0 |
| HeadlessExperimental | 0 / 0 / 3 | 0 / 0 / 0 |
| HeapProfiler | 0 / 0 / 12 | 0 / 0 / 5 |
| IO | 0 / 0 / 3 | 0 / 0 / 0 |
| IndexedDB | 0 / 0 / 9 | 0 / 0 / 0 |
| Input | 1 / 3 / 9 | 0 / 0 / 1 |
| Inspector | 0 / 2 / 0 | 0 / 0 / 4 |
| LayerTree | 0 / 0 / 9 | 0 / 0 / 2 |
| Log | 0 / 2 / 3 | 0 / 0 / 1 |
| Media | 0 / 0 / 2 | 0 / 0 / 5 |
| Memory | 0 / 0 / 11 | 0 / 0 / 0 |
| Network | 1 / 16 / 24 | 0 / 5 / 39 |
| Overlay | 0 / 0 / 31 | 0 / 0 / 6 |
| PWA | 0 / 0 / 7 | 0 / 0 / 0 |
| Page | 1 / 21 / 39 | 0 / 9 / 19 |
| Performance | 0 / 3 / 1 | 0 / 0 / 1 |
| PerformanceTimeline | 0 / 0 / 1 | 0 / 0 / 1 |
| Preload | 0 / 0 / 2 | 0 / 0 / 6 |
| Profiler | 0 / 0 / 9 | 0 / 0 / 3 |
| Runtime | 2 / 10 / 11 | 0 / 6 / 2 |
| Schema | 0 / 0 / 1 | 0 / 0 / 0 |
| Security | 0 / 3 / 2 | 0 / 0 / 3 |
| ServiceWorker | 0 / 0 / 12 | 0 / 0 / 3 |
| SmartCardEmulation | 0 / 0 / 12 | 0 / 0 / 14 |
| Storage | 0 / 3 / 27 | 0 / 0 / 8 |
| SystemInfo | 0 / 0 / 3 | 0 / 0 / 0 |
| Target | 3 / 10 / 6 | 0 / 6 / 1 |
| Tethering | 0 / 0 / 2 | 0 / 0 / 1 |
| Tracing | 0 / 0 / 6 | 0 / 0 / 3 |
| WebAudio | 0 / 0 / 3 | 0 / 0 / 13 |
| WebAuthn | 0 / 0 / 13 | 0 / 0 / 4 |
| WebMCP | 0 / 0 / 4 | 0 / 0 / 4 |
Unlisted entries are unsupported. Some harmless client acknowledgments are explicitly listed as unsupported because they provide no underlying browser behavior.
| Name | Status | Scope and limitations | Regression evidence |
|---|---|---|---|
Audits.disable |
unsupported | Client subscription state only; no Audits issue engine or WebMCP model-context backend. Semantic support is not claimed. | browser.connect |
Audits.enable |
unsupported | Client subscription state only; no Audits issue engine or WebMCP model-context backend. Semantic support is not claimed. | browser.connect |
Browser.close |
partial | Acknowledges then closes CDP server and owned Pages; an accepted close survives requesting transport EOF. Embedding process lifetime is separate. | TestAcceptedCloseSurvivesTransportEOF |
Browser.getVersion |
partial | Pinned protocol and product identity; Mimic product name and virtual JS engine version identify the actual implementation. | TestProtocolDiscoveryAndErrorCodes; browser.version |
Browser.getWindowBounds |
partial | Resolves stable window IDs to canonical Page bounds within the owning BrowserContext. One modeled window per Context; new Pages begin with that Context's profile bounds. Multiple windows within a Context, minimized/maximized/fullscreen transitions and display placement are unsupported. | TestBrowserWindowCommandsShareCanonicalBounds; TestBrowserWindowBoundsStayWithinOwningContext |
Browser.getWindowForTarget |
partial | Resolves page and tab targets to a stable modeled window per BrowserContext. Default and isolated Contexts never share window IDs. Multiple windows within a Context are unsupported. | TestBrowserWindowCommandsShareCanonicalBounds; TestBrowserWindowBoundsStayWithinOwningContext |
Browser.grantPermissions |
partial | Context/origin allowlists for geolocation, videoCapture (camera), audioCapture (microphone), notifications and clipboard grants; other permissions explicitly reject. Unlisted permissions are denied. Native camera and microphone capture are implemented; native permission UI is unsupported. | TestGeolocationOverrideCommands; TestCameraPermissionCommands |
Browser.resetPermissions |
partial | Restores canonical context permission defaults and notifies live permission observers. Native permission prompts and platform permission stores are not modeled. | TestGeolocationOverrideCommands; TestCameraPermissionCommands |
Browser.setDownloadBehavior |
partial | Per-context allow, allowAndName, deny and default policies for attachment navigation responses; completed bytes are written to the configured destination and Browser download events are emitted. Other download initiators and streaming progress are not modeled. | TestDownloadBehaviorValidatesPolicyAndContext |
Browser.setPermission |
partial | Context/origin granted, denied and prompt settings for geolocation, camera, microphone, notifications and clipboard. Camera pan/tilt/zoom and other descriptors reject. Requests requiring an ungranted camera or microphone reject immediately for automation; revocation ends the corresponding local capture tracks. No simulated native permission prompt. | TestGeolocationOverrideCommands; TestCameraPermissionCommands |
Browser.setWindowBounds |
partial | Updates position and outer dimensions only on existing Pages in the selected window's BrowserContext, preserving independent and managed Contexts. New Pages begin with the Context's profile bounds. Non-normal states and multiple windows within one Context are unsupported. | TestBrowserWindowCommandsShareCanonicalBounds; TestBrowserWindowBoundsStayWithinOwningContext |
CSS.disable |
partial | Session CSS activation requires DOM. Canonical realm CSSOM backs live stylesheet inventory, matched/inline/computed styles and editing. Last CSS consumer releases text handles; unchanged turns do not rescan styles. UA rule inventory and native font/animation attribution are unsupported. | TestCSSReadOnlyDomainUsesCanonicalStyle; TestInspectorInactiveAndIdleCost; TestInspectorStylesSharedClientsAndCanonicalRuleIdentity |
CSS.enable |
partial | Session CSS activation requires DOM. Canonical realm CSSOM backs live stylesheet inventory, matched/inline/computed styles and editing. Last CSS consumer releases text handles; unchanged turns do not rescan styles. UA rule inventory and native font/animation attribution are unsupported. | TestCSSReadOnlyDomainUsesCanonicalStyle; TestInspectorInactiveAndIdleCost; TestInspectorStylesSharedClientsAndCanonicalRuleIdentity |
CSS.getComputedStyleForNode |
partial | Canonical owner-realm computed and inline styles, author/adopted stylesheet matches, inherited rules, before/after pseudo rules, media/supports filtering and shadow scoping. Source text/ranges describe the normalized inspector CSSOM projection. UA rules, container condition details, keyframe inventory, font attribution and forced pseudo state are unsupported. | TestCSSReadOnlyDomainUsesCanonicalStyle; TestInspectorCSSLiveEditing; TestInspectorCSSSelectorRangesAndIdentity; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles |
CSS.getInlineStylesForNode |
partial | Canonical owner-realm computed and inline styles, author/adopted stylesheet matches, inherited rules, before/after pseudo rules, media/supports filtering and shadow scoping. Source text/ranges describe the normalized inspector CSSOM projection. UA rules, container condition details, keyframe inventory, font attribution and forced pseudo state are unsupported. | TestInspectorCSSLiveEditing; TestInspectorCSSSelectorRangesAndIdentity; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles |
CSS.getMatchedStylesForNode |
partial | Canonical owner-realm computed and inline styles, author/adopted stylesheet matches, inherited rules, before/after pseudo rules, media/supports filtering and shadow scoping. Source text/ranges describe the normalized inspector CSSOM projection. UA rules, container condition details, keyframe inventory, font attribution and forced pseudo state are unsupported. | TestInspectorCSSLiveEditing; TestInspectorCSSSelectorRangesAndIdentity; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles |
CSS.getStyleSheetText |
partial | Canonical stylesheet/inline text editing with validated UTF-16 source ranges. Declaration and selector edits preserve existing CSSRule/CSSStyleDeclaration identity and invalidate the shared style resolver. Full sheet replacement reparses rules. Inspector source is normalized CSSOM text; multi-edit batches are sequential, without rollback. No inspector undo journal. | TestInspectorCSSLiveEditing; TestInspectorCSSSelectorRangesAndIdentity; TestInspectorStylesSharedClientsAndCanonicalRuleIdentity |
CSS.setRuleSelector |
partial | Canonical stylesheet/inline text editing with validated UTF-16 source ranges. Declaration and selector edits preserve existing CSSRule/CSSStyleDeclaration identity and invalidate the shared style resolver. Full sheet replacement reparses rules. Inspector source is normalized CSSOM text; multi-edit batches are sequential, without rollback. No inspector undo journal. | TestInspectorCSSLiveEditing; TestInspectorCSSSelectorRangesAndIdentity; TestInspectorStylesSharedClientsAndCanonicalRuleIdentity |
CSS.setStyleSheetText |
partial | Canonical stylesheet/inline text editing with validated UTF-16 source ranges. Declaration and selector edits preserve existing CSSRule/CSSStyleDeclaration identity and invalidate the shared style resolver. Full sheet replacement reparses rules. Inspector source is normalized CSSOM text; multi-edit batches are sequential, without rollback. No inspector undo journal. | TestInspectorCSSLiveEditing; TestInspectorCSSSelectorRangesAndIdentity; TestInspectorStylesSharedClientsAndCanonicalRuleIdentity |
CSS.setStyleTexts |
partial | Canonical stylesheet/inline text editing with validated UTF-16 source ranges. Declaration and selector edits preserve existing CSSRule/CSSStyleDeclaration identity and invalidate the shared style resolver. Full sheet replacement reparses rules. Inspector source is normalized CSSOM text; multi-edit batches are sequential, without rollback. No inspector undo journal. | TestInspectorCSSLiveEditing; TestInspectorCSSSelectorRangesAndIdentity; TestInspectorStylesSharedClientsAndCanonicalRuleIdentity |
CSS.takeComputedStyleUpdates |
partial | Explicit session-owned computed-style watches observe canonical style epochs. Single-node changes notify; property/value watches collect changed frontend-bound element IDs. No periodic scanner runs while inactive or unchanged. | TestInspectorStylesSharedClientsAndCanonicalRuleIdentity; TestInspectorComputedPropertyTracking |
CSS.trackComputedStyleUpdates |
partial | Explicit session-owned computed-style watches observe canonical style epochs. Single-node changes notify; property/value watches collect changed frontend-bound element IDs. No periodic scanner runs while inactive or unchanged. | TestInspectorStylesSharedClientsAndCanonicalRuleIdentity; TestInspectorComputedPropertyTracking |
CSS.trackComputedStyleUpdatesForNode |
partial | Explicit session-owned computed-style watches observe canonical style epochs. Single-node changes notify; property/value watches collect changed frontend-bound element IDs. No periodic scanner runs while inactive or unchanged. | TestInspectorStylesSharedClientsAndCanonicalRuleIdentity |
DOM.describeNode |
partial | Canonical document, child-frame and closed/open shadow-root inspection with Page-owned int32 handles. Old document/frame handles reject after navigation or detachment. Frontend bindings are allocated on request and released on disable/disconnect. Session-local whitespace projection follows DOM.enable: default/none omit empty or ASCII-whitespace-only text; all includes it. JavaScript DOM nodes are unchanged. Distributed nodes and UA shadow trees are not modeled. | TestDOMQueryInitialDocumentBootstrapsRealm; dom.selectors_element_evaluation; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles; TestDOMWhitespaceModes |
DOM.disable |
partial | Session-local includeWhitespace: default/none (and unknown strings, matching Chrome 152) omit empty or ASCII-whitespace-only text; all includes it. Repeated enable preserves the active mode; disable resets it and frontend bindings. Mutation delivery remains coalesced per Page turn. | TestDOMQueriesShareRealmSelectorEngine; TestDOMWhitespaceModes; TestDOMWhitespaceCharacterCounterLifecycle |
DOM.discardSearchResults |
partial | On-demand CSS selector and case-insensitive tag/attribute/text search across canonical documents and shadow roots. At most eight searches and 100000 handles per search; discard, document replacement, disable and disconnect release results. XPath and UA shadow searches are unsupported. | TestInspectorDOMSearchAndRelease |
DOM.enable |
partial | Session-local includeWhitespace: default/none (and unknown strings, matching Chrome 152) omit empty or ASCII-whitespace-only text; all includes it. Repeated enable preserves the active mode; disable resets it and frontend bindings. Mutation delivery remains coalesced per Page turn. | TestDOMQueriesShareRealmSelectorEngine; TestDOMWhitespaceModes; TestDOMWhitespaceCharacterCounterLifecycle |
DOM.focus |
partial | Live canonical DOM edits and focus, including frame/shadow ownership. Character-data edits validate node type. Attribute text uses the document fragment parser. No inspector undo journal or special XML editing contract. | TestProtocolInputSharesFocusAndFormStateAcrossWorlds; TestInspectorElementsEditingCommands; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles |
DOM.getAttributes |
partial | Canonical document, child-frame and closed/open shadow-root inspection with Page-owned int32 handles. Old document/frame handles reject after navigation or detachment. Frontend bindings are allocated on request and released on disable/disconnect. Session-local whitespace projection follows DOM.enable: default/none omit empty or ASCII-whitespace-only text; all includes it. JavaScript DOM nodes are unchanged. Distributed nodes and UA shadow trees are not modeled. | dom.selectors_element_evaluation; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles; TestDOMWhitespaceModes |
DOM.getBoxModel |
partial | Same modeled rectangle/CSS edges as JS and hit testing. Child-frame offsets use canonical content boxes without invoking replaceable author geometry methods; percentage padding resolves to the same used distances as input. No complete layout/transforms/SVG quads or multiple inline fragments. Foreign Console wrappers retain their canonical frame/node owner; resolving into an explicit foreign execution context imports the same canonical reference. | TestFrameBoxModelIgnoresAuthorGeometryOverrides; TestDefaultControlGeometryMatchesChrome152; input.pointer_click; input.pointer_click; TestInspectorCommandLineChildSelection |
DOM.getContentQuads |
partial | Same modeled rectangle/CSS edges as JS and hit testing. Child-frame offsets use canonical content boxes without invoking replaceable author geometry methods; percentage padding resolves to the same used distances as input. No complete layout/transforms/SVG quads or multiple inline fragments. Foreign Console wrappers retain their canonical frame/node owner; resolving into an explicit foreign execution context imports the same canonical reference. | TestFrameBoxModelIgnoresAuthorGeometryOverrides; TestFrameContentQuadClickUsesResolvedPadding; TestDefaultControlGeometryMatchesChrome152; input.pointer_click; input.pointer_click; TestInspectorCommandLineChildSelection |
DOM.getDocument |
partial | Canonical document, child-frame and closed/open shadow-root inspection with Page-owned int32 handles. Old document/frame handles reject after navigation or detachment. Frontend bindings are allocated on request and released on disable/disconnect. Session-local whitespace projection follows DOM.enable: default/none omit empty or ASCII-whitespace-only text; all includes it. JavaScript DOM nodes are unchanged. Distributed nodes and UA shadow trees are not modeled. | TestDOMQueryInitialDocumentBootstrapsRealm; dom.selectors_element_evaluation; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles; TestDOMWhitespaceModes |
DOM.getFrameOwner |
partial | Canonical document, child-frame and closed/open shadow-root inspection with Page-owned int32 handles. Old document/frame handles reject after navigation or detachment. Frontend bindings are allocated on request and released on disable/disconnect. Session-local whitespace projection follows DOM.enable: default/none omit empty or ASCII-whitespace-only text; all includes it. JavaScript DOM nodes are unchanged. Distributed nodes and UA shadow trees are not modeled. | TestDOMGetFrameOwnerReturnsEmbeddingNode; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles; TestDOMWhitespaceModes |
DOM.getNodeForLocation |
partial | Document CSS-pixel coordinates converted through canonical root scroll state to the viewport hit testing shared with mouse input; descends frame content boxes and supports ignorePointerEventsNone. Returns backend/frame IDs and frontend nodeId after DOM.getDocument. Author shadow trees are included. UA shadow trees are not modeled; includeUserAgentShadowDOM has no additional effect. Existing geometry limitations apply, including complex transformed and clipped shapes. | TestNodeForLocationGeometryAndNativeClick; TestFrameControlScrollMeasureAndClickWithoutRuntime; TestNodeForLocationNestedCrossOriginFrames; TestNodeForLocationAuthorShadowRoot; TestNodeForLocationDocumentCoordinatesAfterWheel; TestNodeForLocationOutsideViewport |
DOM.getOuterHTML |
partial | Serializes canonical owner-document nodes addressed by nodeId, backendNodeId or objectId; synthetic ShadowRoot addresses serialize their children. includeShadowDOM options are not implemented. Foreign Console wrappers retain their canonical frame/node owner; resolving into an explicit foreign execution context imports the same canonical reference. | TestDOMOuterHTMLSerializesRequestedLiveNode; TestInspectorChildFrameNotificationsAndSerialization; TestInspectorCommandLineChildSelection |
DOM.getSearchResults |
partial | On-demand CSS selector and case-insensitive tag/attribute/text search across canonical documents and shadow roots. At most eight searches and 100000 handles per search; discard, document replacement, disable and disconnect release results. XPath and UA shadow searches are unsupported. | TestInspectorDOMSearchAndRelease; TestInspectorSearchWithoutTreeInvalidatesOnNavigation |
DOM.performSearch |
partial | On-demand CSS selector and case-insensitive tag/attribute/text search across canonical documents and shadow roots. At most eight searches and 100000 handles per search; discard, document replacement, disable and disconnect release results. XPath and UA shadow searches are unsupported. | TestInspectorDOMSearchAndRelease; TestInspectorSearchWithoutTreeInvalidatesOnNavigation |
DOM.pushNodesByBackendIdsToFrontend |
partial | Canonical document, child-frame and closed/open shadow-root inspection with Page-owned int32 handles. Old document/frame handles reject after navigation or detachment. Frontend bindings are allocated on request and released on disable/disconnect. Session-local whitespace projection follows DOM.enable: default/none omit empty or ASCII-whitespace-only text; all includes it. JavaScript DOM nodes are unchanged. Distributed nodes and UA shadow trees are not modeled. | TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles; TestDOMWhitespaceModes |
DOM.querySelector |
partial | Canonical document, child-frame and closed/open shadow-root inspection with Page-owned int32 handles. Old document/frame handles reject after navigation or detachment. Frontend bindings are allocated on request and released on disable/disconnect. Session-local whitespace projection follows DOM.enable: default/none omit empty or ASCII-whitespace-only text; all includes it. JavaScript DOM nodes are unchanged. Distributed nodes and UA shadow trees are not modeled. Already published ancestor child lists are not republished by queries, preserving frontend DOMNode selection identity. | TestDOMQueriesShareRealmSelectorEngine; TestDOMQueriesPublishAncestorPathBeforeReply; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles; TestInspectorQueriesPreservePublishedTreeIdentity; TestDOMWhitespaceModes |
DOM.querySelectorAll |
partial | Canonical document, child-frame and closed/open shadow-root inspection with Page-owned int32 handles. Old document/frame handles reject after navigation or detachment. Frontend bindings are allocated on request and released on disable/disconnect. Session-local whitespace projection follows DOM.enable: default/none omit empty or ASCII-whitespace-only text; all includes it. JavaScript DOM nodes are unchanged. Distributed nodes and UA shadow trees are not modeled. Already published ancestor child lists are not republished by queries, preserving frontend DOMNode selection identity. | TestDOMQueriesShareRealmSelectorEngine; TestDOMQueriesPublishAncestorPathBeforeReply; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles; TestInspectorQueriesPreservePublishedTreeIdentity; TestDOMWhitespaceModes |
DOM.removeAttribute |
partial | Live canonical DOM edits and focus, including frame/shadow ownership. Character-data edits validate node type. Attribute text uses the document fragment parser. No inspector undo journal or special XML editing contract. | TestInspectorElementsEditingCommands; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles |
DOM.removeNode |
partial | Live canonical DOM edits and focus, including frame/shadow ownership. Character-data edits validate node type. Attribute text uses the document fragment parser. No inspector undo journal or special XML editing contract. | TestInspectorElementsEditingCommands; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles |
DOM.requestChildNodes |
partial | Canonical document, child-frame and closed/open shadow-root inspection with Page-owned int32 handles. Old document/frame handles reject after navigation or detachment. Frontend bindings are allocated on request and released on disable/disconnect. Session-local whitespace projection follows DOM.enable: default/none omit empty or ASCII-whitespace-only text; all includes it. JavaScript DOM nodes are unchanged. Distributed nodes and UA shadow trees are not modeled. | TestDOMQueryInitialDocumentBootstrapsRealm; dom.selectors_element_evaluation; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles; TestDOMWhitespaceModes; TestDOMWhitespaceUnexpandedCharacterCounters; TestDOMWhitespaceCharacterCounterFrameAndShadow |
DOM.requestNode |
partial | Canonical document, child-frame and closed/open shadow-root inspection with Page-owned int32 handles. Old document/frame handles reject after navigation or detachment. Frontend bindings are allocated on request and released on disable/disconnect. Session-local whitespace projection follows DOM.enable: default/none omit empty or ASCII-whitespace-only text; all includes it. JavaScript DOM nodes are unchanged. Distributed nodes and UA shadow trees are not modeled. Foreign Console wrappers retain their canonical frame/node owner; resolving into an explicit foreign execution context imports the same canonical reference. | TestDebuggerCanonicalNodeAndSessionIsolation; dom.selectors_element_evaluation; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles; TestInspectorCommandLineChildSelection; TestDOMWhitespaceModes |
DOM.resolveNode |
partial | Canonical document, child-frame and closed/open shadow-root inspection with Page-owned int32 handles. Old document/frame handles reject after navigation or detachment. Frontend bindings are allocated on request and released on disable/disconnect. Session-local whitespace projection follows DOM.enable: default/none omit empty or ASCII-whitespace-only text; all includes it. JavaScript DOM nodes are unchanged. Distributed nodes and UA shadow trees are not modeled. Foreign Console wrappers retain their canonical frame/node owner; resolving into an explicit foreign execution context imports the same canonical reference. | TestDebuggerCanonicalNodeAndSessionIsolation; dom.selectors_element_evaluation; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles; TestInspectorCommandLineChildSelection; TestDOMWhitespaceModes |
DOM.scrollIntoViewIfNeeded |
partial | Canonical element scroll operation, including revealing a control through its iframe ancestors before viewport-coordinate input. Optional rect and complete nested layout/scrolling remain partial. Foreign Console wrappers retain their canonical frame/node owner; resolving into an explicit foreign execution context imports the same canonical reference. | input.pointer_click; TestInspectorCommandLineChildSelection; TestFrameControlScrollMeasureAndClickWithoutRuntime |
DOM.setAttributeValue |
partial | Live canonical DOM edits and focus, including frame/shadow ownership. Character-data edits validate node type. Attribute text uses the document fragment parser. No inspector undo journal or special XML editing contract. | TestInspectorElementsEditingCommands; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles |
DOM.setAttributesAsText |
partial | Live canonical DOM edits and focus, including frame/shadow ownership. Character-data edits validate node type. Attribute text uses the document fragment parser. No inspector undo journal or special XML editing contract. | TestInspectorElementsEditingCommands; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles |
DOM.setInspectedNode |
partial | Retains up to five canonical selected wrappers per session for native V8 command-line evaluation ($0 through $4). Foreign-frame selections use the canonical cross-realm reference bridge; retired/unavailable selections are undefined. Retired realm selections are pruned; no author globals are installed. | TestInspectorCommandLineSelectionAndGlobalSemantics; TestInspectorCommandLineChildSelection |
DOM.setNodeValue |
partial | Live canonical DOM edits and focus, including frame/shadow ownership. Character-data edits validate node type. Attribute text uses the document fragment parser. No inspector undo journal or special XML editing contract. | TestInspectorElementsEditingCommands; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles |
DOM.setOuterHTML |
partial | Live canonical DOM edits and focus, including frame/shadow ownership. Character-data edits validate node type. Attribute text uses the document fragment parser. No inspector undo journal or special XML editing contract. | TestInspectorElementsEditingCommands; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles |
Debugger.disable |
implemented | Disables and releases the native V8 Inspector session and its retained debugger state. | TestDebuggerNativeBreakpointPreservesSourceAndAuthorStack |
Debugger.enable |
partial | Native V8 Inspector attachment for materialized document-tree realms. Future realms in the active tree are attached before author scripts execute. Existing scripts compiled before the first native attachment are not replayed. | TestDebuggerNativeBreakpointPreservesSourceAndAuthorStack |
Debugger.evaluateOnCallFrame |
implemented | Native V8 call-frame evaluation while paused; explicit evaluation retains its requested author-visible effects. | TestDebuggerNativeBreakpointPreservesSourceAndAuthorStack |
Debugger.getScriptSource |
implemented | Returns the original native V8 script source without source rewriting or author-code evaluation. | TestDebuggerNativeBreakpointPreservesSourceAndAuthorStack |
Debugger.removeBreakpoint |
unsupported | The pinned wire schema and independent-control scheduling classification include this command, but native Inspector dispatch does not expose individual breakpoint removal. Debugger.disable releases the Inspector session and its retained debugger state. | TestProtocolSupportManifestHasLiveEvidenceAndNoLostHandlers |
Debugger.resume |
implemented | Resumes a native V8 debugger pause while the Page task remains suspended. | TestDebuggerNativeBreakpointPreservesSourceAndAuthorStack |
Debugger.setBreakpoint |
implemented | Native V8 source-location breakpoints for JavaScript scripts. | TestDebuggerNativeBreakpointPreservesSourceAndAuthorStack |
Debugger.setBreakpointByUrl |
unsupported | The pinned wire schema and independent-control scheduling classification include this command, but native Inspector dispatch does not expose URL, regex or script-hash breakpoints. Source-location breakpoints are available through Debugger.setBreakpoint. | TestProtocolSupportManifestHasLiveEvidenceAndNoLostHandlers |
Debugger.setInstrumentationBreakpoint |
unsupported | The pinned wire schema and independent-control scheduling classification include this command, but native Inspector dispatch does not expose instrumentation breakpoints. Schema availability does not imply execution support. | TestProtocolSchemaIncludesCurrentBrowserAndAllV8Domains; TestProtocolSupportManifestHasLiveEvidenceAndNoLostHandlers |
Emulation.clearDeviceMetricsOverride |
partial | Canonical viewport/device scale/screen dimensions/orientation and reset. Mobile layout, scale/position/dontSetVisibleSize are incomplete; clipping/display features/posture reject. | emulation.viewport; TestConsumedWindowStateNavigationAndViewportResize; TestDeviceAndUserAgentOverridesShareObservationsAndRemainPageLocal |
Emulation.clearGeolocationOverride |
partial | Removes the Page-owned provider override and updates live watches. With no native provider, permitted requests report position unavailable. | TestGeolocationOverrideCommands |
Emulation.setDeviceMetricsOverride |
partial | Canonical viewport/device scale/screen dimensions/orientation and reset. Mobile layout, scale/position/dontSetVisibleSize are incomplete; clipping/display features/posture reject. | emulation.viewport; TestConsumedWindowStateNavigationAndViewportResize; TestDeviceAndUserAgentOverridesShareObservationsAndRemainPageLocal |
Emulation.setEmulatedMedia |
partial | Screen media and canonical prefers-color-scheme/reduced-motion. forced-colors and prefers-contrast are accepted without applying an override; other media/features reject. Complete dynamic cascade/query-change events are not verified. Generated/imported profile Contexts accept a proven no-op assignment but reject identity-changing emulation. | TestMatchMediaDerivesFromCanonicalPreferences; TestConfigureEmptyFrameworkContext |
Emulation.setFocusEmulationEnabled |
unsupported | Acknowledgment only for client initialization. The enabled flag does not override document focus, active state or focus lifecycle events; focus emulation semantics are not implemented. | No focused evidence recorded |
Emulation.setGeolocationOverride |
partial | Page-owned coordinates and optional altitude, altitudeAccuracy, heading and speed; missing required coordinates emulate unavailable position. Updates live watches and survives navigation. No native location provider is connected. | TestGeolocationOverrideCommands |
Emulation.setLocaleOverride |
partial | Updates the default Intl locale for future navigation realms and supports reset with an empty locale. Existing realms retain their creation locale; navigator.languages and Accept-Language are deliberately unchanged. Complete ICU locale availability follows the selected JS engine. | TestLocaleOverrideAppliesToNavigationRealmAndResets |
Emulation.setTimezoneOverride |
partial | Page-local IANA timezone override and empty reset affect Intl and Date observations in the current top realm and future realms. Existing child realms and workers are not refreshed. | TestTimezoneOverrideRefreshesCurrentRealm |
Emulation.setTouchEmulationEnabled |
partial | Desktop reset only: enabled=false accepted; enabled=true explicitly rejects because touch/gesture/media emulation is absent. | emulation.viewport |
Emulation.setUserAgentOverride |
partial | Canonical Navigator/languages/platform, User-Agent and Client Hints request projection. formFactors, full metadata validation and all Client Hints negotiation cases are incomplete. | network.user_agent_override; TestDeviceAndUserAgentOverridesShareObservationsAndRemainPageLocal |
Fetch.continueRequest |
partial | Resumes/overrides URL/method/headers/body in same loader; Fetch supports per-request response interception. Auth/complete redirect semantics are unsupported. | network.interception_continue_post; TestInterceptionResponsePatternsAndPerRequestOverride |
Fetch.continueResponse |
partial | Response-stage resume with status/header overrides; responsePhrase/binaryResponseHeaders and complete redirects are unsupported. | TestInterceptionResponsePatternsAndPerRequestOverride |
Fetch.disable |
implemented | Disables interception, resumes/releases pending pauses and response overrides. | TestInterceptionDisableResumesPendingRequestAndResponse; TestInterceptionCanceledResponseOverrideIsReleased; TestDetachReleasesFetchPauseAndPreservesPageNavigation |
Fetch.enable |
partial | Shared-loader URL/resource/stage pattern matching; explicit empty list pauses nothing. Auth challenges are unsupported. | TestInterceptionPatternsAndExplicitEmptyList; TestInterceptionRequestStageDefaultDoesNotPauseResponse; TestInterceptionResponsePatternsAndPerRequestOverride |
Fetch.failRequest |
partial | Aborts paused requests; distinct errorReason mappings are incomplete. | network.interception_abort; TestInterceptionCancellationDoesNotRetainPendingRequests |
Fetch.fulfillRequest |
partial | Fulfills paused loader request with responseCode/headers/base64 body. responsePhrase/binaryResponseHeaders and all cookie/cache/redirect interactions are incomplete. | network.interception_fulfill_body; TestInterceptionResponseBodySharesPausedLoaderBytes |
Fetch.getResponseBody |
partial | Reads shared response-stage paused bytes; stream handles and exact invalid-stage/error text are not implemented. | TestInterceptionResponseBodySharesPausedLoaderBytes |
Input.dispatchKeyEvent |
partial | Trusted text-control editing, cancellation, beforeinput/input/change, focus, selection and basic deletion/navigation keys. Enter activates links on keydown and buttons on uncancelled keypress; Space activation remains unsupported. IME/contenteditable/complex editor commands are unsupported. Cross-world listeners are grouped by world. | TestProtocolKeyboardAndTextMatchChrome152; TestProtocolInputRestoredWorldOwnership; dom.form_input_select_dom_click; TestKeyboardActivationMatchesChrome152 |
Input.dispatchMouseEvent |
partial | Canonical trusted mouse dispatch using Mimic geometry and resolved frame content coordinates. Parent hit testing selects the painted child frame, respecting sibling occlusion, overlays, visibility and pointer-events before crossing a frame boundary. Opt-in CDP diagnostics correlate input commands with V8 calls. Native compositor, drag and touch fidelity are unsupported. | TestFrameContentQuadClickUsesResolvedPadding; TestProtocolMouseInputHonorsFramePaintOrder; TestProtocolSelectAndContentClickAcrossWorlds; TestProtocolMouseInputRoutesThroughIframeCoordinates; TestFrameGeometryEpochTracksAncestorChanges; TestInputTimingCorrelatesRuntimeCalls; input.pointer_click |
Input.insertText |
partial | Trusted text-control editing, cancellation, beforeinput/input/change, focus, selection and basic deletion/navigation keys. IME/contenteditable/complex editor commands are unsupported. Cross-world listeners are grouped by world. | TestProtocolKeyboardAndTextMatchChrome152; TestProtocolInputRestoredWorldOwnership; dom.form_input_select_dom_click |
Input.setIgnoreInputEvents |
implemented | Page-local suppression persists across navigation. | TestProtocolInputSuppressionSurvivesNavigation |
Inspector.disable |
partial | Per-session subscription flags only; no complete corresponding event producers/replay. Performance timeDomain is not implemented. | TestPyppeteerBrowserAndSessionHandshake |
Inspector.enable |
partial | Per-session subscription flags only; no complete corresponding event producers/replay. Performance timeDomain is not implemented. | TestPyppeteerBrowserAndSessionHandshake |
Log.disable |
partial | Per-session subscription flags only; no complete corresponding event producers/replay. Performance timeDomain is not implemented. | TestPyppeteerBrowserAndSessionHandshake |
Log.enable |
partial | Per-session subscription flags only; no complete corresponding event producers/replay. Performance timeDomain is not implemented. | TestPyppeteerBrowserAndSessionHandshake |
Network.clearBrowserCache |
partial | Clears canonical browser-context cache entries used by Page loaders; full Chrome cache topology/revalidation is not modeled. | TestCacheDisabledIsCanonicalPolicy |
Network.clearBrowserCookies |
partial | Clears selected canonical cookie store; Storage resolves explicit/default BrowserContext. | network.cookies; target.browser_context_storage_isolation |
Network.continueInterceptedRequest |
partial | Resumes/overrides URL/method/headers/body in same loader; Fetch supports per-request response interception. Auth/complete redirect semantics are unsupported. | network.interception_continue_post; TestInterceptionResponsePatternsAndPerRequestOverride |
Network.deleteCookies |
partial | Canonical expiry/security/SameSite/partition identity/scoped deletion; explicit Storage context. Opaque partitions reject. priority/sameParty/sourceScheme/sourcePort metadata and all invalid-cookie errors are incomplete. | TestCDPCookiesPreservePartitionAndEffectiveAttributes; TestCookiePartitionIdentityAndDeletion; network.cookies |
Network.disable |
partial | Session network event subscription; POST/redirect inspector history is allocated only when needed and released on disable/disconnect. Loader state remains canonical. Extra-info events, durable messages and complete streaming/timing fidelity are unsupported. | TestCDPProtocolProjectsActualTransportProtocol; network.response_body_extra_headers; TestInspectorNetworkRedirectPostAndBodies |
Network.emulateNetworkConditions |
partial | Offline only; latency/throughput/connection/packet-loss/queue options are not implemented. | No focused evidence recorded |
Network.enable |
partial | Session network event subscription; POST/redirect inspector history is allocated only when needed and released on disable/disconnect. Loader state remains canonical. Extra-info events, durable messages and complete streaming/timing fidelity are unsupported. | TestCDPProtocolProjectsActualTransportProtocol; network.response_body_extra_headers; TestInspectorNetworkRedirectPostAndBodies |
Network.getAllCookies |
partial | Canonical cookies; Network URL/current-frame filtering and explicit Storage BrowserContext scoping. Detailed source/priority metadata and opaque partitions are incomplete. | TestCDPCookiesPreservePartitionAndEffectiveAttributes; network.cookies; target.browser_context_storage_isolation |
Network.getCookies |
partial | Canonical cookies; Network URL/current-frame filtering and explicit Storage BrowserContext scoping. Detailed source/priority metadata and opaque partitions are incomplete. | TestCDPCookiesPreservePartitionAndEffectiveAttributes; network.cookies; target.browser_context_storage_isolation; TestStorageCookiesUseRequestedBrowserContextAndNetworkURLFilter |
Network.getRequestPostData |
partial | Network-enabled sessions retain nonempty post bodies on demand, limited to 128 entries, 4 MiB total and 1 MiB per body. Network.disable/disconnect release history; absent, evicted, empty or oversized bodies return an explicit unavailable-data error. Valid UTF-8 bodies return text with base64Encoded=false; invalid UTF-8 returns exact Base64 with base64Encoded=true, matching Chrome 152. | TestInspectorNetworkRedirectPostAndBodies; TestInspectorPostHistoryIsLazyAndBounded; TestInspectorNetworkFailureAndMissingBodies; TestInspectorBinaryPostEntriesMatchTransportBytes |
Network.getResponseBody |
partial | Reads bounded completed loader bytes published before loadingFinished. Invalid UTF-8 uses base64; policy-denied/evicted bodies reject. Streaming, MIME-specific encoding and redirect-body error fidelity remain incomplete. | TestResponseBodyPreservesBinaryBytes; network.response_body_extra_headers; TestInspectorNetworkRedirectPostAndBodies; TestInspectorNetworkFailureAndMissingBodies |
Network.setCacheDisabled |
implemented | Canonical cache policy used by shared Page resource paths. | TestCacheDisabledIsCanonicalPolicy |
Network.setCookie |
partial | Canonical expiry/security/SameSite/partition identity/scoped deletion; explicit Storage context. Opaque partitions reject. priority/sameParty/sourceScheme/sourcePort metadata and all invalid-cookie errors are incomplete. | TestCDPCookiesPreservePartitionAndEffectiveAttributes; TestCookiePartitionIdentityAndDeletion; network.cookies |
Network.setCookies |
partial | Canonical expiry/security/SameSite/partition identity/scoped deletion; explicit Storage context. Opaque partitions reject. priority/sameParty/sourceScheme/sourcePort metadata and all invalid-cookie errors are incomplete. | TestCDPCookiesPreservePartitionAndEffectiveAttributes; TestCookiePartitionIdentityAndDeletion; network.cookies |
Network.setExtraHTTPHeaders |
partial | Canonical header overrides for document/subresources. Full forbidden-header validation and ordering nuances are incomplete. | network.response_body_extra_headers |
Network.setRequestInterception |
partial | Shared-loader URL/resource/stage pattern matching; explicit empty list pauses nothing. Auth challenges are unsupported. | TestInterceptionPatternsAndExplicitEmptyList; TestInterceptionRequestStageDefaultDoesNotPauseResponse; TestInterceptionResponsePatternsAndPerRequestOverride |
Network.setUserAgentOverride |
partial | Canonical Navigator/languages/platform, User-Agent and Client Hints request projection. formFactors, full metadata validation and all Client Hints negotiation cases are incomplete. | network.user_agent_override; TestDeviceAndUserAgentOverridesShareObservationsAndRemainPageLocal |
Overlay.disable |
unsupported | Visual page presentation, rendering and node picking are unsupported. Harmless frontend initialization and stop/ACK controls may be acknowledged without visual behavior. | TestInspectorOverlayAndRendererBoundaries |
Overlay.enable |
unsupported | Visual page presentation, rendering and node picking are unsupported. Harmless frontend initialization and stop/ACK controls may be acknowledged without visual behavior. | TestInspectorOverlayAndRendererBoundaries |
Overlay.hideHighlight |
unsupported | Visual page presentation, rendering and node picking are unsupported. Harmless frontend initialization and stop/ACK controls may be acknowledged without visual behavior. | TestInspectorOverlayAndRendererBoundaries |
Overlay.highlightNode |
unsupported | Visual page presentation, rendering and node picking are unsupported. Harmless frontend initialization and stop/ACK controls may be acknowledged without visual behavior. | TestInspectorOverlayAndRendererBoundaries |
Overlay.setInspectMode |
unsupported | Visual page presentation, rendering and node picking are unsupported. Harmless frontend initialization and stop/ACK controls may be acknowledged without visual behavior. | TestInspectorOverlayAndRendererBoundaries |
Overlay.setShowContainerQueryOverlays |
unsupported | Frontend empty/reset controls are accepted without work. Nonempty layout overlays and enabled viewport-size overlay reject; no semantic layout-overlay support is claimed. | TestInspectorOverlayAndRendererBoundaries |
Overlay.setShowFlexOverlays |
unsupported | Frontend empty/reset controls are accepted without work. Nonempty layout overlays and enabled viewport-size overlay reject; no semantic layout-overlay support is claimed. | TestInspectorOverlayAndRendererBoundaries |
Overlay.setShowGridOverlays |
unsupported | Frontend empty/reset controls are accepted without work. Nonempty layout overlays and enabled viewport-size overlay reject; no semantic layout-overlay support is claimed. | TestInspectorOverlayAndRendererBoundaries |
Overlay.setShowIsolatedElements |
unsupported | Frontend empty/reset controls are accepted without work. Nonempty layout overlays and enabled viewport-size overlay reject; no semantic layout-overlay support is claimed. | TestInspectorOverlayAndRendererBoundaries |
Overlay.setShowScrollSnapOverlays |
unsupported | Frontend empty/reset controls are accepted without work. Nonempty layout overlays and enabled viewport-size overlay reject; no semantic layout-overlay support is claimed. | TestInspectorOverlayAndRendererBoundaries |
Overlay.setShowViewportSizeOnResize |
unsupported | Frontend empty/reset controls are accepted without work. Nonempty layout overlays and enabled viewport-size overlay reject; no semantic layout-overlay support is claimed. | TestInspectorOverlayAndRendererBoundaries |
Page.addScriptToEvaluateOnNewDocument |
partial | Stored scripts precede author scripts in default/named isolated worlds. runImmediately/includeCommandLineAPI options are not implemented. | TestV8InitScriptRunsInChildRealmBeforeDocumentScripts; page.init_script |
Page.bringToFront |
unsupported | Acknowledged for clients, but native window activation and foreground-tab switching are not modeled; activation semantics are unsupported. | No focused evidence recorded |
Page.captureScreenshot |
partial | Returns standard CDP PNG data painted approximately from an immutable Page DOM/resource snapshot by an independent CPU renderer. Visual accuracy is not guaranteed; the image is visual context, not Chrome pixels or Mimic's modeled layout. PNG, viewport and unscaled document-coordinate clips are supported; JPEG/WebP, quality, scaled clips and view-surface capture are unsupported. Styles, font metrics, frames, canvas/video pixels and CSS effects can differ. Resource loads are restricted to the snapshot bundle. | TestCaptureScreenshotUsesStandardCDPResult; TestRenderUsesOnlySnapshotResources |
Page.clearGeolocationOverride |
partial | Deprecated clear command shares the Emulation Page-owned provider state; no native provider is restored. | TestGeolocationOverrideCommands |
Page.close |
partial | Acknowledges then closes the Page through browser-owned cleanup, joined even if the requesting transport disconnects. Beforeunload dialogs and handlers are not modeled. | page.create; TestAcceptedCloseSurvivesTransportEOF |
Page.createIsolatedWorld |
partial | Independent globals/wrappers share canonical DOM, forms/focus and Page event loop. Universal access grants and complete cross-world listener registration order are not implemented. | TestDebuggerIsolatedWorldSharesDOMWithoutSharingGlobals; TestProtocolInputRestoredWorldOwnership |
Page.disable |
partial | Disables Page event subscription. | TestCDPTopLegacyLifecycleEventsPrecedeLifecycleEvents |
Page.enable |
partial | Per-session event subscription; experimental options and complete lifecycle vocabulary are not implemented. | TestCDPTopLegacyLifecycleEventsPrecedeLifecycleEvents |
Page.getFrameTree |
partial | Canonical top/child frame hierarchy, loader/realm identity and required secureContextType/crossOriginIsolatedContextType/gatedAPIFeatures fields from the same realm security state as JavaScript. No OOPIF target graph; security policy limitations follow the canonical realm implementation. | TestPipelinedPageCommandsPreserveFrameContextOrder; TestQueuedPageCommandsDoNotBlockIndependentSessions; TestDocumentUpdatedAndFrameSecurityProjection; TestCDPProjectsChildFrameTreeLifecycleAndExecutionContext; page.child_frame_events_evaluation |
Page.getLayoutMetrics |
partial | Canonical viewport/scroll/visual viewport and modeled document bounds. No full layout; legacy device-pixel/CSS differences and multi-fragment geometry are incomplete. | input.pointer_click; TestDefaultControlGeometryMatchesChrome152 |
Page.getNavigationHistory |
partial | Canonical joint Page history and traversal. Full UI/BFCache projection and all transient history states are not verified. | navigation.history; TestFrameHistoryIsJointAndDocumentScoped |
Page.getResourceContent |
partial | Current-frame resource metadata/content reads the existing bounded completed response cache and captured request provenance. Resources from retired documents or other frames are excluded. Text is returned directly and invalid UTF-8 as base64. Resources evicted by configured retention policy, streamed/partial bodies and inspector content rewriting are unavailable. | TestInspectorResourceTreeAndNavigationScope |
Page.getResourceTree |
partial | Current-frame resource metadata/content reads the existing bounded completed response cache and captured request provenance. Resources from retired documents or other frames are excluded. Text is returned directly and invalid UTF-8 as base64. Resources evicted by configured retention policy, streamed/partial bodies and inspector content rewriting are unavailable. | TestInspectorResourceTreeAndNavigationScope |
Page.navigate |
partial | Asynchronous top-frame navigation owned by Page, surviving debugger detachment. frameId/referrer/transition/referrerPolicy/download options and full synchronous navigation-error results are not implemented. | TestNavigateOverCDP; TestIndependentPageCommandsDuringNavigation; navigation.goto; TestDetachReleasesFetchPauseAndPreservesPageNavigation |
Page.navigateToHistoryEntry |
partial | Canonical joint Page history and traversal. Full UI/BFCache projection and all transient history states are not verified. | navigation.history; TestFrameHistoryIsJointAndDocumentScoped |
Page.reload |
partial | Reloads canonical current document/history; ignoreCache and scriptToEvaluateOnLoad options are not implemented. | navigation.reload |
Page.removeScriptToEvaluateOnNewDocument |
implemented | Removes a stored future-document script; unknown identifiers fail. | page.init_script_removal |
Page.screencastFrameAck |
unsupported | Visual page presentation, rendering and node picking are unsupported. Harmless frontend initialization and stop/ACK controls may be acknowledged without visual behavior. | TestInspectorOverlayAndRendererBoundaries |
Page.setBypassCSP |
partial | Changes canonical Page bypass policy used by supported script/resource/content-handler checks; full Chrome CSP/reporting is outside the implementation. | TestCSPUsesOnePolicyForInlineAndExternalScripts |
Page.setDocumentContent |
partial | Writes selected frame document through normal parser/lifecycle; complete error/transition ordering is not verified. | page.set_content |
Page.setFontFamilies |
partial | Updates the Page generic font defaults used by the modeled environment; per-script family overrides and complete font selection behavior are not implemented. Generated/imported profile Contexts accept a proven no-op assignment but reject identity-changing emulation. | TestPageSetFontFamiliesUpdatesGenericDefaults; TestConfigureEmptyFrameworkContext |
Page.setGeolocationOverride |
partial | Deprecated coordinate override shares the Emulation Page-owned provider state. No native location provider is connected. | TestGeolocationOverrideCommands |
Page.setLifecycleEventsEnabled |
partial | Per-session opt-in with current commit/load replay and shared-loader 500ms idle windows; not every Chrome lifecycle phase/timestamp is modeled. | TestCDPTopLegacyLifecycleEventsPrecedeLifecycleEvents; navigation.networkidle0; TestNetworkIdleWaitsForQuietWindowAfterLoad |
Page.startScreencast |
unsupported | Visual page presentation, rendering and node picking are unsupported. Harmless frontend initialization and stop/ACK controls may be acknowledged without visual behavior. | TestInspectorOverlayAndRendererBoundaries |
Page.stopLoading |
partial | Cancels active Page navigation/execution while retaining committed DOM. | TestStopLoadingCancelsNavigationAndKeepsCommittedDOM |
Page.stopScreencast |
unsupported | Visual page presentation, rendering and node picking are unsupported. Harmless frontend initialization and stop/ACK controls may be acknowledged without visual behavior. | TestInspectorOverlayAndRendererBoundaries |
Performance.disable |
partial | Per-session subscription flags only; no complete corresponding event producers/replay. Performance timeDomain is not implemented. | TestPyppeteerBrowserAndSessionHandshake |
Performance.enable |
partial | Per-session subscription flags only; no complete corresponding event producers/replay. Performance timeDomain is not implemented. | TestPyppeteerBrowserAndSessionHandshake |
Performance.getMetrics |
partial | Timestamp only; Chrome metric set, counters, navigation timings and selected time domain are not implemented. | No focused evidence recorded |
Runtime.addBinding |
partial | Per-session payload subscriptions, current-context/future-world scoping, navigation persistence. Removal unsubscribes without removing the page callable. | TestDebuggerBindingsPersistAcrossDocumentsAndRemoveOnlySubscription; TestDebuggerBindingExecutionContextNameMatchesFutureWorld; runtime.exposed_function_navigation |
Runtime.awaitPromise |
partial | Promise waits yield the Page turn for commands/timers/input. Object previews and deep serialization are unsupported. Result transport serializes own data properties only; enumerable accessors and opaque Proxy/foreign values reject without executing author code. Exceptions/rejection values are retained without author coercion or lazy stack formatting. | TestDebuggerReturnByValueAndAwait; TestCDPAwaitPromiseAllowsSameSessionResolverAndMultipleWaiters; TestRuntimeInspectionDoesNotExecuteAuthorCode; TestRuntimeExceptionInspectionDoesNotCoerceThrownValues; TestRuntimeAwaitPromiseDoesNotReadAuthorProperties; TestDebuggerExceptionObservationHasNoAuthorCoercion |
Runtime.callFunctionOn |
partial | Realm/session-owned handles, by-value JSON, promises, unserializable arguments, exceptions and context/uniqueContextId selection. Explicit JSON call arguments use ordinary target-realm Object/Array prototypes; passive metadata remains prototype-free. Deep serialization rejects. Previews, side-effect restrictions, REPL/CLI mode, userGesture and complete debugger options are not implemented. Unnamed evaluation origins and engine-direct function entry preserve author stacks and caller observations without debugger helper frames. Requests with throwOnSideEffect=true explicitly reject without executing author code; eager preview is unavailable. Result transport serializes own data properties only; enumerable accessors and opaque Proxy/foreign values reject without executing author code. Exceptions/rejection values are retained without author coercion or lazy stack formatting. | TestDebuggerRemoteValuesMatchChrome152; TestDebuggerPreservesHandlesAndDescriptorSemantics; TestDebuggerCallArgumentsHaveRealmPrototypes; TestCDPAwaitPromiseAllowsSameSessionResolverAndMultipleWaiters; TestDebuggerSourceAndInvocationBoundary; TestInspectorEagerEvaluationDoesNotExecute; TestRuntimeInspectionDoesNotExecuteAuthorCode; TestRuntimeExceptionInspectionDoesNotCoerceThrownValues; TestDebuggerPrivateDescriptorTransportAcrossEngines |
Runtime.disable |
partial | Live context/event subscription across default/isolated worlds; no historical console replay. Passive attachment/event delivery preserves unattached author observations: no getters, Proxy traps, lazy Error stacks or added author microtasks. | TestCDPProjectsChildFrameTreeLifecycleAndExecutionContext; page.child_frame_events_evaluation; TestRuntimePassiveConsoleObservations |
Runtime.discardConsoleEntries |
partial | Releases console object group; no retained message buffer or replay model. Private null-prototype handle storage and cleanup do not construct author-observable iterator records or invoke author prototype hooks. | TestCDPConsoleArgumentsHaveObjectHandles; TestDebuggerPrivateDescriptorTransportAcrossEngines |
Runtime.enable |
partial | Live context/event subscription across default/isolated worlds. Page-session initial command turns preserve arrival order; asynchronous commit/Promise waits yield rather than blocking later commands or independent sessions. No historical console replay. Passive attachment/event delivery preserves unattached author observations: no getters, Proxy traps, lazy Error stacks or added author microtasks. | TestPipelinedPageCommandsPreserveFrameContextOrder; TestQueuedPageCommandsDoNotBlockIndependentSessions; TestCDPProjectsChildFrameTreeLifecycleAndExecutionContext; page.child_frame_events_evaluation; TestRuntimePassiveConsoleObservations |
Runtime.evaluate |
partial | Canonical realm evaluation, object groups, exceptions and Promise waits. includeCommandLineAPI uses a temporary native V8 Inspector scope on demand, preserving global lexical declarations, selected-node identity, author property precedence and console-group last result ($). No source rewriting or persistent helper globals. Native CLI support requires V8; Blink-specific DOM command-line helpers and side-effect/eager-evaluation fidelity are incomplete. Requests with throwOnSideEffect=true explicitly reject without executing author code; eager preview is unavailable. Detached protocol responses are encoded outside Page/session ownership and sent by a bounded connection-owned FIFO writer; slow clients do not retain the Page turn or the arrival-order slot after reply admission to the FIFO. Outbound overflow or a ten-second write deadline closes the connection with a diagnostic error. Client-side receive timeouts alone do not cancel execution. Result transport serializes own data properties only; enumerable accessors and opaque Proxy/foreign values reject without executing author code. Exceptions/rejection values are retained without author coercion or lazy stack formatting. Native command-line evaluation returns raw engine values without Inspector RemoteObject wrapping, preserving passive lazy Error state and canonical $ identity. The native CLI scope closes before the Page-owned microtask checkpoint; exception reporting does not use verbose native Inspector conversion. | TestDebuggerRemoteValuesMatchChrome152; TestDebuggerPreservesHandlesAndDescriptorSemantics; TestCDPAwaitPromiseAllowsSameSessionResolverAndMultipleWaiters; TestDebuggerSourceAndInvocationBoundary; TestInspectorCommandLineSelectionAndGlobalSemantics; TestInspectorConsoleObjectsPromisesAndExceptions; TestInspectorCommandLineChildSelection; TestInspectorEagerEvaluationDoesNotExecute; TestBlockedResponseWriterDoesNotOwnPage; TestBlockedResponseWriterDoesNotOwnSessionOrder; TestUnreadRuntimeResponseDoesNotBlockAnotherClient; TestOutboundOverflowClosesConnectionAndReleasesQueue; TestCommandTimingSeparatesPageWait; TestTransportEOFStillCancelsRunningEvaluation; TestRuntimeInspectionDoesNotExecuteAuthorCode; TestRuntimeExceptionInspectionDoesNotCoerceThrownValues; TestRuntimeCommandLineResultInspectionDoesNotExecuteAuthorCode; TestRuntimeInspectionUsesPrivateTransportRecords; TestRuntimeCommandLineUnicodeAndExplicitAccessor; TestDebuggerPassiveInspectionInColdAndRestoredRealms; TestDebuggerExceptionObservationHasNoAuthorCoercion; TestDebuggerPrivateDescriptorTransportAcrossEngines |
Runtime.getIsolateId |
unsupported | Explicitly rejects native isolate introspection; no synthetic realm token is presented as a native isolate identifier. | TestInspectorInactiveAndIdleCost |
Runtime.getProperties |
partial | Own/inherited descriptors, accessor filtering and live values without invoking getters. V8 private/internal slots and previews are incomplete. Proxy objects and traversal into Proxy prototypes reject explicitly without executing traps. Canonical DOM descriptions do not read overridable author node properties. Goja Error property enumeration rejects because native stack descriptor lookup is not passive; private pristine native intrinsics construct its other descriptor records without author prototype setters. | TestDebuggerPreservesHandlesAndDescriptorSemantics; runtime.handles_properties; TestRuntimeInspectionDoesNotExecuteAuthorCode; TestRuntimeInspectionUsesPrivateTransportRecords; TestRuntimeInspectionKeepsErrorStackLazy; TestDebuggerPrivateDescriptorTransportAcrossEngines |
Runtime.releaseObject |
implemented | Releases session-owned handles/groups while preserving page object identity and state. Private null-prototype handle storage and cleanup do not construct author-observable iterator records or invoke author prototype hooks. | TestDebuggerPreservesHandlesAndDescriptorSemantics; TestDebuggerCanonicalNodeAndSessionIsolation; TestDebuggerPrivateDescriptorTransportAcrossEngines |
Runtime.releaseObjectGroup |
implemented | Releases session-owned handles/groups while preserving page object identity and state. Private null-prototype handle storage and cleanup do not construct author-observable iterator records or invoke author prototype hooks. | TestDebuggerPreservesHandlesAndDescriptorSemantics; TestDebuggerCanonicalNodeAndSessionIsolation; TestDebuggerPrivateDescriptorTransportAcrossEngines |
Runtime.removeBinding |
partial | Per-session payload subscriptions, current-context/future-world scoping, navigation persistence. Removal unsubscribes without removing the page callable. | TestDebuggerBindingsPersistAcrossDocumentsAndRemoveOnlySubscription; TestDebuggerBindingExecutionContextNameMatchesFutureWorld; runtime.exposed_function_navigation |
Runtime.runIfWaitingForDebugger |
partial | Resumes navigation queued by start-paused Target attachment; no Debugger-domain breakpoints. | page.create |
Security.disable |
partial | Per-session subscription flags only; no complete corresponding event producers/replay. Performance timeDomain is not implemented. | TestPyppeteerBrowserAndSessionHandshake |
Security.enable |
partial | Per-session subscription flags only; no complete corresponding event producers/replay. Performance timeDomain is not implemented. | TestPyppeteerBrowserAndSessionHandshake |
Security.setIgnoreCertificateErrors |
partial | Actual certificate policy: browser-root subscription covers current/future Pages, page subscription affects its target; active requests combine with OR and detach restores remaining policy. Verified/unverified transport pools are separate; unknown injected transports reject enabling. | TestCertificateOverrideDoesNotChangeOtherLoadersOrReuseUnverifiedConnections |
Storage.clearCookies |
partial | Clears selected canonical cookie store; Storage resolves explicit/default BrowserContext. | network.cookies; target.browser_context_storage_isolation; TestStorageCookiesUseRequestedBrowserContextAndNetworkURLFilter |
Storage.getCookies |
partial | Canonical cookies; Network URL/current-frame filtering and explicit Storage BrowserContext scoping. Detailed source/priority metadata and opaque partitions are incomplete. | TestCDPCookiesPreservePartitionAndEffectiveAttributes; network.cookies; target.browser_context_storage_isolation; TestStorageCookiesUseRequestedBrowserContextAndNetworkURLFilter |
Storage.setCookies |
partial | Canonical expiry/security/SameSite/partition identity/scoped deletion; explicit Storage context. Opaque partitions reject. priority/sameParty/sourceScheme/sourcePort metadata and all invalid-cookie errors are incomplete. | TestCDPCookiesPreservePartitionAndEffectiveAttributes; TestCookiePartitionIdentityAndDeletion; network.cookies; TestStorageCookiesUseRequestedBrowserContextAndNetworkURLFilter |
Target.activateTarget |
unsupported | Acknowledged for clients, but native window activation and foreground-tab switching are not modeled; activation semantics are unsupported. | No focused evidence recorded |
Target.attachToBrowserTarget |
partial | Independent sessions, object registries and request ID spaces for page/tab/browser targets. | TestFlattenedSessionsKeepIndependentPagesAndDuplicateCommandIDs; TestPyppeteerBrowserAndSessionHandshake |
Target.attachToTarget |
partial | Independent sessions, object registries and request ID spaces for page/tab/browser targets. | TestFlattenedSessionsKeepIndependentPagesAndDuplicateCommandIDs; TestPyppeteerBrowserAndSessionHandshake |
Target.closeTarget |
implemented | Closes a live target and cancels its tasks including synchronous JavaScript. An accepted close survives requesting transport EOF. A direct requester receives its reply before its connection closes; other direct frontends disconnect during teardown. Nested sessions emit leaf-before-parent detach notifications so clients release closed child Pages. | TestCloseTargetCancelsBusyPumpBeforeLock; TestCloseTargetCancelsUnboundedParserScript; TestDetachNotifiesNestedSessionsBeforeParent; TestAcceptedCloseSurvivesTransportEOF; TestInspectorDirectConnectionTargetClose |
Target.createBrowserContext |
partial | Independent storage/cookies/Pages and disposeOnDetach. Proxy settings and universal-network-access origins reject. An empty proxyBypassList without proxyServer is accepted as a no-op, matching framework Context construction. | TestBrowserContextsOwnPagesAndAreDisposed; target.browser_context_storage_isolation; TestBrowserContextEmptyProxyBypass |
Target.createTarget |
partial | Independent Page in selected context with scheduled URL navigation. Window/position/background/hidden/begin-frame options are not modeled. | TestTargetCreateTargetCreatesIndependentPage; target.parallel_pages_isolation |
Target.detachFromTarget |
partial | Session-ID routing and teardown; legacy targetId-only addressing is not supported. | TestPyppeteerBrowserAndSessionHandshake; TestInterceptionDetachResumesRequest; TestDetachReleasesFetchPauseAndPreservesPageNavigation |
Target.disposeBrowserContext |
implemented | Disposes the named context and all its Pages; an accepted disposal survives requesting transport EOF. | TestBrowserContextsOwnPagesAndAreDisposed; TestAcceptedCloseSurvivesTransportEOF |
Target.getBrowserContexts |
implemented | Lists non-default contexts owned by this browser. | TestBrowserContextsOwnPagesAndAreDisposed |
Target.getTargetInfo |
partial | Live page/tab target projection and type filtering; workers/service-workers/prerender targets are absent. | TestTargetCreateTargetCreatesIndependentPage; target.parallel_pages_isolation |
Target.getTargets |
partial | Live page/tab target projection and type filtering; workers/service-workers/prerender targets are absent. | TestTargetCreateTargetCreatesIndependentPage; target.parallel_pages_isolation |
Target.sendMessageToTarget |
partial | Session-ID routing and teardown; accepted inner lifecycle closes survive requesting transport EOF, while ordinary session commands remain cancellable. Legacy targetId-only addressing is not supported. | TestPyppeteerBrowserAndSessionHandshake; TestInterceptionDetachResumesRequest; TestAcceptedCloseSurvivesTransportEOF |
Target.setAutoAttach |
partial | Nested/flattened browser-tab-page attachment, type filters and start-paused navigation. No worker/OOPIF/prerender graph. Browser sessions enumerate top-level targets; tab sessions attach their page. A direct page session never auto-attaches its own top-level target hierarchy. | TestFlattenedSessionsKeepIndependentPagesAndDuplicateCommandIDs; page.create; TestInspectorPageAutoAttachDoesNotAttachItself; TestInspectorExplicitConsoleEvaluationEmitsOnce |
Target.setDiscoverTargets |
partial | Per-session discovery/filter state and live page/tab create/change/destroy events; no worker targets. | TestPyppeteerBrowserAndSessionHandshake; page.create |
WebMCP.disable |
unsupported | Client subscription state only; no Audits issue engine or WebMCP model-context backend. Semantic support is not claimed. | browser.connect |
WebMCP.enable |
unsupported | Client subscription state only; no Audits issue engine or WebMCP model-context backend. Semantic support is not claimed. | browser.connect |
Unlisted entries are unsupported. Some harmless client acknowledgments are explicitly listed as unsupported because they provide no underlying browser behavior.
| Name | Status | Scope and limitations | Regression evidence |
|---|---|---|---|
CSS.computedStyleUpdated |
partial | Active CSS sessions observe canonical stylesheet/style epochs; headers and stable realm-qualified IDs are scoped to current documents. Last-consumer cleanup releases inspector storage. Native font/animation/compositor notifications are not modeled. | TestInspectorStylesSharedClientsAndCanonicalRuleIdentity |
CSS.styleSheetAdded |
partial | Active CSS sessions observe canonical stylesheet/style epochs; headers and stable realm-qualified IDs are scoped to current documents. Last-consumer cleanup releases inspector storage. Native font/animation/compositor notifications are not modeled. | TestInspectorStylesSharedClientsAndCanonicalRuleIdentity |
CSS.styleSheetChanged |
partial | Active CSS sessions observe canonical stylesheet/style epochs; headers and stable realm-qualified IDs are scoped to current documents. Last-consumer cleanup releases inspector storage. Native font/animation/compositor notifications are not modeled. | TestInspectorStylesSharedClientsAndCanonicalRuleIdentity |
CSS.styleSheetRemoved |
partial | Active CSS sessions observe canonical stylesheet/style epochs; headers and stable realm-qualified IDs are scoped to current documents. Last-consumer cleanup releases inspector storage. Native font/animation/compositor notifications are not modeled. | TestInspectorStylesSharedClientsAndCanonicalRuleIdentity |
DOM.attributeModified |
partial | On-demand notifications for requested frontend nodes reflect canonical state at completed Page turns, including frame/shadow ownership. Mutation bursts are coalesced; exact native per-mutation delivery ordering, distributed nodes and UA shadow events are incomplete. | TestInspectorDOMNotificationsAndCleanup; TestInspectorShadowAttachmentAndChildUpdates; TestInspectorChildFrameNotificationsAndSerialization; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles |
DOM.attributeRemoved |
partial | On-demand notifications for requested frontend nodes reflect canonical state at completed Page turns, including frame/shadow ownership. Mutation bursts are coalesced; exact native per-mutation delivery ordering, distributed nodes and UA shadow events are incomplete. | TestInspectorDOMNotificationsAndCleanup; TestInspectorShadowAttachmentAndChildUpdates; TestInspectorChildFrameNotificationsAndSerialization; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles |
DOM.characterDataModified |
partial | On-demand notifications for requested frontend nodes reflect canonical state at completed Page turns, including frame/shadow ownership. Mutation bursts are coalesced; exact native per-mutation delivery ordering, distributed nodes and UA shadow events are incomplete. Whitespace filtering matches the session projection, including sibling references and text visibility transitions. Unexpanded parents retain Chrome 152 frontend counters: each visible write to unbound character data increments the counter, including same-value writes; hidden text writes do not decrement it. Expansion returns canonical filtered children. Structural mutation bursts and their ordering relative to character-data writes remain coalesced per Page turn. | TestInspectorDOMNotificationsAndCleanup; TestInspectorShadowAttachmentAndChildUpdates; TestInspectorChildFrameNotificationsAndSerialization; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles; TestDOMWhitespaceMutationSessions; TestDOMWhitespaceUnexpandedCounts; TestDOMWhitespaceFrameShadowAndQueryProjection; TestDOMWhitespaceUnexpandedCharacterCounters; TestDOMWhitespaceCharacterCounterSettersAndBurst; TestDOMWhitespaceCharacterCounterLifecycle |
DOM.childNodeCountUpdated |
partial | On-demand notifications for requested frontend nodes reflect canonical state at completed Page turns, including frame/shadow ownership. Mutation bursts are coalesced; exact native per-mutation delivery ordering, distributed nodes and UA shadow events are incomplete. Whitespace filtering matches the session projection, including sibling references and text visibility transitions. Unexpanded parents retain Chrome 152 frontend counters: each visible write to unbound character data increments the counter, including same-value writes; hidden text writes do not decrement it. Expansion returns canonical filtered children. Structural mutation bursts and their ordering relative to character-data writes remain coalesced per Page turn. | TestInspectorDOMNotificationsAndCleanup; TestInspectorShadowAttachmentAndChildUpdates; TestInspectorChildFrameNotificationsAndSerialization; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles; TestDOMWhitespaceMutationSessions; TestDOMWhitespaceUnexpandedCounts; TestDOMWhitespaceFrameShadowAndQueryProjection; TestDOMWhitespaceUnexpandedCharacterCounters; TestDOMWhitespaceCharacterCounterSettersAndBurst; TestDOMWhitespaceCharacterCounterLifecycle; TestDOMWhitespaceCharacterCounterFrameAndShadow |
DOM.childNodeInserted |
partial | On-demand notifications for requested frontend nodes reflect canonical state at completed Page turns, including frame/shadow ownership. Mutation bursts are coalesced; exact native per-mutation delivery ordering, distributed nodes and UA shadow events are incomplete. Whitespace filtering matches the session projection, including sibling references and text visibility transitions. Unexpanded parents retain Chrome 152 frontend counters: each visible write to unbound character data increments the counter, including same-value writes; hidden text writes do not decrement it. Expansion returns canonical filtered children. Structural mutation bursts and their ordering relative to character-data writes remain coalesced per Page turn. | TestInspectorDOMNotificationsAndCleanup; TestInspectorShadowAttachmentAndChildUpdates; TestInspectorChildFrameNotificationsAndSerialization; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles; TestInspectorWideTreeInputPreservesBindings; TestInspectorChildDiffPreservesRelativeOrder; TestDOMWhitespaceMutationSessions; TestDOMWhitespaceUnexpandedCounts; TestDOMWhitespaceFrameShadowAndQueryProjection; TestDOMWhitespaceUnexpandedCharacterCounters; TestDOMWhitespaceCharacterCounterSettersAndBurst; TestDOMWhitespaceCharacterCounterLifecycle |
DOM.childNodeRemoved |
partial | On-demand notifications for requested frontend nodes reflect canonical state at completed Page turns, including frame/shadow ownership. Mutation bursts are coalesced; exact native per-mutation delivery ordering, distributed nodes and UA shadow events are incomplete. Whitespace filtering matches the session projection, including sibling references and text visibility transitions. Unexpanded parents retain Chrome 152 frontend counters: each visible write to unbound character data increments the counter, including same-value writes; hidden text writes do not decrement it. Expansion returns canonical filtered children. Structural mutation bursts and their ordering relative to character-data writes remain coalesced per Page turn. | TestInspectorDOMNotificationsAndCleanup; TestInspectorShadowAttachmentAndChildUpdates; TestInspectorChildFrameNotificationsAndSerialization; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles; TestInspectorWideTreeInputPreservesBindings; TestInspectorChildDiffPreservesRelativeOrder; TestDOMWhitespaceMutationSessions; TestDOMWhitespaceUnexpandedCounts; TestDOMWhitespaceFrameShadowAndQueryProjection; TestDOMWhitespaceUnexpandedCharacterCounters; TestDOMWhitespaceCharacterCounterSettersAndBurst; TestDOMWhitespaceCharacterCounterLifecycle |
DOM.documentUpdated |
partial | Top-level replacement is notified once per canonical Document across commit and parsing completion. On-demand notifications for requested frontend nodes reflect canonical state at completed Page turns, including frame/shadow ownership. Mutation bursts are coalesced; exact native per-mutation delivery ordering, distributed nodes and UA shadow events are incomplete. | TestDocumentUpdatedAndFrameSecurityProjection; TestInspectorDOMNotificationsAndCleanup; TestInspectorShadowAttachmentAndChildUpdates; TestInspectorChildFrameNotificationsAndSerialization; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles; TestInspectorSearchWithoutTreeInvalidatesOnNavigation |
DOM.setChildNodes |
partial | On-demand notifications for requested frontend nodes reflect canonical state at completed Page turns, including frame/shadow ownership. Mutation bursts are coalesced; exact native per-mutation delivery ordering, distributed nodes and UA shadow events are incomplete. Already published ancestor child lists are not republished by queries, preserving frontend DOMNode selection identity. Whitespace filtering matches the session projection, including sibling references and text visibility transitions. Unexpanded parents retain Chrome 152 frontend counters: each visible write to unbound character data increments the counter, including same-value writes; hidden text writes do not decrement it. Expansion returns canonical filtered children. Structural mutation bursts and their ordering relative to character-data writes remain coalesced per Page turn. | dom.selectors_element_evaluation; TestInspectorDOMNotificationsAndCleanup; TestInspectorShadowAttachmentAndChildUpdates; TestInspectorChildFrameNotificationsAndSerialization; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles; TestInspectorQueriesPreservePublishedTreeIdentity; TestDOMWhitespaceMutationSessions; TestDOMWhitespaceUnexpandedCounts; TestDOMWhitespaceFrameShadowAndQueryProjection; TestDOMWhitespaceUnexpandedCharacterCounters; TestDOMWhitespaceCharacterCounterSettersAndBurst; TestDOMWhitespaceCharacterCounterLifecycle |
DOM.shadowRootPushed |
partial | On-demand notifications for requested frontend nodes reflect canonical state at completed Page turns, including frame/shadow ownership. Mutation bursts are coalesced; exact native per-mutation delivery ordering, distributed nodes and UA shadow events are incomplete. | TestInspectorDOMNotificationsAndCleanup; TestInspectorShadowAttachmentAndChildUpdates; TestInspectorChildFrameNotificationsAndSerialization; TestInspectorFramesAndShadowEditing; TestInspectorNavigationInvalidatesNodeAndObjectHandles |
Debugger.breakpointResolved |
implemented | Native V8 breakpoint resolution events. | TestDebuggerNativeBreakpointPreservesSourceAndAuthorStack |
Debugger.paused |
implemented | Native V8 pause events with call frames and hit breakpoint identifiers. | TestDebuggerNativeBreakpointPreservesSourceAndAuthorStack |
Debugger.resumed |
implemented | Native V8 resume events. | TestDebuggerNativeBreakpointPreservesSourceAndAuthorStack |
Debugger.scriptParsed |
partial | Native V8 script notifications after Debugger attachment; scripts compiled before the first native attachment are not replayed. | TestDebuggerNativeBreakpointPreservesSourceAndAuthorStack |
Fetch.requestPaused |
partial | Shared-loader request/response-stage pauses; auth and some redirect metadata are unsupported. Request postData decodes valid UTF-8 or maps the entire invalid body bytewise to U+0000..U+00FF, matching Chrome 152; postDataEntries retains exact Base64 bytes. | TestInterceptionResponsePatternsAndPerRequestOverride; network.interception_fulfill_body; TestInterceptionBinaryPostDataSurvivesJSON |
Network.loadingFailed |
partial | Canonical request/response/failure, frame/loader identity and transport protocol. Initiator stacks, redirect-ID reuse, extra-info and complete timing/security/error details are incomplete. | TestCDPProtocolProjectsActualTransportProtocol; TestCDPProjectsChildFrameTreeLifecycleAndExecutionContext; network.response_body_extra_headers; TestInspectorNetworkFailureAndMissingBodies |
Network.loadingFinished |
partial | Canonical request/response/failure, frame/loader identity and transport protocol. Initiator stacks, redirect-ID reuse, extra-info and complete timing/security/error details are incomplete. | TestCDPProtocolProjectsActualTransportProtocol; TestCDPProjectsChildFrameTreeLifecycleAndExecutionContext; network.response_body_extra_headers |
Network.requestIntercepted |
partial | Shared-loader request/response-stage pauses; auth and some redirect metadata are unsupported. Request postData decodes valid UTF-8 or maps the entire invalid body bytewise to U+0000..U+00FF, matching Chrome 152; postDataEntries retains exact Base64 bytes. | TestInterceptionResponsePatternsAndPerRequestOverride; network.interception_fulfill_body; TestInterceptionBinaryPostDataSurvivesJSON |
Network.requestWillBeSent |
partial | Canonical request/response/failure, frame/loader identity and transport protocol. Initiator stacks, redirect-ID reuse, extra-info and complete timing/security/error details are incomplete. Request postData decodes valid UTF-8 or maps the entire invalid body bytewise to U+0000..U+00FF, matching Chrome 152; postDataEntries retains exact Base64 bytes. | TestCDPProtocolProjectsActualTransportProtocol; TestCDPProjectsChildFrameTreeLifecycleAndExecutionContext; network.response_body_extra_headers; TestInspectorBinaryPostEntriesMatchTransportBytes |
Network.responseReceived |
partial | Canonical request/response/failure, frame/loader identity and transport protocol. Canonical transport connection identity projects to stable server-scoped numeric connectionId values required by the pinned wire schema. Initiator stacks, redirect-ID reuse, extra-info and complete timing/security/error details are incomplete. Numeric connection IDs project the transport connection identity; historical IDs remain allocated for the CDP server lifetime. | TestNetworkConnectionNumericIdentity; TestCDPProtocolProjectsActualTransportProtocol; TestCDPProjectsChildFrameTreeLifecycleAndExecutionContext; network.response_body_extra_headers |
Overlay.inspectNodeRequested |
unsupported | Visual page presentation, rendering and node picking are unsupported. Harmless frontend initialization and stop/ACK controls may be acknowledged without visual behavior. | TestInspectorOverlayAndRendererBoundaries |
Page.domContentEventFired |
partial | Top-frame DOMContentLoaded/load ordered before corresponding lifecycle events. | TestCDPTopLegacyLifecycleEventsPrecedeLifecycleEvents |
Page.frameAttached |
partial | Canonical frame attach/commit/removal; OOPIF and every transient/error-frame state are not modeled. | TestCDPProjectsChildFrameTreeLifecycleAndExecutionContext; page.child_frame_events_evaluation |
Page.frameDetached |
partial | Canonical frame attach/commit/removal; OOPIF and every transient/error-frame state are not modeled. | TestCDPProjectsChildFrameTreeLifecycleAndExecutionContext; page.child_frame_events_evaluation |
Page.frameNavigated |
partial | Canonical frame attach/commit/removal including secure-context, isolation and gated-feature projections from the realm security owner. OOPIF and every transient/error-frame state are not modeled. | TestDocumentUpdatedAndFrameSecurityProjection; TestCDPProjectsChildFrameTreeLifecycleAndExecutionContext; page.child_frame_events_evaluation |
Page.frameStartedLoading |
partial | Session-gated projection of canonical frame navigation loading intervals, beginning before main/child resource fetch or blank-document commit. OOPIF, prerender and every UI-driven transient frame state remain outside the modeled scope. | TestFrameLoadingEventsFollowCanonicalNavigation; TestFrameStoppedLoadingOnExplicitStopWithoutSyntheticLoad; TestFailedNavigationStopsFrameLoading; eventGating |
Page.frameStoppedLoading |
partial | Canonical frame loading completion after document load, cancellation or navigation failure; loader ownership prevents a replaced navigation from stopping its successor. Explicit stop does not fabricate DOMContentLoaded/load. OOPIF, prerender and every UI-driven transient frame state remain outside the modeled scope. | TestFrameLoadingEventsFollowCanonicalNavigation; TestFrameStoppedLoadingOnExplicitStopWithoutSyntheticLoad; TestFailedNavigationStopsFrameLoading; eventGating |
Page.lifecycleEvent |
partial | Frame init/commit/DOMContentLoaded/load and top-frame networkIdle/networkAlmostIdle after 500ms quiet loader activity. Not all lifecycle vocabulary/timestamps. | TestCDPTopLegacyLifecycleEventsPrecedeLifecycleEvents; TestCDPInitialBlankFramesCompleteLifecycle; navigation.networkidle0; TestNetworkIdleWaitsForQuietWindowAfterLoad |
Page.loadEventFired |
partial | Top-frame DOMContentLoaded/load ordered before corresponding lifecycle events. | TestCDPTopLegacyLifecycleEventsPrecedeLifecycleEvents |
Page.navigatedWithinDocument |
partial | Same-document history/hash notification; full navigation-type and ordering fidelity is not verified. | navigation.history |
Page.screencastFrame |
unsupported | Visual page presentation, rendering and node picking are unsupported. Harmless frontend initialization and stop/ACK controls may be acknowledged without visual behavior. | TestInspectorOverlayAndRendererBoundaries |
Page.screencastVisibilityChanged |
unsupported | Visual page presentation, rendering and node picking are unsupported. Harmless frontend initialization and stop/ACK controls may be acknowledged without visual behavior. | TestInspectorOverlayAndRendererBoundaries |
Runtime.bindingCalled |
partial | Subscribed string payload/name/context from realm-local binding callables. | TestDebuggerBindingsPersistAcrossDocumentsAndRemoveOnlySubscription; runtime.exposed_function_navigation |
Runtime.consoleAPICalled |
partial | Live remote-object arguments in emitting context; no historical replay or full async stacks. Passive attachment/event delivery preserves unattached author observations: no getters, Proxy traps, lazy Error stacks or added author microtasks. | TestCDPConsoleArgumentsHaveObjectHandles; runtime.console_arguments; TestInspectorPageAutoAttachDoesNotAttachItself; TestInspectorExplicitConsoleEvaluationEmitsOnce; TestRuntimePassiveConsoleObservations; TestConsoleInspectionPreservesPassiveErrorState; TestRuntimeInspectionKeepsErrorStackLazy; TestDebuggerPassiveInspectionInColdAndRestoredRealms; TestDebuggerPrivateDescriptorTransportAcrossEngines; TestDebuggerPassiveConsoleAcrossEngines; TestCDPConsoleEventUsesCurrentExecutionContext |
Runtime.exceptionThrown |
partial | Asynchronous page errors in current context. Full exception object/stack/location fidelity and every task/promise source are incomplete. | runtime.pageerror |
Runtime.executionContextCreated |
partial | Default/isolated frame context creation/teardown. Complete ordering/unique-id fields across all transitions are not verified. | TestCDPProjectsChildFrameTreeLifecycleAndExecutionContext; TestDebuggerIsolatedWorldSharesDOMWithoutSharingGlobals |
Runtime.executionContextDestroyed |
partial | Default/isolated frame context creation/teardown. Complete ordering/unique-id fields across all transitions are not verified. | TestCDPProjectsChildFrameTreeLifecycleAndExecutionContext; TestDebuggerIsolatedWorldSharesDOMWithoutSharingGlobals |
Runtime.executionContextsCleared |
partial | Default/isolated frame context creation/teardown. Complete ordering/unique-id fields across all transitions are not verified. | TestCDPProjectsChildFrameTreeLifecycleAndExecutionContext; TestDebuggerIsolatedWorldSharesDOMWithoutSharingGlobals |
Target.attachedToTarget |
partial | Flattened/nested transport lifecycle and messages with independent IDs; no worker/OOPIF graph. | TestFlattenedSessionsKeepIndependentPagesAndDuplicateCommandIDs; TestPyppeteerBrowserAndSessionHandshake |
Target.detachedFromTarget |
partial | Flattened/nested transport lifecycle and messages with independent IDs; no worker/OOPIF graph. Nested sessions emit leaf-before-parent detach notifications so clients release closed child Pages. | TestFlattenedSessionsKeepIndependentPagesAndDuplicateCommandIDs; TestPyppeteerBrowserAndSessionHandshake; TestDetachNotifiesNestedSessionsBeforeParent |
Target.receivedMessageFromTarget |
partial | Flattened/nested transport lifecycle and messages with independent IDs; no worker/OOPIF graph. | TestFlattenedSessionsKeepIndependentPagesAndDuplicateCommandIDs; TestPyppeteerBrowserAndSessionHandshake |
Target.targetCreated |
partial | Live page/tab creation, URL changes and teardown. Worker/prerender targets and complete target metadata are not modeled. | target.parallel_pages_isolation; TestTargetCreateTargetCreatesIndependentPage |
Target.targetDestroyed |
partial | Live page/tab creation, URL changes and teardown. Worker/prerender targets and complete target metadata are not modeled. | target.parallel_pages_isolation; TestTargetCreateTargetCreatesIndependentPage |
Target.targetInfoChanged |
partial | Live page/tab creation, URL changes and teardown. Worker/prerender targets and complete target metadata are not modeled. | target.parallel_pages_isolation; TestTargetCreateTargetCreatesIndependentPage |
These automation extensions are separate from the pinned Chrome wire schema and its coverage counts.
| Name | Status | Scope and limitations | Regression evidence |
|---|---|---|---|
Mimic.cancelExecution |
partial | Session command; current runtime behavior only. Exact lifecycle and diagnostic payload coverage is incomplete. | |
Mimic.captureSnapshot |
partial | Static portable DOM/assets snapshot with base64 file bodies and capture timings. Snapshot errors and supported resource limitations remain visible; no rendering backend is implied. | TestCaptureSnapshotCDP; TestSnapshotInterruptReservesTaskBoundary |
Mimic.clearTrace |
partial | Session command; current runtime behavior only. Exact lifecycle and diagnostic payload coverage is incomplete. | |
Mimic.configureContext |
partial | Atomically configures an existing empty framework-owned Context before Pages are created, preserving the real client Context object. Rejects live/initializing/closing Pages, retained uploads and capture workers; profile/proxy/resource/media validation failures leave the Context unchanged. Context HTTP/HTTPS/SOCKS5 proxies enforce WebRTC relay transport through TURN TCP/TLS tunnels with no direct ICE, STUN, UDP TURN or DNS fallback; SOCKS UDP ASSOCIATE is unsupported. | TestConfigureEmptyFrameworkContext; TestConfigureProfileWaitsForRetainedUploads; TestRTCProxyBrowserRoundTripAndTeardown; TestRTCProxyRelayEgressMatrix |
Mimic.createContext |
partial | Creates validated generated/imported environment contexts with optional canonical media configuration installed before creating Pages. Failed media configuration disposes the new Context. Existing profile token, proxy, resource policy and disposeOnDetach behavior are preserved. Context HTTP/HTTPS/SOCKS5 proxies enforce WebRTC relay transport through TURN TCP/TLS tunnels with no direct ICE, STUN, UDP TURN or DNS fallback; SOCKS UDP ASSOCIATE is unsupported. | TestMimicMediaProfileCommands; TestRTCProxyBrowserRoundTripAndTeardown; TestRTCProxyRelayEgressMatrix |
Mimic.exportProfile |
partial | Current portable profile and runtime identity contract. Generation is limited to the installed Chrome 152 Windows behavior bundle; coherence and recipe validation remain authoritative. | TestPortableProfilesCDP |
Mimic.generateProfile |
partial | Current portable profile and runtime identity contract. Generation is limited to the installed Chrome 152 Windows behavior bundle; coherence and recipe validation remain authoritative. | TestPortableProfilesCDP |
Mimic.getCompatibilityMatrix |
partial | Returns the complete pinned Chrome wire inventory and separately pinned SDK-owned Mimic extension shapes with authoritative semantic support declarations. Generated shapes and partial scopes never imply Chrome parity or complete semantic implementation. | TestProtocolCoverageUsesCompleteGeneratedInventory; TestProtocolSupportManifestHasLiveEvidenceAndNoLostHandlers |
Mimic.getDiagnostics |
partial | Session command; current runtime behavior only. Exact lifecycle and diagnostic payload coverage is incomplete. | |
Mimic.getMediaPresets |
implemented | Bundled physical-camera class catalog. Virtual inputs are capture sources only; named model equivalence is not claimed. | TestMimicMediaProfileCommands |
Mimic.getMediaProfile |
implemented | Read-only resolved catalog snapshots and private backend failure diagnostics; native bindings never become web device identity. | TestMimicMediaProfileCommands |
Mimic.getMediaSources |
implemented | Private Context-scoped camera and microphone source discovery with opaque binding IDs and native backend diagnostics; enumeration does not open capture or grant web permissions. | TestMimicMediaProfileCommands |
Mimic.getProfile |
partial | Canonical Context/Page environment profile projection and ordinary Page overrides. Generated/imported profile invariants and explicit mutability boundaries are enforced; no arbitrary profile override mechanism. | TestMimicProfileContextsAndAtomicUpdates |
Mimic.getProfileSchema |
partial | Canonical Context/Page environment profile projection and ordinary Page overrides. Generated/imported profile invariants and explicit mutability boundaries are enforced; no arbitrary profile override mechanism. ICE profile metadata is not a live transport recipe; manual ICE address/count/timing overrides reject as unsupported. | TestMimicProfileContextsAndAtomicUpdates; TestProfileCannotFabricateICE |
Mimic.getResourcePolicy |
partial | Context-owned resource policy command. First-match rules, supported presets and budget statistics share the loader state. Nonzero wire-byte budgets and unmodeled loader work remain unsupported. | TestMimicResourcePolicyCommands |
Mimic.getResourcePolicySchema |
partial | Context-owned resource policy command. First-match rules, supported presets and budget statistics share the loader state. Nonzero wire-byte budgets and unmodeled loader work remain unsupported. | TestMimicResourcePolicyCommands |
Mimic.getResourcePolicyStats |
partial | Context-owned resource policy command. First-match rules, supported presets and budget statistics share the loader state. Nonzero wire-byte budgets and unmodeled loader work remain unsupported. | TestMimicResourcePolicyCommands |
Mimic.getStatus |
partial | Session Page trace/status observation; trace collection starts only after explicit activation. Payloads expose recorded runtime events and current execution state, not a full Chrome tracing engine. | TestTraceCaptureRequiresExplicitStart |
Mimic.getTrace |
partial | Session Page trace/status observation; trace collection starts only after explicit activation. Payloads expose recorded runtime events and current execution state, not a full Chrome tracing engine. | TestTraceCaptureRequiresExplicitStart |
Mimic.getVersion |
partial | Current portable profile and runtime identity contract. Generation is limited to the installed Chrome 152 Windows behavior bundle; coherence and recipe validation remain authoritative. | TestPortableProfilesCDP |
Mimic.importProfile |
partial | Manual import accepts arbitrary nonempty userAgent strings without CR/LF/NUL, preserving installed platform and Client Hints metadata. UA does not select a different engine or wire recipe. Generated/imported Contexts remain immutable. Other coherence and recipe validation remains authoritative. ICE profile metadata is not a live transport recipe; manual ICE address/count/timing overrides reject as unsupported. | TestPortableProfilesCDP; TestManualImportAllowsArbitraryUserAgent; TestProfileCannotFabricateICE |
Mimic.pause |
partial | Session command; current runtime behavior only. Exact lifecycle and diagnostic payload coverage is incomplete. | |
Mimic.resetProfileOverrides |
partial | Canonical Context/Page environment profile projection and ordinary Page overrides. Generated/imported profile invariants and explicit mutability boundaries are enforced; no arbitrary profile override mechanism. | TestMimicProfileContextsAndAtomicUpdates |
Mimic.resume |
partial | Session command; current runtime behavior only. Exact lifecycle and diagnostic payload coverage is incomplete. | |
Mimic.setMediaProfile |
partial | Atomic Context-owned catalog replacement; stable seeded auto selection, source/identity isolation and optional microphone grouping. Live or starting capture rejects replacement. CPU crop/scale, frame-rate reduction and optional coherent output noise; advanced native camera controls are unsupported. | TestMimicMediaProfileCommands |
Mimic.setViewport |
partial | Updates ordinary Page viewport through canonical environment validation. Generated/imported profile Contexts reject identity-changing overrides. | TestPortableProfilesCDP |
Mimic.startTrace |
partial | Session Page trace/status observation; trace collection starts only after explicit activation. Payloads expose recorded runtime events and current execution state, not a full Chrome tracing engine. | TestTraceCaptureRequiresExplicitStart |
Mimic.stopTrace |
partial | Session Page trace/status observation; trace collection starts only after explicit activation. Payloads expose recorded runtime events and current execution state, not a full Chrome tracing engine. | TestTraceCaptureRequiresExplicitStart |
Mimic.updateProfile |
partial | Canonical Context/Page environment profile projection and ordinary Page overrides. Generated/imported profile invariants and explicit mutability boundaries are enforced; no arbitrary profile override mechanism. | TestMimicProfileContextsAndAtomicUpdates |
Mimic.updateResourcePolicy |
partial | Context-owned resource policy command. First-match rules, supported presets and budget statistics share the loader state. Nonzero wire-byte budgets and unmodeled loader work remain unsupported. | TestMimicResourcePolicyCommands |
Mimic.validateMediaProfile |
partial | Compiles deterministic complete physical-class or custom device catalogs and rejects incoherent modes/defaults, unknown controls and conflicting overrides. Native format availability is checked at capture startup, not metadata validation. | TestMimicMediaProfileCommands |
Mimic.validateResourcePolicy |
partial | Context-owned resource policy command. First-match rules, supported presets and budget statistics share the loader state. Nonzero wire-byte budgets and unmodeled loader work remain unsupported. | TestMimicResourcePolicyCommands |