arcane-os 0.3.1 → 0.3.2

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.
Files changed (153) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +86 -117
  3. package/bin/arcane-test.mjs +170 -46
  4. package/browser-runtime/ai/browser-speech-artifacts.mjs +855 -895
  5. package/browser-runtime/ai/browser-speech-providers.mjs +80 -204
  6. package/browser-runtime/ai/browser-wasm-llm-provider.mjs +627 -819
  7. package/browser-runtime/ai/browser-wasm.mjs +24 -35
  8. package/browser-runtime/ai/browser-wllama-runtime.mjs +64 -316
  9. package/browser-runtime/ai/model-controller.mjs +584 -181
  10. package/browser-runtime/ai/speech-worker-client.mjs +8 -148
  11. package/browser-runtime/ai/speech-worker-runtime.mjs +642 -374
  12. package/browser-runtime/dom-event-instrumentation.mjs +55 -147
  13. package/browser-runtime/event-manager.mjs +239 -624
  14. package/package.json +5 -6
  15. package/runtime/arcane/components/app-bar.html +3 -15
  16. package/runtime/arcane/components/assistant-panel.html +10 -10
  17. package/runtime/arcane/components/calculator.html +1 -1
  18. package/runtime/arcane/components/chat.html +1359 -135
  19. package/runtime/arcane/components/conversation-view.html +2 -2
  20. package/runtime/arcane/components/document-inspector.html +11 -17
  21. package/runtime/arcane/components/file-manager.html +13 -56
  22. package/runtime/arcane/components/markdown-document.html +82 -281
  23. package/runtime/arcane/components/markdown-editor.html +7 -10
  24. package/runtime/arcane/components/media-embed.html +6 -6
  25. package/runtime/arcane/components/screen-capture.html +4 -4
  26. package/runtime/arcane/components/source-explanation.html +2 -2
  27. package/runtime/arcane/components/speech.html +112 -68
  28. package/runtime/arcane/components/terminal-workspace.html +4 -4
  29. package/runtime/arcane/components/theme-editor.html +1 -1
  30. package/runtime/arcane/components/unified-inbox.html +2 -2
  31. package/runtime/arcane/components/voice-transcription.html +31 -21
  32. package/runtime/arcane/entities/Calculation.js +2 -3
  33. package/runtime/arcane/entities/Chat.js +228 -43
  34. package/runtime/arcane/entities/Preference.js +3 -5
  35. package/runtime/arcane/entities/Weather.js +5 -5
  36. package/runtime/arcane/modules/AI.js +1042 -427
  37. package/runtime/arcane/modules/AIProviderRuntime.js +618 -359
  38. package/runtime/arcane/modules/AIResponseLength.js +9 -19
  39. package/runtime/arcane/modules/AIRuntimeState.js +109 -72
  40. package/runtime/arcane/modules/ArcaneNavigationPolicy.js +45 -32
  41. package/runtime/arcane/modules/BrowserTestSuite.js +78 -122
  42. package/runtime/arcane/modules/CalculatorEngine.js +9 -9
  43. package/runtime/arcane/modules/CommunicationAppController.js +3 -7
  44. package/runtime/arcane/modules/ComponentContracts.js +30 -32
  45. package/runtime/arcane/modules/ConfiguredAIChatSession.js +281 -230
  46. package/runtime/arcane/modules/ConversationActionItems.js +26 -59
  47. package/runtime/arcane/modules/ConversationClosingReport.js +34 -61
  48. package/runtime/arcane/modules/ConversationTimebox.js +27 -15
  49. package/runtime/arcane/modules/DBOPFSDocumentLibrary.js +152 -344
  50. package/runtime/arcane/modules/DocumentLexicalSearch.js +25 -91
  51. package/runtime/arcane/modules/HTMLImport.js +54 -1
  52. package/runtime/arcane/modules/IsolatedModelQuestionRunner.js +40 -203
  53. package/runtime/arcane/modules/LocalAIReadiness.js +40 -60
  54. package/runtime/arcane/modules/LocalAIReadinessController.js +15 -13
  55. package/runtime/arcane/modules/MD.js +1 -45
  56. package/runtime/arcane/modules/Mail.js +51 -103
  57. package/runtime/arcane/modules/MailOutbox.mjs +95 -193
  58. package/runtime/arcane/modules/MailTransport.mjs +36 -57
  59. package/runtime/arcane/modules/ModelDefinition.js +22 -106
  60. package/runtime/arcane/modules/OpenMeteoWeatherProvider.js +39 -101
  61. package/runtime/arcane/modules/PersistentAIChatSession.js +281 -18
  62. package/runtime/arcane/modules/PreferenceStore.js +102 -30
  63. package/runtime/arcane/modules/RiskSignalAnalyzer.js +8 -9
  64. package/runtime/arcane/modules/ScopedOPFSCache.js +7 -42
  65. package/runtime/arcane/modules/ScreenCapture.js +175 -128
  66. package/runtime/arcane/modules/SpeechPlayback.js +46 -149
  67. package/runtime/arcane/modules/StaticDocumentCatalog.js +173 -407
  68. package/runtime/arcane/modules/ToolCallRouter.js +25 -12
  69. package/runtime/arcane/modules/YouTubeMedia.js +6 -5
  70. package/schemas/arcane-app-bundle.schema.json +13 -78
  71. package/schemas/arcane-app.schema.json +9 -25
  72. package/schemas/arcane-lock.schema.json +18 -151
  73. package/schemas/arcane-package.schema.json +2 -16
  74. package/schemas/native-build-plan.schema.json +119 -122
  75. package/src/app-descriptor.mjs +75 -132
  76. package/src/application-tests.mjs +200 -0
  77. package/src/cli/main.mjs +27 -46
  78. package/src/constants.mjs +3 -4
  79. package/src/dev-server.mjs +30 -324
  80. package/src/doctor.mjs +92 -154
  81. package/src/dom-event-instrumentation.mjs +55 -147
  82. package/src/errors.mjs +2 -3
  83. package/src/event-manager.mjs +239 -624
  84. package/src/event-queue.mjs +3 -3
  85. package/src/import-map.mjs +273 -1028
  86. package/src/index.mjs +14 -16
  87. package/src/installed-sdk-runtime.mjs +27 -67
  88. package/src/integrated-provider-loader.mjs +53 -382
  89. package/src/mail-api.mjs +0 -2
  90. package/src/mail-server.mjs +224 -580
  91. package/src/mail.mjs +4 -10
  92. package/src/native-plan.mjs +163 -598
  93. package/src/native-provider-loader.mjs +104 -1063
  94. package/src/packager/core.mjs +485 -3229
  95. package/src/process.mjs +5 -10
  96. package/src/release-bundle.mjs +292 -2405
  97. package/src/runtime.mjs +76 -396
  98. package/src/scaffold.mjs +30 -80
  99. package/src/sdk-browser-runtime.mjs +70 -626
  100. package/src/source-server.mjs +588 -0
  101. package/src/targets/index.mjs +78 -188
  102. package/src/templates/workspace-template.mjs +19 -135
  103. package/src/testing-loader.mjs +164 -0
  104. package/src/testing.mjs +1 -1
  105. package/src/toolchain.mjs +131 -544
  106. package/src/update-check.mjs +26 -64
  107. package/src/workspace-operation-lock.mjs +139 -430
  108. package/src/workspace-runtime.mjs +109 -1558
  109. package/src/workspace.mjs +40 -302
  110. package/browser-runtime/ARCANE_SDK_BROWSER_RELEASE.json +0 -218
  111. package/browser-runtime/ai/ARCANE_AI_BROWSER_SPEECH_COMPONENTS.json +0 -203
  112. package/browser-runtime/ai/ARCANE_AI_BROWSER_WASM_COMPONENTS.json +0 -80
  113. package/browser-runtime/ai/internal/sha256.mjs +0 -166
  114. package/docs/architecture.md +0 -344
  115. package/docs/compatibility.md +0 -36
  116. package/docs/event-manager.md +0 -294
  117. package/docs/platform-targets.md +0 -108
  118. package/docs/publishing.md +0 -201
  119. package/docs/reference/README.md +0 -185
  120. package/docs/reference/ai/browser-speech-package-authority.json +0 -835
  121. package/docs/reference/ai/browser-speech.md +0 -1295
  122. package/docs/reference/ai/browser-wasm.md +0 -530
  123. package/docs/reference/arcane-ollama.md +0 -288
  124. package/docs/reference/availability-and-normalization.md +0 -183
  125. package/docs/reference/behavioral-testing.md +0 -133
  126. package/docs/reference/cli.md +0 -779
  127. package/docs/reference/core/README.md +0 -62
  128. package/docs/reference/core/arcane-ai-contracts.md +0 -907
  129. package/docs/reference/core/arcane-api.md +0 -601
  130. package/docs/reference/core/arcane-entities.md +0 -65
  131. package/docs/reference/core/arcane-events.md +0 -134
  132. package/docs/reference/core/ollama-module.md +0 -181
  133. package/docs/reference/core/reference/arcane-api/ai-and-ollama.md +0 -1909
  134. package/docs/reference/core/reference/arcane-api/applications-terminal-capabilities.md +0 -1057
  135. package/docs/reference/core/reference/arcane-api/core-and-events.md +0 -320
  136. package/docs/reference/core/reference/arcane-api/filesystem-storage-preferences-appearance.md +0 -610
  137. package/docs/reference/core/reference/arcane-api/namespaces.md +0 -1157
  138. package/docs/reference/core/reference/arcane-api/platform-installation-users-system.md +0 -1423
  139. package/docs/reference/core/reference/arcane-api/session-provisioning-diagnostics-development.md +0 -315
  140. package/docs/reference/event-manager.md +0 -1511
  141. package/docs/reference/inventory/package-api.json +0 -3284
  142. package/docs/reference/inventory/runtime-components.json +0 -1011
  143. package/docs/reference/inventory/runtime-entities.json +0 -26
  144. package/docs/reference/inventory/runtime-modules.json +0 -1431
  145. package/docs/reference/mail.md +0 -316
  146. package/docs/reference/protocols.md +0 -719
  147. package/docs/reference/runtime-components.md +0 -1366
  148. package/docs/reference/runtime-entities.md +0 -303
  149. package/docs/reference/runtime-modules.md +0 -2965
  150. package/docs/reference/sdk-api.md +0 -6698
  151. package/docs/roadmap.md +0 -79
  152. package/docs/work-amplification.md +0 -129
  153. package/runtime/ARCANE_RUNTIME_RELEASE.json +0 -826
