mirror of
https://github.com/stablyai/orca.git
synced 2026-11-14 09:57:48 +00:00
* fix(browser): open target=_blank links from streamed server pages as tabs Headless serve pages have no renderer, so a page's new-tab request was denied. The runtime now opens the link as a tab beside the page, in front only for the paired client whose click or key press opened it. * test: add the offscreen tab opener to browser manager fakes * test(e2e): drive the blank-link check through the host client * fix(browser): credit a link only to the client whose input opened it A click waiting in the page's command queue keeps its client until it is delivered, input with no paired client clears an older one, and an unattributed link no longer moves the agent's tab. * refactor(browser): credit link opens from the page's command queue Record the paired client at the bridge's per-page command lease, which sees the resolved page and every command kind, instead of in four RPC handlers. A page without a workspace keeps denying new-tab links. * fix(browser): credit a link to the client whose click reached the page Credit at the guest's activating input, under the popup owner's tab, to the command delivering it, so a watcher's scroll can't claim an agent's link. Announce a background tab at once since bridge selection no longer does. * fix(browser): credit a phone's DOM-activated tap before it runs A tap with a touch radius clicks the element through Runtime.evaluate, which fires no guest input event, so credit the tapping client first. * test(e2e): assert the blank-link tab through the page, not the store * refactor(browser): simplify page-link credit and tab opening The queue owns the page command credit instead of the agent lease, the credit skips work while idle and shares the gesture's freshness rule, one opener serves both link paths, and one opensPageLink marker replaces the paired follows/leavesAgentTab flags. * test(e2e): give the blank-link spec's timeout its reason