@qvac/sdk 0.20.1 → 0.21.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/NOTICE +130 -62
- package/README.md +39 -5
- package/dist/examples/advisory-model-fit.d.ts +17 -16
- package/dist/examples/advisory-model-fit.js +18 -18
- package/dist/examples/asr/parakeet-indic-conformer-filesystem.js +3 -3
- package/dist/examples/asr/parakeet-unified-coreml.d.ts +2 -0
- package/dist/examples/asr/parakeet-unified-coreml.js +113 -0
- package/dist/examples/assess-model-fit.js +9 -4
- package/dist/examples/model-fit-ui/server.js +5 -2
- package/dist/examples/rpc-inference.d.ts +2 -0
- package/dist/examples/rpc-inference.js +51 -0
- package/dist/examples/rpc-server.d.ts +2 -0
- package/dist/examples/rpc-server.js +32 -0
- package/dist/examples/tools/llamacpp-deferred-tools.d.ts +2 -0
- package/dist/examples/tools/llamacpp-deferred-tools.js +77 -0
- package/dist/examples/tts/audio8.js +4 -0
- package/dist/examples/tts/moss-dialogue.d.ts +2 -0
- package/dist/examples/tts/moss-dialogue.js +63 -0
- package/dist/examples/tts/moss.d.ts +2 -0
- package/dist/examples/tts/moss.js +71 -0
- package/dist/scripts/contract/build-contract.d.ts +2 -1
- package/dist/scripts/contract/build-contract.js +4 -1
- package/dist/scripts/contract/build-numeric-constants.d.ts +15 -0
- package/dist/scripts/contract/build-numeric-constants.js +13 -0
- package/dist/scripts/contract/method-shapes.d.ts +3 -0
- package/dist/scripts/contract/method-shapes.js +3 -0
- package/dist/scripts/enforce-inference-versions.d.ts +18 -0
- package/dist/scripts/enforce-inference-versions.js +158 -0
- package/dist/scripts/generate-bare-kit-runtimes.d.ts +2 -0
- package/dist/scripts/generate-bare-kit-runtimes.js +106 -0
- package/dist/src/client/api/assess-model-fit.d.ts +5 -4
- package/dist/src/client/api/assess-model-fit.js +24 -7
- package/dist/src/client/api/bci-transcribe.d.ts +4 -1
- package/dist/src/client/api/get-system-resources.d.ts +8 -0
- package/dist/src/client/api/get-system-resources.js +8 -0
- package/dist/src/client/api/index.d.ts +1 -0
- package/dist/src/client/api/index.js +1 -0
- package/dist/src/client/api/rpc-server.d.ts +20 -0
- package/dist/src/client/api/rpc-server.js +45 -0
- package/dist/src/client/api/text-to-speech.d.ts +9 -0
- package/dist/src/client/api/text-to-speech.js +9 -0
- package/dist/src/client/api/transcribe.d.ts +21 -15
- package/dist/src/client/api/transcribe.js +65 -20
- package/dist/src/client/rpc/rpc-error.js +11 -7
- package/dist/src/commands/bundle/entry-gen.d.ts +2 -2
- package/dist/src/commands/bundle/entry-gen.js +8 -4
- package/dist/src/commands/bundle/index.d.ts +20 -0
- package/dist/src/commands/bundle/index.js +88 -12
- package/dist/src/commands/bundle/plugins.js +1 -1
- package/dist/src/commands/command-logger.d.ts +6 -0
- package/dist/src/commands/command-logger.js +12 -0
- package/dist/src/commands/host-prebuilds/index.d.ts +71 -0
- package/dist/src/commands/host-prebuilds/index.js +227 -0
- package/dist/src/commands/host-prebuilds/package-manager.d.ts +54 -0
- package/dist/src/commands/host-prebuilds/package-manager.js +278 -0
- package/dist/src/commands/index.d.ts +10 -1
- package/dist/src/commands/index.js +6 -0
- package/dist/src/commands/verify/abi.d.ts +22 -2
- package/dist/src/commands/verify/abi.js +49 -27
- package/dist/src/commands/verify/addon-source.d.ts +22 -0
- package/dist/src/commands/verify/addon-source.js +69 -3
- package/dist/src/commands/verify/bare-kit-runtime.d.ts +38 -0
- package/dist/src/commands/verify/bare-kit-runtime.js +201 -0
- package/dist/src/commands/verify/bare-kit-runtimes.d.ts +12 -0
- package/dist/src/commands/verify/bare-kit-runtimes.js +108 -0
- package/dist/src/commands/verify/bundle-source.js +16 -15
- package/dist/src/commands/verify/engines-advice.d.ts +73 -0
- package/dist/src/commands/verify/engines-advice.js +271 -0
- package/dist/src/commands/verify/index.d.ts +22 -0
- package/dist/src/commands/verify/index.js +151 -13
- package/dist/src/commands/verify/node-modules-source.js +43 -39
- package/dist/src/commands/verify/prebuilds.d.ts +19 -0
- package/dist/src/commands/verify/prebuilds.js +52 -13
- package/dist/src/expo/plugins/index.d.ts +2 -0
- package/dist/src/expo/plugins/withMobileBundle.d.ts +15 -5
- package/dist/src/expo/plugins/withMobileBundle.js +68 -42
- package/dist/src/expo/plugins/withQvacSDK.d.ts +7 -1
- package/dist/src/expo/plugins/withQvacSDK.js +6 -3
- package/dist/src/index.d.ts +5 -2
- package/dist/src/index.js +4 -2
- package/dist/src/schemas/sdk-errors-client.d.ts +2 -0
- package/dist/src/schemas/sdk-errors-client.js +16 -0
- package/dist/src/schemas/sdk-errors-server.d.ts +1 -0
- package/dist/src/schemas/sdk-errors-server.js +5 -0
- package/dist/src/utils/errors-client.d.ts +15 -0
- package/dist/src/utils/errors-client.js +26 -0
- package/dist/src/utils/errors-server.d.ts +1 -0
- package/dist/src/utils/errors-server.js +1 -0
- package/dist/src/utils/mcp-adapter.js +7 -1
- package/dist/src/utils/tool-helpers.d.ts +4 -0
- package/dist/src/utils/tool-helpers.js +2 -0
- package/dist/src/worker/ggml-rpc-server-provider.d.ts +2 -0
- package/dist/src/worker/ggml-rpc-server-provider.js +1 -0
- package/dist/src/worker/rpc-server-provider.d.ts +3 -0
- package/dist/src/worker/rpc-server-provider.js +1 -0
- package/package.json +30 -25
- package/dist/scripts/enforce-inference-peer-dependencies.d.ts +0 -2
- package/dist/scripts/enforce-inference-peer-dependencies.js +0 -39
- package/dist/src/deprecate.d.ts +0 -2
- package/dist/src/deprecate.js +0 -9
- package/dist/src/worker/legacy-worker-entry.d.ts +0 -2
- package/dist/src/worker/legacy-worker-entry.js +0 -3
- package/dist/src/worker/worker-core.d.ts +0 -7
- package/dist/src/worker/worker-core.js +0 -8
package/NOTICE
CHANGED
|
@@ -71,6 +71,8 @@ Third-Party Model Licenses
|
|
|
71
71
|
https://huggingface.co/Audio8/Audio8-TTS-Preview-0.6b
|
|
72
72
|
bci-embedder
|
|
73
73
|
https://github.com/tetherto/qvac/releases/download/bci-test-assets-v0.1.0/bci-embedder.bin
|
|
74
|
+
coremldata
|
|
75
|
+
https://huggingface.co/Audio8/Audio8-TTS-Preview-0.6b
|
|
74
76
|
cosyvoice3-campplus-f32
|
|
75
77
|
https://huggingface.co/FunAudioLLM/Fun-CosyVoice3-0.5B-2512
|
|
76
78
|
cosyvoice3-flow-bf16
|
|
@@ -136,7 +138,7 @@ Third-Party Model Licenses
|
|
|
136
138
|
LightOnOCR-2-1B-ocr-soup-GGUF
|
|
137
139
|
https://huggingface.co/noctrex/LightOnOCR-2-1B-ocr-soup-GGUF
|
|
138
140
|
Llama_3.2_1B_Intruct_Tool_Calling_V2-GGUF
|
|
139
|
-
https://huggingface.co/
|
|
141
|
+
https://huggingface.co/mradermacher/Llama_3.2_1B_Intruct_Tool_Calling_V2-GGUF
|
|
140
142
|
MedPsy-1.7B-GGUF
|
|
141
143
|
https://huggingface.co/qvac/MedPsy-1.7B-GGUF
|
|
142
144
|
MedPsy-4B-GGUF
|
|
@@ -145,6 +147,14 @@ Third-Party Model Licenses
|
|
|
145
147
|
https://huggingface.co/FunAudioLLM/Fun-CosyVoice3-0.5B-2512
|
|
146
148
|
mmproj-unlimited-ocr-Q8_0
|
|
147
149
|
https://huggingface.co/baidu/Unlimited-OCR
|
|
150
|
+
model
|
|
151
|
+
https://huggingface.co/Audio8/Audio8-TTS-Preview-0.6b
|
|
152
|
+
moss-codec-decoder-f16
|
|
153
|
+
https://huggingface.co/OpenMOSS-Team/MOSS-TTS
|
|
154
|
+
moss-codec-encoder-f16
|
|
155
|
+
https://huggingface.co/OpenMOSS-Team/MOSS-TTS
|
|
156
|
+
moss-tts-delay-f16
|
|
157
|
+
https://huggingface.co/OpenMOSS-Team/MOSS-TTS
|
|
148
158
|
nb-tiny-ggml-model
|
|
149
159
|
https://huggingface.co/NbAiLab/nb-whisper-tiny
|
|
150
160
|
parler-indic-f16
|
|
@@ -211,6 +221,8 @@ Third-Party Model Licenses
|
|
|
211
221
|
https://huggingface.co/HuggingFaceVLA/smolvla_libero
|
|
212
222
|
SmolVLM2-500M-Video-Instruct-GGUF
|
|
213
223
|
https://huggingface.co/ggml-org/SmolVLM2-500M-Video-Instruct-GGUF
|
|
224
|
+
Ternary-Bonsai-2-27B-gguf
|
|
225
|
+
https://huggingface.co/prism-ml/Ternary-Bonsai-2-27B-gguf
|
|
214
226
|
TranslatePsy-AfriSLM-0.8B-Q4-GGUF
|
|
215
227
|
https://huggingface.co/qvac/TranslatePsy-AfriSLM-0.8B-Q4-GGUF
|
|
216
228
|
TranslatePsy-AfriSLM-0.8B-Q8-GGUF
|
|
@@ -251,6 +263,8 @@ Third-Party Model Licenses
|
|
|
251
263
|
https://huggingface.co/Comfy-Org/Wan_2.2_ComfyUI_Repackaged
|
|
252
264
|
Wan2.2-TI2V-5B-Turbo-GGUF
|
|
253
265
|
https://huggingface.co/hum-ma/Wan2.2-TI2V-5B-Turbo-GGUF
|
|
266
|
+
weight
|
|
267
|
+
https://huggingface.co/Audio8/Audio8-TTS-Preview-0.6b
|
|
254
268
|
|
|
255
269
|
--- bsd-3-clause (BSD 3-Clause License) ---
|
|
256
270
|
|
|
@@ -277,30 +291,58 @@ Third-Party Model Licenses
|
|
|
277
291
|
|
|
278
292
|
AfriqueGemma-4B-GGUF
|
|
279
293
|
https://huggingface.co/mradermacher/AfriqueGemma-4B-GGUF
|
|
294
|
+
coremldata
|
|
295
|
+
https://huggingface.co/nvidia/parakeet-ctc-0.6b
|
|
296
|
+
coremldata
|
|
297
|
+
https://huggingface.co/nvidia/parakeet-tdt-0.6b-v3
|
|
298
|
+
coremldata
|
|
299
|
+
https://huggingface.co/nvidia/parakeet-tdt-1.1b
|
|
300
|
+
coremldata
|
|
301
|
+
https://huggingface.co/nvidia/parakeet_realtime_eou_120m-v1
|
|
302
|
+
model
|
|
303
|
+
https://huggingface.co/nvidia/parakeet-ctc-0.6b
|
|
304
|
+
model
|
|
305
|
+
https://huggingface.co/nvidia/parakeet-tdt-0.6b-v3
|
|
306
|
+
model
|
|
307
|
+
https://huggingface.co/nvidia/parakeet-tdt-1.1b
|
|
308
|
+
model
|
|
309
|
+
https://huggingface.co/nvidia/parakeet_realtime_eou_120m-v1
|
|
310
|
+
parakeet_realtime_eou_120m-v1.f16
|
|
311
|
+
https://huggingface.co/nvidia/parakeet_realtime_eou_120m-v1
|
|
312
|
+
parakeet_realtime_eou_120m-v1.q4_0
|
|
313
|
+
https://huggingface.co/nvidia/parakeet_realtime_eou_120m-v1
|
|
314
|
+
parakeet_realtime_eou_120m-v1.q8_0
|
|
315
|
+
https://huggingface.co/nvidia/parakeet_realtime_eou_120m-v1
|
|
280
316
|
parakeet-ctc-0.6b.f16
|
|
281
317
|
https://huggingface.co/nvidia/parakeet-ctc-0.6b
|
|
282
318
|
parakeet-ctc-0.6b.q4_0
|
|
283
319
|
https://huggingface.co/nvidia/parakeet-ctc-0.6b
|
|
284
320
|
parakeet-ctc-0.6b.q8_0
|
|
285
321
|
https://huggingface.co/nvidia/parakeet-ctc-0.6b
|
|
286
|
-
parakeet-eou-120m-v1.f16
|
|
287
|
-
https://huggingface.co/nvidia/parakeet_realtime_eou_120m-v1
|
|
288
|
-
parakeet-eou-120m-v1.q4_0
|
|
289
|
-
https://huggingface.co/nvidia/parakeet_realtime_eou_120m-v1
|
|
290
|
-
parakeet-eou-120m-v1.q8_0
|
|
291
|
-
https://huggingface.co/nvidia/parakeet_realtime_eou_120m-v1
|
|
292
322
|
parakeet-tdt-0.6b-v3.f16
|
|
293
323
|
https://huggingface.co/nvidia/parakeet-tdt-0.6b-v3
|
|
294
324
|
parakeet-tdt-0.6b-v3.q4_0
|
|
295
325
|
https://huggingface.co/nvidia/parakeet-tdt-0.6b-v3
|
|
296
326
|
parakeet-tdt-0.6b-v3.q8_0
|
|
297
327
|
https://huggingface.co/nvidia/parakeet-tdt-0.6b-v3
|
|
328
|
+
parakeet-tdt-1.1b.f16
|
|
329
|
+
https://huggingface.co/nvidia/parakeet-tdt-1.1b
|
|
330
|
+
parakeet-tdt-1.1b.q8_0
|
|
331
|
+
https://huggingface.co/nvidia/parakeet-tdt-1.1b
|
|
298
332
|
sortformer-4spk-v1.f16
|
|
299
333
|
https://huggingface.co/nvidia/diar_sortformer_4spk-v1
|
|
300
334
|
sortformer-4spk-v1.q4_0
|
|
301
335
|
https://huggingface.co/nvidia/diar_sortformer_4spk-v1
|
|
302
336
|
sortformer-4spk-v1.q8_0
|
|
303
337
|
https://huggingface.co/nvidia/diar_sortformer_4spk-v1
|
|
338
|
+
weight
|
|
339
|
+
https://huggingface.co/nvidia/parakeet-ctc-0.6b
|
|
340
|
+
weight
|
|
341
|
+
https://huggingface.co/nvidia/parakeet-tdt-0.6b-v3
|
|
342
|
+
weight
|
|
343
|
+
https://huggingface.co/nvidia/parakeet-tdt-1.1b
|
|
344
|
+
weight
|
|
345
|
+
https://huggingface.co/nvidia/parakeet_realtime_eou_120m-v1
|
|
304
346
|
|
|
305
347
|
--- gemma (Gemma Terms of Use) ---
|
|
306
348
|
|
|
@@ -362,6 +404,8 @@ Third-Party Model Licenses
|
|
|
362
404
|
https://huggingface.co/ResembleAI/chatterbox
|
|
363
405
|
chatterbox-t3-turbo
|
|
364
406
|
https://huggingface.co/ResembleAI/chatterbox-turbo
|
|
407
|
+
coremldata
|
|
408
|
+
https://huggingface.co/ai4bharat/indic-conformer-600m-multilingual
|
|
365
409
|
de-base-ggml-model-f16
|
|
366
410
|
https://huggingface.co/aware-ai/whisper-base-german
|
|
367
411
|
DeepSeek-V4-Flash-0731-GGUF
|
|
@@ -384,16 +428,18 @@ Third-Party Model Licenses
|
|
|
384
428
|
https://huggingface.co/ChristianAzinn/gte-large-gguf
|
|
385
429
|
gte-large-gguf
|
|
386
430
|
https://huggingface.co/ChristianAzinn/gte-large-gguf
|
|
387
|
-
indic-conformer-
|
|
431
|
+
indic-conformer-600m-multilingual.f16
|
|
388
432
|
https://huggingface.co/ai4bharat/indic-conformer-600m-multilingual
|
|
389
|
-
indic-conformer-
|
|
433
|
+
indic-conformer-600m-multilingual.q4_0
|
|
390
434
|
https://huggingface.co/ai4bharat/indic-conformer-600m-multilingual
|
|
391
|
-
indic-conformer-
|
|
435
|
+
indic-conformer-600m-multilingual.q8_0
|
|
392
436
|
https://huggingface.co/ai4bharat/indic-conformer-600m-multilingual
|
|
393
437
|
lavasr-denoiser-f16
|
|
394
438
|
https://huggingface.co/spaces/YatharthS
|
|
395
439
|
lavasr-enhancer-f16
|
|
396
440
|
https://huggingface.co/spaces/YatharthS
|
|
441
|
+
model
|
|
442
|
+
https://huggingface.co/ai4bharat/indic-conformer-600m-multilingual
|
|
397
443
|
pt-tiny-ggml-model-f16
|
|
398
444
|
https://huggingface.co/DavyCosta701/whisper-tiny-pt-bpra
|
|
399
445
|
taew2_2_f16
|
|
@@ -404,6 +450,8 @@ Third-Party Model Licenses
|
|
|
404
450
|
https://voiceinput.futo.org/VoiceInput/tiny_en_acft_q8_0.bin
|
|
405
451
|
vae-BF16
|
|
406
452
|
https://huggingface.co/ACE-Step/Ace-Step1.5
|
|
453
|
+
weight
|
|
454
|
+
https://huggingface.co/ai4bharat/indic-conformer-600m-multilingual
|
|
407
455
|
whisper-vad
|
|
408
456
|
https://huggingface.co/ggml-org/whisper-vad
|
|
409
457
|
whisper.cpp
|
|
@@ -618,6 +666,12 @@ Third-Party Model Licenses
|
|
|
618
666
|
|
|
619
667
|
--- nvidia-open-model-license ---
|
|
620
668
|
|
|
669
|
+
coremldata
|
|
670
|
+
https://huggingface.co/nvidia/diar_streaming_sortformer_4spk-v2.1
|
|
671
|
+
coremldata
|
|
672
|
+
https://huggingface.co/nvidia/nemotron-3.5-asr-streaming-0.6b
|
|
673
|
+
coremldata
|
|
674
|
+
https://huggingface.co/nvidia/parakeet-unified-en-0.6b
|
|
621
675
|
diar_streaming_sortformer_4spk-v2.1.f16
|
|
622
676
|
https://huggingface.co/nvidia/diar_streaming_sortformer_4spk-v2.1
|
|
623
677
|
diar_streaming_sortformer_4spk-v2.1.q4_0
|
|
@@ -628,6 +682,12 @@ Third-Party Model Licenses
|
|
|
628
682
|
https://huggingface.co/nvidia/GR00T-N1.7-LIBERO
|
|
629
683
|
groot-q8_vf16
|
|
630
684
|
https://huggingface.co/nvidia/GR00T-N1.7-3B
|
|
685
|
+
model
|
|
686
|
+
https://huggingface.co/nvidia/diar_streaming_sortformer_4spk-v2.1
|
|
687
|
+
model
|
|
688
|
+
https://huggingface.co/nvidia/nemotron-3.5-asr-streaming-0.6b
|
|
689
|
+
model
|
|
690
|
+
https://huggingface.co/nvidia/parakeet-unified-en-0.6b
|
|
631
691
|
nemotron-3.5-asr-streaming-0.6b.f16
|
|
632
692
|
https://huggingface.co/nvidia/nemotron-3.5-asr-streaming-0.6b
|
|
633
693
|
nemotron-3.5-asr-streaming-0.6b.q4_0
|
|
@@ -640,6 +700,12 @@ Third-Party Model Licenses
|
|
|
640
700
|
https://huggingface.co/nvidia/parakeet-unified-en-0.6b
|
|
641
701
|
parakeet-unified-en-0.6b.q8_0
|
|
642
702
|
https://huggingface.co/nvidia/parakeet-unified-en-0.6b
|
|
703
|
+
weight
|
|
704
|
+
https://huggingface.co/nvidia/diar_streaming_sortformer_4spk-v2.1
|
|
705
|
+
weight
|
|
706
|
+
https://huggingface.co/nvidia/nemotron-3.5-asr-streaming-0.6b
|
|
707
|
+
weight
|
|
708
|
+
https://huggingface.co/nvidia/parakeet-unified-en-0.6b
|
|
643
709
|
|
|
644
710
|
--- openrail ---
|
|
645
711
|
|
|
@@ -691,54 +757,56 @@ JavaScript Dependencies
|
|
|
691
757
|
|
|
692
758
|
@hyperswarm/secret-stream@6.9.2
|
|
693
759
|
https://github.com/holepunchto/hyperswarm-secret-stream
|
|
694
|
-
@qvac/asr-ggml@0.
|
|
760
|
+
@qvac/asr-ggml@0.7.1
|
|
695
761
|
https://github.com/tetherto/qvac
|
|
696
|
-
@qvac/asr-ggml-darwin-arm64@0.
|
|
762
|
+
@qvac/asr-ggml-darwin-arm64@0.7.1
|
|
697
763
|
https://github.com/tetherto/qvac
|
|
698
|
-
@qvac/audiogen-ggml@0.
|
|
764
|
+
@qvac/audiogen-ggml@0.5.2
|
|
699
765
|
https://github.com/tetherto/qvac
|
|
700
|
-
@qvac/audiogen-ggml-darwin-arm64@0.
|
|
766
|
+
@qvac/audiogen-ggml-darwin-arm64@0.5.2
|
|
701
767
|
https://github.com/tetherto/qvac
|
|
702
|
-
@qvac/bci-whispercpp@0.
|
|
768
|
+
@qvac/bci-whispercpp@0.10.2
|
|
703
769
|
https://github.com/tetherto/qvac
|
|
704
|
-
@qvac/classification-ggml@0.
|
|
770
|
+
@qvac/classification-ggml@0.28.2
|
|
705
771
|
https://github.com/tetherto/qvac
|
|
706
|
-
@qvac/decoder-audio@0.
|
|
772
|
+
@qvac/decoder-audio@0.7.0
|
|
707
773
|
https://github.com/tetherto/qvac
|
|
708
|
-
@qvac/diffusion-cpp@0.
|
|
774
|
+
@qvac/diffusion-cpp@0.26.1
|
|
709
775
|
https://github.com/tetherto/qvac
|
|
710
|
-
@qvac/embed-llamacpp@0.
|
|
776
|
+
@qvac/embed-llamacpp@0.43.2
|
|
711
777
|
https://github.com/tetherto/qvac
|
|
712
778
|
@qvac/error@0.1.1
|
|
713
|
-
@qvac/fabric@0.
|
|
779
|
+
@qvac/fabric@0.19.0
|
|
780
|
+
https://github.com/tetherto/qvac
|
|
781
|
+
@qvac/fabric-darwin-arm64@0.19.0
|
|
782
|
+
https://github.com/tetherto/qvac
|
|
783
|
+
@qvac/ggml-rpc-server@0.1.2
|
|
714
784
|
https://github.com/tetherto/qvac
|
|
715
785
|
@qvac/infer-base@0.6.2
|
|
716
786
|
https://github.com/tetherto/qvac
|
|
717
|
-
@qvac/inference@0.
|
|
787
|
+
@qvac/inference@0.21.1
|
|
718
788
|
https://github.com/tetherto/qvac
|
|
719
789
|
@qvac/langdetect-text@0.1.2
|
|
720
790
|
https://github.com/tetherto/qvac
|
|
721
|
-
@qvac/llm-llamacpp@0.
|
|
791
|
+
@qvac/llm-llamacpp@0.55.2
|
|
722
792
|
https://github.com/tetherto/qvac
|
|
723
793
|
@qvac/logging@0.1.1
|
|
724
794
|
https://github.com/tetherto/qvac
|
|
725
|
-
@qvac/
|
|
726
|
-
https://github.com/tetherto/qvac
|
|
727
|
-
@qvac/ocr-ggml@0.24.3
|
|
795
|
+
@qvac/ocr-ggml@0.26.2
|
|
728
796
|
https://github.com/tetherto/qvac
|
|
729
797
|
@qvac/rag@0.8.1
|
|
730
798
|
https://github.com/tetherto/qvac
|
|
731
|
-
@qvac/registry-client@0.
|
|
799
|
+
@qvac/registry-client@0.7.0
|
|
732
800
|
https://github.com/tetherto/qvac
|
|
733
|
-
@qvac/registry-schema@0.
|
|
801
|
+
@qvac/registry-schema@0.4.0
|
|
734
802
|
https://github.com/tetherto/qvac
|
|
735
|
-
@qvac/translation-nmtcpp@0.
|
|
803
|
+
@qvac/translation-nmtcpp@0.18.2
|
|
736
804
|
https://github.com/tetherto/qvac
|
|
737
|
-
@qvac/tts-ggml@0.
|
|
805
|
+
@qvac/tts-ggml@0.10.2
|
|
738
806
|
https://github.com/tetherto/qvac
|
|
739
|
-
@qvac/tts-ggml-darwin-arm64@0.
|
|
807
|
+
@qvac/tts-ggml-darwin-arm64@0.10.2
|
|
740
808
|
https://github.com/tetherto/qvac
|
|
741
|
-
@qvac/vla-ggml@0.
|
|
809
|
+
@qvac/vla-ggml@0.29.2
|
|
742
810
|
https://github.com/tetherto/qvac
|
|
743
811
|
adaptive-timeout@1.0.1
|
|
744
812
|
https://github.com/holepunchto/adaptive-timeout
|
|
@@ -748,11 +816,11 @@ JavaScript Dependencies
|
|
|
748
816
|
https://github.com/holepunchto/bare-abort
|
|
749
817
|
bare-abort-controller@1.1.2
|
|
750
818
|
https://github.com/holepunchto/bare-abort-controller
|
|
751
|
-
bare-addon-resolve@1.
|
|
819
|
+
bare-addon-resolve@1.11.0
|
|
752
820
|
https://github.com/holepunchto/bare-addon-resolve
|
|
753
821
|
bare-ansi-escapes@2.2.3
|
|
754
822
|
https://github.com/holepunchto/bare-ansi-escapes
|
|
755
|
-
bare-assert@1.
|
|
823
|
+
bare-assert@1.3.0
|
|
756
824
|
https://github.com/holepunchto/bare-assert
|
|
757
825
|
bare-buffer@3.7.1
|
|
758
826
|
https://github.com/holepunchto/bare-buffer
|
|
@@ -764,17 +832,17 @@ JavaScript Dependencies
|
|
|
764
832
|
https://github.com/holepunchto/bare-cov
|
|
765
833
|
bare-cpu-info@0.1.1
|
|
766
834
|
https://github.com/holepunchto/bare-cpu-info
|
|
767
|
-
bare-crypto@1.15.
|
|
835
|
+
bare-crypto@1.15.4
|
|
768
836
|
https://github.com/holepunchto/bare-crypto
|
|
769
837
|
bare-debug-log@2.0.0
|
|
770
838
|
https://github.com/holepunchto/bare-debug-log
|
|
771
|
-
bare-dns@2.
|
|
839
|
+
bare-dns@2.3.0
|
|
772
840
|
https://github.com/holepunchto/bare-dns
|
|
773
841
|
bare-encoding@1.0.3
|
|
774
842
|
https://github.com/holepunchto/bare-encoding
|
|
775
843
|
bare-env@3.0.1
|
|
776
844
|
https://github.com/holepunchto/bare-env
|
|
777
|
-
bare-events@2.9.
|
|
845
|
+
bare-events@2.9.1
|
|
778
846
|
https://github.com/holepunchto/bare-events
|
|
779
847
|
bare-fetch@3.4.0
|
|
780
848
|
https://github.com/holepunchto/bare-fetch
|
|
@@ -784,7 +852,7 @@ JavaScript Dependencies
|
|
|
784
852
|
https://github.com/holepunchto/bare-form-data
|
|
785
853
|
bare-format@1.0.2
|
|
786
854
|
https://github.com/holepunchto/bare-format
|
|
787
|
-
bare-fs@4.8.
|
|
855
|
+
bare-fs@4.8.4
|
|
788
856
|
https://github.com/holepunchto/bare-fs
|
|
789
857
|
bare-gpu-info@0.1.1
|
|
790
858
|
https://github.com/holepunchto/bare-gpu-info
|
|
@@ -804,23 +872,23 @@ JavaScript Dependencies
|
|
|
804
872
|
https://github.com/holepunchto/bare-mime
|
|
805
873
|
bare-module@6.4.0
|
|
806
874
|
https://github.com/holepunchto/bare-module
|
|
807
|
-
bare-module-lexer@1.
|
|
875
|
+
bare-module-lexer@1.7.0
|
|
808
876
|
https://github.com/holepunchto/bare-module-lexer
|
|
809
|
-
bare-module-resolve@1.12.
|
|
877
|
+
bare-module-resolve@1.12.6
|
|
810
878
|
https://github.com/holepunchto/bare-module-resolve
|
|
811
|
-
bare-module-traverse@2.
|
|
879
|
+
bare-module-traverse@2.6.0
|
|
812
880
|
https://github.com/holepunchto/bare-module-traverse
|
|
813
881
|
bare-net@2.3.3
|
|
814
882
|
https://github.com/holepunchto/bare-net
|
|
815
883
|
bare-os@3.9.3
|
|
816
884
|
https://github.com/holepunchto/bare-os
|
|
817
|
-
bare-pack@2.2.
|
|
885
|
+
bare-pack@2.2.4
|
|
818
886
|
https://github.com/holepunchto/bare-pack
|
|
819
887
|
bare-path@3.1.2
|
|
820
888
|
https://github.com/holepunchto/bare-path
|
|
821
889
|
bare-performance@2.1.1
|
|
822
890
|
https://github.com/holepunchto/bare-performance
|
|
823
|
-
bare-pipe@4.
|
|
891
|
+
bare-pipe@4.4.0
|
|
824
892
|
https://github.com/holepunchto/bare-pipe
|
|
825
893
|
bare-posix@1.0.1
|
|
826
894
|
https://github.com/holepunchto/bare-posix
|
|
@@ -828,9 +896,9 @@ JavaScript Dependencies
|
|
|
828
896
|
https://github.com/holepunchto/bare-process
|
|
829
897
|
bare-rpc@1.3.8
|
|
830
898
|
https://github.com/holepunchto/bare-rpc
|
|
831
|
-
bare-runtime@1.
|
|
899
|
+
bare-runtime@1.35.0
|
|
832
900
|
https://github.com/holepunchto/bare-runtime
|
|
833
|
-
bare-runtime-darwin-arm64@1.
|
|
901
|
+
bare-runtime-darwin-arm64@1.35.0
|
|
834
902
|
https://github.com/holepunchto/bare-runtime
|
|
835
903
|
bare-signals@4.2.0
|
|
836
904
|
https://github.com/holepunchto/bare-signals
|
|
@@ -838,17 +906,17 @@ JavaScript Dependencies
|
|
|
838
906
|
https://github.com/holepunchto/bare-signals
|
|
839
907
|
bare-stdio@1.0.3
|
|
840
908
|
https://github.com/holepunchto/bare-stdio
|
|
841
|
-
bare-stream@2.13.
|
|
909
|
+
bare-stream@2.13.3
|
|
842
910
|
https://github.com/holepunchto/bare-stream
|
|
843
911
|
bare-stylize@0.0.1
|
|
844
912
|
https://github.com/holepunchto/bare-stylize
|
|
845
913
|
bare-subprocess@5.2.3
|
|
846
914
|
https://github.com/holepunchto/bare-subprocess
|
|
847
|
-
bare-subprocess@6.2.
|
|
915
|
+
bare-subprocess@6.2.2
|
|
848
916
|
https://github.com/holepunchto/bare-subprocess
|
|
849
917
|
bare-tcp@2.6.1
|
|
850
918
|
https://github.com/holepunchto/bare-tcp
|
|
851
|
-
bare-tls@3.1.
|
|
919
|
+
bare-tls@3.1.11
|
|
852
920
|
https://github.com/holepunchto/bare-tls
|
|
853
921
|
bare-tty@5.2.1
|
|
854
922
|
https://github.com/holepunchto/bare-tty
|
|
@@ -856,7 +924,7 @@ JavaScript Dependencies
|
|
|
856
924
|
https://github.com/holepunchto/bare-type
|
|
857
925
|
bare-type-stripper@0.1.7
|
|
858
926
|
https://github.com/holepunchto/bare-type-stripper
|
|
859
|
-
bare-url@2.5.
|
|
927
|
+
bare-url@2.5.5
|
|
860
928
|
https://github.com/holepunchto/bare-url
|
|
861
929
|
bare-utils@1.6.0
|
|
862
930
|
https://github.com/holepunchto/bare-utils
|
|
@@ -870,7 +938,7 @@ JavaScript Dependencies
|
|
|
870
938
|
https://github.com/holepunchto/blind-relay
|
|
871
939
|
brittle@3.19.1
|
|
872
940
|
https://github.com/holepunchto/brittle
|
|
873
|
-
compact-encoding@3.5.
|
|
941
|
+
compact-encoding@3.5.2
|
|
874
942
|
https://github.com/holepunchto/compact-encoding
|
|
875
943
|
compact-encoding-bitfield@1.1.0
|
|
876
944
|
https://github.com/compact-encoding/compact-encoding-bitfield
|
|
@@ -886,7 +954,7 @@ JavaScript Dependencies
|
|
|
886
954
|
https://github.com/holepunchto/fs-native-extensions
|
|
887
955
|
globbie@1.0.6
|
|
888
956
|
https://github.com/holepunchto/globbie
|
|
889
|
-
hyperblobs@2.
|
|
957
|
+
hyperblobs@2.13.0
|
|
890
958
|
https://github.com/holepunchto/hyperblobs
|
|
891
959
|
hypercore-errors@1.5.0
|
|
892
960
|
https://github.com/holepunchto/hypercore-errors
|
|
@@ -894,9 +962,9 @@ JavaScript Dependencies
|
|
|
894
962
|
https://github.com/holepunchto/hypercore-id-encoding
|
|
895
963
|
hypercore-stats@2.5.1
|
|
896
964
|
https://github.com/holepunchto/hypercore-stats
|
|
897
|
-
hypercore-storage@3.
|
|
965
|
+
hypercore-storage@3.4.0
|
|
898
966
|
https://github.com/holepunchto/hypercore-storage
|
|
899
|
-
hyperdb@6.
|
|
967
|
+
hyperdb@6.11.0
|
|
900
968
|
https://github.com/holepunchto/hyperdb
|
|
901
969
|
hyperdht-address@1.1.1
|
|
902
970
|
https://github.com/holepunchto/hyperdht-address
|
|
@@ -916,11 +984,11 @@ JavaScript Dependencies
|
|
|
916
984
|
https://github.com/holepunchto/mirror-drive
|
|
917
985
|
noise-handshake@4.2.0
|
|
918
986
|
https://github.com/holepunchto/noise-handshake
|
|
919
|
-
paparam@1.
|
|
987
|
+
paparam@1.14.0
|
|
920
988
|
https://github.com/holepunchto/paparam
|
|
921
989
|
passive-core-watcher@1.0.1
|
|
922
990
|
https://github.com/holepunchto/passive-core-watcher
|
|
923
|
-
quickbit-native@2.4.
|
|
991
|
+
quickbit-native@2.4.9
|
|
924
992
|
https://github.com/holepunchto/quickbit-native
|
|
925
993
|
rabin-native@2.0.0
|
|
926
994
|
https://github.com/holepunchto/rabin-native
|
|
@@ -936,7 +1004,7 @@ JavaScript Dependencies
|
|
|
936
1004
|
https://github.com/holepunchto/require-asset
|
|
937
1005
|
resource-on-exit@1.0.0
|
|
938
1006
|
https://github.com/holepunchto/bare-teardown
|
|
939
|
-
rocksdb-native@3.
|
|
1007
|
+
rocksdb-native@3.19.1
|
|
940
1008
|
https://github.com/holepunchto/rocksdb-native
|
|
941
1009
|
scope-lock@1.2.4
|
|
942
1010
|
https://github.com/holepunchto/scope-lock
|
|
@@ -988,7 +1056,7 @@ JavaScript Dependencies
|
|
|
988
1056
|
https://github.com/mafintosh/codecs
|
|
989
1057
|
convert-source-map@2.0.0
|
|
990
1058
|
https://github.com/thlorenz/convert-source-map
|
|
991
|
-
corestore@7.
|
|
1059
|
+
corestore@7.15.0
|
|
992
1060
|
https://github.com/holepunchto/corestore
|
|
993
1061
|
debounceify@1.1.0
|
|
994
1062
|
https://github.com/mafintosh/debounceify
|
|
@@ -1008,11 +1076,11 @@ JavaScript Dependencies
|
|
|
1008
1076
|
https://github.com/mafintosh/generate-string
|
|
1009
1077
|
hyperbee@2.27.3
|
|
1010
1078
|
https://github.com/holepunchto/hyperbee
|
|
1011
|
-
hypercore@11.
|
|
1079
|
+
hypercore@11.39.0
|
|
1012
1080
|
https://github.com/holepunchto/hypercore
|
|
1013
1081
|
hypercore-crypto@3.7.0
|
|
1014
1082
|
https://github.com/mafintosh/hypercore-crypto
|
|
1015
|
-
hyperdht@6.34.
|
|
1083
|
+
hyperdht@6.34.1
|
|
1016
1084
|
https://github.com/holepunchto/hyperdht
|
|
1017
1085
|
hyperswarm@4.17.2
|
|
1018
1086
|
https://github.com/holepunchto/hyperswarm
|
|
@@ -1034,7 +1102,7 @@ JavaScript Dependencies
|
|
|
1034
1102
|
https://github.com/mafintosh/promaphore
|
|
1035
1103
|
protocol-buffers-encodings@1.2.0
|
|
1036
1104
|
https://github.com/mafintosh/protocol-buffers-encodings
|
|
1037
|
-
protomux@3.
|
|
1105
|
+
protomux@3.13.0
|
|
1038
1106
|
https://github.com/holepunchto/protomux
|
|
1039
1107
|
queue-tick@1.0.1
|
|
1040
1108
|
https://github.com/mafintosh/queue-tick
|
|
@@ -1058,7 +1126,7 @@ JavaScript Dependencies
|
|
|
1058
1126
|
https://github.com/mafintosh/signal-promise
|
|
1059
1127
|
signed-varint@2.0.1
|
|
1060
1128
|
https://github.com/dominictarr/signed-varint
|
|
1061
|
-
sodium-native@5.1.
|
|
1129
|
+
sodium-native@5.1.1
|
|
1062
1130
|
https://github.com/holepunchto/sodium-native
|
|
1063
1131
|
sodium-secretstream@1.2.0
|
|
1064
1132
|
https://github.com/mafintosh/sodium-secretstream
|
|
@@ -1070,7 +1138,7 @@ JavaScript Dependencies
|
|
|
1070
1138
|
https://github.com/stacktracejs/stackframe
|
|
1071
1139
|
streamx@2.28.1
|
|
1072
1140
|
https://github.com/mafintosh/streamx
|
|
1073
|
-
tar-stream@3.2.
|
|
1141
|
+
tar-stream@3.2.2
|
|
1074
1142
|
https://github.com/mafintosh/tar-stream
|
|
1075
1143
|
teex@1.0.1
|
|
1076
1144
|
https://github.com/mafintosh/teex
|
|
@@ -1094,6 +1162,6 @@ JavaScript Dependencies
|
|
|
1094
1162
|
https://github.com/mafintosh/xache
|
|
1095
1163
|
z32@1.1.0
|
|
1096
1164
|
https://github.com/mafintosh/z32
|
|
1097
|
-
zod@4.6.
|
|
1165
|
+
zod@4.6.7
|
|
1098
1166
|
https://github.com/colinhacks/zod
|
|
1099
1167
|
|
package/README.md
CHANGED
|
@@ -22,6 +22,13 @@ For AI/LLM tools, use [https://docs.qvac.tether.io/llms-full.txt](https://docs.q
|
|
|
22
22
|
|
|
23
23
|
See https://docs.qvac.tether.io/sdk/getting-started/installation
|
|
24
24
|
|
|
25
|
+
On Node.js, the SDK installs and launches its own Bare worker through `bare-runtime`.
|
|
26
|
+
Its dependency range must satisfy `@qvac/inference`'s `engines.bare` requirement.
|
|
27
|
+
When upgrading the SDK, reinstall dependencies with the existing lockfile so the
|
|
28
|
+
package manager can replace an older, incompatible runtime. Remove any override
|
|
29
|
+
or resolution that forces the worker below that requirement; installing a newer
|
|
30
|
+
global `bare` executable does not change the SDK's worker dependency.
|
|
31
|
+
|
|
25
32
|
## Quickstart
|
|
26
33
|
|
|
27
34
|
1. Create the examples workspace:
|
|
@@ -143,16 +150,16 @@ initialized, the event omits the resource block.
|
|
|
143
150
|
## Pre-download model fit assessment
|
|
144
151
|
|
|
145
152
|
Use `assessModelFit` to check, before downloading anything, whether models are
|
|
146
|
-
likely to fit in this device's memory.
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
no load:
|
|
153
|
+
likely to fit in this device's memory. Each candidate is described as `loadModel`
|
|
154
|
+
takes it. It reads generated catalog metadata plus a fresh memory sample, and for
|
|
155
|
+
a single candidate the registry's weightless description of the artifact, so the
|
|
156
|
+
engine's own fitter can answer — no weights, no load:
|
|
150
157
|
|
|
151
158
|
```ts
|
|
152
159
|
import { assessModelFit, QWEN3_8B_INST_Q4_K_M } from '@qvac/sdk'
|
|
153
160
|
|
|
154
161
|
const result = await assessModelFit({
|
|
155
|
-
models: [{
|
|
162
|
+
models: [{ modelSrc: QWEN3_8B_INST_Q4_K_M, modelType: 'llm', modelConfig: { ctx_size: 8192 } }],
|
|
156
163
|
execution: 'sequential',
|
|
157
164
|
policy: 'interactive-v1'
|
|
158
165
|
})
|
|
@@ -187,6 +194,33 @@ console.log(stats?.audioDuration, stats?.realTimeFactor)
|
|
|
187
194
|
`session.stats` resolves to `undefined` when the engine does not report
|
|
188
195
|
statistics.
|
|
189
196
|
|
|
197
|
+
Batch `transcribe()` calls also expose terminal statistics:
|
|
198
|
+
|
|
199
|
+
```ts
|
|
200
|
+
const call = transcribe({ modelId, audioChunk })
|
|
201
|
+
const text = await call
|
|
202
|
+
const stats = await call.stats
|
|
203
|
+
console.log(text, stats?.encoderUsedCoreml)
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
`call.stats` resolves to `undefined` when the engine reports no statistics and
|
|
207
|
+
rejects if transcription fails.
|
|
208
|
+
|
|
209
|
+
## Parakeet Core ML encoders on Apple devices
|
|
210
|
+
|
|
211
|
+
Load a supported Parakeet registry constant as usual. On macOS and iOS, the SDK
|
|
212
|
+
downloads any complete, published Core ML encoder bundle with its GGUF and
|
|
213
|
+
places the `.mlmodelc` directory where the native addon discovers it. This is
|
|
214
|
+
available for TDT 0.6B v3, Unified English 0.6B, EOU 120M v1, and streaming
|
|
215
|
+
Sortformer v2.1. The download includes the sidecar weights, so first load takes
|
|
216
|
+
more time and disk space. Other platforms download only the GGUF. If the
|
|
217
|
+
sidecar is unavailable or cannot load, inference uses the GGUF encoder.
|
|
218
|
+
Sortformer v2.1 also needs a GGUF with the
|
|
219
|
+
`parakeet.model_variant=sortformer-streaming-v2.1-aosc` metadata. Caching both
|
|
220
|
+
sidecars alone does not activate Core ML. See
|
|
221
|
+
[`examples/asr/parakeet-unified-coreml.ts`](examples/asr/parakeet-unified-coreml.ts)
|
|
222
|
+
for a local check of a Unified GGUF and its encoder bundle.
|
|
223
|
+
|
|
190
224
|
## Examples
|
|
191
225
|
|
|
192
226
|
In the `./examples` subdirectory, you will find scripts demonstrating how to use all SDK functionalities. To try any of them:
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Advisory
|
|
2
|
+
* Advisory model fit check.
|
|
3
3
|
*
|
|
4
|
-
* Before a
|
|
5
|
-
*
|
|
6
|
-
*
|
|
4
|
+
* Before a load, the SDK runs the fitter belonging to the engine that would
|
|
5
|
+
* run it and projects whether the exact configuration it is about to load will
|
|
6
|
+
* fit in device memory. Desktop runs it in a disposable Bare child; mobile,
|
|
7
|
+
* which cannot spawn one, runs it on a worker thread.
|
|
7
8
|
*
|
|
8
9
|
* The result is ADVISORY. It never blocks a load. `does-not-fit` is logged and
|
|
9
10
|
* the ordinary load path runs unchanged. Crashes, timeouts, malformed
|
|
10
11
|
* responses, unsupported configurations, and internal errors all resolve to
|
|
11
|
-
* "no evidence" and are equally non-blocking.
|
|
12
|
-
*
|
|
12
|
+
* "no evidence" and are equally non-blocking. No verdict changes the load;
|
|
13
|
+
* `getLoadedModelInfo` returns it as `fitProbe`.
|
|
13
14
|
*
|
|
14
15
|
* The verdict is emitted on the SDK server log stream, not to stdout, so this
|
|
15
16
|
* example subscribes to `loggingStream({ id: SDK_LOG_ID })` and reprints the
|
|
@@ -19,9 +20,8 @@
|
|
|
19
20
|
* What fits on this machine (Apple M4 Pro, 24 GiB unified memory)
|
|
20
21
|
* ---------------------------------------------------------------------------
|
|
21
22
|
*
|
|
22
|
-
* Measured
|
|
23
|
-
*
|
|
24
|
-
* fitter budgets against what the machine can actually keep resident
|
|
23
|
+
* Measured at the default 1024 MiB margin. The fitter budgets against what the
|
|
24
|
+
* machine can actually keep resident
|
|
25
25
|
* (total − wired − compressor: 17.4 GiB on this machine at idle), not the raw
|
|
26
26
|
* RAM figure.
|
|
27
27
|
*
|
|
@@ -30,10 +30,12 @@
|
|
|
30
30
|
* gpt-oss-20B Q4_K_M 10.8 GiB @ 32k ctx
|
|
31
31
|
* gte-large fp16 0.6 GiB (embedding, context pinned to 512)
|
|
32
32
|
*
|
|
33
|
-
* PROJECTED NOT TO FIT —
|
|
33
|
+
* PROJECTED NOT TO FIT — with `gpu_layers: 99` pinned
|
|
34
34
|
* gpt-oss-20B Q4_K_M 10.8 GiB @ 128k ctx with an f32 KV cache ← below
|
|
35
|
-
*
|
|
36
|
-
*
|
|
35
|
+
*
|
|
36
|
+
* These rows were measured with `gpu_layers` pinned at 99. Loads no longer pin
|
|
37
|
+
* the layer count, and the `does-not-fit` row has not been re-measured
|
|
38
|
+
* unpinned.
|
|
37
39
|
*
|
|
38
40
|
* gpt-oss-20B at 128k context FITS with the default KV cache and DOES NOT FIT
|
|
39
41
|
* once `cache-type-k`/`cache-type-v` are set to `f32`. Same model, same
|
|
@@ -42,10 +44,9 @@
|
|
|
42
44
|
*
|
|
43
45
|
* Two boundaries worth understanding when reading verdicts:
|
|
44
46
|
*
|
|
45
|
-
* 1. The verdict answers for a PLACEMENT, not a model.
|
|
46
|
-
*
|
|
47
|
-
* means "not at this placement".
|
|
48
|
-
* to move layers to the CPU side instead.
|
|
47
|
+
* 1. The verdict answers for a PLACEMENT, not a model. With `gpu_layers`
|
|
48
|
+
* unset, the fitter may move layers to the CPU side; setting it pins the
|
|
49
|
+
* layer count, and `does-not-fit` then means "not at this placement".
|
|
49
50
|
* 2. A `does-not-fit` configuration can still RUN on macOS when the OS
|
|
50
51
|
* compresses and pages hard enough — and a `fits` configuration right at
|
|
51
52
|
* the boundary can still fail at first decode under memory pressure.
|