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 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.0` SDK contract. Development applications declare
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.85.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 and targeted DOM actions.",
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.act over the existing framed local connection. The window host selects native.launchContext.appControl.endpoint and preserves its existing Core child, origin, profile and lifetime.",
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. `capture(parameters={},options)` returns a full base64 PNG
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. Options preserve the Core client signal/timeout contract. `close()`
9095
- cancels this connection's requests and returns `closed`, without closing the app.
9096
- Document changes and actual errors remain observable; a dispatched action is
9097
- not reversed by later cancellation. Full parameter/result, CLI and platform
9098
- contracts are in [native application control](native-app-control.md).
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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "arcane-os",
3
- "version": "0.86.0",
3
+ "version": "0.86.1",
4
4
  "description": "Arcane OS JavaScript SDK, project-local CLI, browser runtime, and repository-portable application packager.",
5
5
  "type": "module",
6
6
  "main": "./src/index.mjs",
@@ -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'],