Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 02454a458e422be7d6b42db73a8bf7cfacf2a7b9
https://github.com/WebKit/WebKit/commit/02454a458e422be7d6b42db73a8bf7cfacf2a7b9
Author: BJ Burg <[email protected]>
Date: 2026-07-24 (Fri, 24 Jul 2026)
Changed paths:
M Source/JavaScriptCore/inspector/remote/RemoteInspector.h
M Source/JavaScriptCore/inspector/remote/RemoteInspectorConstants.h
M Source/JavaScriptCore/inspector/remote/cocoa/RemoteInspectorCocoa.mm
M Source/WebKit/UIProcess/API/Cocoa/_WKAutomationSessionConfiguration.h
M Source/WebKit/UIProcess/API/Cocoa/_WKAutomationSessionConfiguration.mm
M Source/WebKit/UIProcess/Cocoa/AutomationClient.mm
M Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
A Tools/TestWebKitAPI/Tests/WebKit/WebPage/ControlledByExternalAgent.swift
Log Message:
-----------
[Web Automation] Add a controlledByExternalAgent automation session capability
https://bugs.webkit.org/show_bug.cgi?id=319712
Reviewed by Qianlang Chen.
Add a new boolean automation session capability that lets a client indicate
a WebDriver/Automation session is being driven by an external agent. The
capability is forwarded the same way as the existing siteIsolationEnabled
capability: parsed from the automation session request dictionary under the
wire key org.webkit.webdriver.controlled-by-external-agent, carried through
RemoteInspector::SessionCapabilities, and applied onto the
_WKAutomationSessionConfiguration SPI so it round-trips through
-copyWithZone:.
* Source/JavaScriptCore/inspector/remote/RemoteInspectorConstants.h:
Add the WIRControlledByExternalAgent wire key.
* Source/JavaScriptCore/inspector/remote/RemoteInspector.h:
Add controlledByExternalAgent to SessionCapabilities.
* Source/JavaScriptCore/inspector/remote/cocoa/RemoteInspectorCocoa.mm:
(Inspector::RemoteInspector::receivedAutomationSessionRequestMessage):
Parse the new capability.
* Source/WebKit/UIProcess/Cocoa/AutomationClient.mm:
(WebKit::AutomationClient::requestAutomationSession): Forward the capability
onto the configuration.
* Source/WebKit/UIProcess/API/Cocoa/_WKAutomationSessionConfiguration.h:
Declare the controlledByExternalAgent property.
* Source/WebKit/UIProcess/API/Cocoa/_WKAutomationSessionConfiguration.mm:
(-[_WKAutomationSessionConfiguration init]): Default to NO.
(-[_WKAutomationSessionConfiguration copyWithZone:]): Preserve the flag.
* Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add the new
test file to both membership exception lists.
* Tools/TestWebKitAPI/Tests/WebKit/WebPage/ControlledByExternalAgent.swift:
Added. Tests that the flag round-trips through the automation session and
survives -copyWithZone:, and defaults to NO when unset.
Canonical link: https://commits.webkit.org/317882@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications