arcane-os 0.86.0 → 0.86.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/README.md +1 -1
- package/docs/reference/inventory/package-api.json +4 -4
- package/docs/reference/sdk-api.md +42 -7
- package/package.json +1 -1
- package/src/import-map.mjs +1 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.86.1
|
|
4
|
+
|
|
5
|
+
- Include the existing public `arcane-os/ai/model-observation` export in
|
|
6
|
+
generated browser import maps. Both managed application maps and standalone
|
|
7
|
+
document maps resolve the same published browser module, including direct
|
|
8
|
+
installed-package URLs and nested documents.
|
|
9
|
+
- Consumers adopt the published package and run their normal import-map
|
|
10
|
+
generation before rebuilding or serving their application. No manual map
|
|
11
|
+
edits, alternate imports or new native host build are required. The matching
|
|
12
|
+
Windows and Whisper runtime assets are unchanged from 0.86.0.
|
|
13
|
+
|
|
3
14
|
## 0.86.0
|
|
4
15
|
|
|
5
16
|
- Add fixed `Tab`, `Shift+Tab`, `Enter` and `Space` key operations to
|
package/README.md
CHANGED
|
@@ -25,7 +25,7 @@ selected SDK projection or an explicit live SDK source mount. Both profiles
|
|
|
25
25
|
share the theme, packaging, event, cancellation,
|
|
26
26
|
and browser run contracts while retaining their selected application layout.
|
|
27
27
|
|
|
28
|
-
This checkout defines the `0.86.
|
|
28
|
+
This checkout defines the `0.86.1` SDK contract. Development applications declare
|
|
29
29
|
`arcane-os` as `latest` and retain their lockfile. Exact SDK pins begin when Roshi
|
|
30
30
|
designates a production build. Follow [Consumer updates](docs/consumer-updates.md)
|
|
31
31
|
to refresh and compare the installed SDK and lockfile with the published channel;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
|
-
"sdkVersion": "0.
|
|
3
|
+
"sdkVersion": "0.86.0",
|
|
4
4
|
"environment": {
|
|
5
5
|
"runtime": "Node.js for Node entrypoints; browser for browser-only entrypoints",
|
|
6
6
|
"minimumVersion": "22.23.2 for Node entrypoints",
|
|
@@ -63,10 +63,10 @@
|
|
|
63
63
|
"entrypoints": ["arcane-os/core/app-control"],
|
|
64
64
|
"primaryImport": "arcane-os/core/app-control",
|
|
65
65
|
"group": "Native application control",
|
|
66
|
-
"summary": "Connects to one explicit running native window for background document inspection, viewport capture
|
|
66
|
+
"summary": "Connects to one explicit running native window for background document inspection, viewport capture, targeted DOM actions, fixed keys and Normal-window client resizing.",
|
|
67
67
|
"availability": "Node local IPC on Windows, Linux and macOS; the current window adapter is Windows WebView2, with other native adapters unavailable",
|
|
68
|
-
"protocol": "arcane/1 app.control.status, app.control.inspect, app.control.capture and app.control.
|
|
69
|
-
"normalization": "Returns endpoint, closed, status(options), inspect(parameters={},options), capture(parameters={},options), act(parameters,options), and close(). Parameters pass unchanged; per-operation options preserve Core signal/timeout behavior. Status reports actual app/window/document readiness. Inspect returns complete selected DOM HTML/text and live control state with DOM-derived role/name hints. Optional shadowPath on inspect and act is an ordered array of unique CSS host selectors through open shadow roots; selector resolves in the final root, with omitted/empty paths retaining top-level light DOM. Whole-shadow-root inspection returns complete innerHTML/textContent with null selector/state; nested shadow-host descriptors provide their full path. Frames remain descriptors and closed roots are unavailable. Capture returns mimeType image/png, complete base64 data, documentGeneration and URL for the rendered viewport. Act requires documentGeneration and one CSS selector with click, exact-string fill, exact-value select or absolute-offset scroll. The native document marker prevents queued actions crossing replacement; cancellation before dispatch prevents execution while dispatched work is observed through completion without retry or reversal. close() cancels only this connection, never the application or Core. No launch, automatic reconnect, desktop activation, global input or public arbitrary evaluator. CLI inspection accepts either --selector or a complete --request JSON object. See native-app-control.md for complete result fields, CLI and platform scope."
|
|
68
|
+
"protocol": "arcane/1 app.control.status, app.control.inspect, app.control.capture, app.control.act, app.control.key and app.control.resize over the existing framed local connection. The window host selects native.launchContext.appControl.endpoint and preserves its existing Core child, origin, profile and lifetime; assembly requires a matching published Windows host asset.",
|
|
69
|
+
"normalization": "Returns endpoint, closed, status(options), inspect(parameters={},options), capture(parameters={},options), act(parameters,options), key(parameters,options), resize(parameters,options), and close(). Parameters pass unchanged; per-operation options preserve Core signal/timeout behavior. Status reports actual app/window/document readiness. Inspect returns complete selected DOM HTML/text and live control state with DOM-derived role/name hints, plus top-level viewport CSS dimensions/devicePixelRatio, documentHasFocus and focusPath through the active open-shadow branch; focus records are observations with null selectors, separate from the selected root's activeElement. Optional shadowPath on inspect and act is an ordered array of unique CSS host selectors through open shadow roots; selector resolves in the final root, with omitted/empty paths retaining top-level light DOM. Whole-shadow-root inspection returns complete innerHTML/textContent with null selector/state; nested shadow-host descriptors provide their full path. Frames remain descriptors and closed roots are unavailable. Capture returns mimeType image/png, complete base64 data, documentGeneration and URL for the rendered viewport. Act requires documentGeneration and one CSS selector with click, exact-string fill, exact-value select or absolute-offset scroll. Key requires documentGeneration and Tab, Enter or Space; shiftKey:true is supported only for Tab. One keyboard owner keeps each press/release pair ordered at the selected WebView's current focus. An attempted press owns a matching release even after cancellation, navigation or failure; no failed or ambiguous press is replayed. Generation checks bracket native input without atomic document binding. Resize accepts positive integral native client width/height supported by WinForms and optional documentGeneration, changes only a Normal window's ClientSize, and returns immediate previous/actual native dimensions plus the later observed CSS viewport. Native and CSS snapshots are not atomic; platform constraints may change actual dimensions. Restoration is an explicit resize using the operation's previous native dimensions; unsupported window states fail before mutation. The native document marker prevents queued DOM actions crossing replacement; cancellation before dispatch prevents execution while dispatched work is observed through completion without retry or reversal, including owned key release. Partial results remain in actual errors and complete later responses remain in host diagnostics after cancellation or disconnection. Dispatch completion does not establish application handler completion or a successful business action. close() cancels only this connection, never the application or Core. No launch, automatic reconnect, desktop activation, global input or public arbitrary evaluator. CLI inspection accepts either --selector or a complete --request JSON object; act, key and resize forward their complete --request parameter objects. See native-app-control.md for complete result fields, CLI and platform scope."
|
|
70
70
|
},
|
|
71
71
|
{
|
|
72
72
|
"id": "local-ai-execution-devices:createExecutionDeviceCatalog",
|
|
@@ -9076,7 +9076,7 @@ connectAppControl({endpoint,signal,onError}={})
|
|
|
9076
9076
|
```
|
|
9077
9077
|
|
|
9078
9078
|
Connects once to the explicit running native window and resolves
|
|
9079
|
-
`{endpoint,closed,status,inspect,capture,act,close}`. The Windows host selects its
|
|
9079
|
+
`{endpoint,closed,status,inspect,capture,act,key,resize,close}`. The Windows host selects its
|
|
9080
9080
|
own listener through `native.launchContext.appControl.endpoint` and preserves the
|
|
9081
9081
|
existing Core child, origin, profile and application lifetime. The client uses
|
|
9082
9082
|
portable Node local IPC; other native host adapters do not yet implement these
|
|
@@ -9088,14 +9088,49 @@ and no automatic reconnect or action retry occurs.
|
|
|
9088
9088
|
and live control state. Inspection and actions accept optional `shadowPath`, an
|
|
9089
9089
|
ordered array of unique CSS host selectors through open shadow roots; their
|
|
9090
9090
|
`selector` resolves inside the final root. Omission retains top-level light DOM.
|
|
9091
|
-
Closed roots remain unavailable.
|
|
9091
|
+
Closed roots remain unavailable. Inspection also returns top-level `viewport`
|
|
9092
|
+
CSS-pixel width/height and `devicePixelRatio`, `documentHasFocus`, and `focusPath`
|
|
9093
|
+
through the active open-shadow branch. These focus records have null selectors
|
|
9094
|
+
and remain separate from the selected root's `activeElement`; frames and closed
|
|
9095
|
+
roots end the path. `capture(parameters={},options)` returns a full base64 PNG
|
|
9092
9096
|
of the rendered viewport. `act(parameters,options)` requires a returned
|
|
9093
9097
|
`documentGeneration`, one CSS selector, and `click`, `fill`, `select` or `scroll`
|
|
9094
|
-
fields.
|
|
9095
|
-
|
|
9096
|
-
|
|
9097
|
-
|
|
9098
|
-
|
|
9098
|
+
fields.
|
|
9099
|
+
|
|
9100
|
+
`key(parameters,options)` requires the observed `documentGeneration` and
|
|
9101
|
+
`key:'Tab'`, `'Enter'` or `'Space'`; `shiftKey:true` is supported only for Tab.
|
|
9102
|
+
It sends a fixed ordered press/release pair to the selected WebView's current
|
|
9103
|
+
focus, without selecting an element or activating the desktop window. Accepted
|
|
9104
|
+
pairs share one keyboard owner. Once a press is attempted, its matching release
|
|
9105
|
+
is attempted on the same WebView even after cancellation, navigation or failure;
|
|
9106
|
+
a failed or ambiguous press is never replayed. Results retain previous/actual
|
|
9107
|
+
document views and complete attempted/completed phase records. Generation checks
|
|
9108
|
+
bracket native input rather than atomically binding it to a document, so focus
|
|
9109
|
+
or navigation can change between phases.
|
|
9110
|
+
|
|
9111
|
+
`resize(parameters,options)` accepts positive integral native client `width`
|
|
9112
|
+
and `height` supported by WinForms, plus optional `documentGeneration`. It changes
|
|
9113
|
+
only `ClientSize` while the actual window is `Normal`; maximized or minimized
|
|
9114
|
+
windows fail before size mutation. Results retain immediate `previous`/`actual`
|
|
9115
|
+
native dimensions, requested dimensions, attempted/completed flags and a later
|
|
9116
|
+
observed CSS `viewport`. Platform constraints can change actual dimensions;
|
|
9117
|
+
native and CSS observations are not an atomic snapshot. Restore explicitly with
|
|
9118
|
+
the same operation's `previous.width` and `previous.height`, not CSS dimensions
|
|
9119
|
+
or a historical status snapshot. Cancellation does not restore the window.
|
|
9120
|
+
|
|
9121
|
+
Options preserve the Core client signal/timeout contract. Cancellation before
|
|
9122
|
+
dispatch prevents execution; dispatched work and owned key release remain
|
|
9123
|
+
observed through completion. Actual errors retain complete partial results;
|
|
9124
|
+
responses completed after cancellation or disconnection remain in host
|
|
9125
|
+
diagnostics. `close()` cancels this connection's requests and returns `closed`,
|
|
9126
|
+
without closing the app. Document changes and actual errors remain observable.
|
|
9127
|
+
Dispatch completion does not establish application handler completion or a
|
|
9128
|
+
successful business action; inspect the resulting built application to establish
|
|
9129
|
+
that outcome. Assembly requires a matching published Windows host asset.
|
|
9130
|
+
|
|
9131
|
+
The CLI provides `app-control key` and `app-control resize`, each forwarding the
|
|
9132
|
+
complete parsed `--request` object. Full parameter/result, error, cancellation,
|
|
9133
|
+
CLI and platform contracts are in [native application control](native-app-control.md).
|
|
9099
9134
|
|
|
9100
9135
|
## runSharedCoreHost()
|
|
9101
9136
|
|
package/package.json
CHANGED
package/src/import-map.mjs
CHANGED
|
@@ -53,6 +53,7 @@ const SDK_BROWSER_SELF_IMPORTS=new Map([
|
|
|
53
53
|
['arcane-os/ai/core-onnx','sdk/ai/core-onnx.mjs'],
|
|
54
54
|
['arcane-os/ai/core-image','sdk/ai/core-image.mjs'],
|
|
55
55
|
['arcane-os/ai/core-model-assets','sdk/ai/core-model-assets.mjs'],
|
|
56
|
+
['arcane-os/ai/model-observation','sdk/ai/model-observation.mjs'],
|
|
56
57
|
['arcane-os/ai/browser-decisions','sdk/ai/browser-decisions.mjs'],
|
|
57
58
|
['arcane-os/ai/tool-text-stream','sdk/ai/tool-text-stream.mjs'],
|
|
58
59
|
['arcane-os/ai/twin-cloud','sdk/ai/twin-cloud.mjs'],
|