cdp: return a valide response for Page.getFrameTree on STARTUP

Stagehand expects a valid response for this specific command.
Add also `Target.activateTarget`
This commit is contained in:
Pierre Tachoire
2026-01-16 16:27:55 +01:00
parent cbc028b040
commit fbe07836f9
2 changed files with 25 additions and 6 deletions

View File

@@ -36,6 +36,7 @@ pub fn processMessage(cmd: anytype) !void {
sendMessageToTarget,
setAutoAttach,
setDiscoverTargets,
activateTarget,
}, cmd.input.action) orelse return error.UnknownMethod;
switch (action) {
@@ -51,14 +52,16 @@ pub fn processMessage(cmd: anytype) !void {
.sendMessageToTarget => return sendMessageToTarget(cmd),
.setAutoAttach => return setAutoAttach(cmd),
.setDiscoverTargets => return setDiscoverTargets(cmd),
.activateTarget => return cmd.sendResult(null, .{}),
}
}
fn getTargets(cmd: anytype) !void {
// Some clients like Stagehand expects to have an existing context.
const bc = cmd.browser_context orelse cmd.createBrowserContext() catch |err| switch (err) {
error.AlreadyExists => unreachable,
else => return err,
// If no context available, return an empty array.
const bc = cmd.browser_context orelse {
return cmd.sendResult(.{
.targetInfos = [_]TargetInfo{},
}, .{ .include_session_id = false });
};
const target_id = bc.target_id orelse {