arcane-os 0.1.2 → 0.2.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 +35 -0
- package/NOTICE +5 -3
- package/README.md +73 -24
- package/browser-runtime/ARCANE_SDK_BROWSER_RELEASE.json +67 -18
- package/browser-runtime/ai/ARCANE_AI_BROWSER_WASM_COMPONENTS.json +16 -5
- package/browser-runtime/ai/browser-kokoro-worker.mjs +3 -0
- package/browser-runtime/ai/browser-speech-artifacts.mjs +1108 -0
- package/browser-runtime/ai/browser-speech-providers.mjs +780 -0
- package/browser-runtime/ai/browser-speech.mjs +9 -0
- package/browser-runtime/ai/browser-wasm-llm-provider.mjs +1537 -167
- package/browser-runtime/ai/browser-wasm.mjs +46 -1
- package/browser-runtime/ai/browser-whisper-worker.mjs +3 -0
- package/browser-runtime/ai/browser-wllama-runtime.mjs +677 -132
- package/browser-runtime/ai/model-controller.mjs +138 -12
- package/browser-runtime/ai/speech-worker-client.mjs +207 -0
- package/browser-runtime/ai/speech-worker-runtime.mjs +516 -0
- package/browser-runtime/ai/wllama/index.mjs +389 -0
- package/docs/architecture.md +132 -22
- package/docs/reference/README.md +1 -1
- package/docs/reference/ai/browser-wasm.md +101 -42
- package/docs/reference/availability-and-normalization.md +19 -5
- package/docs/reference/behavioral-testing.md +18 -5
- package/docs/reference/cli.md +2 -2
- package/docs/reference/inventory/package-api.json +14 -14
- package/docs/reference/protocols.md +4 -4
- package/docs/reference/sdk-api.md +68 -38
- package/docs/work-amplification.md +8 -4
- package/package.json +7 -3
- package/runtime/ARCANE_RUNTIME_RELEASE.json +50 -20
- package/runtime/arcane/components/chat.html +551 -62
- package/runtime/arcane/components/speech.html +1113 -265
- package/runtime/arcane/entities/Chat.js +246 -43
- package/runtime/arcane/modules/AI.js +1394 -162
- package/runtime/arcane/modules/AIProviderRuntime.js +2289 -0
- package/runtime/arcane/modules/AIRuntimeState.js +872 -0
- package/runtime/arcane/modules/ConfiguredAIChatSession.js +382 -31
- package/runtime/arcane/modules/DBOPFSDocumentLibrary.js +1106 -0
- package/runtime/arcane/modules/DocumentLexicalSearch.js +292 -0
- package/runtime/arcane/modules/PersistentAIChatSession.js +268 -0
- package/runtime/arcane/modules/StaticDocumentCatalog.js +25 -206
- package/schemas/arcane-lock.schema.json +10 -6
- package/src/cli/main.mjs +14 -2
- package/src/constants.mjs +1 -1
- package/src/dev-server.mjs +273 -26
- package/src/doctor.mjs +1 -3
- package/src/import-map.mjs +193 -84
- package/src/packager/core.mjs +313 -41
- package/src/runtime.mjs +14 -4
- package/src/scaffold.mjs +45 -17
- package/src/sdk-browser-runtime.mjs +28 -75
- package/src/templates/workspace-template.mjs +27 -8
- package/src/toolchain.mjs +13 -2
- package/src/workspace-runtime.mjs +1 -1
- package/src/workspace.mjs +178 -25
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,40 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.2.1
|
|
4
|
+
|
|
5
|
+
- Added explicit selected-unloaded chat activation, truthful legacy Cloud/Core
|
|
6
|
+
route readiness, and provider-native chat-response normalization without
|
|
7
|
+
startup downloads, hidden provider selection, or application policy.
|
|
8
|
+
- Normalized shared STT/TTS requests at the browser-speech provider boundary
|
|
9
|
+
while retaining caller-supplied immutable runtime, model, and voice
|
|
10
|
+
authorities and fail-closed format, lifecycle, error, and cancellation rules.
|
|
11
|
+
- Applied authenticated dependency import maps to every packaged browser
|
|
12
|
+
document and published a deterministic browser-readable runtime projection
|
|
13
|
+
inventory derived from the verified package receipt.
|
|
14
|
+
- Added caller-budgeted complete DBOPFS source evaluation with deterministic
|
|
15
|
+
zero-score fallback, independent scoring/excerpt/output bounds, and opt-in
|
|
16
|
+
preserve-readable bootstrap/evaluation read coverage.
|
|
17
|
+
- Bound external workspace validation, packaging, scaffolding, doctor,
|
|
18
|
+
toolchain, and development serving to one authenticated installed package,
|
|
19
|
+
including the exact `arcane-sdk@npm:arcane-os@0.2.1` alias form.
|
|
20
|
+
|
|
21
|
+
## 0.2.0
|
|
22
|
+
|
|
23
|
+
- Made the SDK the canonical owner of the portable Arcane runtime and retired
|
|
24
|
+
the Arcane OS-to-SDK overwrite direction while retaining legacy provenance in
|
|
25
|
+
the authenticated runtime receipt.
|
|
26
|
+
- Added app-supplied monolithic or ordered multi-file GGUF catalogs, DBOPFS
|
|
27
|
+
manifest-last admission, inherited per-check security policy, and measured
|
|
28
|
+
per-model capability reports for the browser-WASM Wllama provider.
|
|
29
|
+
- Added independent browser Whisper STT and Kokoro TTS provider/Worker
|
|
30
|
+
machinery with caller-supplied runtime/model authorities, explicit lifecycle,
|
|
31
|
+
progress, cancellation, unload, and no fallback or packaged model bytes.
|
|
32
|
+
- Added schema-driven DBOPFS document bootstrap, minimal lexical retrieval and
|
|
33
|
+
explicit request-context composition without automatic corpus searches.
|
|
34
|
+
- Added automatic persistent chat/history/memory composition, recurring model
|
|
35
|
+
context, structural tool-call continuity, and session-only turns through
|
|
36
|
+
`persist:false`.
|
|
37
|
+
|
|
3
38
|
## 0.1.0-dev.4
|
|
4
39
|
|
|
5
40
|
- Added the central `event-pubsub`-backed `EventManager` as the preferred SDK
|
package/NOTICE
CHANGED
|
@@ -24,9 +24,11 @@ Third-party material retains its own terms:
|
|
|
24
24
|
- Marked: MIT License; complete notice and terms reproduced below.
|
|
25
25
|
- QRCode.js: MIT License; complete notice and terms reproduced below.
|
|
26
26
|
|
|
27
|
-
No model weights
|
|
28
|
-
|
|
29
|
-
SHA-256
|
|
27
|
+
No model weights, speech runtimes, or speech model/voice bytes are included in
|
|
28
|
+
this package. Browser model and speech downloads require caller-supplied
|
|
29
|
+
authorities. Byte-length and SHA-256 checks inherit the app security policy,
|
|
30
|
+
default to disabled, and may be enabled or overridden for one provider/load;
|
|
31
|
+
an enabled check requires its expected value before cache admission.
|
|
30
32
|
|
|
31
33
|
Marked
|
|
32
34
|
------
|
package/README.md
CHANGED
|
@@ -19,11 +19,9 @@ version-locked SDK runtime, while an integrated Arcane checkout uses its live
|
|
|
19
19
|
`arcane/` runtime. Both profiles preserve the same app URLs, theme, packaging,
|
|
20
20
|
event, cancellation, and browser run contracts.
|
|
21
21
|
|
|
22
|
-
This
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
current registry availability. Registry state is deliberately not baked into
|
|
26
|
-
the immutable package documentation.
|
|
22
|
+
This checkout defines the `0.2.1` SDK contract. Applications pin one exact npm
|
|
23
|
+
version and lockfile; registry state is deliberately not baked into immutable
|
|
24
|
+
application artifacts.
|
|
27
25
|
|
|
28
26
|
That registry query is a maintainer action, not an application behavior. Apps
|
|
29
27
|
never poll npm for SDK updates or replace their own SDK or synchronized runtime.
|
|
@@ -61,29 +59,80 @@ before enabling DOM values, node content, event details, source stacks, or live
|
|
|
61
59
|
event redispatch. Password targets, text-entry details, clipboard data, URL
|
|
62
60
|
attributes, and common credential keys are excluded or redacted by default.
|
|
63
61
|
|
|
64
|
-
## Runtime
|
|
62
|
+
## Runtime source ownership
|
|
65
63
|
|
|
66
|
-
SDK
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
64
|
+
The SDK repository is the canonical source for portable shared runtime modules,
|
|
65
|
+
entities, components, themes, browser providers and workers, public contracts,
|
|
66
|
+
and their packaged byte receipts. Portable applications consume those
|
|
67
|
+
SDK-owned paths and never read an Arcane OS install or source checkout at
|
|
68
|
+
runtime. Arcane OS is a consumer of this contract; its repository-side cutover
|
|
69
|
+
is coordinated separately and cannot become a second source authority.
|
|
70
|
+
|
|
71
|
+
The source-authority cutover is complete. `runtime/arcane/` is authored here,
|
|
72
|
+
and its generated manifest authenticates the complete portable inventory. The
|
|
73
|
+
old Arcane OS-to-SDK synchronization direction is retired and fails closed; it
|
|
74
|
+
cannot overwrite SDK-canonical source. Regenerate the receipt only after an
|
|
75
|
+
authorized SDK source change:
|
|
70
76
|
|
|
71
77
|
```bash
|
|
72
|
-
npm run runtime:sync -- --arcane-root /path/to/canonical/ARCANE-OS
|
|
73
78
|
node tools/runtime-manifest.mjs --write
|
|
74
79
|
npm run check
|
|
75
80
|
```
|
|
76
81
|
|
|
77
|
-
`tools/runtime-source.json`
|
|
78
|
-
|
|
82
|
+
`tools/runtime-source.json` declares the SDK authority and retains the prior
|
|
83
|
+
Arcane OS commit only as legacy provenance for migrated compatibility bytes.
|
|
84
|
+
Arcane OS must consume the same locked SDK projection as other applications;
|
|
85
|
+
any remaining OS-side duplicate is legacy consumer migration state, not source
|
|
86
|
+
authority. The generated runtime manifest is the published content-addressed
|
|
87
|
+
byte receipt.
|
|
88
|
+
|
|
89
|
+
## Browser-local AI
|
|
90
|
+
|
|
91
|
+
`arcane-os/ai/browser-wasm` provides the shared Wllama LLM provider. The app
|
|
92
|
+
supplies its model catalog; the SDK does not hard-code Granite or any other app
|
|
93
|
+
profile. Each descriptor uses one ordered `files` array, so monolithic and
|
|
94
|
+
split GGUF models share the same contract:
|
|
95
|
+
|
|
96
|
+
```js
|
|
97
|
+
const source=createBrowserModelSource({
|
|
98
|
+
id:'app-model',
|
|
99
|
+
files:[
|
|
100
|
+
{name:'model-00001-of-00002.gguf',url:'https://models.example/one.gguf'},
|
|
101
|
+
{name:'model-00002-of-00002.gguf',url:'https://models.example/two.gguf'}
|
|
102
|
+
]
|
|
103
|
+
});
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
Expected `bytes` and `sha256` values are optional while the inherited app
|
|
107
|
+
security policy leaves those checks disabled. Enabling either check requires
|
|
108
|
+
that field on every member. The DBOPFS store admits all members in order and
|
|
109
|
+
commits its completion manifest last. Capability reports evaluate each
|
|
110
|
+
app-supplied model as `compatible`, `incompatible`, or `unknown`; the app can
|
|
111
|
+
render that result without the SDK inventing or filtering its catalog.
|
|
112
|
+
|
|
113
|
+
`arcane-os/ai/browser-speech` exposes independent Whisper STT and Kokoro TTS
|
|
114
|
+
provider factories. The package contains the plain-JavaScript provider and
|
|
115
|
+
Worker machinery, not speech runtimes, models, voices, or a CDN default. An app
|
|
116
|
+
must supply each immutable runtime/model authority explicitly. Speech roles
|
|
117
|
+
load, cancel, unload, fail, and recover independently, so speech failure never
|
|
118
|
+
silently falls back or prevents text chat.
|
|
119
|
+
|
|
120
|
+
The SDK runtime also owns `DBOPFSDocumentLibrary`,
|
|
121
|
+
`DocumentLexicalSearch`, and `PersistentAIChatSession`. Document bootstrap is
|
|
122
|
+
schema-driven and explicit; chat never searches a corpus unless the app wires
|
|
123
|
+
that library into the request context builder. Persistent chat automatically
|
|
124
|
+
maintains recurring model context and `ChatEntity` history/memory. A turn may
|
|
125
|
+
set `persist:false` to remain in the current session context without entering
|
|
126
|
+
durable chat or memory. `createArcaneAI(...).createChatSession(options)` wires
|
|
127
|
+
that session to the same selected LLM controller, creates its `ChatEntity`, and
|
|
128
|
+
uses the same controller for automatic memory extraction.
|
|
79
129
|
|
|
80
130
|
## Install
|
|
81
131
|
|
|
82
|
-
|
|
83
|
-
new repository-shaped Arcane application:
|
|
132
|
+
Create a new repository-shaped Arcane application with the exact stable SDK:
|
|
84
133
|
|
|
85
134
|
```bash
|
|
86
|
-
npx arcane-os@
|
|
135
|
+
npx arcane-os@0.2.1 new my-app --path ./my-app --target portable --git
|
|
87
136
|
cd my-app
|
|
88
137
|
npm install
|
|
89
138
|
npm run check
|
|
@@ -94,7 +143,7 @@ To enroll an existing repository, install the exact SDK and initialize only
|
|
|
94
143
|
missing Arcane files:
|
|
95
144
|
|
|
96
145
|
```bash
|
|
97
|
-
npm install --save-dev --save-exact arcane-os@
|
|
146
|
+
npm install --save-dev --save-exact arcane-os@0.2.1
|
|
98
147
|
npm exec -- arcane init my-app --target portable
|
|
99
148
|
```
|
|
100
149
|
|
|
@@ -110,7 +159,7 @@ npm exec -- arcane-os targets
|
|
|
110
159
|
No global SDK install or standalone Arcane CLI is required. The application
|
|
111
160
|
repository's exact npm dependency and lockfile own the CLI and toolchain version.
|
|
112
161
|
|
|
113
|
-
Use `npx arcane-os@
|
|
162
|
+
Use `npx arcane-os@0.2.1` for the initial bootstrap because it names this npm
|
|
114
163
|
package explicitly; bare `npx arcane` outside an installed project could resolve
|
|
115
164
|
a different package. Both installed commands invoke the same headless toolchain.
|
|
116
165
|
Project-local npm scripts use the SDK pinned by that app's `package-lock.json`,
|
|
@@ -131,7 +180,7 @@ node ./bin/arcane.mjs new local-app --path ../local-app --target portable --git
|
|
|
131
180
|
|
|
132
181
|
# From the generated app repository
|
|
133
182
|
cd ../local-app
|
|
134
|
-
npm install --save-dev --save-exact ../arcane-os-sdk/arcane-os-0.1.
|
|
183
|
+
npm install --save-dev --save-exact ../arcane-os-sdk/arcane-os-0.2.1.tgz
|
|
135
184
|
npm run check
|
|
136
185
|
npm ci
|
|
137
186
|
```
|
|
@@ -141,9 +190,9 @@ same location. npm records its integrity in `package-lock.json`, while Arcane
|
|
|
141
190
|
still verifies the installed package name and exact version, the locked runtime
|
|
142
191
|
identity, and the runtime bytes. Local directory `file:` dependencies are not
|
|
143
192
|
accepted because npm may install them as links; use a packed `.tgz`. A GitHub
|
|
144
|
-
runner also needs that tarball at the locked path.
|
|
145
|
-
|
|
146
|
-
|
|
193
|
+
runner also needs that tarball at the locked path. After publication, replace
|
|
194
|
+
the local declaration with the exact `arcane-os@0.2.1` registry package and
|
|
195
|
+
commit the regenerated lock.
|
|
147
196
|
|
|
148
197
|
Generated repositories use `npm ci --ignore-scripts` in CI. Run dependency
|
|
149
198
|
installation once and commit `package-lock.json` before enabling that workflow.
|
|
@@ -255,7 +304,7 @@ recorded length through a final identity check; an appended byte, concurrent
|
|
|
255
304
|
growth, path replacement, or hard link fails closed. NFC paths use defined
|
|
256
305
|
UTF-8 byte ordering, covered by one pinned golden bundle digest on every
|
|
257
306
|
supported Node/runner combination. This SDK accepts only the explicitly listed
|
|
258
|
-
`0.1
|
|
307
|
+
`0.2.1` bundle generation; structural validity does not imply cross-SDK
|
|
259
308
|
compatibility, and a release with zero payload bytes cannot be created. Portable
|
|
260
309
|
path validation rejects file/directory prefix conflicts, case-colliding prefix
|
|
261
310
|
spellings, and Windows device aliases including superscript COM/LPT digits.
|
|
@@ -301,7 +350,7 @@ package installation, or assertions.
|
|
|
301
350
|
|
|
302
351
|
## Current target support
|
|
303
352
|
|
|
304
|
-
Version `0.1
|
|
353
|
+
Version `0.2.1` exposes one browser target and five explicitly paired
|
|
305
354
|
native development targets: a verified non-runnable portable directory, a
|
|
306
355
|
Windows x64 unsigned-local-test EXE bundle, Linux x64 and Linux ARM64
|
|
307
356
|
unsigned-local-test DEBs, and an Android development-signed APK. The
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"builder": "arcane-sdk-browser-runtime-v1",
|
|
4
|
-
"sdkVersion": "0.1
|
|
4
|
+
"sdkVersion": "0.2.1",
|
|
5
5
|
"source": {
|
|
6
6
|
"authority": "arcane-os-sdk",
|
|
7
7
|
"repository": "https://github.com/TheWizardNexus/arcane-os-sdk.git",
|
|
@@ -28,37 +28,72 @@
|
|
|
28
28
|
}
|
|
29
29
|
]
|
|
30
30
|
},
|
|
31
|
-
"fileCount":
|
|
32
|
-
"totalBytes":
|
|
33
|
-
"contentSha256": "
|
|
31
|
+
"fileCount": 25,
|
|
32
|
+
"totalBytes": 9279974,
|
|
33
|
+
"contentSha256": "a9715c4b3aef70ec4042e4738089568d6588877b29582e0f758ed83897b6814f",
|
|
34
34
|
"files": [
|
|
35
35
|
{
|
|
36
36
|
"path": "ai/ARCANE_AI_BROWSER_WASM_COMPONENTS.json",
|
|
37
37
|
"sourcePath": "browser-runtime/ai/ARCANE_AI_BROWSER_WASM_COMPONENTS.json",
|
|
38
38
|
"provenance": "sdk-source-identity",
|
|
39
|
-
"bytes":
|
|
40
|
-
"sha256": "
|
|
39
|
+
"bytes": 3173,
|
|
40
|
+
"sha256": "7f4e361eb2270ea63cdb2f6d4b899d5c87e4b955e1b4692b800f3e89e23568fc"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"path": "ai/browser-kokoro-worker.mjs",
|
|
44
|
+
"sourcePath": "browser-runtime/ai/browser-kokoro-worker.mjs",
|
|
45
|
+
"provenance": "sdk-source-identity",
|
|
46
|
+
"bytes": 110,
|
|
47
|
+
"sha256": "5c08370aeefa6a99f4018ddaf7c0d7ac8e7189811957947ce2eba4131e19a76f"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"path": "ai/browser-speech-artifacts.mjs",
|
|
51
|
+
"sourcePath": "browser-runtime/ai/browser-speech-artifacts.mjs",
|
|
52
|
+
"provenance": "sdk-source-identity",
|
|
53
|
+
"bytes": 36576,
|
|
54
|
+
"sha256": "6504c01f6548a37291619cc6b69ae85da2cc1463ef12e83101eefdc92ad2ea74"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"path": "ai/browser-speech-providers.mjs",
|
|
58
|
+
"sourcePath": "browser-runtime/ai/browser-speech-providers.mjs",
|
|
59
|
+
"provenance": "sdk-source-identity",
|
|
60
|
+
"bytes": 25982,
|
|
61
|
+
"sha256": "65e0a8da2bcd46b11c3ea2ca496105875977decc53d4e4c94ca56949dbb569b1"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"path": "ai/browser-speech.mjs",
|
|
65
|
+
"sourcePath": "browser-runtime/ai/browser-speech.mjs",
|
|
66
|
+
"provenance": "sdk-source-identity",
|
|
67
|
+
"bytes": 266,
|
|
68
|
+
"sha256": "fceadaafc0755ebb39071550bb2f497df14e23bef169779f970195d678e73ffc"
|
|
41
69
|
},
|
|
42
70
|
{
|
|
43
71
|
"path": "ai/browser-wasm-llm-provider.mjs",
|
|
44
72
|
"sourcePath": "browser-runtime/ai/browser-wasm-llm-provider.mjs",
|
|
45
73
|
"provenance": "sdk-source-identity",
|
|
46
|
-
"bytes":
|
|
47
|
-
"sha256": "
|
|
74
|
+
"bytes": 87005,
|
|
75
|
+
"sha256": "1643dfc732cda823b8714a88d23d6e8bee48b7f8d1cf6da95906e75d6562ba9a"
|
|
48
76
|
},
|
|
49
77
|
{
|
|
50
78
|
"path": "ai/browser-wasm.mjs",
|
|
51
79
|
"sourcePath": "browser-runtime/ai/browser-wasm.mjs",
|
|
52
80
|
"provenance": "sdk-source-identity",
|
|
53
|
-
"bytes":
|
|
54
|
-
"sha256": "
|
|
81
|
+
"bytes": 3324,
|
|
82
|
+
"sha256": "0a0eb93db352b0a734f60d0273960c49315d51323b75f82f82e4f85d54101868"
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"path": "ai/browser-whisper-worker.mjs",
|
|
86
|
+
"sourcePath": "browser-runtime/ai/browser-whisper-worker.mjs",
|
|
87
|
+
"provenance": "sdk-source-identity",
|
|
88
|
+
"bytes": 110,
|
|
89
|
+
"sha256": "949a4dddfae712855fb83c2aed2608657fea62d09b03e131bf8faa95be7e3aed"
|
|
55
90
|
},
|
|
56
91
|
{
|
|
57
92
|
"path": "ai/browser-wllama-runtime.mjs",
|
|
58
93
|
"sourcePath": "browser-runtime/ai/browser-wllama-runtime.mjs",
|
|
59
94
|
"provenance": "sdk-source-identity",
|
|
60
|
-
"bytes":
|
|
61
|
-
"sha256": "
|
|
95
|
+
"bytes": 32364,
|
|
96
|
+
"sha256": "f1d1ad5e3dce70fdefba4f112e7f48029f257f65b98b7adce34cd60f5517908a"
|
|
62
97
|
},
|
|
63
98
|
{
|
|
64
99
|
"path": "ai/internal/sha256.mjs",
|
|
@@ -71,8 +106,22 @@
|
|
|
71
106
|
"path": "ai/model-controller.mjs",
|
|
72
107
|
"sourcePath": "browser-runtime/ai/model-controller.mjs",
|
|
73
108
|
"provenance": "sdk-source-identity",
|
|
74
|
-
"bytes":
|
|
75
|
-
"sha256": "
|
|
109
|
+
"bytes": 23672,
|
|
110
|
+
"sha256": "a36aea3e62835cf568bd03ebc4be0fa8e0112a15dc9fec3c213b1c8cefa33b56"
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
"path": "ai/speech-worker-client.mjs",
|
|
114
|
+
"sourcePath": "browser-runtime/ai/speech-worker-client.mjs",
|
|
115
|
+
"provenance": "sdk-source-identity",
|
|
116
|
+
"bytes": 6501,
|
|
117
|
+
"sha256": "ebfa4272725482a89ad6f89a1ff732c1e5b9803075f0d559c046800350abf75d"
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"path": "ai/speech-worker-runtime.mjs",
|
|
121
|
+
"sourcePath": "browser-runtime/ai/speech-worker-runtime.mjs",
|
|
122
|
+
"provenance": "sdk-source-identity",
|
|
123
|
+
"bytes": 17308,
|
|
124
|
+
"sha256": "feff8873f7d1c7b82f9cd797afe5beb47fa34113e491b2916ada0fcc3e62b101"
|
|
76
125
|
},
|
|
77
126
|
{
|
|
78
127
|
"path": "ai/wllama/LICENCE",
|
|
@@ -83,10 +132,10 @@
|
|
|
83
132
|
},
|
|
84
133
|
{
|
|
85
134
|
"path": "ai/wllama/index.mjs",
|
|
86
|
-
"sourcePath": "
|
|
87
|
-
"provenance": "
|
|
88
|
-
"bytes":
|
|
89
|
-
"sha256": "
|
|
135
|
+
"sourcePath": "browser-runtime/ai/wllama/index.mjs",
|
|
136
|
+
"provenance": "deterministic-derived-vendor",
|
|
137
|
+
"bytes": 392852,
|
|
138
|
+
"sha256": "b119a7cdffabc8541dce283381d18ada4027c0560728aac1fe45bdd30cdac8e2"
|
|
90
139
|
},
|
|
91
140
|
{
|
|
92
141
|
"path": "ai/wllama/llama.cpp-LICENSE",
|
|
@@ -1,14 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"kind": "arcane-ai-browser-wasm-components",
|
|
4
|
-
"protocol": "arcane-ai-browser-wasm/
|
|
4
|
+
"protocol": "arcane-ai-browser-wasm/2",
|
|
5
5
|
"packageExport": "arcane-os/ai/browser-wasm",
|
|
6
6
|
"browserEntry": "ai/browser-wasm.mjs",
|
|
7
7
|
"runtimePolicy": {
|
|
8
|
-
"modelAuthorities": "
|
|
8
|
+
"modelAuthorities": "fieldwise-security-default-false-with-optional-byteLength-and-sha256-checks",
|
|
9
9
|
"modelWeightsPacked": false,
|
|
10
10
|
"remoteModelHelpers": false,
|
|
11
11
|
"compatibilityRuntime": false,
|
|
12
|
+
"webgpuAdmission": "adapter-plus-full-offload-plus-buffer-queue-and-settled-fence-evidence",
|
|
13
|
+
"cpuFallback": false,
|
|
14
|
+
"cancellation": "abortSignal-plus-llama-cancel-acknowledgement",
|
|
15
|
+
"cleanup": "worker-termination-only-no-native-unload-claim",
|
|
12
16
|
"toolCalls": "structural-only-never-executed"
|
|
13
17
|
},
|
|
14
18
|
"components": [
|
|
@@ -28,9 +32,16 @@
|
|
|
28
32
|
{
|
|
29
33
|
"role": "runtime-module",
|
|
30
34
|
"path": "ai/wllama/index.mjs",
|
|
31
|
-
"sourcePath": "
|
|
32
|
-
"bytes":
|
|
33
|
-
"sha256": "
|
|
35
|
+
"sourcePath": "browser-runtime/ai/wllama/index.mjs",
|
|
36
|
+
"bytes": 392852,
|
|
37
|
+
"sha256": "b119a7cdffabc8541dce283381d18ada4027c0560728aac1fe45bdd30cdac8e2",
|
|
38
|
+
"projection": {
|
|
39
|
+
"protocol": "arcane-wllama-webgpu-evidence/1",
|
|
40
|
+
"inputPath": "node_modules/@wllama/wllama/esm/index.js",
|
|
41
|
+
"inputBytes": 373519,
|
|
42
|
+
"inputSha256": "4637e42d636010493a9b274fbbe70bfd8120365da726b1d9e589d85ca84a00d6",
|
|
43
|
+
"wasmModified": false
|
|
44
|
+
}
|
|
34
45
|
},
|
|
35
46
|
{
|
|
36
47
|
"role": "runtime-wasm",
|