@@ -1,835 +0,0 @@
1
- {
2
- "schema": "arcane.browser-speech-package-authority/1",
3
- "purpose": "Pre-download supply-chain metadata authority for the caller-selected Arcane SDK browser speech runtime artifacts used by Whisper STT and Kokoro TTS.",
4
- "status": "browser-speech-package-authority-registry-and-selected-bytes-verified",
5
- "publicationStatus": "browser-speech-public-runtime-ready-warn-first-secure-opt-in",
6
- "auditedOn": "2026-08-27",
7
- "evidenceBoundary": {
8
- "packageCodeDownloaded": true,
9
- "packageCodeInstalled": false,
10
- "packageCodeExecuted": false,
11
- "registryTarballsVerified": true,
12
- "candidateFileDigestsAuthenticatedByRegistryTarballs": true,
13
- "description": "All 23 exact registry tarballs matched the recorded SHA-512 integrity and SHA-1 shasum before extraction. Archive paths and member types were admitted before extraction, every extracted root manifest matched its recorded name, version and declared license, and all four selected runtime files matched their recorded byte lengths and SHA-256 values. The two caller-owned candidate model inventories also have exact file byte lengths and SHA-256 values. Package code was not installed, imported or executed. These optional audit facts do not make the SDK a redistributor and do not gate warn-first operation."
14
- },
15
- "selectedBrowserDependencyClosure": {
16
- "root": "kokoro-js@1.2.1",
17
- "nodeCount": 23,
18
- "nodes": [
19
- {
20
- "id": "kokoro-js@1.2.1",
21
- "name": "kokoro-js",
22
- "version": "1.2.1",
23
- "publisher": "xenova",
24
- "license": "Apache-2.0",
25
- "registryTarballUrl": "https://registry.npmjs.org/kokoro-js/-/kokoro-js-1.2.1.tgz",
26
- "integritySha512": "sha512-oq0HZJWis3t8lERkMJh84WLU86dpYD0EuBPtqYnLlQzyFP1OkyBRDcweAqCfhNOpltyN9j/azp1H6uuC47gShw==",
27
- "shasumSha1": "a6a9b0ffc1ab354fa3f9cb71ee95b6e9f0a13527",
28
- "purpose": "Kokoro TTS browser runtime, voice catalog and voice-loading surface."
29
- },
30
- {
31
- "id": "@huggingface/transformers@3.5.1",
32
- "name": "@huggingface/transformers",
33
- "version": "3.5.1",
34
- "publisher": "xenova",
35
- "license": "Apache-2.0",
36
- "registryTarballUrl": "https://registry.npmjs.org/@huggingface/transformers/-/transformers-3.5.1.tgz",
37
- "integritySha512": "sha512-qWsPoJMBPYcrGuzRMVL//3dwcLXED9r+j+Hzw+hZpBfrMPdyq57ehNs7lew0D34Paj0DO0E0kZQjOZcIVN17hQ==",
38
- "shasumSha1": "8022b616ed8f1ec88d8e56def06d5b0ef5c7a1ee",
39
- "purpose": "Browser model, tokenizer and processor loading plus Whisper pipeline and ONNX Runtime Web integration used by both selected speech providers."
40
- },
41
- {
42
- "id": "@huggingface/jinja@0.4.1",
43
- "name": "@huggingface/jinja",
44
- "version": "0.4.1",
45
- "publisher": "coyotte508",
46
- "license": "MIT",
47
- "registryTarballUrl": "https://registry.npmjs.org/@huggingface/jinja/-/jinja-0.4.1.tgz",
48
- "integritySha512": "sha512-3WXbMFaPkk03LRCM0z0sylmn8ddDm4ubjU7X+Hg4M2GOuMklwoGAFXp9V2keq7vltoB/c7McE5aHUVVddAewsw==",
49
- "shasumSha1": "a71deab443c4badb6498d28e784ea1cd5eb369e2",
50
- "purpose": "Jinja template rendering imported by Transformers tokenizer support."
51
- },
52
- {
53
- "id": "onnxruntime-web@1.22.0-dev.20250409-89f8206ba4",
54
- "name": "onnxruntime-web",
55
- "version": "1.22.0-dev.20250409-89f8206ba4",
56
- "publisher": "onnxruntime",
57
- "license": "MIT",
58
- "registryTarballUrl": "https://registry.npmjs.org/onnxruntime-web/-/onnxruntime-web-1.22.0-dev.20250409-89f8206ba4.tgz",
59
- "integritySha512": "sha512-0uS76OPgH0hWCPrFKlL8kYVV7ckM7t/36HfbgoFw6Nd0CZVVbQC4PkrR8mBX8LtNUFZO25IQBqV2Hx2ho3FlbQ==",
60
- "shasumSha1": "d1e3a04e03dfee392b41d420ef547b6a0351b06b",
61
- "purpose": "Browser ONNX inference runtime and JSEP WebAssembly module host."
62
- },
63
- {
64
- "id": "onnxruntime-common@1.22.0-dev.20250409-89f8206ba4",
65
- "name": "onnxruntime-common",
66
- "version": "1.22.0-dev.20250409-89f8206ba4",
67
- "publisher": "onnxruntime",
68
- "license": "MIT",
69
- "registryTarballUrl": "https://registry.npmjs.org/onnxruntime-common/-/onnxruntime-common-1.22.0-dev.20250409-89f8206ba4.tgz",
70
- "integritySha512": "sha512-vDJMkfCfb0b1A836rgHj+ORuZf4B4+cc2bASQtpeoJLueuFc5DuYwjIZUBrSvx/fO5IrLjLz+oTrB3pcGlhovQ==",
71
- "shasumSha1": "3d4a39563b93db3d0428b5527cba58a3c8f826c2",
72
- "purpose": "Shared ONNX environment, tensor and inference-session contract used by ONNX Runtime Web."
73
- },
74
- {
75
- "id": "flatbuffers@25.2.10",
76
- "name": "flatbuffers",
77
- "version": "25.2.10",
78
- "publisher": "dbaileychess",
79
- "license": "Apache-2.0",
80
- "registryTarballUrl": "https://registry.npmjs.org/flatbuffers/-/flatbuffers-25.2.10.tgz",
81
- "integritySha512": "sha512-7JlN9ZvLDG1McO3kbX0k4v+SUAg48L1rIwEvN6ZQl/eCtgJz9UylTMzE9wrmYrcorgxm3CX/3T/w5VAub99UUw==",
82
- "shasumSha1": "308b750545f62db670ca4c9d7dbc66161420a95e",
83
- "purpose": "FlatBuffers serialization support required by ONNX Runtime Web."
84
- },
85
- {
86
- "id": "guid-typescript@1.0.9",
87
- "name": "guid-typescript",
88
- "version": "1.0.9",
89
- "publisher": "nicolas.developer",
90
- "license": "ISC",
91
- "registryTarballUrl": "https://registry.npmjs.org/guid-typescript/-/guid-typescript-1.0.9.tgz",
92
- "integritySha512": "sha512-Y8T4vYhEfwJOTbouREvG+3XDsjr8E3kIr7uf+JZ0BYloFsttiHU0WfvANVsR7TxNUJa/WpCnw/Ino/p+DeBhBQ==",
93
- "shasumSha1": "e35f77003535b0297ea08548f5ace6adb1480ddc",
94
- "purpose": "GUID helper required by ONNX Runtime Web."
95
- },
96
- {
97
- "id": "long@5.3.2",
98
- "name": "long",
99
- "version": "5.3.2",
100
- "publisher": "dcode",
101
- "license": "Apache-2.0",
102
- "registryTarballUrl": "https://registry.npmjs.org/long/-/long-5.3.2.tgz",
103
- "integritySha512": "sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==",
104
- "shasumSha1": "1d84463095999262d7d7b7f8bfd4a8cc55167f83",
105
- "purpose": "64-bit integer support shared by ONNX Runtime Web and protobufjs."
106
- },
107
- {
108
- "id": "platform@1.3.6",
109
- "name": "platform",
110
- "version": "1.3.6",
111
- "publisher": "d10",
112
- "license": "MIT",
113
- "registryTarballUrl": "https://registry.npmjs.org/platform/-/platform-1.3.6.tgz",
114
- "integritySha512": "sha512-fnWVljUchTro6RiCFvCXBbNhJc2NijN7oIQxbwsyL0buWJPG85v81ehlHI9fXrJsMNgTofEoWIQeClKpgxFLrg==",
115
- "shasumSha1": "48b4ce983164b209c2d45a107adb31f473a6e7a7",
116
- "purpose": "Runtime platform detection required by ONNX Runtime Web."
117
- },
118
- {
119
- "id": "protobufjs@7.5.0",
120
- "name": "protobufjs",
121
- "version": "7.5.0",
122
- "publisher": "google-wombot",
123
- "license": "BSD-3-Clause",
124
- "registryTarballUrl": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.5.0.tgz",
125
- "integritySha512": "sha512-Z2E/kOY1QjoMlCytmexzYfDm/w5fKAiRwpSzGtdnXW1zC88Z2yXazHHrOtwCzn+7wSxyE8PYM4rvVcMphF9sOA==",
126
- "shasumSha1": "a317ad80713e9db43c8e55afa8636a9aa76bb630",
127
- "purpose": "Protocol Buffers serialization support required by ONNX Runtime Web."
128
- },
129
- {
130
- "id": "@protobufjs/aspromise@1.1.2",
131
- "name": "@protobufjs/aspromise",
132
- "version": "1.1.2",
133
- "publisher": "dcode",
134
- "license": "BSD-3-Clause",
135
- "registryTarballUrl": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz",
136
- "integritySha512": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==",
137
- "shasumSha1": "9b8b0cc663d669a7d8f6f5d0893a14d348f30fbf",
138
- "purpose": "Promise adaptation helper in the protobufjs support tree."
139
- },
140
- {
141
- "id": "@protobufjs/base64@1.1.2",
142
- "name": "@protobufjs/base64",
143
- "version": "1.1.2",
144
- "publisher": "dcode",
145
- "license": "BSD-3-Clause",
146
- "registryTarballUrl": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz",
147
- "integritySha512": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==",
148
- "shasumSha1": "4c85730e59b9a1f1f349047dbf24296034bb2735",
149
- "purpose": "Base64 codec in the protobufjs support tree."
150
- },
151
- {
152
- "id": "@protobufjs/codegen@2.0.4",
153
- "name": "@protobufjs/codegen",
154
- "version": "2.0.4",
155
- "publisher": "dcode",
156
- "license": "BSD-3-Clause",
157
- "registryTarballUrl": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz",
158
- "integritySha512": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==",
159
- "shasumSha1": "7ef37f0d010fb028ad1ad59722e506d9262815cb",
160
- "purpose": "Runtime code-generation helper in the protobufjs support tree."
161
- },
162
- {
163
- "id": "@protobufjs/eventemitter@1.1.0",
164
- "name": "@protobufjs/eventemitter",
165
- "version": "1.1.0",
166
- "publisher": "dcode",
167
- "license": "BSD-3-Clause",
168
- "registryTarballUrl": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz",
169
- "integritySha512": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==",
170
- "shasumSha1": "355cbc98bafad5978f9ed095f397621f1d066b70",
171
- "purpose": "Event-emitter helper in the protobufjs support tree."
172
- },
173
- {
174
- "id": "@protobufjs/fetch@1.1.0",
175
- "name": "@protobufjs/fetch",
176
- "version": "1.1.0",
177
- "publisher": "dcode",
178
- "license": "BSD-3-Clause",
179
- "registryTarballUrl": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz",
180
- "integritySha512": "sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==",
181
- "shasumSha1": "ba99fb598614af65700c1619ff06d454b0d84c45",
182
- "purpose": "Resource-fetch helper in the protobufjs support tree."
183
- },
184
- {
185
- "id": "@protobufjs/float@1.0.2",
186
- "name": "@protobufjs/float",
187
- "version": "1.0.2",
188
- "publisher": "dcode",
189
- "license": "BSD-3-Clause",
190
- "registryTarballUrl": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz",
191
- "integritySha512": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==",
192
- "shasumSha1": "5e9e1abdcb73fc0a7cb8b291df78c8cbd97b87d1",
193
- "purpose": "Floating-point codec in the protobufjs support tree."
194
- },
195
- {
196
- "id": "@protobufjs/inquire@1.1.0",
197
- "name": "@protobufjs/inquire",
198
- "version": "1.1.0",
199
- "publisher": "dcode",
200
- "license": "BSD-3-Clause",
201
- "registryTarballUrl": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz",
202
- "integritySha512": "sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==",
203
- "shasumSha1": "ff200e3e7cf2429e2dcafc1140828e8cc638f089",
204
- "purpose": "Optional module-inquiry helper in the protobufjs support tree."
205
- },
206
- {
207
- "id": "@protobufjs/path@1.1.2",
208
- "name": "@protobufjs/path",
209
- "version": "1.1.2",
210
- "publisher": "dcode",
211
- "license": "BSD-3-Clause",
212
- "registryTarballUrl": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz",
213
- "integritySha512": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==",
214
- "shasumSha1": "6cc2b20c5c9ad6ad0dccfd21ca7673d8d7fbf68d",
215
- "purpose": "Path helper in the protobufjs support tree."
216
- },
217
- {
218
- "id": "@protobufjs/pool@1.1.0",
219
- "name": "@protobufjs/pool",
220
- "version": "1.1.0",
221
- "publisher": "dcode",
222
- "license": "BSD-3-Clause",
223
- "registryTarballUrl": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz",
224
- "integritySha512": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==",
225
- "shasumSha1": "09fd15f2d6d3abfa9b65bc366506d6ad7846ff54",
226
- "purpose": "Allocation-pool helper in the protobufjs support tree."
227
- },
228
- {
229
- "id": "@protobufjs/utf8@1.1.0",
230
- "name": "@protobufjs/utf8",
231
- "version": "1.1.0",
232
- "publisher": "dcode",
233
- "license": "BSD-3-Clause",
234
- "registryTarballUrl": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz",
235
- "integritySha512": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==",
236
- "shasumSha1": "a777360b5b39a1a2e5106f8e858f2fd2d060c570",
237
- "purpose": "UTF-8 codec in the protobufjs support tree."
238
- },
239
- {
240
- "id": "@types/node@22.10.6",
241
- "name": "@types/node",
242
- "version": "22.10.6",
243
- "publisher": "types",
244
- "license": "MIT",
245
- "registryTarballUrl": "https://registry.npmjs.org/@types/node/-/node-22.10.6.tgz",
246
- "integritySha512": "sha512-qNiuwC4ZDAUNcY47xgaSuS92cjf8JbSUoaKS77bmLG1rU7MlATVSiw/IlrjtIyyskXBZ8KkNfjK/P5na7rgXbQ==",
247
- "shasumSha1": "5c6795e71635876039f853cbccd59f523d9e4239",
248
- "purpose": "Node type declarations required by protobufjs package metadata; not browser-executable."
249
- },
250
- {
251
- "id": "undici-types@6.20.0",
252
- "name": "undici-types",
253
- "version": "6.20.0",
254
- "publisher": "matteo.collina",
255
- "license": "MIT",
256
- "registryTarballUrl": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz",
257
- "integritySha512": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==",
258
- "shasumSha1": "8171bf22c1f588d1554d55bf204bc624af388433",
259
- "purpose": "Undici and Fetch type declarations required by @types/node; not browser-executable."
260
- },
261
- {
262
- "id": "phonemizer@1.2.1",
263
- "name": "phonemizer",
264
- "version": "1.2.1",
265
- "publisher": "xenova",
266
- "license": "Apache-2.0",
267
- "registryTarballUrl": "https://registry.npmjs.org/phonemizer/-/phonemizer-1.2.1.tgz",
268
- "integritySha512": "sha512-v0KJ4mi2T4Q7eJQ0W15Xd4G9k4kICSXE8bpDeJ8jisL4RyJhNWsweKTOi88QXFc4r4LZlz5jVL5lCHhkpdT71A==",
269
- "shasumSha1": "175aed7034b49b9169fc6adf13c16134374d238d",
270
- "purpose": "Bundled eSpeak-NG-based text-to-phoneme conversion used by Kokoro."
271
- }
272
- ],
273
- "dependencyEdges": [
274
- { "from": "kokoro-js@1.2.1", "to": "@huggingface/transformers@3.5.1" },
275
- { "from": "kokoro-js@1.2.1", "to": "phonemizer@1.2.1" },
276
- { "from": "@huggingface/transformers@3.5.1", "to": "@huggingface/jinja@0.4.1" },
277
- { "from": "@huggingface/transformers@3.5.1", "to": "onnxruntime-web@1.22.0-dev.20250409-89f8206ba4" },
278
- { "from": "onnxruntime-web@1.22.0-dev.20250409-89f8206ba4", "to": "flatbuffers@25.2.10" },
279
- { "from": "onnxruntime-web@1.22.0-dev.20250409-89f8206ba4", "to": "guid-typescript@1.0.9" },
280
- { "from": "onnxruntime-web@1.22.0-dev.20250409-89f8206ba4", "to": "long@5.3.2" },
281
- { "from": "onnxruntime-web@1.22.0-dev.20250409-89f8206ba4", "to": "onnxruntime-common@1.22.0-dev.20250409-89f8206ba4" },
282
- { "from": "onnxruntime-web@1.22.0-dev.20250409-89f8206ba4", "to": "platform@1.3.6" },
283
- { "from": "onnxruntime-web@1.22.0-dev.20250409-89f8206ba4", "to": "protobufjs@7.5.0" },
284
- { "from": "protobufjs@7.5.0", "to": "@protobufjs/aspromise@1.1.2" },
285
- { "from": "protobufjs@7.5.0", "to": "@protobufjs/base64@1.1.2" },
286
- { "from": "protobufjs@7.5.0", "to": "@protobufjs/codegen@2.0.4" },
287
- { "from": "protobufjs@7.5.0", "to": "@protobufjs/eventemitter@1.1.0" },
288
- { "from": "protobufjs@7.5.0", "to": "@protobufjs/fetch@1.1.0" },
289
- { "from": "protobufjs@7.5.0", "to": "@protobufjs/float@1.0.2" },
290
- { "from": "protobufjs@7.5.0", "to": "@protobufjs/inquire@1.1.0" },
291
- { "from": "protobufjs@7.5.0", "to": "@protobufjs/path@1.1.2" },
292
- { "from": "protobufjs@7.5.0", "to": "@protobufjs/pool@1.1.0" },
293
- { "from": "protobufjs@7.5.0", "to": "@protobufjs/utf8@1.1.0" },
294
- { "from": "protobufjs@7.5.0", "to": "@types/node@22.10.6" },
295
- { "from": "protobufjs@7.5.0", "to": "long@5.3.2" },
296
- { "from": "@protobufjs/fetch@1.1.0", "to": "@protobufjs/aspromise@1.1.2" },
297
- { "from": "@protobufjs/fetch@1.1.0", "to": "@protobufjs/inquire@1.1.0" },
298
- { "from": "@types/node@22.10.6", "to": "undici-types@6.20.0" }
299
- ],
300
- "selectedClosureOptionalDependencyEdges": [],
301
- "selectedClosurePeerDependencyEdges": []
302
- },
303
- "coreSourceRevisions": [
304
- {
305
- "package": "kokoro-js@1.2.1",
306
- "repository": "https://github.com/hexgrad/kokoro",
307
- "commit": "664c76a704021239ba59c84dcbaa4d3dece01fe9",
308
- "immutableSourceUrl": "https://github.com/hexgrad/kokoro/tree/664c76a704021239ba59c84dcbaa4d3dece01fe9/kokoro.js"
309
- },
310
- {
311
- "package": "@huggingface/transformers@3.5.1",
312
- "repository": "https://github.com/huggingface/transformers.js",
313
- "commit": "746c8c25bf27c5e0684a20f76889b4bb8d23e295",
314
- "immutableSourceUrl": "https://github.com/huggingface/transformers.js/tree/746c8c25bf27c5e0684a20f76889b4bb8d23e295"
315
- },
316
- {
317
- "package": "phonemizer@1.2.1",
318
- "repository": "https://github.com/xenova/phonemizer.js",
319
- "commit": "6835144b7ee9043129222549c1ed2f6a27216278",
320
- "immutableSourceUrl": "https://github.com/xenova/phonemizer.js/tree/6835144b7ee9043129222549c1ed2f6a27216278"
321
- },
322
- {
323
- "package": "onnxruntime-web@1.22.0-dev.20250409-89f8206ba4",
324
- "repository": "https://github.com/microsoft/onnxruntime",
325
- "commit": "89f8206ba4f1c22c39e0297fb55272e8ce8cd7d0",
326
- "immutableSourceUrl": "https://github.com/microsoft/onnxruntime/tree/89f8206ba4f1c22c39e0297fb55272e8ce8cd7d0/js/web"
327
- }
328
- ],
329
- "candidateArtifacts": [
330
- {
331
- "id": "kokoro-js-browser-entry",
332
- "package": "kokoro-js@1.2.1",
333
- "path": "dist/kokoro.web.js",
334
- "role": "kokoro-tts-browser-entrypoint",
335
- "bytes": 2135146,
336
- "sha256": "6067712fe4c43cdb36c762f860a5ab8d96ea1d9c8882466438eb9f3d0d20be8f",
337
- "mediaType": "application/javascript",
338
- "sourceUrl": "https://cdn.jsdelivr.net/npm/kokoro-js@1.2.1/dist/kokoro.web.js",
339
- "sourceRevision": "664c76a704021239ba59c84dcbaa4d3dece01fe9",
340
- "declaredPackageLicense": "Apache-2.0",
341
- "fileLicenseVerificationStatus": "published-bundle-package-license-recorded-third-party-notice-closure-incomplete",
342
- "digestEvidence": "registry-integrity-verified-tarball-byte-match",
343
- "sourceAdmission": "exact-version-source-url-no-redirect-media-type-verified"
344
- },
345
- {
346
- "id": "transformers-whisper-browser-entry",
347
- "package": "@huggingface/transformers@3.5.1",
348
- "path": "dist/transformers.js",
349
- "role": "transformers-whisper-browser-entrypoint-with-bundled-onnx-runtime-javascript",
350
- "bytes": 2141070,
351
- "sha256": "730d42f06974f547e1f6a5f5b7313fc731ff21a3d3ac4c8e47d1f69b0a375547",
352
- "mediaType": "application/javascript",
353
- "sourceUrl": "https://cdn.jsdelivr.net/npm/@huggingface/transformers@3.5.1/dist/transformers.js",
354
- "sourceRevision": "746c8c25bf27c5e0684a20f76889b4bb8d23e295",
355
- "declaredPackageLicense": "Apache-2.0",
356
- "fileLicenseVerificationStatus": "published-bundle-package-license-and-inline-onnx-mit-headers-recorded-third-party-notice-closure-incomplete",
357
- "digestEvidence": "registry-integrity-verified-tarball-byte-match",
358
- "sourceAdmission": "exact-version-source-url-no-redirect-media-type-verified"
359
- },
360
- {
361
- "id": "onnx-runtime-jsep-module",
362
- "package": "@huggingface/transformers@3.5.1",
363
- "upstreamPackage": "onnxruntime-web@1.22.0-dev.20250409-89f8206ba4",
364
- "path": "dist/ort-wasm-simd-threaded.jsep.mjs",
365
- "role": "onnx-runtime-jsep-esm-and-pthread-worker-module",
366
- "bytes": 44484,
367
- "sha256": "08fb86ec433c78bfb032c5d84a68b8e8e5a8d81268fa39e24314179a5767a5b9",
368
- "mediaType": "application/javascript",
369
- "sourceUrl": "https://cdn.jsdelivr.net/npm/@huggingface/transformers@3.5.1/dist/ort-wasm-simd-threaded.jsep.mjs",
370
- "packagingRevision": "746c8c25bf27c5e0684a20f76889b4bb8d23e295",
371
- "upstreamSourceRevision": "89f8206ba4f1c22c39e0297fb55272e8ce8cd7d0",
372
- "declaredPackageLicense": "MIT",
373
- "fileLicenseVerificationStatus": "onnx-mit-package-license-and-immutable-source-notices-recorded-published-tarball-notices-absent",
374
- "digestEvidence": "transformers-and-onnx-registry-integrity-verified-tarball-byte-match",
375
- "sourceAdmission": "exact-version-source-url-no-redirect-media-type-verified"
376
- },
377
- {
378
- "id": "onnx-runtime-jsep-wasm",
379
- "package": "@huggingface/transformers@3.5.1",
380
- "upstreamPackage": "onnxruntime-web@1.22.0-dev.20250409-89f8206ba4",
381
- "path": "dist/ort-wasm-simd-threaded.jsep.wasm",
382
- "role": "onnx-runtime-jsep-webassembly-binary",
383
- "bytes": 21596019,
384
- "sha256": "c46655e8a94afc45338d4cb2b840475f88e5012d524509916e505079c00bfa39",
385
- "mediaType": "application/wasm",
386
- "sourceUrl": "https://cdn.jsdelivr.net/npm/@huggingface/transformers@3.5.1/dist/ort-wasm-simd-threaded.jsep.wasm",
387
- "packagingRevision": "746c8c25bf27c5e0684a20f76889b4bb8d23e295",
388
- "upstreamSourceRevision": "89f8206ba4f1c22c39e0297fb55272e8ce8cd7d0",
389
- "declaredPackageLicense": "MIT",
390
- "fileLicenseVerificationStatus": "onnx-mit-package-license-and-immutable-source-notices-recorded-published-tarball-notices-absent",
391
- "digestEvidence": "transformers-and-onnx-registry-integrity-verified-tarball-byte-match",
392
- "sourceAdmission": "exact-version-source-url-no-redirect-media-type-verified"
393
- }
394
- ],
395
- "candidateModelAuthorities": {
396
- "status": "browser-speech-caller-model-provider-download-authorities-available-warn-first",
397
- "runtimeBytesPacked": false,
398
- "modelWeightsPacked": false,
399
- "voiceBytesPacked": false,
400
- "secureGraphSourceAdmissionContract": {
401
- "sdkSourceCommits": [
402
- "f84c27f66b0642d7f04cf5886cae32f38ab2d12f",
403
- "4c9a2f9afcb641122ac4fe0a3e811b977ff5ab4d",
404
- "d5e08e33dc9c20e95688444572176070db006052"
405
- ],
406
- "defaultRedirectPolicy": "artifact-graph-source-redirects-rejected",
407
- "declaredRedirectPolicy": "artifact-graph-only-declared-final-https-origins-admitted",
408
- "descriptorFields": {
409
- "redirectFinalOrigins": "Optional nonempty exact HTTPS-origin inventory. Supplying it changes graph identity and permits Fetch redirect following only when the exposed final response origin is declared.",
410
- "sourceMediaType": "Optional exact transport Content-Type when the authenticated source response media type differs from the execution mediaType. Supplying it changes graph identity."
411
- },
412
- "immutableAuthority": "The revision-pinned sourceUrl remains authority. A followed final URL, redirect cache URL, Xet path, signed query, or ETag never replaces it and is not persisted as authority.",
413
- "byteAuthority": "Every cold response must still match the declared positive byte length and SHA-256, is persisted to DBOPFS, reopened and rehashed, and is admitted only after the manifest is written last.",
414
- "browserObservationBoundary": "Browser Fetch exposes the final response URL, not every intermediate redirect hop. The SDK validates the exposed final HTTPS origin; CORS or redirect policy rejection before a Response exists propagates as artifact-graph-source-fetch-rejected. This record makes no per-hop-origin proof claim.",
415
- "credentials": "omit",
416
- "cache": "no-store",
417
- "referrerPolicy": "no-referrer"
418
- },
419
- "graphs": [
420
- {
421
- "id": "xenova-whisper-small-q8-2d67713f236afa48a18992566e7647f6ca848e13",
422
- "role": "stt",
423
- "modelId": "Xenova/whisper-small",
424
- "dtype": "q8",
425
- "revision": "2d67713f236afa48a18992566e7647f6ca848e13",
426
- "inputSampleRate": 16000,
427
- "licenseDeclaration": "Apache-2.0",
428
- "licenseEvidence": {
429
- "url": "https://huggingface.co/api/models/Xenova/whisper-small/revision/2d67713f236afa48a18992566e7647f6ca848e13?blobs=true",
430
- "status": "exact-revision-api-license-declaration-only-immutable-license-file-digest-not-captured"
431
- },
432
- "baseSourceUrl": "https://huggingface.co/Xenova/whisper-small/resolve/2d67713f236afa48a18992566e7647f6ca848e13/",
433
- "fileCount": 7,
434
- "modelBytes": 251875316,
435
- "modelAndSelectedRuntimeBytes": 275656889,
436
- "files": [
437
- {
438
- "kind": "model-configuration-json",
439
- "path": "config.json",
440
- "sourceUrl": "https://huggingface.co/Xenova/whisper-small/resolve/2d67713f236afa48a18992566e7647f6ca848e13/config.json",
441
- "mediaType": "application/json",
442
- "sourceMediaType": "text/plain",
443
- "license": "Apache-2.0",
444
- "bytes": 2232,
445
- "sha256": "5a6429d21d7a3379dd0861b74510f9f7076f32b563bffc9fcb072482d55ab3be",
446
- "redirectFinalOrigins": ["https://huggingface.co"],
447
- "observedRedirect": "307-to-same-origin-resolve-cache",
448
- "observedEtag": "a239fdd538b77d3c496d13d085848eca67fe993a"
449
- },
450
- {
451
- "kind": "model-generation-configuration-json",
452
- "path": "generation_config.json",
453
- "sourceUrl": "https://huggingface.co/Xenova/whisper-small/resolve/2d67713f236afa48a18992566e7647f6ca848e13/generation_config.json",
454
- "mediaType": "application/json",
455
- "sourceMediaType": "text/plain",
456
- "license": "Apache-2.0",
457
- "bytes": 3837,
458
- "sha256": "0b7407a4e53a677f826e03c75d409e6f830663932bf43dda3b08c5efa2223279",
459
- "redirectFinalOrigins": ["https://huggingface.co"],
460
- "observedRedirect": "307-to-same-origin-resolve-cache",
461
- "observedEtag": "66f96818620f7b67c276aed4a35bedc4f6986dc3"
462
- },
463
- {
464
- "kind": "model-preprocessor-json",
465
- "path": "preprocessor_config.json",
466
- "sourceUrl": "https://huggingface.co/Xenova/whisper-small/resolve/2d67713f236afa48a18992566e7647f6ca848e13/preprocessor_config.json",
467
- "mediaType": "application/json",
468
- "sourceMediaType": "text/plain",
469
- "license": "Apache-2.0",
470
- "bytes": 339,
471
- "sha256": "a6a76d28c93edb273669eb9e0b0636a2bddbb1272c3261e47b7ca6dfdbac1b8d",
472
- "redirectFinalOrigins": ["https://huggingface.co"],
473
- "observedRedirect": "307-to-same-origin-resolve-cache",
474
- "observedEtag": "91876762a536a746d268353c5cba57286e76b058"
475
- },
476
- {
477
- "kind": "model-tokenizer-json",
478
- "path": "tokenizer.json",
479
- "sourceUrl": "https://huggingface.co/Xenova/whisper-small/resolve/2d67713f236afa48a18992566e7647f6ca848e13/tokenizer.json",
480
- "mediaType": "application/json",
481
- "sourceMediaType": "text/plain",
482
- "license": "Apache-2.0",
483
- "bytes": 2480466,
484
- "sha256": "27fc476bfe7f17299480be2273fc0608e4d5a99aba2ab5dec5374b4482d1a566",
485
- "redirectFinalOrigins": ["https://huggingface.co"],
486
- "observedRedirect": "307-to-same-origin-resolve-cache",
487
- "observedEtag": "1e95340ff836fad1b5932e800fb7b8c5e6d78a74"
488
- },
489
- {
490
- "kind": "model-tokenizer-json",
491
- "path": "tokenizer_config.json",
492
- "sourceUrl": "https://huggingface.co/Xenova/whisper-small/resolve/2d67713f236afa48a18992566e7647f6ca848e13/tokenizer_config.json",
493
- "mediaType": "application/json",
494
- "sourceMediaType": "text/plain",
495
- "license": "Apache-2.0",
496
- "bytes": 282683,
497
- "sha256": "2a4c4281cf9f51ac6ccc406fdc711a087afe6530f671fa7b80953edc498275ce",
498
- "redirectFinalOrigins": ["https://huggingface.co"],
499
- "observedRedirect": "307-to-same-origin-resolve-cache",
500
- "observedEtag": "d13b786c04765fb1a06492b53587752cd67665ea"
501
- },
502
- {
503
- "kind": "model-onnx-binary",
504
- "path": "onnx/encoder_model_quantized.onnx",
505
- "sourceUrl": "https://huggingface.co/Xenova/whisper-small/resolve/2d67713f236afa48a18992566e7647f6ca848e13/onnx/encoder_model_quantized.onnx",
506
- "mediaType": "application/octet-stream",
507
- "license": "Apache-2.0",
508
- "bytes": 92324809,
509
- "sha256": "969f5ac12974340386bf7a02ea6626003e5e2dee396ffc6ab0eec282bf55ba06",
510
- "redirectFinalOrigins": ["https://us.aws.cdn.hf.co"],
511
- "observedRedirect": "302-to-expiring-signed-xet",
512
- "observedFinalPath": "/xet-bridge-us/6452c2113a794b2d9b15b8ae/ca019c006b3a393c1cf31063a4a186fc9060d1e24e93a71a03cddfb3363faccb",
513
- "signedFinalQueryRecorded": false
514
- },
515
- {
516
- "kind": "model-onnx-binary",
517
- "path": "onnx/decoder_model_merged_quantized.onnx",
518
- "sourceUrl": "https://huggingface.co/Xenova/whisper-small/resolve/2d67713f236afa48a18992566e7647f6ca848e13/onnx/decoder_model_merged_quantized.onnx",
519
- "mediaType": "application/octet-stream",
520
- "license": "Apache-2.0",
521
- "bytes": 156780950,
522
- "sha256": "fcfc6100dc7339e7507e10f8b274350be7c4f8d8b575f0293f94cc0e156d6d24",
523
- "redirectFinalOrigins": ["https://us.aws.cdn.hf.co"],
524
- "observedRedirect": "302-to-expiring-signed-xet",
525
- "observedFinalPath": "/xet-bridge-us/6452c2113a794b2d9b15b8ae/414ba17dccaae99fa86802d93b740843da55ca419ca751126fe6165caf68fbd8",
526
- "signedFinalQueryRecorded": false
527
- }
528
- ]
529
- },
530
- {
531
- "id": "onnx-community-kokoro-82m-v1-q8-af-heart-1939ad2a8e416c0acfeecc08a694d14ef25f2231",
532
- "role": "tts",
533
- "modelId": "onnx-community/Kokoro-82M-v1.0-ONNX",
534
- "dtype": "q8",
535
- "revision": "1939ad2a8e416c0acfeecc08a694d14ef25f2231",
536
- "outputSampleRate": 24000,
537
- "defaultVoice": "af_heart",
538
- "licenseDeclaration": "Apache-2.0",
539
- "licenseEvidence": {
540
- "url": "https://huggingface.co/api/models/onnx-community/Kokoro-82M-v1.0-ONNX/revision/1939ad2a8e416c0acfeecc08a694d14ef25f2231?blobs=true",
541
- "status": "exact-revision-api-license-declaration-only-immutable-license-file-digest-not-captured"
542
- },
543
- "baseSourceUrl": "https://huggingface.co/onnx-community/Kokoro-82M-v1.0-ONNX/resolve/1939ad2a8e416c0acfeecc08a694d14ef25f2231/",
544
- "fileCount": 5,
545
- "modelAndVoiceBytes": 92887010,
546
- "modelVoiceAndSelectedRuntimeBytes": 116662659,
547
- "files": [
548
- {
549
- "kind": "model-configuration-json",
550
- "path": "config.json",
551
- "sourceUrl": "https://huggingface.co/onnx-community/Kokoro-82M-v1.0-ONNX/resolve/1939ad2a8e416c0acfeecc08a694d14ef25f2231/config.json",
552
- "mediaType": "application/json",
553
- "sourceMediaType": "text/plain",
554
- "license": "Apache-2.0",
555
- "bytes": 44,
556
- "sha256": "df34b4f930b23447cd4dc410fabfb42eb3f24e803e6c3f97d618fb359380a36f",
557
- "redirectFinalOrigins": ["https://huggingface.co"],
558
- "observedRedirect": "307-to-same-origin-resolve-cache",
559
- "observedEtag": "790faf216e7e3f490e71e8bc80df79ed8941101c"
560
- },
561
- {
562
- "kind": "model-tokenizer-json",
563
- "path": "tokenizer.json",
564
- "sourceUrl": "https://huggingface.co/onnx-community/Kokoro-82M-v1.0-ONNX/resolve/1939ad2a8e416c0acfeecc08a694d14ef25f2231/tokenizer.json",
565
- "mediaType": "application/json",
566
- "sourceMediaType": "text/plain",
567
- "license": "Apache-2.0",
568
- "bytes": 3497,
569
- "sha256": "77a02c8e164413299b4b4c403b14f8e0e1c1b727db4d46a09d6327b861060a34",
570
- "redirectFinalOrigins": ["https://huggingface.co"],
571
- "observedRedirect": "307-to-same-origin-resolve-cache",
572
- "observedEtag": "4280f55fc1c32211bc9bb4d55545759a00054ecd"
573
- },
574
- {
575
- "kind": "model-tokenizer-json",
576
- "path": "tokenizer_config.json",
577
- "sourceUrl": "https://huggingface.co/onnx-community/Kokoro-82M-v1.0-ONNX/resolve/1939ad2a8e416c0acfeecc08a694d14ef25f2231/tokenizer_config.json",
578
- "mediaType": "application/json",
579
- "sourceMediaType": "text/plain",
580
- "license": "Apache-2.0",
581
- "bytes": 113,
582
- "sha256": "be1cb066d6ef6b074b3f15e6a6dd21ac88ff3cdaedf325f0aaed686c70f75d20",
583
- "redirectFinalOrigins": ["https://huggingface.co"],
584
- "observedRedirect": "307-to-same-origin-resolve-cache",
585
- "observedEtag": "5c81e9a3a06db9139900d6ee5b60e8bb701ccb0b"
586
- },
587
- {
588
- "kind": "model-onnx-binary",
589
- "path": "onnx/model_quantized.onnx",
590
- "sourceUrl": "https://huggingface.co/onnx-community/Kokoro-82M-v1.0-ONNX/resolve/1939ad2a8e416c0acfeecc08a694d14ef25f2231/onnx/model_quantized.onnx",
591
- "mediaType": "application/octet-stream",
592
- "license": "Apache-2.0",
593
- "bytes": 92361116,
594
- "sha256": "fbae9257e1e05ffc727e951ef9b9c98418e6d79f1c9b6b13bd59f5c9028a1478",
595
- "redirectFinalOrigins": ["https://us.aws.cdn.hf.co"],
596
- "observedRedirect": "302-to-expiring-signed-xet",
597
- "observedFinalPath": "/xet-bridge-us/67a5e958d363dcc0e458b910/72db5d760d8920a2fbd09b5a5b109b29c71c5e525956e6166025d1146c851e15",
598
- "signedFinalQueryRecorded": false
599
- },
600
- {
601
- "kind": "voice-style-binary",
602
- "path": "voices/af_heart.bin",
603
- "sourceUrl": "https://huggingface.co/onnx-community/Kokoro-82M-v1.0-ONNX/resolve/1939ad2a8e416c0acfeecc08a694d14ef25f2231/voices/af_heart.bin",
604
- "mediaType": "application/octet-stream",
605
- "license": "Apache-2.0",
606
- "bytes": 522240,
607
- "sha256": "d583ccff3cdca2f7fae535cb998ac07e9fcb90f09737b9a41fa2734ec44a8f0b",
608
- "redirectFinalOrigins": ["https://us.aws.cdn.hf.co"],
609
- "observedRedirect": "302-to-expiring-signed-xet",
610
- "observedFinalPath": "/xet-bridge-us/67a5e958d363dcc0e458b910/478bbd0d587a03135a4899153eac4a80a046d65a32d924b25ea059319b055df8",
611
- "signedFinalQueryRecorded": false,
612
- "runtimeRequestUrls": [
613
- "https://huggingface.co/onnx-community/Kokoro-82M-v1.0-ONNX/resolve/main/voices/af_heart.bin"
614
- ],
615
- "runtimeAliasAuthority": "authenticated-local-route-only-never-source-or-network-authority"
616
- }
617
- ]
618
- }
619
- ]
620
- },
621
- "authenticatedVerification": {
622
- "status": "browser-speech-registry-tarballs-and-selected-runtime-bytes-verified",
623
- "registryTarballCount": 23,
624
- "dependencyEdgeCount": 25,
625
- "archiveAdmission": "all-registry-tarball-paths-and-member-types-verified-before-extraction",
626
- "manifestAdmission": "all-extracted-package-name-version-license-fields-verified",
627
- "selectedArtifactCount": 4,
628
- "selectedArtifactAdmission": "all-selected-byte-lengths-and-sha256-values-verified",
629
- "onnxPackagingRelationship": "transformers-jsep-mjs-and-wasm-byte-identical-to-recorded-onnxruntime-web-package",
630
- "networkSourceAdmission": "all-selected-exact-version-source-urls-returned-without-redirect-and-with-admitted-media-types",
631
- "temporaryExport": "read-only-nonrepository-audit-export-identity-checked-and-removed"
632
- },
633
- "immutableOnnxNoticeEvidence": {
634
- "sourceRevision": "89f8206ba4f1c22c39e0297fb55272e8ce8cd7d0",
635
- "license": {
636
- "url": "https://raw.githubusercontent.com/microsoft/onnxruntime/89f8206ba4f1c22c39e0297fb55272e8ce8cd7d0/LICENSE",
637
- "bytes": 1073,
638
- "sha256": "2f07c72751aed99790b8a4869cf2311df85a860b22ded05fa22803587a48922c",
639
- "mediaType": "text/plain"
640
- },
641
- "thirdPartyNotices": {
642
- "url": "https://raw.githubusercontent.com/microsoft/onnxruntime/89f8206ba4f1c22c39e0297fb55272e8ce8cd7d0/ThirdPartyNotices.txt",
643
- "bytes": 326866,
644
- "sha256": "e9e90971a8e75a9a8ac0c6412e29c1202d079998389915aa485f46c816c3b4cc",
645
- "mediaType": "text/plain"
646
- },
647
- "evidenceBoundary": "These files are immutable source-revision evidence. The published onnxruntime-web tarball omits LICENSE and ThirdPartyNotices, so this record does not claim that the package itself carries complete notice closure or that the notice file proves the exact compiled feature set."
648
- },
649
- "compositeLicenseNoticeEvidence": {
650
- "status": "external-upstream-distribution-not-an-sdk-runtime-gate",
651
- "publicOperationalSttGraphStatus": "browser-speech-stt-public-graph-ready-from-upstream-downloads",
652
- "publicOperationalTtsGraphStatus": "browser-speech-tts-public-graph-ready-from-upstream-downloads",
653
- "runtimeRedistributionAuthorized": false,
654
- "contentAddressedLicenseReceiptPublished": false,
655
- "verifiedCoreLegalEvidence": [
656
- {
657
- "component": "kokoro-js@1.2.1",
658
- "declaredLicense": "Apache-2.0",
659
- "sourceKind": "registry-integrity-verified-tarball-member",
660
- "sourcePath": "package/LICENSE",
661
- "bytes": 11357,
662
- "sha256": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4",
663
- "evidenceStatus": "package-license-bytes-verified-embedded-component-obligations-not-closed"
664
- },
665
- {
666
- "component": "@huggingface/transformers@3.5.1",
667
- "declaredLicense": "Apache-2.0",
668
- "sourceKind": "registry-integrity-verified-tarball-member",
669
- "sourcePath": "package/LICENSE",
670
- "bytes": 11358,
671
- "sha256": "cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30",
672
- "evidenceStatus": "package-license-bytes-verified-bundled-onnx-component-obligations-not-closed"
673
- },
674
- {
675
- "component": "phonemizer@1.2.1",
676
- "declaredLicense": "Apache-2.0",
677
- "sourceKind": "registry-integrity-verified-tarball-member",
678
- "sourcePath": "package/LICENSE",
679
- "bytes": 11357,
680
- "sha256": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4",
681
- "evidenceStatus": "package-license-bytes-verified-embedded-espeak-obligations-not-identified"
682
- },
683
- {
684
- "component": "onnxruntime-web@1.22.0-dev.20250409-89f8206ba4",
685
- "declaredLicense": "MIT",
686
- "sourceKind": "immutable-upstream-source-revision",
687
- "sourceRevision": "89f8206ba4f1c22c39e0297fb55272e8ce8cd7d0",
688
- "licenseBytes": 1073,
689
- "licenseSha256": "2f07c72751aed99790b8a4869cf2311df85a860b22ded05fa22803587a48922c",
690
- "thirdPartyNoticesBytes": 326866,
691
- "thirdPartyNoticesSha256": "e9e90971a8e75a9a8ac0c6412e29c1202d079998389915aa485f46c816c3b4cc",
692
- "evidenceStatus": "immutable-source-license-and-notices-verified-published-tarball-carriage-and-exact-compiled-feature-closure-unproven"
693
- }
694
- ],
695
- "phonemizerEmbeddedEspeakFinding": {
696
- "hostPackage": "phonemizer@1.2.1",
697
- "hostSourceRevision": "6835144b7ee9043129222549c1ed2f6a27216278",
698
- "generatedWorkerPath": "src/espeakng.worker.js",
699
- "generatedWorkerBytes": 1449799,
700
- "generatedWorkerSha256": "6bab8f2f2cf25d65b596b87471cb17567a496012ee6ce649cfa88b284c1fb9f8",
701
- "embeddedDataPath": "data/espeakng.worker.data",
702
- "embeddedDataBytes": 890802,
703
- "embeddedDataSha256": "6262621f3f8267fb61ef41fe7af75b8fe7e2315d6c9092afd29d7629bb21a60b",
704
- "exactEspeakUpstreamRevision": null,
705
- "exactBuildToolchainReceipt": null,
706
- "exactGeneratedOutputToCorrespondingSourceBinding": null,
707
- "licenseNoticeClosureStatus": "phonemizer-embedded-espeak-license-and-notice-evidence-missing",
708
- "correspondingSourceStatus": "phonemizer-embedded-espeak-corresponding-source-unidentified",
709
- "finding": "The exact generated Worker and data are not byte-identical to the audited candidate eSpeak package output. The phonemizer package and source revision identify no exact eSpeak upstream revision, build recipe, corresponding-source mapping, or complete embedded notice set. Adding an unbound license text would not close this boundary."
710
- },
711
- "dependencyLegalInventory": {
712
- "dependencyNodeCount": 23,
713
- "tarballsWithLegalMembers": 20,
714
- "tarballsWithoutRootLegalMembers": [
715
- "guid-typescript@1.0.9",
716
- "onnxruntime-common@1.22.0-dev.20250409-89f8206ba4",
717
- "onnxruntime-web@1.22.0-dev.20250409-89f8206ba4"
718
- ],
719
- "artifactToComponentInclusionMapStatus": "browser-speech-selected-bundle-artifact-to-component-inclusion-map-incomplete"
720
- },
721
- "requiredClosure": [],
722
- "evidenceBoundary": "This is historical upstream-package evidence, not an SDK redistribution receipt or execution gate. The SDK does not republish these runtime, model, voice, license, or corresponding-source payloads."
723
- },
724
- "operationalRuntimeFindings": {
725
- "status": "browser-speech-upstream-package-and-provider-downloads-default-secure-graph-optional",
726
- "kokoroVoiceRequest": {
727
- "requestPattern": "https://huggingface.co/onnx-community/Kokoro-82M-v1.0-ONNX/resolve/main/voices/${voice}.bin",
728
- "cacheStorageName": "kokoro-voices",
729
- "packageOverride": "kokoro-js-1.2.1-exposes-no-voice-url-bytes-resolver-or-provider-override",
730
- "admissionRequirement": "warn-first-uses-the-upstream-provider-request-and-browser-cache-secure-graph-mode-may-map-it-to-a-caller-declared-local-file"
731
- },
732
- "onnxWasmFallback": {
733
- "requestPattern": "https://cdn.jsdelivr.net/npm/@huggingface/transformers@${version}/dist/",
734
- "admissionRequirement": "warn-first-uses-the-caller-selected-version-pinned-upstream-wasmPaths-secure-graph-mode-requires-materialized-runtime-files"
735
- },
736
- "workerBoundary": "The dedicated SDK Worker uses declared graph routes only for explicit secure:true artifact aliases. Default warn-first mode uses the direct upstream runtime/model authority and ordinary browser capabilities.",
737
- "failClosedBoundary": "Strict rejection of undeclared capabilities is opt-in through secure:true. Default operation warns and proceeds so optional hardening cannot disable the selected provider."
738
- },
739
- "exclusions": {
740
- "selectedBrowserClosureContainsOptionalDependencyEdges": false,
741
- "selectedBrowserClosureContainsPeerDependencyEdges": false,
742
- "excludedPackageTrees": [
743
- {
744
- "root": "onnxruntime-node@1.21.0",
745
- "reason": "Transformers Node and native inference dependency; not part of the selected browser artifact graph."
746
- },
747
- {
748
- "root": "sharp@0.34.1",
749
- "reason": "Transformers Node and native image-processing dependency; not part of the selected browser artifact graph."
750
- }
751
- ],
752
- "excludedArtifactsAndAuthorities": [
753
- {
754
- "subject": "dist/transformers.web.js",
755
- "reason": "This package export retains bare onnxruntime-common and onnxruntime-web imports; the selected unminified bundled entry is dist/transformers.js."
756
- },
757
- {
758
- "subject": "dist/transformers.min.js",
759
- "reason": "Operational bundled sibling not selected by this authority; the selected unminified entry preserves inspectable license headers."
760
- },
761
- {
762
- "subject": "ort-wasm-simd-threaded.mjs and ort-wasm-simd-threaded.wasm",
763
- "reason": "Non-JSEP ONNX pair; the selected Transformers and Kokoro browser graph uses the JSEP pair."
764
- },
765
- {
766
- "subject": "model weights and Kokoro voice binaries",
767
- "reason": "Caller-owned model, revision, dtype and voice authority; this package metadata record does not select or bundle them."
768
- },
769
- {
770
- "subject": "mutable CDN loaders and network fallbacks",
771
- "reason": "Secure graph mode excludes mutable loaders and undeclared fallbacks; default warn-first mode uses caller-selected version-pinned upstream package and provider URLs."
772
- }
773
- ]
774
- },
775
- "registryProvenance": {
776
- "checkedPackages": [
777
- "kokoro-js@1.2.1",
778
- "@huggingface/transformers@3.5.1",
779
- "phonemizer@1.2.1",
780
- "onnxruntime-web@1.22.0-dev.20250409-89f8206ba4"
781
- ],
782
- "distAttestations": null,
783
- "sigstoreProvenanceClaim": false,
784
- "description": "The checked core npm metadata exposes no dist attestations. This authority makes no Sigstore or npm provenance claim. Registry integrity and signatures are not substitutes for selected-file verification."
785
- },
786
- "plannedVerification": {
787
- "status": "no-sdk-redistribution-or-legal-corpus-release-gate",
788
- "sequence": []
789
- },
790
- "runtimeImplementation": {
791
- "status": "browser-speech-warn-first-upstream-and-secure-graph-contracts-passed",
792
- "sourceCommits": [
793
- "fba95ed0fa2e9ab11727e19b257a8d7e1e95a495",
794
- "f466458a09a2f6210c46aeaafcdc56a9da5c3a82",
795
- "f84c27f66b0642d7f04cf5886cae32f38ab2d12f",
796
- "4c9a2f9afcb641122ac4fe0a3e811b977ff5ab4d",
797
- "d5e08e33dc9c20e95688444572176070db006052"
798
- ],
799
- "documentationCommit": "c1967fe3dc46986844666f5bb881485a462989b6",
800
- "focusedVerification": {
801
- "command": "node ./bin/arcane-test.mjs test/browser-speech-providers.test.mjs",
802
- "result": "27-passed-0-failed",
803
- "verifiedBoundaries": [
804
- "deterministic-closed-artifact-graph",
805
- "declared-final-https-origin-redirect-admission",
806
- "independent-source-media-type-identity-binding",
807
- "fetch-response-shape-and-redirect-error-propagation",
808
- "cold-warm-and-zero-network-offline-dbopfs-admission",
809
- "manifest-last-persistence",
810
- "declared-edge-and-dynamic-code-isolation",
811
- "caller-owned-model-sample-rate-and-voice-authority",
812
- "private-worker-message-channel",
813
- "exact-role-operation-error-envelope-admission",
814
- "abort-and-unload-supersession",
815
- "provider-worker-cleanup",
816
- "warn-first-upstream-package-model-voice-and-wasm-downloads",
817
- "secure-graph-opt-in-without-default-runtime-restriction"
818
- ]
819
- },
820
- "componentManifest": {
821
- "path": "browser-runtime/ai/ARCANE_AI_BROWSER_SPEECH_COMPONENTS.json",
822
- "closureStatus": "browser-speech-runtime-resolved-from-upstream-packages-and-provider-downloads",
823
- "publicationStatus": "browser-speech-public-runtime-ready-warn-first-secure-opt-in"
824
- },
825
- "deferredReleaseBoundary": "The additive numeric 0.3.1 package, runtime/browser receipts, npm integrity/provenance, tag, and GitHub release remain assigned to the shared release owner after the warn-first and exact selected-route corrections are reconciled."
826
- },
827
- "omittedUntilVerified": [
828
- "Final composite SPDX license expressions for the bundled JavaScript entrypoints.",
829
- "A claim that published package tarballs carry complete ONNX Runtime ThirdPartyNotices; they do not.",
830
- "A content-addressed SDK redistribution corpus; the SDK does not redistribute these upstream payloads.",
831
- "The exact phonemizer embedded-eSpeak corresponding source, upstream revision, build toolchain and complete notice set.",
832
- "Immutable LICENSE and NOTICE file digests for both selected model revisions; their exact-revision API values remain declarations only.",
833
- "Sigstore provenance for the checked core packages because npm dist attestations were absent."
834
- ]
835
- }