fix: bind Cua pixel actions to current screenshot geometry
Correct native scroll scaling, reject stale or out-of-bounds pixel targets, and scope DPI awareness to geometry reads. Package adapter 0.36.0+artemis.3 and document the high-effort cross-device verification. Validation: Go tests and vet, packaged MCP schema and handshake, Python checks, and user-run high-effort task completed with a passed verdict and explicit coverage limits.
This commit is contained in:
1 parent
9c98b6bf8a
commit
889a951c9b
13 files changed
+363
-19
No files matched your search
@@ -54,7 +54,7 @@ async def model_task(base, pid, url, output, events, traces, model):
|
||||
{
|
||||
"id": "cua-driver",
|
||||
"profile": "benchmark",
|
||||
"version": "0.36.0+artemis.2",
|
||||
"version": "0.36.0+artemis.3",
|
||||
}
|
||||
],
|
||||
"model": model,
|
||||
@@ -353,6 +353,7 @@ async def run(
|
||||
"by": "page",
|
||||
"x": source["width"] // 2,
|
||||
"y": source["height"] // 2,
|
||||
"capture_id": state["capture_id"],
|
||||
"delivery_mode": "foreground",
|
||||
},
|
||||
)
|
||||
|
||||
@@ -79,12 +79,14 @@ async def main(executable):
|
||||
"by": "page",
|
||||
"x": 400,
|
||||
"y": 470,
|
||||
"capture_id": pixel.structuredContent["observation"]["capture_id"],
|
||||
},
|
||||
)
|
||||
if scrolled.isError:
|
||||
assert (
|
||||
scrolled.structuredContent["artemis"]["execution"] == "not_started"
|
||||
), scrolled
|
||||
state = await session.call("get_window_state", target)
|
||||
scrolled = await session.call(
|
||||
"scroll",
|
||||
{
|
||||
@@ -94,6 +96,7 @@ async def main(executable):
|
||||
"by": "page",
|
||||
"x": 400,
|
||||
"y": 470,
|
||||
"capture_id": state.structuredContent["capture_id"],
|
||||
"delivery_mode": "foreground",
|
||||
},
|
||||
)
|
||||
|
||||
Reference in new issue
Block a user