@elizaos/app-core 2.0.0-beta.2 → 2.0.11-beta.5
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/agent-bridge.d.ts +27 -0
- package/agent-bridge.d.ts.map +1 -0
- package/agent-bridge.js +26 -0
- package/api/__tests__/sandbox-test-helpers.js +1 -1
- package/api/auth/audit.js +1 -1
- package/api/auth/auth-context.js +1 -1
- package/api/auth/bootstrap-token.js +2 -2
- package/api/auth/index.d.ts +9 -10
- package/api/auth/index.d.ts.map +1 -1
- package/api/auth/index.js +9 -10
- package/api/auth/passwords.js +2 -2
- package/api/auth/sensitive-rate-limit.d.ts +1 -4
- package/api/auth/sensitive-rate-limit.d.ts.map +1 -1
- package/api/auth/sensitive-rate-limit.js +6 -6
- package/api/auth/sessions.js +2 -2
- package/api/auth-bootstrap-routes.d.ts +6 -13
- package/api/auth-bootstrap-routes.d.ts.map +1 -1
- package/api/auth-bootstrap-routes.js +14 -27
- package/api/auth-pairing-routes.d.ts +17 -0
- package/api/auth-pairing-routes.d.ts.map +1 -0
- package/api/auth-pairing-routes.js +300 -0
- package/api/auth-session-routes.d.ts.map +1 -1
- package/api/auth-session-routes.js +36 -15
- package/api/auth.d.ts +12 -19
- package/api/auth.d.ts.map +1 -1
- package/api/auth.js +32 -27
- package/api/automations-compat-routes.d.ts.map +1 -1
- package/api/automations-compat-routes.js +5 -5
- package/api/background-tasks-routes.d.ts +4 -0
- package/api/background-tasks-routes.d.ts.map +1 -0
- package/api/background-tasks-routes.js +63 -0
- package/api/catalog-routes.js +3 -3
- package/api/cloud-pair-route.d.ts +26 -0
- package/api/cloud-pair-route.d.ts.map +1 -0
- package/api/cloud-pair-route.js +222 -0
- package/api/cloud-voice-routes.d.ts +52 -0
- package/api/cloud-voice-routes.d.ts.map +1 -0
- package/api/cloud-voice-routes.js +50 -0
- package/api/compat-route-shared.d.ts +2 -2
- package/api/compat-route-shared.d.ts.map +1 -1
- package/api/compat-route-shared.js +11 -7
- package/api/credential-resolver.d.ts +2 -2
- package/api/credential-resolver.d.ts.map +1 -1
- package/api/credential-resolver.js +8 -2
- package/api/database-rows-compat-routes.d.ts.map +1 -1
- package/api/database-rows-compat-routes.js +69 -31
- package/api/dev-boot-history.d.ts +26 -0
- package/api/dev-boot-history.d.ts.map +1 -0
- package/api/dev-boot-history.js +69 -0
- package/api/dev-compat-routes.d.ts +5 -0
- package/api/dev-compat-routes.d.ts.map +1 -1
- package/api/dev-compat-routes.js +127 -4
- package/api/dev-console-log.d.ts +2 -2
- package/api/dev-console-log.d.ts.map +1 -1
- package/api/dev-console-log.js +8 -5
- package/api/dev-route-catalog.d.ts +58 -0
- package/api/dev-route-catalog.d.ts.map +1 -0
- package/api/dev-route-catalog.js +447 -0
- package/api/dev-stack.d.ts.map +1 -1
- package/api/dev-stack.js +6 -9
- package/api/first-run-routes.d.ts +4 -0
- package/api/first-run-routes.d.ts.map +1 -0
- package/api/first-run-routes.js +208 -0
- package/api/first-run-tts-route.d.ts +19 -0
- package/api/first-run-tts-route.d.ts.map +1 -0
- package/api/first-run-tts-route.js +59 -0
- package/api/internal-routes.d.ts +23 -0
- package/api/internal-routes.d.ts.map +1 -0
- package/api/internal-routes.js +203 -0
- package/api/ios-local-agent-transport.d.ts +36 -0
- package/api/ios-local-agent-transport.d.ts.map +1 -0
- package/api/ios-local-agent-transport.js +566 -0
- package/api/onboarding-voice-lines.d.ts +23 -0
- package/api/onboarding-voice-lines.d.ts.map +1 -0
- package/api/onboarding-voice-lines.js +8 -0
- package/api/perf-instrument.d.ts +43 -0
- package/api/perf-instrument.d.ts.map +1 -0
- package/api/perf-instrument.js +113 -0
- package/api/response.d.ts.map +1 -1
- package/api/response.js +14 -14
- package/api/runtime-mode-routes.d.ts.map +1 -1
- package/api/runtime-mode-routes.js +2 -2
- package/api/secrets-inventory-routes.js +2 -2
- package/api/secrets-manager-routes.d.ts +1 -1
- package/api/secrets-manager-routes.d.ts.map +1 -1
- package/api/secrets-manager-routes.js +9 -10
- package/api/sensitive-request-routes.d.ts.map +1 -1
- package/api/sensitive-request-routes.js +5 -5
- package/api/sensitive-request-store.d.ts +12 -3
- package/api/sensitive-request-store.d.ts.map +1 -1
- package/api/server-cors.d.ts.map +1 -1
- package/api/server-cors.js +13 -2
- package/api/server-first-run-helpers.d.ts +26 -0
- package/api/server-first-run-helpers.d.ts.map +1 -0
- package/api/server-first-run-helpers.js +271 -0
- package/api/server-security.js +1 -1
- package/api/server-startup.d.ts.map +1 -1
- package/api/server-startup.js +3 -4
- package/api/server-wallet-trade.js +1 -1
- package/api/server.d.ts +4 -4
- package/api/server.d.ts.map +1 -1
- package/api/server.js +222 -88
- package/api/setup-contract.d.ts +63 -0
- package/api/setup-contract.d.ts.map +1 -0
- package/api/setup-contract.js +39 -0
- package/api/training-benchmarks.d.ts +97 -0
- package/api/training-benchmarks.d.ts.map +1 -0
- package/api/training-benchmarks.js +307 -0
- package/api/workbench-compat-routes.js +2 -2
- package/benchmark/cerebras-autowire.d.ts +28 -0
- package/benchmark/cerebras-autowire.d.ts.map +1 -0
- package/benchmark/cerebras-autowire.js +62 -0
- package/benchmark/lifeops-bench-handler.d.ts +36 -0
- package/benchmark/lifeops-bench-handler.d.ts.map +1 -1
- package/benchmark/lifeops-bench-handler.js +63 -1
- package/benchmark/lifeops-fake-backend.d.ts +39 -0
- package/benchmark/lifeops-fake-backend.d.ts.map +1 -1
- package/benchmark/lifeops-fake-backend.js +993 -21
- package/benchmark/mock-plugin.d.ts.map +1 -1
- package/benchmark/mock-plugin.js +0 -24
- package/benchmark/plugin.d.ts +2 -1
- package/benchmark/plugin.d.ts.map +1 -1
- package/benchmark/plugin.js +989 -68
- package/benchmark/replay-capture.d.ts +2 -2
- package/benchmark/replay-capture.d.ts.map +1 -1
- package/benchmark/replay-capture.js +3 -3
- package/benchmark/server-utils.d.ts +162 -9
- package/benchmark/server-utils.d.ts.map +1 -1
- package/benchmark/server-utils.js +625 -62
- package/benchmark/server.d.ts.map +1 -1
- package/benchmark/server.js +1962 -118
- package/boot-profile.d.ts +3 -0
- package/boot-profile.d.ts.map +1 -0
- package/boot-profile.js +30 -0
- package/browser.d.ts +23 -1
- package/browser.d.ts.map +1 -1
- package/browser.js +20 -1
- package/cli/argv.js +1 -1
- package/cli/banner.js +1 -1
- package/cli/command-format.js +2 -2
- package/cli/doctor/checks.d.ts.map +1 -1
- package/cli/doctor/checks.js +6 -6
- package/cli/plugins-cli.d.ts.map +1 -1
- package/cli/plugins-cli.js +77 -32
- package/cli/profile.d.ts.map +1 -1
- package/cli/profile.js +5 -4
- package/cli/program/build-program.js +4 -4
- package/cli/program/command-registry.d.ts.map +1 -1
- package/cli/program/command-registry.js +13 -11
- package/cli/program/help.js +5 -5
- package/cli/program/preaction.js +5 -5
- package/cli/program/register.auth.d.ts.map +1 -1
- package/cli/program/register.auth.js +6 -12
- package/cli/program/register.capability-router.d.ts +29 -0
- package/cli/program/register.capability-router.d.ts.map +1 -0
- package/cli/program/register.capability-router.js +568 -0
- package/cli/program/register.config.js +1 -1
- package/cli/program/register.configure.d.ts.map +1 -1
- package/cli/program/register.configure.js +1 -1
- package/cli/program/register.dashboard.d.ts.map +1 -1
- package/cli/program/register.dashboard.js +6 -7
- package/cli/program/register.db.d.ts.map +1 -1
- package/cli/program/register.db.js +3 -4
- package/cli/program/register.doctor.js +7 -7
- package/cli/program/register.setup.d.ts.map +1 -1
- package/cli/program/register.setup.js +14 -10
- package/cli/program/register.start.d.ts.map +1 -1
- package/cli/program/register.start.js +5 -3
- package/cli/program/register.subclis.js +3 -3
- package/cli/program/register.update.d.ts +6 -0
- package/cli/program/register.update.d.ts.map +1 -1
- package/cli/program/register.update.js +58 -6
- package/cli/program.js +1 -1
- package/cli/run-main.js +4 -4
- package/config/app-config.d.ts +2 -0
- package/config/app-config.d.ts.map +1 -0
- package/config/app-config.js +1 -0
- package/connectors/capacitor-jsc.d.ts.map +1 -1
- package/connectors/capacitor-jsc.js +16 -10
- package/connectors/capacitor-quickjs.d.ts.map +1 -1
- package/connectors/capacitor-quickjs.js +18 -13
- package/connectors/capacitor-sqlite.d.ts.map +1 -1
- package/connectors/capacitor-sqlite.js +27 -12
- package/dispatch/approval-queue.d.ts +37 -0
- package/dispatch/approval-queue.d.ts.map +1 -0
- package/dispatch/approval-queue.js +25 -0
- package/dispatch/channel-registry.d.ts +30 -0
- package/dispatch/channel-registry.d.ts.map +1 -0
- package/dispatch/channel-registry.js +22 -0
- package/dispatch/connector-registry.d.ts +39 -0
- package/dispatch/connector-registry.d.ts.map +1 -0
- package/dispatch/connector-registry.js +24 -0
- package/dispatch/index.d.ts +14 -0
- package/dispatch/index.d.ts.map +1 -0
- package/dispatch/index.js +13 -0
- package/dispatch/send-policy.d.ts +36 -0
- package/dispatch/send-policy.d.ts.map +1 -0
- package/dispatch/send-policy.js +16 -0
- package/entry.js +28 -11
- package/first-run/first-run-config.d.ts +55 -0
- package/first-run/first-run-config.d.ts.map +1 -0
- package/first-run/first-run-config.js +178 -0
- package/first-run/runtime-target.d.ts +4 -0
- package/first-run/runtime-target.d.ts.map +1 -0
- package/first-run/runtime-target.js +13 -0
- package/index.d.ts +16 -3
- package/index.d.ts.map +1 -1
- package/index.js +57 -33
- package/package.json +159 -50
- package/packaging/debian/apt-repo-config/README.md +18 -0
- package/packaging/debian/apt-repo-config/conf/distributions +11 -0
- package/packaging/flatpak/README.md +26 -16
- package/packaging/flatpak/ai.elizaos.App.metainfo.xml +17 -12
- package/packaging/flatpak/ai.elizaos.App.store.yml +5 -5
- package/packaging/flatpak/ai.elizaos.App.yml +10 -24
- package/packaging/flatpak/elizaos-app-wrapper.store.sh +2 -2
- package/packaging/flatpak/generate-sources.sh +74 -0
- package/packaging/flatpak/node-sources.json +7930 -0
- package/packaging/inno/build-inno.ps1 +34 -9
- package/packaging/msix/AppxManifest.store.xml +1 -1
- package/packaging/msix/README.md +39 -19
- package/packaging/msix/build-msix.ps1 +44 -14
- package/packaging/snap/snapcraft.yaml +22 -21
- package/packaging/test-packaging.sh +2 -2
- package/permissions/types.d.ts +1 -1
- package/permissions/types.js +1 -1
- package/platform/elizaos-agent-browser-stub.d.ts +144 -0
- package/platform/elizaos-agent-browser-stub.d.ts.map +1 -0
- package/platform/elizaos-agent-browser-stub.js +158 -0
- package/platform/elizaos-plugin-elizacloud-browser-stub.d.ts +34 -0
- package/platform/elizaos-plugin-elizacloud-browser-stub.d.ts.map +1 -0
- package/platform/elizaos-plugin-elizacloud-browser-stub.js +51 -0
- package/platform/empty-node-module.d.ts +148 -0
- package/platform/empty-node-module.d.ts.map +1 -1
- package/platform/empty-node-module.js +140 -3
- package/platform/ios-runtime-backends.d.ts +83 -0
- package/platform/ios-runtime-backends.d.ts.map +1 -0
- package/platform/ios-runtime-backends.js +133 -0
- package/platform/ios-runtime-bridge.d.ts +15 -0
- package/platform/ios-runtime-bridge.d.ts.map +1 -0
- package/platform/ios-runtime-bridge.js +527 -0
- package/platform/native-library-policy.d.ts +23 -0
- package/platform/native-library-policy.d.ts.map +1 -0
- package/platform/native-library-policy.js +112 -0
- package/platform/native-plugin-entrypoints.d.ts +19 -0
- package/platform/native-plugin-entrypoints.d.ts.map +1 -0
- package/platform/native-plugin-entrypoints.js +29 -0
- package/platforms/android/README.md +68 -10
- package/platforms/android/app/build.gradle +268 -3
- package/platforms/android/app/capacitor.build.gradle +18 -1
- package/platforms/android/app/proguard-rules.pro +17 -2
- package/platforms/android/app/src/androidTest/java/ai/elizaos/app/ElizaOsInstrumentedTest.java +1 -1
- package/platforms/android/app/src/main/AndroidManifest.xml +334 -17
- package/platforms/android/app/src/main/assets/runners/eliza-tasks.js +177 -0
- package/platforms/android/app/src/main/elizavoice-jni/CMakeLists.txt +75 -0
- package/platforms/android/app/src/main/elizavoice-jni/elizavoice-jni.cpp +1045 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/AgentPlugin.java +111 -171
- package/platforms/android/app/src/main/java/ai/elizaos/app/AndroidVirtualizationBridge.java +284 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/BatteryOptimizationPlugin.java +95 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaAccessibilityService.java +55 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaAgentService.java +1198 -141
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaAndroidSystemBridge.java +83 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaAssistActivity.java +50 -1
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaBootReceiver.java +90 -8
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaBrowserActivity.java +2 -2
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaCalendarActivity.java +1 -1
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaCameraActivity.java +1 -1
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaClockActivity.java +2 -2
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaContactsActivity.java +1 -1
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaDialActivity.java +1 -1
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaInCallService.java +1 -1
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaMmsReceiver.java +1 -1
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaNativeBridge.java +22 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaNotificationListenerService.java +45 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaQuickActionsWidgetProvider.java +68 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaShareActivity.java +132 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaSmsComposeActivity.java +1 -1
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaSmsGatewayService.java +268 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaSmsReceiver.java +12 -1
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaTasksWorker.java +194 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaVoiceCaptureService.java +198 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaVoiceNative.java +160 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaVoicePlugin.java +450 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaVoiceTileService.java +39 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/ElizaWorkScheduler.java +60 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/GatewayConnectionService.java +53 -19
- package/platforms/android/app/src/main/java/ai/elizaos/app/MainActivity.java +160 -33
- package/platforms/android/app/src/main/java/ai/elizaos/app/ResourceProbePlugin.java +169 -0
- package/platforms/android/app/src/main/java/ai/elizaos/app/VoiceCapturePlugin.java +119 -0
- package/platforms/android/app/src/main/res/drawable/eliza_widget_background.xml +10 -0
- package/platforms/android/app/src/main/res/drawable/eliza_widget_button_background.xml +13 -0
- package/platforms/android/app/src/main/res/drawable/splash.png +0 -0
- package/platforms/android/app/src/main/res/drawable-land-hdpi/splash.png +0 -0
- package/platforms/android/app/src/main/res/drawable-land-mdpi/splash.png +0 -0
- package/platforms/android/app/src/main/res/drawable-land-xhdpi/splash.png +0 -0
- package/platforms/android/app/src/main/res/drawable-land-xxhdpi/splash.png +0 -0
- package/platforms/android/app/src/main/res/drawable-land-xxxhdpi/splash.png +0 -0
- package/platforms/android/app/src/main/res/drawable-port-hdpi/splash.png +0 -0
- package/platforms/android/app/src/main/res/drawable-port-mdpi/splash.png +0 -0
- package/platforms/android/app/src/main/res/drawable-port-xhdpi/splash.png +0 -0
- package/platforms/android/app/src/main/res/drawable-port-xxhdpi/splash.png +0 -0
- package/platforms/android/app/src/main/res/drawable-port-xxxhdpi/splash.png +0 -0
- package/platforms/android/app/src/main/res/layout/eliza_quick_actions_widget.xml +86 -0
- package/platforms/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +2 -1
- package/platforms/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml +2 -1
- package/platforms/android/app/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-hdpi/ic_launcher_monochrome.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-mdpi/ic_launcher_monochrome.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.png +0 -0
- package/platforms/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png +0 -0
- package/platforms/android/app/src/main/res/values/android_app_actions.xml +48 -0
- package/platforms/android/app/src/main/res/values/colors.xml +8 -0
- package/platforms/android/app/src/main/res/values/ic_launcher_background.xml +2 -2
- package/platforms/android/app/src/main/res/values/strings.xml +2 -2
- package/platforms/android/app/src/main/res/values/styles.xml +25 -1
- package/platforms/android/app/src/main/res/xml/eliza_accessibility_service.xml +9 -0
- package/platforms/android/app/src/main/res/xml/eliza_quick_actions_widget.xml +13 -0
- package/platforms/android/app/src/main/res/xml/shortcuts.xml +121 -0
- package/platforms/android/build.gradle +2 -2
- package/platforms/android/capacitor-cordova-android-plugins/build.gradle +9 -3
- package/platforms/android/capacitor-cordova-android-plugins/cordova.variables.gradle +6 -2
- package/platforms/android/capacitor-cordova-android-plugins/src/main/AndroidManifest.xml +7 -2
- package/platforms/android/capacitor-cordova-android-plugins/src/main/java/.gitkeep +0 -1
- package/platforms/android/capacitor.settings.gradle +66 -16
- package/platforms/android/gradle.properties +1 -0
- package/platforms/android/update-manifest/generate-manifest.mjs +97 -0
- package/platforms/android/update-manifest/schema.json +26 -0
- package/platforms/apple-store-entitlements.reviewed.json +155 -0
- package/platforms/electrobun/.generated/brand-config.json +3 -2
- package/platforms/electrobun/LICENSE +21 -0
- package/platforms/electrobun/README.md +15 -1
- package/platforms/electrobun/assets/appIcon.icns +0 -0
- package/platforms/electrobun/assets/appIcon.ico +0 -0
- package/platforms/electrobun/assets/appIcon.iconset/icon_128x128.png +0 -0
- package/platforms/electrobun/assets/appIcon.iconset/icon_128x128@2x.png +0 -0
- package/platforms/electrobun/assets/appIcon.iconset/icon_16x16.png +0 -0
- package/platforms/electrobun/assets/appIcon.iconset/icon_16x16@2x.png +0 -0
- package/platforms/electrobun/assets/appIcon.iconset/icon_256x256.png +0 -0
- package/platforms/electrobun/assets/appIcon.iconset/icon_256x256@2x.png +0 -0
- package/platforms/electrobun/assets/appIcon.iconset/icon_32x32.png +0 -0
- package/platforms/electrobun/assets/appIcon.iconset/icon_32x32@2x.png +0 -0
- package/platforms/electrobun/assets/appIcon.iconset/icon_512x512.png +0 -0
- package/platforms/electrobun/assets/brand-config.json +6 -6
- package/platforms/electrobun/biome.json +9 -9
- package/platforms/electrobun/docs/capability-collapse-matrix.json +318 -0
- package/platforms/electrobun/docs/capability-collapse-matrix.md +129 -0
- package/platforms/electrobun/docs/capability-routing.md +86 -0
- package/platforms/electrobun/docs/convergence-audit.json +3505 -0
- package/platforms/electrobun/docs/convergence-audit.md +694 -0
- package/platforms/electrobun/docs/database-boot-policy.md +90 -0
- package/platforms/electrobun/docs/riscv64-port.md +175 -0
- package/platforms/electrobun/docs/startup-first-run-cleanup.md +18 -0
- package/platforms/electrobun/docs/trace-first-annotations.md +52 -0
- package/platforms/electrobun/docs/ui-boundary-audit.json +580 -0
- package/platforms/electrobun/docs/ui-boundary-audit.md +257 -0
- package/platforms/electrobun/electrobun.config.ts +592 -364
- package/platforms/electrobun/entitlements/JUSTIFICATIONS.md +141 -0
- package/platforms/electrobun/entitlements/README.md +34 -6
- package/platforms/electrobun/entitlements/mas-bun.entitlements +15 -0
- package/platforms/electrobun/entitlements/mas.entitlements +6 -4
- package/platforms/electrobun/native/macos/window-effects.mm +1522 -0
- package/platforms/electrobun/package.json +18 -12
- package/platforms/electrobun/remotes/fs/README.md +70 -0
- package/platforms/electrobun/remotes/fs/electrobun.config.ts +38 -0
- package/platforms/electrobun/remotes/fs/package.json +12 -0
- package/platforms/electrobun/remotes/fs/plugin.json +25 -0
- package/platforms/electrobun/remotes/fs/src/bun/errors.ts +57 -0
- package/platforms/electrobun/remotes/fs/src/bun/file-limits.ts +50 -0
- package/platforms/electrobun/remotes/fs/src/bun/fs-service.ts +389 -0
- package/platforms/electrobun/remotes/fs/src/bun/path-guard.ts +270 -0
- package/platforms/electrobun/remotes/fs/src/bun/protocol.ts +149 -0
- package/platforms/electrobun/remotes/fs/src/bun/worker.ts +174 -0
- package/platforms/electrobun/remotes/fs/src/dev/phase5-smoke.ts +171 -0
- package/platforms/electrobun/remotes/fs/src/web/index.html +8 -0
- package/platforms/electrobun/remotes/git/README.md +75 -0
- package/platforms/electrobun/remotes/git/electrobun.config.ts +44 -0
- package/platforms/electrobun/remotes/git/package.json +12 -0
- package/platforms/electrobun/remotes/git/plugin.json +31 -0
- package/platforms/electrobun/remotes/git/src/bun/errors.ts +69 -0
- package/platforms/electrobun/remotes/git/src/bun/git-command.ts +156 -0
- package/platforms/electrobun/remotes/git/src/bun/git-service.ts +446 -0
- package/platforms/electrobun/remotes/git/src/bun/operation-history.ts +124 -0
- package/platforms/electrobun/remotes/git/src/bun/protocol.ts +252 -0
- package/platforms/electrobun/remotes/git/src/bun/worker.ts +316 -0
- package/platforms/electrobun/remotes/git/src/dev/phase7-smoke.ts +141 -0
- package/platforms/electrobun/remotes/git/src/web/index.html +8 -0
- package/platforms/electrobun/remotes/local-model/README.md +138 -0
- package/platforms/electrobun/remotes/local-model/electrobun.config.ts +46 -0
- package/platforms/electrobun/remotes/local-model/package.json +12 -0
- package/platforms/electrobun/remotes/local-model/plugin.json +33 -0
- package/platforms/electrobun/remotes/local-model/src/bun/download-state.ts +115 -0
- package/platforms/electrobun/remotes/local-model/src/bun/eliza1-catalog.ts +425 -0
- package/platforms/electrobun/remotes/local-model/src/bun/errors.ts +74 -0
- package/platforms/electrobun/remotes/local-model/src/bun/hf-eliza1-client.ts +169 -0
- package/platforms/electrobun/remotes/local-model/src/bun/local-inference-api-client.ts +245 -0
- package/platforms/electrobun/remotes/local-model/src/bun/model-service.ts +490 -0
- package/platforms/electrobun/remotes/local-model/src/bun/protocol.ts +301 -0
- package/platforms/electrobun/remotes/local-model/src/bun/worker.ts +248 -0
- package/platforms/electrobun/remotes/local-model/src/dev/phase8-smoke.ts +117 -0
- package/platforms/electrobun/remotes/local-model/src/web/index.html +13 -0
- package/platforms/electrobun/remotes/pty/README.md +65 -0
- package/platforms/electrobun/remotes/pty/electrobun.config.ts +47 -0
- package/platforms/electrobun/remotes/pty/package.json +12 -0
- package/platforms/electrobun/remotes/pty/plugin.json +34 -0
- package/platforms/electrobun/remotes/pty/src/bun/errors.ts +57 -0
- package/platforms/electrobun/remotes/pty/src/bun/output-buffer.ts +127 -0
- package/platforms/electrobun/remotes/pty/src/bun/protocol.ts +192 -0
- package/platforms/electrobun/remotes/pty/src/bun/pty-service.ts +562 -0
- package/platforms/electrobun/remotes/pty/src/bun/worker.ts +218 -0
- package/platforms/electrobun/remotes/pty/src/dev/phase6-smoke.ts +127 -0
- package/platforms/electrobun/remotes/pty/src/web/index.html +8 -0
- package/platforms/electrobun/remotes/runtime/README.md +370 -0
- package/platforms/electrobun/remotes/runtime/electrobun.config.ts +48 -0
- package/platforms/electrobun/remotes/runtime/package.json +14 -0
- package/platforms/electrobun/remotes/runtime/plugin.json +30 -0
- package/platforms/electrobun/remotes/runtime/src/bun/api-client.ts +620 -0
- package/platforms/electrobun/remotes/runtime/src/bun/errors.ts +45 -0
- package/platforms/electrobun/remotes/runtime/src/bun/log-buffer.ts +33 -0
- package/platforms/electrobun/remotes/runtime/src/bun/protocol.ts +366 -0
- package/platforms/electrobun/remotes/runtime/src/bun/route-discovery.ts +419 -0
- package/platforms/electrobun/remotes/runtime/src/bun/runtime-manager.ts +423 -0
- package/platforms/electrobun/remotes/runtime/src/bun/sse-parser.ts +99 -0
- package/platforms/electrobun/remotes/runtime/src/bun/stream-manager.ts +887 -0
- package/platforms/electrobun/remotes/runtime/src/bun/worker.ts +1231 -0
- package/platforms/electrobun/remotes/runtime/src/dev/phase1-smoke.ts +34 -0
- package/platforms/electrobun/remotes/runtime/src/dev/phase2-smoke.ts +86 -0
- package/platforms/electrobun/remotes/runtime/src/dev/phase3-smoke.ts +141 -0
- package/platforms/electrobun/remotes/runtime/src/web/index.css +187 -0
- package/platforms/electrobun/remotes/runtime/src/web/index.html +76 -0
- package/platforms/electrobun/remotes/runtime/src/web/index.ts +192 -0
- package/platforms/electrobun/remotes/surface/README.md +201 -0
- package/platforms/electrobun/remotes/surface/electrobun.config.ts +38 -0
- package/platforms/electrobun/remotes/surface/package.json +12 -0
- package/platforms/electrobun/remotes/surface/plugin.json +28 -0
- package/platforms/electrobun/remotes/surface/src/bun/worker.ts +132 -0
- package/platforms/electrobun/remotes/surface/src/dev/phase4-smoke.ts +566 -0
- package/platforms/electrobun/remotes/surface/src/protocol/event-types.ts +84 -0
- package/platforms/electrobun/remotes/surface/src/protocol/runtime-client.ts +673 -0
- package/platforms/electrobun/remotes/surface/src/web/app.ts +595 -0
- package/platforms/electrobun/remotes/surface/src/web/index.css +460 -0
- package/platforms/electrobun/remotes/surface/src/web/index.html +466 -0
- package/platforms/electrobun/remotes/surface/src/web/index.ts +5 -0
- package/platforms/electrobun/remotes/surface/src/web/render.ts +455 -0
- package/platforms/electrobun/remotes/surface/src/web/state.ts +427 -0
- package/platforms/electrobun/scripts/build-macos-effects.sh +4 -0
- package/platforms/electrobun/scripts/ensure-build-folder.ts +28 -0
- package/platforms/electrobun/scripts/ensure-whisper-gguf.sh +55 -0
- package/platforms/electrobun/scripts/ensure-whisper-model.sh +22 -80
- package/platforms/electrobun/scripts/generate-convergence-audit.ts +1203 -0
- package/platforms/electrobun/scripts/local-adhoc-sign-macos.ts +159 -159
- package/platforms/electrobun/scripts/postwrap-diagnostics.ts +424 -339
- package/platforms/electrobun/scripts/postwrap-sign-runtime-macos.ts +302 -271
- package/platforms/electrobun/scripts/smoke-test-windows.ps1 +17 -16
- package/platforms/electrobun/scripts/smoke-test.sh +5 -7
- package/platforms/electrobun/scripts/sync-web-assets.mjs +13 -13
- package/platforms/electrobun/scripts/verify-rpc-handlers.ts +109 -110
- package/platforms/electrobun/scripts/verify-windows-installer-proof.ps1 +3 -8
- package/platforms/electrobun/src/__stubs__/bun-ffi.ts +31 -31
- package/platforms/electrobun/src/__stubs__/electrobun-bun.ts +1 -1
- package/platforms/electrobun/src/agent-ready-state.ts +8 -8
- package/platforms/electrobun/src/agent-reset-from-main.test.ts +162 -0
- package/platforms/electrobun/src/agent-reset-from-main.ts +62 -62
- package/platforms/electrobun/src/agent-status-rpc.test.ts +95 -0
- package/platforms/electrobun/src/agent-status-rpc.ts +156 -0
- package/platforms/electrobun/src/api-base.test.ts +247 -0
- package/platforms/electrobun/src/api-base.ts +202 -93
- package/platforms/electrobun/src/application-menu-action-registry.ts +9 -9
- package/platforms/electrobun/src/application-menu.ts +348 -348
- package/platforms/electrobun/src/background-notice.ts +36 -36
- package/platforms/electrobun/src/boot-progress.test.ts +188 -0
- package/platforms/electrobun/src/boot-progress.ts +111 -0
- package/platforms/electrobun/src/brand-config.test.ts +39 -0
- package/platforms/electrobun/src/brand-config.ts +141 -129
- package/platforms/electrobun/src/bridge/browser-tabs-renderer-registry.ts +28 -28
- package/platforms/electrobun/src/bridge/electrobun-boot-config.ts +42 -0
- package/platforms/electrobun/src/bridge/electrobun-crypto-ready.ts +120 -0
- package/platforms/electrobun/src/bridge/electrobun-direct-rpc.ts +342 -357
- package/platforms/electrobun/src/bridge/electrobun-stub.ts +13 -13
- package/platforms/electrobun/src/browser-workspace-bridge-server.ts +285 -243
- package/platforms/electrobun/src/cloud-auth-window.ts +136 -136
- package/platforms/electrobun/src/cloud-disconnect-from-main.ts +90 -90
- package/platforms/electrobun/src/config-and-auth-rpc.test.ts +256 -0
- package/platforms/electrobun/src/config-and-auth-rpc.ts +302 -0
- package/platforms/electrobun/src/conversations-and-character-rpc.test.ts +185 -0
- package/platforms/electrobun/src/conversations-and-character-rpc.ts +131 -0
- package/platforms/electrobun/src/dashboard-rpc.test.ts +200 -0
- package/platforms/electrobun/src/dashboard-rpc.ts +344 -0
- package/platforms/electrobun/src/database/database-lock.ts +141 -0
- package/platforms/electrobun/src/database/database-mode.ts +149 -0
- package/platforms/electrobun/src/database/database-recovery.ts +72 -0
- package/platforms/electrobun/src/database/database-snapshot.ts +190 -0
- package/platforms/electrobun/src/database/database.test.ts +196 -0
- package/platforms/electrobun/src/database/index.ts +5 -0
- package/platforms/electrobun/src/database/pglite-paths.ts +100 -0
- package/platforms/electrobun/src/desktop-deep-link-events.test.ts +30 -0
- package/platforms/electrobun/src/desktop-deep-link-events.ts +17 -0
- package/platforms/electrobun/src/desktop-http-request.test.ts +73 -73
- package/platforms/electrobun/src/desktop-http-request.ts +85 -85
- package/platforms/electrobun/src/desktop-pill-config.test.ts +27 -0
- package/platforms/electrobun/src/desktop-pill-config.ts +40 -0
- package/platforms/electrobun/src/desktop-test-bridge-server.ts +204 -204
- package/platforms/electrobun/src/desktop-tray-config.test.ts +87 -0
- package/platforms/electrobun/src/desktop-tray-config.ts +84 -0
- package/platforms/electrobun/src/devtools-layout.ts +41 -41
- package/platforms/electrobun/src/diagnostic-format.test.ts +71 -0
- package/platforms/electrobun/src/diagnostic-format.ts +75 -36
- package/platforms/electrobun/src/dynamic-view-rpc-schema.test.ts +37 -0
- package/platforms/electrobun/src/dynamic-views/README.md +44 -0
- package/platforms/electrobun/src/dynamic-views/demo/agent-run-trace.html +135 -0
- package/platforms/electrobun/src/dynamic-views/errors.ts +29 -0
- package/platforms/electrobun/src/dynamic-views/host.test.ts +353 -0
- package/platforms/electrobun/src/dynamic-views/host.ts +332 -0
- package/platforms/electrobun/src/dynamic-views/index.ts +57 -0
- package/platforms/electrobun/src/dynamic-views/kiosk-canvas.ts +89 -0
- package/platforms/electrobun/src/dynamic-views/registry.test.ts +139 -0
- package/platforms/electrobun/src/dynamic-views/registry.ts +196 -0
- package/platforms/electrobun/src/dynamic-views/session-manager.test.ts +355 -0
- package/platforms/electrobun/src/dynamic-views/session-manager.ts +348 -0
- package/platforms/electrobun/src/dynamic-views/types.ts +105 -0
- package/platforms/electrobun/src/electrobun-boot-config.test.ts +50 -0
- package/platforms/electrobun/src/electrobun-config.test.ts +62 -0
- package/platforms/electrobun/src/electrobun-crypto-ready.test.ts +65 -0
- package/platforms/electrobun/src/electrobun-window-options.ts +25 -0
- package/platforms/electrobun/src/extension-rpc.test.ts +88 -0
- package/platforms/electrobun/src/extension-rpc.ts +102 -0
- package/platforms/electrobun/src/fatal-shutdown.test.ts +10 -10
- package/platforms/electrobun/src/fatal-shutdown.ts +1 -1
- package/platforms/electrobun/src/first-party-remotes.test.ts +169 -0
- package/platforms/electrobun/src/first-party-remotes.ts +297 -0
- package/platforms/electrobun/src/first-run-rpc.test.ts +192 -0
- package/platforms/electrobun/src/first-run-rpc.ts +146 -0
- package/platforms/electrobun/src/floating-chat-window.ts +181 -181
- package/platforms/electrobun/src/inbox-rpc.test.ts +123 -0
- package/platforms/electrobun/src/inbox-rpc.ts +158 -0
- package/platforms/electrobun/src/index.ts +2555 -2096
- package/platforms/electrobun/src/kiosk-mode.ts +50 -0
- package/platforms/electrobun/src/launch/index.ts +4 -0
- package/platforms/electrobun/src/launch/launch-dynamic-view.ts +37 -0
- package/platforms/electrobun/src/launch/launch-orchestrator.test.ts +224 -0
- package/platforms/electrobun/src/launch/launch-orchestrator.ts +456 -0
- package/platforms/electrobun/src/launch/launch-store.test.ts +97 -0
- package/platforms/electrobun/src/launch/launch-store.ts +134 -0
- package/platforms/electrobun/src/launch/types.ts +103 -0
- package/platforms/electrobun/src/launch/views/launch-diagnostics.html +205 -0
- package/platforms/electrobun/src/lifecycle/agent-ready-publish.test.ts +50 -0
- package/platforms/electrobun/src/lifecycle/agent-ready-publish.ts +27 -0
- package/platforms/electrobun/src/lifecycle/api-base-owner.ts +42 -31
- package/platforms/electrobun/src/lifecycle/desktop-session-prime.ts +44 -44
- package/platforms/electrobun/src/logger.ts +14 -14
- package/platforms/electrobun/src/main-window-runtime.ts +83 -83
- package/platforms/electrobun/src/main-window-session.test.ts +109 -0
- package/platforms/electrobun/src/main-window-session.ts +87 -51
- package/platforms/electrobun/src/menu-reset-from-main.ts +158 -158
- package/platforms/electrobun/src/native/agent-env.test.ts +52 -0
- package/platforms/electrobun/src/native/agent-runtime-layout.test.ts +42 -0
- package/platforms/electrobun/src/native/agent-state-dir.test.ts +91 -0
- package/platforms/electrobun/src/native/agent.ts +2122 -1682
- package/platforms/electrobun/src/native/auth-bridge.test.ts +67 -0
- package/platforms/electrobun/src/native/auth-bridge.ts +464 -360
- package/platforms/electrobun/src/native/browser-workspace.ts +723 -471
- package/platforms/electrobun/src/native/camera.ts +50 -50
- package/platforms/electrobun/src/native/canvas.ts +444 -445
- package/platforms/electrobun/src/native/credentials.ts +673 -616
- package/platforms/electrobun/src/native/desktop-window.test.ts +300 -0
- package/platforms/electrobun/src/native/desktop.ts +2196 -2156
- package/platforms/electrobun/src/native/editor-bridge.ts +201 -201
- package/platforms/electrobun/src/native/file-watcher.ts +154 -154
- package/platforms/electrobun/src/native/gateway.ts +179 -180
- package/platforms/electrobun/src/native/gpu-window.ts +256 -256
- package/platforms/electrobun/src/native/index.ts +76 -74
- package/platforms/electrobun/src/native/location.test.ts +44 -0
- package/platforms/electrobun/src/native/location.ts +90 -80
- package/platforms/electrobun/src/native/loopback-port.ts +60 -60
- package/platforms/electrobun/src/native/mac-window-effects.ts +166 -104
- package/platforms/electrobun/src/native/music-player.ts +38 -38
- package/platforms/electrobun/src/native/permissions-shared.ts +249 -150
- package/platforms/electrobun/src/native/permissions.ts +301 -208
- package/platforms/electrobun/src/native/power-state.ts +129 -129
- package/platforms/electrobun/src/native/remote-plugin-host.test.ts +1394 -0
- package/platforms/electrobun/src/native/remote-plugin-host.ts +1531 -0
- package/platforms/electrobun/src/native/screencapture.ts +667 -573
- package/platforms/electrobun/src/native/steward.ts +207 -204
- package/platforms/electrobun/src/native/swabble.ts +68 -324
- package/platforms/electrobun/src/native/talkmode.ts +253 -422
- package/platforms/electrobun/src/native/webgpu-browser-support.test.ts +18 -0
- package/platforms/electrobun/src/native/webgpu-browser-support.ts +165 -147
- package/platforms/electrobun/src/native/whisper-env.test.ts +71 -0
- package/platforms/electrobun/src/native/whisper-env.ts +68 -0
- package/platforms/electrobun/src/native-onboarding.ts +270 -0
- package/platforms/electrobun/src/onboarding-overlay-window.ts +141 -0
- package/platforms/electrobun/src/persisted-deployment.ts +91 -0
- package/platforms/electrobun/src/pill-window.test.ts +91 -0
- package/platforms/electrobun/src/pill-window.ts +99 -0
- package/platforms/electrobun/src/preload-validation.ts +44 -44
- package/platforms/electrobun/src/preload.js +1 -1
- package/platforms/electrobun/src/print-electrobun-dev-settings-banner.ts +120 -120
- package/platforms/electrobun/src/renderer-api-proxy.test.ts +73 -0
- package/platforms/electrobun/src/renderer-api-proxy.ts +86 -0
- package/platforms/electrobun/src/renderer-static.test.ts +53 -0
- package/platforms/electrobun/src/renderer-static.ts +144 -57
- package/platforms/electrobun/src/rpc-handler-slices.ts +121 -0
- package/platforms/electrobun/src/rpc-handlers.test.ts +267 -0
- package/platforms/electrobun/src/rpc-handlers.ts +1306 -913
- package/platforms/electrobun/src/rpc-parse-utils.ts +57 -0
- package/platforms/electrobun/src/rpc-port-resolver.test.ts +45 -0
- package/platforms/electrobun/src/rpc-port-resolver.ts +31 -0
- package/platforms/electrobun/src/rpc-schema.ts +2556 -1619
- package/platforms/electrobun/src/runtime-layout.ts +105 -105
- package/platforms/electrobun/src/runtime-permissions.ts +95 -95
- package/platforms/electrobun/src/runtime-rpc.test.ts +126 -0
- package/platforms/electrobun/src/runtime-rpc.ts +237 -0
- package/platforms/electrobun/src/screenshot-dev-server.ts +87 -87
- package/platforms/electrobun/src/settings-mutations-rpc.test.ts +193 -0
- package/platforms/electrobun/src/settings-mutations-rpc.ts +220 -0
- package/platforms/electrobun/src/startup-trace.ts +274 -270
- package/platforms/electrobun/src/subscription-rpc.test.ts +89 -0
- package/platforms/electrobun/src/subscription-rpc.ts +192 -0
- package/platforms/electrobun/src/surface-windows.test.ts +355 -0
- package/platforms/electrobun/src/surface-windows.ts +410 -410
- package/platforms/electrobun/src/trace/README.md +73 -0
- package/platforms/electrobun/src/trace/errors.ts +21 -0
- package/platforms/electrobun/src/trace/index.ts +40 -0
- package/platforms/electrobun/src/trace/trace-dynamic-view.ts +40 -0
- package/platforms/electrobun/src/trace/trace-host-requests.ts +473 -0
- package/platforms/electrobun/src/trace/trace-service.test.ts +186 -0
- package/platforms/electrobun/src/trace/trace-service.ts +324 -0
- package/platforms/electrobun/src/trace/trace-store.test.ts +141 -0
- package/platforms/electrobun/src/trace/trace-store.ts +551 -0
- package/platforms/electrobun/src/trace/types.ts +250 -0
- package/platforms/electrobun/src/trace/views/agent-run-trace.html +311 -0
- package/platforms/electrobun/src/types/web-speech.d.ts +28 -28
- package/platforms/electrobun/src/types.ts +5 -5
- package/platforms/electrobun/src/update-availability.test.ts +72 -0
- package/platforms/electrobun/src/update-availability.ts +90 -0
- package/platforms/electrobun/src/update-rpc.test.ts +83 -0
- package/platforms/electrobun/src/update-rpc.ts +123 -0
- package/platforms/electrobun/src/voice/README.md +184 -0
- package/platforms/electrobun/src/voice/errors.ts +42 -0
- package/platforms/electrobun/src/voice/index.ts +78 -0
- package/platforms/electrobun/src/voice/types.ts +316 -0
- package/platforms/electrobun/src/voice/voice-host-requests.ts +259 -0
- package/platforms/electrobun/src/voice/voice-latency-budget.test.ts +66 -0
- package/platforms/electrobun/src/voice/voice-latency-budget.ts +243 -0
- package/platforms/electrobun/src/voice/voice-live-validation.test.ts +352 -0
- package/platforms/electrobun/src/voice/voice-live-validation.ts +838 -0
- package/platforms/electrobun/src/voice/voice-pipeline.ts +250 -0
- package/platforms/electrobun/src/voice/voice-playback-adapter.ts +31 -0
- package/platforms/electrobun/src/voice/voice-runtime-adapter.test.ts +213 -0
- package/platforms/electrobun/src/voice/voice-runtime-adapter.ts +686 -0
- package/platforms/electrobun/src/voice/voice-service.test.ts +561 -0
- package/platforms/electrobun/src/voice/voice-service.ts +1027 -0
- package/platforms/electrobun/src/voice/voice-stream-coordinator.test.ts +115 -0
- package/platforms/electrobun/src/voice/voice-stream-coordinator.ts +270 -0
- package/platforms/electrobun/src/voice/voice-trace.ts +97 -0
- package/platforms/electrobun/src/voice/voice-tts-chunker.test.ts +91 -0
- package/platforms/electrobun/src/voice/voice-tts-chunker.ts +194 -0
- package/platforms/electrobun/src/windows-cef-profile.ts +88 -88
- package/platforms/electrobun/tsconfig.json +73 -13
- package/platforms/electrobun/update-channels.json +22 -0
- package/platforms/electrobun/vitest.electrobun.config.ts +72 -42
- package/platforms/ios/App/App/App.entitlements +4 -0
- package/platforms/ios/App/App/AppDelegate.swift +80 -18
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ios-marketing-1024.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-20x20@1x.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-20x20@2x.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-29x29@1x.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-29x29@2x.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-40x40@1x.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-40x40@2x.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-76x76@1x.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-76x76@2x.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-ipad-83_5x83_5@2x.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-iphone-20x20@2x.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-iphone-20x20@3x.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-iphone-29x29@2x.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-iphone-29x29@3x.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-iphone-40x40@2x.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-iphone-40x40@3x.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-iphone-60x60@2x.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/AppIcon.appiconset/AppIcon-iphone-60x60@3x.png +0 -0
- package/platforms/ios/App/App/Base.lproj/LaunchScreen.storyboard +1 -4
- package/platforms/ios/App/App/ComputerUseBridge.swift +589 -0
- package/platforms/ios/App/App/DeviceActivityMonitorExtension/DeviceActivityMonitorExtension.entitlements +12 -0
- package/platforms/ios/App/App/DeviceActivityMonitorExtension/DeviceActivityMonitorExtension.swift +34 -0
- package/platforms/ios/App/App/DeviceActivityMonitorExtension/Info.plist +29 -0
- package/platforms/ios/App/App/DeviceActivityReportExtension/DeviceActivityReportExtension.entitlements +12 -0
- package/platforms/ios/App/App/DeviceActivityReportExtension/DeviceActivityReportExtension.swift +53 -0
- package/platforms/ios/App/App/DeviceActivityReportExtension/Info.plist +27 -0
- package/platforms/ios/App/App/ElizaAppIntents.swift +183 -0
- package/platforms/ios/App/App/ElizaIntentPlugin.swift +342 -5
- package/platforms/ios/App/App/Info.plist +17 -1
- package/platforms/ios/App/App/runners/eliza-tasks.js +177 -0
- package/platforms/ios/App/App.xcodeproj/project.pbxproj +262 -6
- package/platforms/ios/App/BroadcastExtension/SampleHandler.swift +100 -0
- package/platforms/ios/App/Podfile +5 -0
- package/platforms/ios/App/Podfile.lock +83 -59
- package/register-runtime-hooks.js +11 -5
- package/registry/app-registry.d.ts +14 -0
- package/registry/app-registry.d.ts.map +1 -0
- package/registry/app-registry.js +29 -0
- package/registry/entries/apps/app-polymarket.json +31 -0
- package/registry/entries/apps/clawville.json +27 -0
- package/registry/entries/apps/companion.json +28 -0
- package/registry/entries/apps/database-viewer.json +27 -0
- package/registry/entries/apps/defense-of-the-agents.json +27 -0
- package/registry/entries/apps/documents.json +30 -0
- package/registry/entries/apps/feed.json +27 -0
- package/registry/entries/apps/hyperliquid.json +31 -0
- package/registry/entries/apps/log-viewer.json +27 -0
- package/registry/entries/apps/memory-viewer.json +27 -0
- package/registry/entries/apps/model-tester.json +31 -0
- package/registry/entries/apps/plugin-viewer.json +27 -0
- package/registry/entries/apps/relationship-viewer.json +27 -0
- package/registry/entries/apps/runtime-debugger.json +27 -0
- package/registry/entries/apps/shopify.json +31 -0
- package/registry/entries/apps/skills-viewer.json +27 -0
- package/registry/entries/apps/steward.json +31 -0
- package/registry/entries/apps/training.json +54 -0
- package/registry/entries/apps/trajectory-viewer.json +27 -0
- package/registry/entries/apps/vincent.json +31 -0
- package/registry/entries/connectors/bluebubbles.json +99 -0
- package/registry/entries/connectors/bluesky.json +173 -0
- package/registry/entries/connectors/discord.json +119 -0
- package/registry/entries/connectors/farcaster.json +174 -0
- package/registry/entries/connectors/feishu.json +79 -0
- package/registry/entries/connectors/google-chat.json +120 -0
- package/registry/entries/connectors/google.json +82 -0
- package/registry/entries/connectors/imessage.json +96 -0
- package/registry/entries/connectors/instagram.json +64 -0
- package/registry/entries/connectors/line.json +86 -0
- package/registry/entries/connectors/matrix.json +94 -0
- package/registry/entries/connectors/mattermost.json +110 -0
- package/registry/entries/connectors/msteams.json +104 -0
- package/registry/entries/connectors/nextcloud-talk.json +104 -0
- package/registry/entries/connectors/nostr.json +70 -0
- package/registry/entries/connectors/signal.json +81 -0
- package/registry/entries/connectors/slack.json +102 -0
- package/registry/entries/connectors/telegram.json +71 -0
- package/registry/entries/connectors/tlon.json +94 -0
- package/registry/entries/connectors/twitch.json +110 -0
- package/registry/entries/connectors/whatsapp.json +113 -0
- package/registry/entries/connectors/x.json +231 -0
- package/registry/entries/connectors/zalo.json +112 -0
- package/registry/entries/connectors/zalouser.json +122 -0
- package/registry/entries/plugins/agent-orchestrator.json +33 -0
- package/registry/entries/plugins/agent-skills.json +72 -0
- package/registry/entries/plugins/anthropic.json +73 -0
- package/registry/entries/plugins/app-control.json +23 -0
- package/registry/entries/plugins/auto-trader.json +203 -0
- package/registry/entries/plugins/background-runner.json +26 -0
- package/registry/entries/plugins/blooio.json +102 -0
- package/registry/entries/plugins/browser.json +75 -0
- package/registry/entries/plugins/cli.json +40 -0
- package/registry/entries/plugins/clipboard.json +44 -0
- package/registry/entries/plugins/coding-tools.json +71 -0
- package/registry/entries/plugins/commands.json +63 -0
- package/registry/entries/plugins/computeruse.json +74 -0
- package/registry/entries/plugins/copilot-proxy.json +93 -0
- package/registry/entries/plugins/directives.json +63 -0
- package/registry/entries/plugins/edge-tts.json +97 -0
- package/registry/entries/plugins/elevenlabs.json +169 -0
- package/registry/entries/plugins/elizacloud.json +208 -0
- package/registry/entries/plugins/evm.json +134 -0
- package/registry/entries/plugins/experience.json +34 -0
- package/registry/entries/plugins/facewear.json +131 -0
- package/registry/entries/plugins/form.json +26 -0
- package/registry/entries/plugins/github.json +93 -0
- package/registry/entries/plugins/gmail-watch.json +25 -0
- package/registry/entries/plugins/goals.json +77 -0
- package/registry/entries/plugins/google-genai.json +106 -0
- package/registry/entries/plugins/groq.json +93 -0
- package/registry/entries/plugins/hedera.json +48 -0
- package/registry/entries/plugins/inmemorydb.json +25 -0
- package/registry/entries/plugins/linear.json +51 -0
- package/registry/entries/plugins/local-inference.json +142 -0
- package/registry/entries/plugins/local-storage.json +36 -0
- package/registry/entries/plugins/localdb.json +25 -0
- package/registry/entries/plugins/mcp.json +44 -0
- package/registry/entries/plugins/memory.json +124 -0
- package/registry/entries/plugins/minecraft.json +79 -0
- package/registry/entries/plugins/moltbook.json +83 -0
- package/registry/entries/plugins/music.json +155 -0
- package/registry/entries/plugins/mysticism.json +48 -0
- package/registry/entries/plugins/nearai.json +82 -0
- package/registry/entries/plugins/ngrok.json +69 -0
- package/registry/entries/plugins/ollama.json +96 -0
- package/registry/entries/plugins/openai.json +189 -0
- package/registry/entries/plugins/openrouter.json +188 -0
- package/registry/entries/plugins/pdf.json +26 -0
- package/registry/entries/plugins/plugin-manager.json +23 -0
- package/registry/entries/plugins/prose.json +48 -0
- package/registry/entries/plugins/rlm.json +26 -0
- package/registry/entries/plugins/roblox.json +88 -0
- package/registry/entries/plugins/rss.json +64 -0
- package/registry/entries/plugins/s3-storage.json +91 -0
- package/registry/entries/plugins/scheduling.json +35 -0
- package/registry/entries/plugins/shell.json +94 -0
- package/registry/entries/plugins/social-alpha.json +72 -0
- package/registry/entries/plugins/tailscale.json +81 -0
- package/registry/entries/plugins/tee.json +53 -0
- package/registry/entries/plugins/todos.json +26 -0
- package/registry/entries/plugins/trajectory-logger.json +33 -0
- package/registry/entries/plugins/trust.json +39 -0
- package/registry/entries/plugins/tts.json +71 -0
- package/registry/entries/plugins/tunnel.json +45 -0
- package/registry/entries/plugins/twilio.json +168 -0
- package/registry/entries/plugins/vercel-ai-gateway.json +128 -0
- package/registry/entries/plugins/video.json +23 -0
- package/registry/entries/plugins/vision.json +43 -0
- package/registry/entries/plugins/webhooks.json +23 -0
- package/registry/entries/plugins/workflow.json +25 -0
- package/registry/entries/plugins/xai.json +75 -0
- package/registry/index.d.ts +2 -1
- package/registry/index.d.ts.map +1 -1
- package/registry/index.js +46 -12
- package/registry/loader.d.ts +2 -1
- package/registry/loader.d.ts.map +1 -1
- package/registry/loader.js +49 -2
- package/registry/schema.d.ts +244 -34
- package/registry/schema.d.ts.map +1 -1
- package/registry/schema.js +36 -0
- package/runtime/android-avf-microdroid-bridge.d.ts +29 -0
- package/runtime/android-avf-microdroid-bridge.d.ts.map +1 -0
- package/runtime/android-avf-microdroid-bridge.js +149 -0
- package/runtime/api-dev-settings-banner.d.ts.map +1 -1
- package/runtime/api-dev-settings-banner.js +5 -13
- package/runtime/app-core-runtime-hooks.d.ts +21 -0
- package/runtime/app-core-runtime-hooks.d.ts.map +1 -0
- package/runtime/app-core-runtime-hooks.js +10 -0
- package/runtime/autonomy-policy.d.ts +2 -0
- package/runtime/autonomy-policy.d.ts.map +1 -0
- package/runtime/autonomy-policy.js +4 -0
- package/runtime/desktop/AppWindowRenderer.d.ts +17 -0
- package/runtime/desktop/AppWindowRenderer.d.ts.map +1 -0
- package/runtime/desktop/AppWindowRenderer.js +360 -0
- package/runtime/desktop/DesktopSurfaceNavigationRuntime.d.ts +2 -0
- package/runtime/desktop/DesktopSurfaceNavigationRuntime.d.ts.map +1 -0
- package/runtime/desktop/DesktopSurfaceNavigationRuntime.js +41 -0
- package/runtime/desktop/DesktopTrayRuntime.d.ts +2 -0
- package/runtime/desktop/DesktopTrayRuntime.d.ts.map +1 -0
- package/runtime/desktop/DesktopTrayRuntime.js +174 -0
- package/runtime/desktop/DetachedShellRoot.d.ts +10 -0
- package/runtime/desktop/DetachedShellRoot.d.ts.map +1 -0
- package/runtime/desktop/DetachedShellRoot.js +111 -0
- package/runtime/desktop/index.d.ts +6 -0
- package/runtime/desktop/index.d.ts.map +1 -0
- package/runtime/desktop/index.js +5 -0
- package/runtime/desktop/tray-menu.d.ts +20 -0
- package/runtime/desktop/tray-menu.d.ts.map +1 -0
- package/runtime/desktop/tray-menu.js +143 -0
- package/runtime/dev-server.d.ts +1 -1
- package/runtime/dev-server.d.ts.map +1 -1
- package/runtime/dev-server.js +93 -17
- package/runtime/eliza.d.ts +75 -1
- package/runtime/eliza.d.ts.map +1 -1
- package/runtime/eliza.js +596 -122
- package/runtime/ensure-text-to-speech-handler.d.ts.map +1 -1
- package/runtime/ensure-text-to-speech-handler.js +10 -3
- package/runtime/mobile-safe-runtime.d.ts +181 -2
- package/runtime/mobile-safe-runtime.d.ts.map +1 -1
- package/runtime/mobile-safe-runtime.js +1019 -12
- package/runtime/mode/remote-forwarder.d.ts.map +1 -1
- package/runtime/mode/remote-forwarder.js +2 -2
- package/runtime/mode/route-mode-guard.d.ts +1 -2
- package/runtime/mode/route-mode-guard.d.ts.map +1 -1
- package/runtime/mode/route-mode-guard.js +4 -5
- package/runtime/mode/route-mode-matrix.d.ts.map +1 -1
- package/runtime/mode/route-mode-matrix.js +14 -1
- package/runtime/mode/runtime-mode.d.ts +1 -1
- package/runtime/mode/runtime-mode.d.ts.map +1 -1
- package/runtime/mode/runtime-mode.js +15 -4
- package/runtime/runtime-bootstrap-policy.d.ts.map +1 -1
- package/runtime/runtime-bootstrap-policy.js +14 -2
- package/runtime/telegram-standalone-handler.d.ts.map +1 -1
- package/runtime/telegram-standalone-handler.js +10 -9
- package/runtime/tts-cache-wiring.d.ts +29 -0
- package/runtime/tts-cache-wiring.d.ts.map +1 -0
- package/runtime/tts-cache-wiring.js +114 -0
- package/runtime/voice-warmup.d.ts +81 -0
- package/runtime/voice-warmup.d.ts.map +1 -0
- package/runtime/voice-warmup.js +111 -0
- package/scripts/android-sms-gateway-template.test.mjs +1014 -0
- package/scripts/aosp/README.md +19 -15
- package/scripts/aosp/compile-libllama.mjs +1344 -248
- package/scripts/aosp/compile-shim.mjs +47 -18
- package/scripts/aosp/deploy-pixel.mjs +405 -0
- package/scripts/aosp/lib/load-variant-config.mjs +3 -3
- package/scripts/aosp/llama-cpp-patches/README.md +8 -8
- package/scripts/aosp/llama-cpp-patches/apply-patches.mjs +23 -6
- package/scripts/aosp/llama-cpp-patches/polarquant/README.md +37 -0
- package/scripts/aosp/llama-cpp-patches/qjl/README.md +37 -0
- package/scripts/aosp/seccomp-shim/sigsys-handler-arm64.c +169 -0
- package/scripts/aosp/seccomp-shim/sigsys-handler-riscv64.c +217 -0
- package/scripts/aosp/smoke-cuttlefish.mjs +34 -4
- package/scripts/aosp/stage-default-models.mjs +18 -18
- package/scripts/aosp/variant-config-schema.ts +2 -2
- package/scripts/assert-required-bundled-packages.test.ts +534 -0
- package/scripts/audit-apple-store-sandbox.mjs +146 -0
- package/scripts/audit-live-test-surface.mjs +5 -2
- package/scripts/build-capacitor-app.mjs +21 -0
- package/scripts/build-flatpak.mjs +5 -5
- package/scripts/build-helpers/arm64-simd.mjs +72 -0
- package/scripts/build-helpers/omnivoice-merged.mjs +87 -0
- package/scripts/build-helpers/verify-fused-symbols.mjs +567 -0
- package/scripts/build-image.sh +1 -1
- package/scripts/build-llama-cpp-mtp.mjs +487 -0
- package/scripts/build-native-plugins.mjs +230 -18
- package/scripts/build-patched-electrobun-cli.mjs +68 -10
- package/scripts/build-win.mjs +1 -1
- package/scripts/bun-riscv64/Dockerfile +418 -0
- package/scripts/bun-riscv64/README.md +316 -0
- package/scripts/bun-riscv64/build.sh +469 -0
- package/scripts/bun-riscv64/bun-patches/0001-config-add-riscv64-arch.patch +74 -0
- package/scripts/bun-riscv64/bun-patches/0002-flags-add-riscv64-march-mabi.patch +16 -0
- package/scripts/bun-riscv64/bun-patches/0003-zig-add-riscv64-target-triple-and-cpu.patch +26 -0
- package/scripts/bun-riscv64/bun-patches/0004-webkit-force-local-mode-on-riscv64.patch +33 -0
- package/scripts/bun-riscv64/bun-patches/0005-tinycc-disable-on-riscv64.patch +16 -0
- package/scripts/bun-riscv64/bun-patches/0006-build-add-riscv64-cli-validation.patch +15 -0
- package/scripts/bun-riscv64/bun-patches/0007-deps-per-dep-riscv64-checks.patch +24 -0
- package/scripts/bun-riscv64/bun-patches/0008-source-stabilize-riscv64-musl-build.patch +226 -0
- package/scripts/bun-riscv64/bun-patches/0009-disable-wasm-streaming-hooks-for-c-loop.patch +162 -0
- package/scripts/bun-riscv64/bun-patches/0010-disable-inspector-profiler-for-riscv64-c-loop.patch +80 -0
- package/scripts/bun-riscv64/bun-patches/0011-process-arch-add-riscv64.patch +23 -0
- package/scripts/bun-riscv64/bun-patches/0012-cpu-features-add-riscv64-fallback.patch +13 -0
- package/scripts/bun-riscv64/bun-patches/0013-disable-console-inspector-hooks-for-riscv64-c-loop.patch +43 -0
- package/scripts/bun-riscv64/bun-patches/0014-disable-custom-inspector-dispatchers-on-riscv64.patch +127 -0
- package/scripts/bun-riscv64/bun-patches/0015-disable-jsc-profiler-builtins-on-riscv64.patch +75 -0
- package/scripts/bun-riscv64/bun-patches/0016-node-vm-disable-jit-cached-data-on-riscv64-c-loop.patch +96 -0
- package/scripts/bun-riscv64/bun-patches/0017-disable-performance-domjit-signature-on-riscv64-c-loop.patch +34 -0
- package/scripts/bun-riscv64/bun-patches/0018-fix-serialized-script-identifier-big-endian-path.patch +19 -0
- package/scripts/bun-riscv64/bun-patches/0019-add-wtf-timer-fire-bridge-for-c-loop.patch +24 -0
- package/scripts/bun-riscv64/bun-patches/0020-run-riscv64-smoke-test-under-qemu.patch +13 -0
- package/scripts/bun-riscv64/bun-patches/0021-fix-riscv64-linux-open-flags.patch +25 -0
- package/scripts/bun-riscv64/bun-patches/0022-zlib-riscv64-generic-kernels.patch +25 -0
- package/scripts/bun-riscv64/bun-patches/README.md +127 -0
- package/scripts/bun-riscv64/bun-version.json +202 -0
- package/scripts/bun-riscv64/run-build.sh +162 -0
- package/scripts/bun-riscv64/rust-core/0001-riscv64-rust-core-port.patch +868 -0
- package/scripts/bun-riscv64/rust-core/0002-second-wave-riscv64-source-gaps.patch +130 -0
- package/scripts/bun-riscv64/rust-core/0003-third-wave-riscv64-crash-handler-gaps.patch +78 -0
- package/scripts/bun-riscv64/rust-core/0004-rust-target-cpu-riscv64.patch +39 -0
- package/scripts/bun-riscv64/rust-core/0005-fifth-wave-riscv64-source-gaps.patch +96 -0
- package/scripts/bun-riscv64/rust-core/0006-cpp-wasm-and-inspector-guards-riscv64.patch +91 -0
- package/scripts/bun-riscv64/rust-core/0007-bun-alloc-max-align-t-riscv64.patch +36 -0
- package/scripts/bun-riscv64/rust-core/0008-workspace-lints-warn-not-deny-riscv64.patch +75 -0
- package/scripts/bun-riscv64/rust-core/0009-zigglobalobject-wasm-streaming-guards-riscv64.patch +109 -0
- package/scripts/bun-riscv64/rust-core/0010-tcc-externs-stub-on-riscv64.patch +62 -0
- package/scripts/bun-riscv64/rust-core/0011-clippy-ptr-cast-lints-warn-riscv64.patch +61 -0
- package/scripts/bun-riscv64/rust-core/README.md +80 -0
- package/scripts/bun-riscv64/rust-core/webkit-patches/0003-disable-dfg-ftl-on-riscv64.patch +60 -0
- package/scripts/bun-riscv64/rust-core/webkit-patches/0004-riscv64-do-not-force-wasm-in-c-loop.patch +31 -0
- package/scripts/bun-riscv64/rust-core/webkit-patches/0005-domjit-effect-allow-no-dfg-c-loop.patch +40 -0
- package/scripts/bun-riscv64/rust-core/webkit-patches/0006-disable-usewasm-when-webassembly-compiled-out.patch +33 -0
- package/scripts/bun-riscv64/rust-core/webkit-patches/0007-restore-dropped-includes-and-llint-fwd-decl.patch +31 -0
- package/scripts/bun-riscv64/validate.sh +264 -0
- package/scripts/bun-riscv64/webkit-patches/0001-cherry-pick-llint-riscv64.recipe +155 -0
- package/scripts/bun-riscv64/webkit-patches/0002-cherry-pick-baseline-jit-riscv64.recipe +40 -0
- package/scripts/bun-riscv64/webkit-patches/0003-disable-dfg-ftl-on-riscv64.patch +60 -0
- package/scripts/bun-riscv64/webkit-patches/0004-riscv64-do-not-force-wasm-in-c-loop.patch +31 -0
- package/scripts/bun-riscv64/webkit-patches/0005-domjit-effect-allow-no-dfg-c-loop.patch +40 -0
- package/scripts/bun-riscv64/webkit-patches/0006-disable-usewasm-when-webassembly-compiled-out.patch +33 -0
- package/scripts/bun-riscv64/webkit-patches/0007-restore-dropped-includes-and-llint-fwd-decl.patch +72 -0
- package/scripts/bun-riscv64/webkit-patches/README.md +146 -0
- package/scripts/check-homepage-public-readiness.mjs +353 -0
- package/scripts/check-homepage-release-data.mjs +110 -0
- package/scripts/check-i18n.mjs +2 -1
- package/scripts/check-real-local-chat.ts +147 -0
- package/scripts/check-real-local-provisioning.ts +104 -0
- package/scripts/check-real-local-reset.ts +249 -0
- package/scripts/check-sms-gateway-completion-audit.mjs +428 -0
- package/scripts/check-sms-gateway-readiness.mjs +266 -0
- package/scripts/clean-repo.mjs +5 -5
- package/scripts/codesign-mas.mjs +222 -16
- package/scripts/collect-docker-runtime-deps.mjs +229 -0
- package/scripts/continue-sms-gateway-work.mjs +121 -0
- package/scripts/copy-runtime-node-modules.ts +903 -195
- package/scripts/deploy-cloud-api-production-gateway.mjs +52 -0
- package/scripts/desktop-build.mjs +655 -101
- package/scripts/dev-platform.mjs +346 -102
- package/scripts/dev-startup-smoke.mjs +248 -0
- package/scripts/dev-ui.mjs +418 -176
- package/scripts/disable-local-eliza-workspace.mjs +35 -0
- package/scripts/docker-ci-smoke.sh +298 -96
- package/scripts/docker-entrypoint.sh +62 -1
- package/scripts/docker-entrypoint.test.ts +283 -0
- package/scripts/ensure-avatars.mjs +2 -2
- package/scripts/ensure-electrobun-core.mjs +1 -1
- package/scripts/ensure-generated-core-proto-js.mjs +1 -1
- package/scripts/ensure-type-package-aliases.mjs +62 -5
- package/scripts/ensure-vision-deps.mjs +20 -1
- package/scripts/entry.ts +1 -1
- package/scripts/ffi-stub/Makefile +64 -0
- package/scripts/ffi-stub/README.md +391 -0
- package/scripts/ffi-stub/asr-ffi-smoke.ts +139 -0
- package/scripts/ffi-stub/ffi-stub.c +539 -0
- package/scripts/ffi-stub/ffi.h +538 -0
- package/scripts/ffi-stub/libelizainference_stub.so +0 -0
- package/scripts/ffi-stub/tts-stream-ffi-smoke.ts +349 -0
- package/scripts/generate-first-run-voicelines.mjs +194 -0
- package/scripts/generate-plugin-index.js +4 -3
- package/scripts/generate-static-asset-manifest.mjs +1 -1
- package/scripts/i18n-dynamic-keys.json +5 -5
- package/scripts/init-submodules.mjs +2 -2
- package/scripts/install-android-sms-gateway.md +177 -0
- package/scripts/install-android-sms-gateway.mjs +1088 -0
- package/scripts/ios-xcframework/README.md +74 -72
- package/scripts/ios-xcframework/build-xcframework.mjs +204 -43
- package/scripts/ios-xcframework/run-physical-device-smoke.mjs +1943 -0
- package/scripts/ios-xcframework/runtime-symbol-shim.c +450 -0
- package/scripts/kernel-patches/cpu-polar-kernels.mjs +441 -0
- package/scripts/kernel-patches/cpu-simd-kernels.mjs +253 -0
- package/scripts/kernel-patches/cpu-thread-parallelism.mjs +368 -0
- package/scripts/kernel-patches/cuda-kernels.mjs +117 -0
- package/scripts/kernel-patches/metal-kernels.mjs +1698 -109
- package/scripts/kernel-patches/server-omnivoice-route.mjs +718 -0
- package/scripts/kernel-patches/server-structured-output.mjs +279 -0
- package/scripts/kernel-patches/vulkan-dispatch-log.mjs +166 -0
- package/scripts/kernel-patches/vulkan-dispatch-log.test.mjs +50 -0
- package/scripts/kernel-patches/vulkan-dispatch-patches/01-vulkan-shaders-gen.patch +30 -16
- package/scripts/kernel-patches/vulkan-dispatch-patches/02-ggml-vulkan-pipelines.patch +75 -30
- package/scripts/kernel-patches/vulkan-kernels.mjs +800 -49
- package/scripts/lib/agent-source-watcher.mjs +174 -0
- package/scripts/lib/agent-source-watcher.test.mjs +184 -0
- package/scripts/lib/api-supervisor.mjs +78 -9
- package/scripts/lib/api-supervisor.test.mjs +121 -0
- package/scripts/lib/app-dir.mjs +2 -16
- package/scripts/lib/apple-entitlement-audit.mjs +655 -0
- package/scripts/lib/apple-entitlement-audit.test.mjs +144 -0
- package/scripts/lib/bun-version-guard.mjs +13 -13
- package/scripts/lib/capacitor-plugin-build-needed.mjs +4 -3
- package/scripts/lib/capacitor-plugin-names.mjs +30 -14
- package/scripts/lib/desktop-preflight.mjs +9 -5
- package/scripts/lib/desktop-startup-embedding-warmup-policy.mjs +51 -0
- package/scripts/lib/desktop-startup-embedding-warmup-policy.test.mjs +55 -0
- package/scripts/lib/duet-bridge.d.mts +63 -0
- package/scripts/lib/duet-bridge.mjs +193 -0
- package/scripts/lib/node-path-env.mjs +4 -2
- package/scripts/lib/orchestrator-desktop-dev-banner.mjs +12 -3
- package/scripts/lib/patch-bun-exports.mjs +90 -27
- package/scripts/lib/patch-bun-exports.test.mjs +79 -0
- package/scripts/lib/renderer-build-action.mjs +35 -0
- package/scripts/lib/renderer-build-action.test.mjs +70 -0
- package/scripts/lib/stage-android-agent.mjs +748 -99
- package/scripts/lib/sync-eliza-env-aliases.mjs +3 -25
- package/scripts/lib/ui-smoke-stub-decision.mjs +33 -0
- package/scripts/lib/ui-smoke-stub-decision.test.mjs +46 -0
- package/scripts/lib/vite-renderer-dist-stale.mjs +5 -0
- package/scripts/lib/voice-latency-report.mjs +154 -0
- package/scripts/lifeops-prompt-benchmark.ts +21 -12
- package/scripts/link-docker-local-app-packages.mjs +89 -36
- package/scripts/local-stt-bench.ts +192 -0
- package/scripts/maintain-cloud-api-production-gateway.mjs +54 -0
- package/scripts/mas-smoke.mjs +459 -0
- package/scripts/mas-smoke.test.mjs +220 -0
- package/scripts/mobile-auth-simulator-smoke.mjs +0 -1
- package/scripts/normalize-eliza-capture.ts +97 -0
- package/scripts/omnivoice-fuse/prepare.mjs +2543 -23
- package/scripts/pack-upstreams.mjs +65 -5
- package/scripts/package-electrobun-linux.mjs +303 -0
- package/scripts/patch-deps.mjs +5 -3
- package/scripts/patches/llama-mobile-kokoro-tts.patch +480 -0
- package/scripts/playwright-ui-live-stack.ts +194 -49
- package/scripts/playwright-ui-smoke-api-stub.mjs +3501 -109
- package/scripts/pre-review-local.mjs +2 -2
- package/scripts/prepare-ios-cocoapods.sh +41 -3
- package/scripts/release-check.ts +180 -84
- package/scripts/release-workflow-drift.test.ts +57 -0
- package/scripts/relink-workspace-packages-to-dist.mjs +21 -4
- package/scripts/rt.mjs +16 -1
- package/scripts/run-biome-check.mjs +1 -1
- package/scripts/run-coding-agent-e2e.mjs +3 -3
- package/scripts/run-eliza-app-core-script.mjs +34 -0
- package/scripts/run-local-plugin-live-smoke.mjs +71 -2
- package/scripts/run-mobile-build-android-app-actions.test.mjs +426 -0
- package/scripts/run-mobile-build.mjs +4757 -607
- package/scripts/run-node-runtime.mjs +184 -7
- package/scripts/run-node-runtime.test.mjs +167 -0
- package/scripts/run-node-tsx.mjs +80 -33
- package/scripts/run-node.mjs +41 -1
- package/scripts/run-production-build.mjs +34 -27
- package/scripts/run-release-check.mjs +19 -0
- package/scripts/run-release-contract-suite.mjs +107 -14
- package/scripts/run-ui-smoke-playwright-suite.mjs +0 -2
- package/scripts/runtime-package-manifest.ts +21 -3
- package/scripts/setup-upstreams.mjs +42 -1
- package/scripts/sms-gateway-status.mjs +194 -0
- package/scripts/stage-android-agent.test.mjs +97 -0
- package/scripts/stage-elizavoice-lib.mjs +203 -0
- package/scripts/startup-integration-script-drift.test.ts +82 -4
- package/scripts/streaming-pipeline-bench.ts +543 -0
- package/scripts/sync-homepage-porkbun-dns.mjs +262 -0
- package/scripts/test-sms-gateway-software.mjs +100 -0
- package/scripts/type-audit.mjs +1 -1
- package/scripts/validate-bluebubbles-outbound.mjs +293 -0
- package/scripts/validate-cdn-assets.mjs +15 -7
- package/scripts/validate-regression-matrix.mjs +109 -8
- package/scripts/verify-android-sms-gateway-e2e.mjs +362 -0
- package/scripts/verify-bluebubbles-gateway-e2e.mjs +191 -0
- package/scripts/verify-bluebubbles-inbound-readiness.mjs +88 -0
- package/scripts/verify-cloud-api-production-deploy.mjs +87 -0
- package/scripts/verify-cloud-sms-onboarding-flow.mjs +336 -0
- package/scripts/voice/freeze-voice.mjs +521 -0
- package/scripts/voice-attribution-smoke.ts +538 -0
- package/scripts/voice-create-profile.mjs +379 -0
- package/scripts/voice-duet.mjs +1355 -0
- package/scripts/voice-e2e-hardware.ts +871 -0
- package/scripts/voice-interactive.mjs +1750 -0
- package/scripts/voice-latency-report.mjs +96 -0
- package/scripts/voice-latency-report.test.ts +176 -0
- package/scripts/voice-preset/build-default-voice-preset.mjs +249 -0
- package/scripts/voice-preset/build-onboarding-voice.mjs +281 -0
- package/scripts/watch-sms-gateway-readiness.mjs +303 -0
- package/scripts/write-homepage-release-data.mjs +458 -26
- package/security/agent-vault-id.d.ts +1 -1
- package/security/agent-vault-id.js +1 -1
- package/security/hydrate-wallet-keys-from-platform-store.d.ts.map +1 -1
- package/security/hydrate-wallet-keys-from-platform-store.js +23 -14
- package/security/platform-secure-store-node.d.ts +2 -2
- package/security/platform-secure-store-node.js +3 -3
- package/security/wallet-os-store-actions.d.ts +0 -9
- package/security/wallet-os-store-actions.d.ts.map +1 -1
- package/security/wallet-os-store-actions.js +3 -10
- package/services/account-pool.d.ts +23 -14
- package/services/account-pool.d.ts.map +1 -1
- package/services/account-pool.js +86 -24
- package/services/account-usage.d.ts.map +1 -1
- package/services/account-usage.js +2 -5
- package/services/ambient-audio/consent.d.ts +9 -0
- package/services/ambient-audio/consent.d.ts.map +1 -0
- package/services/ambient-audio/consent.js +28 -0
- package/services/ambient-audio/index.d.ts +7 -0
- package/services/ambient-audio/index.d.ts.map +1 -0
- package/services/ambient-audio/index.js +4 -0
- package/services/ambient-audio/replay-buffer.d.ts +14 -0
- package/services/ambient-audio/replay-buffer.d.ts.map +1 -0
- package/services/ambient-audio/replay-buffer.js +66 -0
- package/services/ambient-audio/response-gate.d.ts +3 -0
- package/services/ambient-audio/response-gate.d.ts.map +1 -0
- package/services/ambient-audio/response-gate.js +33 -0
- package/services/ambient-audio/service.d.ts +22 -0
- package/services/ambient-audio/service.d.ts.map +1 -0
- package/services/ambient-audio/service.js +47 -0
- package/services/ambient-audio/types.d.ts +42 -0
- package/services/ambient-audio/types.d.ts.map +1 -0
- package/services/app-updates/update-policy.d.ts +64 -0
- package/services/app-updates/update-policy.d.ts.map +1 -0
- package/services/app-updates/update-policy.js +228 -0
- package/services/auth-store.d.ts +37 -1
- package/services/auth-store.d.ts.map +1 -1
- package/services/auth-store.js +59 -26
- package/services/cloud-jwks-store.d.ts +3 -3
- package/services/cloud-jwks-store.d.ts.map +1 -1
- package/services/cloud-jwks-store.js +5 -8
- package/services/coding-account-bridge.d.ts +71 -0
- package/services/coding-account-bridge.d.ts.map +1 -0
- package/services/coding-account-bridge.js +267 -0
- package/services/connector-target-catalog.d.ts +10 -3
- package/services/connector-target-catalog.d.ts.map +1 -1
- package/services/connector-target-catalog.js +7 -4
- package/services/credential-tunnel-service.d.ts +66 -0
- package/services/credential-tunnel-service.d.ts.map +1 -0
- package/services/credential-tunnel-service.js +227 -0
- package/services/github-credentials.d.ts +1 -1
- package/services/github-credentials.js +1 -1
- package/services/inference-abort.d.ts +47 -0
- package/services/inference-abort.d.ts.map +1 -0
- package/services/inference-abort.js +76 -0
- package/services/persistence.d.ts +2 -3
- package/services/persistence.d.ts.map +1 -1
- package/services/persistence.js +2 -3
- package/services/phrase-chunked-tts.d.ts +136 -0
- package/services/phrase-chunked-tts.d.ts.map +1 -0
- package/services/phrase-chunked-tts.js +208 -0
- package/services/sandbox-registry.d.ts +78 -0
- package/services/sandbox-registry.d.ts.map +1 -0
- package/services/sandbox-registry.js +323 -0
- package/services/secrets-manager-installer.d.ts +8 -1
- package/services/secrets-manager-installer.d.ts.map +1 -1
- package/services/secrets-manager-installer.js +27 -2
- package/services/sensitive-requests/cloud-link-adapter.d.ts +15 -0
- package/services/sensitive-requests/cloud-link-adapter.d.ts.map +1 -0
- package/services/sensitive-requests/cloud-link-adapter.js +73 -0
- package/services/sensitive-requests/index.d.ts +27 -0
- package/services/sensitive-requests/index.d.ts.map +1 -0
- package/services/sensitive-requests/index.js +51 -0
- package/services/sensitive-requests/instruct-dm-only-adapter.d.ts +14 -0
- package/services/sensitive-requests/instruct-dm-only-adapter.d.ts.map +1 -0
- package/services/sensitive-requests/instruct-dm-only-adapter.js +22 -0
- package/services/sensitive-requests/owner-app-inline-adapter.d.ts +3 -0
- package/services/sensitive-requests/owner-app-inline-adapter.d.ts.map +1 -0
- package/services/sensitive-requests/owner-app-inline-adapter.js +146 -0
- package/services/sensitive-requests/owner-app-oauth-adapter.d.ts +3 -0
- package/services/sensitive-requests/owner-app-oauth-adapter.d.ts.map +1 -0
- package/services/sensitive-requests/owner-app-oauth-adapter.js +156 -0
- package/services/sensitive-requests/public-link-adapter.d.ts +14 -0
- package/services/sensitive-requests/public-link-adapter.d.ts.map +1 -0
- package/services/sensitive-requests/public-link-adapter.js +86 -0
- package/services/sensitive-requests/tunnel-link-adapter.d.ts +17 -0
- package/services/sensitive-requests/tunnel-link-adapter.d.ts.map +1 -0
- package/services/sensitive-requests/tunnel-link-adapter.js +38 -0
- package/services/steward-credentials.d.ts +1 -1
- package/services/steward-credentials.d.ts.map +1 -1
- package/services/steward-credentials.js +10 -6
- package/services/steward-sidecar/health-check.d.ts.map +1 -1
- package/services/steward-sidecar/health-check.js +4 -3
- package/services/steward-sidecar/process-management.d.ts +1 -1
- package/services/steward-sidecar/process-management.d.ts.map +1 -1
- package/services/steward-sidecar/process-management.js +9 -3
- package/services/steward-sidecar/types.d.ts +1 -1
- package/services/steward-sidecar/types.d.ts.map +1 -1
- package/services/steward-sidecar/wallet-setup.d.ts.map +1 -1
- package/services/steward-sidecar/wallet-setup.js +8 -7
- package/services/steward-sidecar.d.ts +2 -2
- package/services/steward-sidecar.d.ts.map +1 -1
- package/services/steward-sidecar.js +27 -19
- package/services/task-host-capabilities.d.ts +60 -0
- package/services/task-host-capabilities.d.ts.map +1 -0
- package/services/task-host-capabilities.js +122 -0
- package/services/tool-call-cache/index.d.ts +2 -2
- package/services/tool-call-cache/index.d.ts.map +1 -1
- package/services/tool-call-cache/index.js +1 -1
- package/services/trigger-event-bridge.js +1 -1
- package/services/tunnel-to-mobile/index.d.ts +2 -0
- package/services/tunnel-to-mobile/index.d.ts.map +1 -0
- package/services/tunnel-to-mobile/index.js +1 -0
- package/services/tunnel-to-mobile/tunnel-to-mobile-client.d.ts +105 -0
- package/services/tunnel-to-mobile/tunnel-to-mobile-client.d.ts.map +1 -0
- package/services/tunnel-to-mobile/tunnel-to-mobile-client.js +190 -0
- package/services/vault-bootstrap.d.ts.map +1 -1
- package/services/vault-bootstrap.js +48 -21
- package/services/vault-mirror.d.ts +1 -1
- package/services/vault-mirror.d.ts.map +1 -1
- package/services/vault-mirror.js +29 -6
- package/services/voice-profiles/diarization-pipeline.d.ts +6 -0
- package/services/voice-profiles/diarization-pipeline.d.ts.map +1 -0
- package/services/voice-profiles/diarization-pipeline.js +20 -0
- package/services/voice-profiles/index.d.ts +12 -0
- package/services/voice-profiles/index.d.ts.map +1 -0
- package/services/voice-profiles/index.js +5 -0
- package/services/voice-profiles/nickname-evaluator.d.ts +14 -0
- package/services/voice-profiles/nickname-evaluator.d.ts.map +1 -0
- package/services/voice-profiles/nickname-evaluator.js +46 -0
- package/services/voice-profiles/owner-confidence.d.ts +10 -0
- package/services/voice-profiles/owner-confidence.d.ts.map +1 -0
- package/services/voice-profiles/owner-confidence.js +38 -0
- package/services/voice-profiles/private-challenge.d.ts +20 -0
- package/services/voice-profiles/private-challenge.d.ts.map +1 -0
- package/services/voice-profiles/private-challenge.js +44 -0
- package/services/voice-profiles/store.d.ts +21 -0
- package/services/voice-profiles/store.d.ts.map +1 -0
- package/services/voice-profiles/store.js +50 -0
- package/services/voice-profiles/types.d.ts +38 -0
- package/services/voice-profiles/types.d.ts.map +1 -0
- package/services/voice-profiles/types.js +1 -0
- package/styles/electrobun-mac-window-drag.css +4 -4
- package/test/helpers/__tests__/live-agent-test.smoke.test.ts +43 -70
- package/test/helpers/browser-mocks.ts +2 -2
- package/test/helpers/conditional-tests.ts +2 -2
- package/test/helpers/i18n.ts +1 -1
- package/test/helpers/live-agent-test.ts +537 -551
- package/test/helpers/live-provider.test.ts +4 -4
- package/test/helpers/live-provider.ts +41 -7
- package/test/helpers/live-runtime-server.ts +4 -4
- package/test/helpers/pglite-runtime.ts +1 -1
- package/test/helpers/real-runtime.ts +54 -15
- package/test/helpers/trajectory-harness.ts +11 -7
- package/test/scripts/start-eliza-live.ts +9 -0
- package/test/scripts/test-parallel.mjs +1 -1
- package/test/scripts/test-root-unit.mjs +6 -7
- package/ui-compat.d.ts +13 -2
- package/ui-compat.d.ts.map +1 -1
- package/ui-compat.js +19 -3
- package/api/auth-pairing-compat-routes.d.ts +0 -17
- package/api/auth-pairing-compat-routes.d.ts.map +0 -1
- package/api/auth-pairing-compat-routes.js +0 -301
- package/api/local-inference-compat-routes.d.ts +0 -16
- package/api/local-inference-compat-routes.d.ts.map +0 -1
- package/api/local-inference-compat-routes.js +0 -617
- package/api/onboarding-compat-routes.d.ts +0 -4
- package/api/onboarding-compat-routes.d.ts.map +0 -1
- package/api/onboarding-compat-routes.js +0 -207
- package/api/plugins-compat-routes.d.ts +0 -103
- package/api/plugins-compat-routes.d.ts.map +0 -1
- package/api/plugins-compat-routes.js +0 -1181
- package/api/server-onboarding-compat.d.ts +0 -31
- package/api/server-onboarding-compat.d.ts.map +0 -1
- package/api/server-onboarding-compat.js +0 -283
- package/benchmark/cua-routes.d.ts +0 -10
- package/benchmark/cua-routes.d.ts.map +0 -1
- package/benchmark/cua-routes.js +0 -179
- package/benchmark/mock-plugin-base.d.ts +0 -9
- package/benchmark/mock-plugin-base.d.ts.map +0 -1
- package/benchmark/mock-plugin-base.js +0 -325
- package/cli/parse-duration.d.ts +0 -5
- package/cli/parse-duration.d.ts.map +0 -1
- package/cli/parse-duration.js +0 -27
- package/patches/llama-cpp-capacitor@0.1.5.patch +0 -2387
- package/platform/agent-browser-stub.d.ts +0 -27
- package/platform/agent-browser-stub.d.ts.map +0 -1
- package/platform/agent-browser-stub.js +0 -16
- package/platforms/android/app/src/androidTest/java/com/getcapacitor/myapp/ExampleInstrumentedTest.java +0 -26
- package/platforms/android/app/src/main/res/drawable/ic_launcher_background.xml +0 -170
- package/platforms/android/app/src/main/res/drawable-v24/ic_launcher_foreground.xml +0 -34
- package/platforms/android/app/src/test/java/com/getcapacitor/myapp/ExampleUnitTest.java +0 -18
- package/platforms/electrobun/assets/appIcon.iconset/icon_512x512@2x.png +0 -0
- package/platforms/electrobun/assets/appIcon.png +0 -0
- package/platforms/electrobun/scripts/build-whisper-universal.sh +0 -137
- package/platforms/electrobun/scripts/build-whisper.sh +0 -95
- package/platforms/electrobun/src/libMacWindowEffects.dylib +0 -0
- package/platforms/electrobun/src/native/whisper.ts +0 -280
- package/platforms/ios/App/App/Assets.xcassets/Splash.imageset/splash-2732x2732-1.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/Splash.imageset/splash-2732x2732-2.png +0 -0
- package/platforms/ios/App/App/Assets.xcassets/Splash.imageset/splash-2732x2732.png +0 -0
- package/registry/generate-apps.d.ts +0 -2
- package/registry/generate-apps.d.ts.map +0 -1
- package/registry/generate-apps.js +0 -338
- package/registry/generate.d.ts +0 -2
- package/registry/generate.d.ts.map +0 -1
- package/registry/generate.js +0 -506
- package/runtime/embedding-manager-support.d.ts +0 -77
- package/runtime/embedding-manager-support.d.ts.map +0 -1
- package/runtime/embedding-manager-support.js +0 -309
- package/runtime/embedding-presets.d.ts +0 -5
- package/runtime/embedding-presets.d.ts.map +0 -1
- package/runtime/embedding-presets.js +0 -47
- package/runtime/embedding-warmup-policy.d.ts +0 -13
- package/runtime/embedding-warmup-policy.d.ts.map +0 -1
- package/runtime/embedding-warmup-policy.js +0 -33
- package/runtime/ensure-local-inference-handler.d.ts +0 -25
- package/runtime/ensure-local-inference-handler.d.ts.map +0 -1
- package/runtime/ensure-local-inference-handler.js +0 -389
- package/runtime/mobile-local-inference-gate.d.ts +0 -21
- package/runtime/mobile-local-inference-gate.d.ts.map +0 -1
- package/runtime/mobile-local-inference-gate.js +0 -24
- package/scripts/aosp/avd-test.mjs +0 -403
- package/scripts/aosp/boot-validate.mjs +0 -536
- package/scripts/aosp/build-aosp.mjs +0 -448
- package/scripts/aosp/build-bootanimation.mjs +0 -178
- package/scripts/aosp/capture-screens.mjs +0 -325
- package/scripts/aosp/e2e-validate.mjs +0 -225
- package/scripts/aosp/lint-init-rc.mjs +0 -258
- package/scripts/aosp/llama-shim/eliza_llama_shim.c +0 -276
- package/scripts/aosp/sim.mjs +0 -277
- package/scripts/aosp/sync-to-aosp.mjs +0 -134
- package/scripts/aosp/validate.mjs +0 -1273
- package/scripts/build-llama-cpp-dflash.mjs +0 -1866
- package/scripts/generate-onboarding-voicelines.mjs +0 -194
- package/scripts/generated/static-asset-manifest.json +0 -4
- package/scripts/normalize-parallax-capture.ts +0 -97
- package/scripts/omnivoice-fuse/Makefile +0 -44
- package/scripts/omnivoice-fuse/README.md +0 -266
- package/scripts/omnivoice-fuse/cmake-graft.mjs +0 -180
- package/scripts/omnivoice-fuse/ffi-stub.c +0 -222
- package/scripts/omnivoice-fuse/ffi.h +0 -158
- package/scripts/omnivoice-fuse/libelizainference_stub.dylib +0 -0
- package/scripts/omnivoice-fuse/verify-symbols.mjs +0 -138
- package/security/cloud-secret-store.d.ts +0 -34
- package/security/cloud-secret-store.d.ts.map +0 -1
- package/security/cloud-secret-store.js +0 -65
- package/security/export-guard.d.ts +0 -34
- package/security/export-guard.d.ts.map +0 -1
- package/security/export-guard.js +0 -127
- package/services/local-inference/__stress__/cache-stress-helpers.d.ts +0 -76
- package/services/local-inference/__stress__/cache-stress-helpers.d.ts.map +0 -1
- package/services/local-inference/__stress__/cache-stress-helpers.js +0 -238
- package/services/local-inference/active-model.d.ts +0 -180
- package/services/local-inference/active-model.d.ts.map +0 -1
- package/services/local-inference/active-model.js +0 -362
- package/services/local-inference/assignments.d.ts +0 -58
- package/services/local-inference/assignments.d.ts.map +0 -1
- package/services/local-inference/assignments.js +0 -179
- package/services/local-inference/backend.d.ts +0 -200
- package/services/local-inference/backend.d.ts.map +0 -1
- package/services/local-inference/backend.js +0 -242
- package/services/local-inference/bundled-models.d.ts +0 -34
- package/services/local-inference/bundled-models.d.ts.map +0 -1
- package/services/local-inference/bundled-models.js +0 -104
- package/services/local-inference/cache-bridge.d.ts +0 -184
- package/services/local-inference/cache-bridge.d.ts.map +0 -1
- package/services/local-inference/cache-bridge.js +0 -333
- package/services/local-inference/catalog.d.ts +0 -57
- package/services/local-inference/catalog.d.ts.map +0 -1
- package/services/local-inference/catalog.js +0 -262
- package/services/local-inference/conversation-registry.d.ts +0 -122
- package/services/local-inference/conversation-registry.d.ts.map +0 -1
- package/services/local-inference/conversation-registry.js +0 -182
- package/services/local-inference/device-bridge.d.ts +0 -139
- package/services/local-inference/device-bridge.d.ts.map +0 -1
- package/services/local-inference/device-bridge.js +0 -774
- package/services/local-inference/dflash-doctor.d.ts +0 -27
- package/services/local-inference/dflash-doctor.d.ts.map +0 -1
- package/services/local-inference/dflash-doctor.js +0 -149
- package/services/local-inference/dflash-server.d.ts +0 -248
- package/services/local-inference/dflash-server.d.ts.map +0 -1
- package/services/local-inference/dflash-server.js +0 -1076
- package/services/local-inference/downloader.d.ts +0 -48
- package/services/local-inference/downloader.d.ts.map +0 -1
- package/services/local-inference/downloader.js +0 -688
- package/services/local-inference/engine.d.ts +0 -282
- package/services/local-inference/engine.d.ts.map +0 -1
- package/services/local-inference/engine.js +0 -743
- package/services/local-inference/external-scanner.d.ts +0 -17
- package/services/local-inference/external-scanner.d.ts.map +0 -1
- package/services/local-inference/external-scanner.js +0 -261
- package/services/local-inference/handler-registry.d.ts +0 -72
- package/services/local-inference/handler-registry.d.ts.map +0 -1
- package/services/local-inference/handler-registry.js +0 -159
- package/services/local-inference/hardware.d.ts +0 -26
- package/services/local-inference/hardware.d.ts.map +0 -1
- package/services/local-inference/hardware.js +0 -139
- package/services/local-inference/hf-search.d.ts +0 -19
- package/services/local-inference/hf-search.d.ts.map +0 -1
- package/services/local-inference/hf-search.js +0 -169
- package/services/local-inference/index.d.ts +0 -10
- package/services/local-inference/index.d.ts.map +0 -1
- package/services/local-inference/index.js +0 -7
- package/services/local-inference/llama-server-metrics.d.ts +0 -108
- package/services/local-inference/llama-server-metrics.d.ts.map +0 -1
- package/services/local-inference/llama-server-metrics.js +0 -175
- package/services/local-inference/manifest/index.d.ts +0 -4
- package/services/local-inference/manifest/index.d.ts.map +0 -1
- package/services/local-inference/manifest/index.js +0 -5
- package/services/local-inference/manifest/schema.d.ts +0 -419
- package/services/local-inference/manifest/schema.d.ts.map +0 -1
- package/services/local-inference/manifest/schema.js +0 -227
- package/services/local-inference/manifest/types.d.ts +0 -23
- package/services/local-inference/manifest/types.d.ts.map +0 -1
- package/services/local-inference/manifest/types.js +0 -5
- package/services/local-inference/manifest/validator.d.ts +0 -43
- package/services/local-inference/manifest/validator.d.ts.map +0 -1
- package/services/local-inference/manifest/validator.js +0 -180
- package/services/local-inference/paths.d.ts +0 -8
- package/services/local-inference/paths.d.ts.map +0 -1
- package/services/local-inference/paths.js +0 -7
- package/services/local-inference/providers.d.ts +0 -61
- package/services/local-inference/providers.d.ts.map +0 -1
- package/services/local-inference/providers.js +0 -334
- package/services/local-inference/ram-budget.d.ts +0 -57
- package/services/local-inference/ram-budget.d.ts.map +0 -1
- package/services/local-inference/ram-budget.js +0 -107
- package/services/local-inference/readiness.d.ts +0 -9
- package/services/local-inference/readiness.d.ts.map +0 -1
- package/services/local-inference/readiness.js +0 -153
- package/services/local-inference/recommendation.d.ts +0 -62
- package/services/local-inference/recommendation.d.ts.map +0 -1
- package/services/local-inference/recommendation.js +0 -309
- package/services/local-inference/registry.d.ts +0 -35
- package/services/local-inference/registry.d.ts.map +0 -1
- package/services/local-inference/registry.js +0 -117
- package/services/local-inference/router-handler.d.ts +0 -51
- package/services/local-inference/router-handler.d.ts.map +0 -1
- package/services/local-inference/router-handler.js +0 -165
- package/services/local-inference/routing-policy.d.ts +0 -55
- package/services/local-inference/routing-policy.d.ts.map +0 -1
- package/services/local-inference/routing-policy.js +0 -195
- package/services/local-inference/routing-preferences.d.ts +0 -8
- package/services/local-inference/routing-preferences.d.ts.map +0 -1
- package/services/local-inference/routing-preferences.js +0 -7
- package/services/local-inference/service.d.ts +0 -88
- package/services/local-inference/service.d.ts.map +0 -1
- package/services/local-inference/service.js +0 -210
- package/services/local-inference/session-pool.d.ts +0 -72
- package/services/local-inference/session-pool.d.ts.map +0 -1
- package/services/local-inference/session-pool.js +0 -125
- package/services/local-inference/types.d.ts +0 -309
- package/services/local-inference/types.d.ts.map +0 -1
- package/services/local-inference/types.js +0 -23
- package/services/local-inference/verify.d.ts +0 -8
- package/services/local-inference/verify.d.ts.map +0 -1
- package/services/local-inference/verify.js +0 -7
- package/services/local-inference/voice/barge-in.d.ts +0 -15
- package/services/local-inference/voice/barge-in.d.ts.map +0 -1
- package/services/local-inference/voice/barge-in.js +0 -20
- package/services/local-inference/voice/engine-bridge.d.ts +0 -256
- package/services/local-inference/voice/engine-bridge.d.ts.map +0 -1
- package/services/local-inference/voice/engine-bridge.js +0 -398
- package/services/local-inference/voice/ffi-bindings.d.ts +0 -114
- package/services/local-inference/voice/ffi-bindings.d.ts.map +0 -1
- package/services/local-inference/voice/ffi-bindings.js +0 -281
- package/services/local-inference/voice/index.d.ts +0 -51
- package/services/local-inference/voice/index.d.ts.map +0 -1
- package/services/local-inference/voice/index.js +0 -50
- package/services/local-inference/voice/lifecycle.d.ts +0 -135
- package/services/local-inference/voice/lifecycle.d.ts.map +0 -1
- package/services/local-inference/voice/lifecycle.js +0 -189
- package/services/local-inference/voice/phoneme-tokenizer.d.ts +0 -58
- package/services/local-inference/voice/phoneme-tokenizer.d.ts.map +0 -1
- package/services/local-inference/voice/phoneme-tokenizer.js +0 -53
- package/services/local-inference/voice/phrase-cache.d.ts +0 -24
- package/services/local-inference/voice/phrase-cache.d.ts.map +0 -1
- package/services/local-inference/voice/phrase-cache.js +0 -32
- package/services/local-inference/voice/phrase-chunker.d.ts +0 -20
- package/services/local-inference/voice/phrase-chunker.d.ts.map +0 -1
- package/services/local-inference/voice/phrase-chunker.js +0 -85
- package/services/local-inference/voice/ring-buffer.d.ts +0 -40
- package/services/local-inference/voice/ring-buffer.d.ts.map +0 -1
- package/services/local-inference/voice/ring-buffer.js +0 -85
- package/services/local-inference/voice/rollback-queue.d.ts +0 -24
- package/services/local-inference/voice/rollback-queue.d.ts.map +0 -1
- package/services/local-inference/voice/rollback-queue.js +0 -49
- package/services/local-inference/voice/scheduler.d.ts +0 -47
- package/services/local-inference/voice/scheduler.d.ts.map +0 -1
- package/services/local-inference/voice/scheduler.js +0 -123
- package/services/local-inference/voice/shared-resources.d.ts +0 -119
- package/services/local-inference/voice/shared-resources.d.ts.map +0 -1
- package/services/local-inference/voice/shared-resources.js +0 -83
- package/services/local-inference/voice/speaker-preset-cache.d.ts +0 -28
- package/services/local-inference/voice/speaker-preset-cache.d.ts.map +0 -1
- package/services/local-inference/voice/speaker-preset-cache.js +0 -44
- package/services/local-inference/voice/types.d.ts +0 -80
- package/services/local-inference/voice/types.d.ts.map +0 -1
- package/services/local-inference/voice/voice-preset-format.d.ts +0 -56
- package/services/local-inference/voice/voice-preset-format.d.ts.map +0 -1
- package/services/local-inference/voice/voice-preset-format.js +0 -184
- package/services/plugin-installer.d.ts +0 -22
- package/services/plugin-installer.d.ts.map +0 -1
- package/services/plugin-installer.js +0 -41
- package/test/scripts/task-agent-live-smoke.ts +0 -1335
- /package/services/{local-inference/voice → ambient-audio}/types.js +0 -0
|
@@ -0,0 +1,469 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
#
|
|
3
|
+
# Bun riscv64-linux-musl cross-build driver.
|
|
4
|
+
#
|
|
5
|
+
# Runs INSIDE the Docker image defined by ./Dockerfile. The host-side
|
|
6
|
+
# wrapper (see README.md → "Building") mounts:
|
|
7
|
+
# /opt/build.sh this file
|
|
8
|
+
# /opt/bun-version.json the pinned tags + commits
|
|
9
|
+
# /opt/bun-patches/ patches against oven-sh/bun
|
|
10
|
+
# /opt/webkit-patches/ patches against oven-sh/WebKit @ WEBKIT_VERSION
|
|
11
|
+
# /artifact/ host dist/ for the output zip + build log
|
|
12
|
+
#
|
|
13
|
+
# Inputs (env vars, all optional):
|
|
14
|
+
# BUN_TAG override bun.tag from bun-version.json
|
|
15
|
+
# WEBKIT_COMMIT override webkit.fork_commit from bun-version.json
|
|
16
|
+
# BUN_RISCV64_FORCE_CLOOP=0
|
|
17
|
+
# opt into the experimental Baseline-JIT path.
|
|
18
|
+
# The production artifact defaults to C_LOOP until
|
|
19
|
+
# the WebKit recipe chain is checked in as real
|
|
20
|
+
# patch files.
|
|
21
|
+
# JOBS parallel build jobs. Defaults to nproc.
|
|
22
|
+
#
|
|
23
|
+
# Output (under /artifact):
|
|
24
|
+
# bun-linux-riscv64-musl.zip the artifact
|
|
25
|
+
# bun-linux-riscv64-musl.zip.sha256
|
|
26
|
+
# build-log.txt transcript + sha256s + qemu smoke runs
|
|
27
|
+
#
|
|
28
|
+
# Failure model: every step is `set -euo pipefail`. The production artifact
|
|
29
|
+
# defaults to ENABLE_C_LOOP=ON. Baseline-JIT attempts require the operator to
|
|
30
|
+
# set BUN_RISCV64_FORCE_CLOOP=0 and must fail while recipe files remain
|
|
31
|
+
# unrealized.
|
|
32
|
+
|
|
33
|
+
set -euo pipefail
|
|
34
|
+
|
|
35
|
+
# ENTRYPOINT runs us under `bash -l`, which sources /etc/profile and
|
|
36
|
+
# resets PATH to Debian's default — wiping the Dockerfile's
|
|
37
|
+
# `ENV PATH=/opt/cross/bin:/usr/local/cargo/bin:…`. Re-prepend the
|
|
38
|
+
# toolchain dirs explicitly so rustup/cargo/clang stay reachable.
|
|
39
|
+
export PATH="/opt/cross/bin:/usr/local/cargo/bin:${PATH}"
|
|
40
|
+
export RUSTUP_HOME="${RUSTUP_HOME:-/usr/local/rustup}"
|
|
41
|
+
export CARGO_HOME="/home/builder/.cargo"
|
|
42
|
+
|
|
43
|
+
log() { printf '[bun-riscv64] %s\n' "$*"; }
|
|
44
|
+
die() { printf '[bun-riscv64][FATAL] %s\n' "$*" >&2; exit 1; }
|
|
45
|
+
|
|
46
|
+
prepare_ninja_object_dirs() {
|
|
47
|
+
local ninja_file="$1"
|
|
48
|
+
local ninja_dir
|
|
49
|
+
ninja_dir="$(dirname "$ninja_file")"
|
|
50
|
+
[ -f "$ninja_file" ] || return 0
|
|
51
|
+
awk '/^build .*\.o: / { for (i = 2; i <= NF; i++) if ($i ~ /\.o$/) print $i }' "$ninja_file" \
|
|
52
|
+
| while IFS= read -r obj; do
|
|
53
|
+
[ -n "$obj" ] || continue
|
|
54
|
+
mkdir -p "$ninja_dir/$(dirname "$obj")"
|
|
55
|
+
done
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
# ──────────────────────────────────────────────────────────────────────────
|
|
59
|
+
# Resolve pins from bun-version.json
|
|
60
|
+
# ──────────────────────────────────────────────────────────────────────────
|
|
61
|
+
VERSION_FILE="${VERSION_FILE:-/opt/bun-version.json}"
|
|
62
|
+
[ -r "$VERSION_FILE" ] || die "bun-version.json not mounted at $VERSION_FILE"
|
|
63
|
+
|
|
64
|
+
# We have bun in the image, so use it as the JSON reader. jq is not
|
|
65
|
+
# installed to keep the image lean.
|
|
66
|
+
bun_jq() {
|
|
67
|
+
bun -e "const v = JSON.parse(require('fs').readFileSync('${VERSION_FILE}','utf8')); console.log($1);"
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
# Rust-core port (BUN_RISCV64_RUST_CORE=1, set by run-build.sh --rust-core):
|
|
71
|
+
# build the post-Zig→Rust-rewrite bun from rust_core_port.target_commit + the
|
|
72
|
+
# nightly it pins, instead of the last-Zig tag (bun.tag). The rust-core/ patch
|
|
73
|
+
# series is mounted at /opt/bun-patches by run-build.sh in this mode.
|
|
74
|
+
if [ "${BUN_RISCV64_RUST_CORE:-0}" = "1" ]; then
|
|
75
|
+
BUN_TAG="${BUN_TAG:-$(bun_jq 'v.rust_core_port.target_commit')}"
|
|
76
|
+
RUST_NIGHTLY="${RUST_NIGHTLY:-$(bun_jq 'v.rust_core_port.rust_channel')}"
|
|
77
|
+
# bun@target_commit's deps/webkit.ts pins WEBKIT_VERSION=963f8758…, distinct
|
|
78
|
+
# from the Zig-era 1.3.14 WebKit — use the version this bun expects.
|
|
79
|
+
WEBKIT_COMMIT="${WEBKIT_COMMIT:-$(bun_jq 'v.rust_core_port.webkit_commit')}"
|
|
80
|
+
else
|
|
81
|
+
BUN_TAG="${BUN_TAG:-$(bun_jq 'v.bun.tag')}"
|
|
82
|
+
RUST_NIGHTLY="${RUST_NIGHTLY:-$(bun_jq 'v.toolchain.rust.channel')}"
|
|
83
|
+
WEBKIT_COMMIT="${WEBKIT_COMMIT:-$(bun_jq 'v.webkit.fork_commit')}"
|
|
84
|
+
fi
|
|
85
|
+
WEBKIT_FORK="$(bun_jq 'v.webkit.fork')"
|
|
86
|
+
LLVM_VERSION="$(bun_jq 'v.toolchain.llvm.version')"
|
|
87
|
+
ZIG_VERSION="$(bun_jq 'v.toolchain.zig.version')"
|
|
88
|
+
ALPINE_BRANCH="$(bun_jq 'v.toolchain.musl.alpine_branch')"
|
|
89
|
+
|
|
90
|
+
log "Pins:"
|
|
91
|
+
log " Bun tag : $BUN_TAG"
|
|
92
|
+
log " WebKit fork : $WEBKIT_FORK"
|
|
93
|
+
log " WebKit commit : $WEBKIT_COMMIT"
|
|
94
|
+
log " Rust nightly : $RUST_NIGHTLY"
|
|
95
|
+
log " LLVM : $LLVM_VERSION"
|
|
96
|
+
log " Zig : $ZIG_VERSION"
|
|
97
|
+
log " Alpine branch : $ALPINE_BRANCH"
|
|
98
|
+
|
|
99
|
+
JOBS="${JOBS:-$(nproc)}"
|
|
100
|
+
log " Build jobs : $JOBS"
|
|
101
|
+
|
|
102
|
+
FORCE_CLOOP="${BUN_RISCV64_FORCE_CLOOP:-1}"
|
|
103
|
+
if [ "$FORCE_CLOOP" = "1" ]; then
|
|
104
|
+
log " JIT mode : C_LOOP (BUN_RISCV64_FORCE_CLOOP=1)"
|
|
105
|
+
else
|
|
106
|
+
log " JIT mode : Baseline JIT"
|
|
107
|
+
fi
|
|
108
|
+
|
|
109
|
+
ARTIFACT_DIR="${ARTIFACT_DIR:-/artifact}"
|
|
110
|
+
mkdir -p "$ARTIFACT_DIR"
|
|
111
|
+
LOG_FILE="$ARTIFACT_DIR/build-log.txt"
|
|
112
|
+
# Tee everything to the build log from here on.
|
|
113
|
+
exec > >(tee -a "$LOG_FILE") 2>&1
|
|
114
|
+
|
|
115
|
+
log "── stage 0: workspace setup ─────────────────────────────────────────"
|
|
116
|
+
SRC_ROOT="${SRC_ROOT:-/work/src}"
|
|
117
|
+
mkdir -p "$SRC_ROOT"
|
|
118
|
+
cd "$SRC_ROOT"
|
|
119
|
+
|
|
120
|
+
# Robust git transport for the multi-GB bun + WebKit fetches below: HTTP/1.1
|
|
121
|
+
# (avoids HTTP/2 mid-stream "curl 92 CANCEL" resets) + a large send/recv buffer.
|
|
122
|
+
git config --global http.version HTTP/1.1
|
|
123
|
+
git config --global http.postBuffer 1048576000
|
|
124
|
+
|
|
125
|
+
# ──────────────────────────────────────────────────────────────────────────
|
|
126
|
+
# Stage 1: clone WebKit fork at the pinned commit and apply riscv64 patches.
|
|
127
|
+
# ──────────────────────────────────────────────────────────────────────────
|
|
128
|
+
log "── stage 1: WebKit checkout + patches ───────────────────────────────"
|
|
129
|
+
|
|
130
|
+
if [ ! -d "$SRC_ROOT/WebKit" ]; then
|
|
131
|
+
log "Cloning ${WEBKIT_FORK} @ ${WEBKIT_COMMIT}"
|
|
132
|
+
# Partial clone — Bun's WebKit fork is several GB of history. We only
|
|
133
|
+
# need the tree at this one commit. `--filter=blob:none` defers blob
|
|
134
|
+
# fetches until checkout time; combined with --depth=1 from a named
|
|
135
|
+
# commit (via `git fetch <sha>`), this stays under ~1.5 GB.
|
|
136
|
+
git init --initial-branch=main "$SRC_ROOT/WebKit"
|
|
137
|
+
git -C "$SRC_ROOT/WebKit" remote add origin "https://github.com/${WEBKIT_FORK}.git"
|
|
138
|
+
# Multi-GB partial clones over HTTP/2 intermittently fail mid-stream with
|
|
139
|
+
# "curl 92 ... CANCEL" / "early EOF" / "could not fetch ... from promisor
|
|
140
|
+
# remote". Pin HTTP/1.1, enlarge the buffer, and retry fetch+checkout (the
|
|
141
|
+
# blob:none checkout lazily pulls blobs, so it can flake independently).
|
|
142
|
+
git -C "$SRC_ROOT/WebKit" config http.version HTTP/1.1
|
|
143
|
+
git -C "$SRC_ROOT/WebKit" config http.postBuffer 1048576000
|
|
144
|
+
for attempt in 1 2 3 4 5; do
|
|
145
|
+
if git -C "$SRC_ROOT/WebKit" fetch --depth=1 --filter=blob:none origin "${WEBKIT_COMMIT}" \
|
|
146
|
+
&& git -C "$SRC_ROOT/WebKit" checkout "${WEBKIT_COMMIT}"; then
|
|
147
|
+
break
|
|
148
|
+
fi
|
|
149
|
+
[ "$attempt" -eq 5 ] && die "WebKit fetch/checkout failed after 5 attempts (network) @ ${WEBKIT_COMMIT}"
|
|
150
|
+
log "WebKit fetch attempt ${attempt} failed (network); retrying in $((attempt * 10))s…"
|
|
151
|
+
sleep $((attempt * 10))
|
|
152
|
+
done
|
|
153
|
+
fi
|
|
154
|
+
git -C "$SRC_ROOT/WebKit" reset --hard "${WEBKIT_COMMIT}" >/dev/null
|
|
155
|
+
|
|
156
|
+
if compgen -G "/opt/webkit-patches/*.recipe" >/dev/null && [ "$FORCE_CLOOP" != "1" ]; then
|
|
157
|
+
# Recipe files are placeholders for cherry-pick chains the operator
|
|
158
|
+
# has not realized into actual *.patch files yet. Without those, the
|
|
159
|
+
# Baseline JIT cannot be built (LLInt + Baseline support is the whole
|
|
160
|
+
# point of webkit-patches/0001 + 0002). Force the operator to either
|
|
161
|
+
# realize the recipes or switch to C_LOOP fallback explicitly.
|
|
162
|
+
log "FATAL: webkit-patches/ contains unrealized *.recipe files:"
|
|
163
|
+
for r in /opt/webkit-patches/*.recipe; do
|
|
164
|
+
log " - $r"
|
|
165
|
+
done
|
|
166
|
+
log "Baseline JIT bringup requires the cherry-pick chain documented in"
|
|
167
|
+
log "those recipe files to be realized into *.patch files first. Either:"
|
|
168
|
+
log " a) realize the cherry-picks per the recipe instructions, OR"
|
|
169
|
+
log " b) re-run with BUN_RISCV64_FORCE_CLOOP=1 to build with C_LOOP."
|
|
170
|
+
die "unrealized webkit-patches/*.recipe — refusing to build Baseline JIT"
|
|
171
|
+
fi
|
|
172
|
+
|
|
173
|
+
if compgen -G "/opt/webkit-patches/*.patch" >/dev/null; then
|
|
174
|
+
log "Applying webkit-patches/*.patch (in lexical order):"
|
|
175
|
+
cd "$SRC_ROOT/WebKit"
|
|
176
|
+
git config user.email "bun-riscv64@eliza.local"
|
|
177
|
+
git config user.name "bun-riscv64 build"
|
|
178
|
+
for p in $(ls /opt/webkit-patches/*.patch | sort); do
|
|
179
|
+
# In C_LOOP mode, the 0003-disable-dfg-ftl-on-riscv64 patch is
|
|
180
|
+
# unnecessary — ENABLE_C_LOOP=ON in CMake forcibly disables every
|
|
181
|
+
# JIT tier, so the upstream PlatformEnable.h ifdefs never reach
|
|
182
|
+
# the DFG/FTL paths regardless of what the patch toggles. Skip
|
|
183
|
+
# it to dodge context-drift conflicts against the upstream
|
|
184
|
+
# PlatformEnable.h header.
|
|
185
|
+
case "${p##*/}" in
|
|
186
|
+
0003-disable-dfg-ftl-on-riscv64.patch)
|
|
187
|
+
if [ "$FORCE_CLOOP" = "1" ]; then
|
|
188
|
+
log " -> $p (SKIPPED — C_LOOP build does not need DFG/FTL ifdefs)"
|
|
189
|
+
continue
|
|
190
|
+
fi
|
|
191
|
+
;;
|
|
192
|
+
esac
|
|
193
|
+
log " -> $p"
|
|
194
|
+
if git apply --reverse --check "$p" >/dev/null 2>&1; then
|
|
195
|
+
log " already applied; skipping"
|
|
196
|
+
continue
|
|
197
|
+
fi
|
|
198
|
+
# 3-way merge is tolerant of context drift; on hard conflict, fail
|
|
199
|
+
# rather than silently skipping.
|
|
200
|
+
git apply --3way "$p" || die "WebKit patch failed: $p — see webkit-patches/README.md for rebase guidance"
|
|
201
|
+
done
|
|
202
|
+
cd "$SRC_ROOT"
|
|
203
|
+
else
|
|
204
|
+
log "No webkit-patches/*.patch present; building WebKit @ ${WEBKIT_COMMIT} as-is."
|
|
205
|
+
log "If Baseline JIT bringup fails, operator must populate webkit-patches/ — see its README.md."
|
|
206
|
+
fi
|
|
207
|
+
|
|
208
|
+
# ──────────────────────────────────────────────────────────────────────────
|
|
209
|
+
# Stage 2: clone Bun at the pinned tag and apply patches.
|
|
210
|
+
# ──────────────────────────────────────────────────────────────────────────
|
|
211
|
+
log "── stage 2: Bun checkout + patches ──────────────────────────────────"
|
|
212
|
+
|
|
213
|
+
# BUN_TAG may be a tag (Zig fallback, e.g. bun-v1.3.14) OR a bare commit SHA
|
|
214
|
+
# (Rust-core port, e.g. rust_core_port.target_commit). `git clone --branch`
|
|
215
|
+
# rejects a SHA, so fetch the ref directly — GitHub allows fetch-by-SHA
|
|
216
|
+
# (allowAnySHA1InWant) — mirroring the WebKit checkout above. Works for both.
|
|
217
|
+
if [ ! -d "$SRC_ROOT/bun" ]; then
|
|
218
|
+
log "Fetching oven-sh/bun @ ${BUN_TAG}"
|
|
219
|
+
git init -q "$SRC_ROOT/bun"
|
|
220
|
+
git -C "$SRC_ROOT/bun" remote add origin https://github.com/oven-sh/bun.git
|
|
221
|
+
git -C "$SRC_ROOT/bun" fetch --depth=1 --recurse-submodules origin "${BUN_TAG}"
|
|
222
|
+
git -C "$SRC_ROOT/bun" checkout -q FETCH_HEAD
|
|
223
|
+
fi
|
|
224
|
+
git -C "$SRC_ROOT/bun" fetch --depth=1 origin "${BUN_TAG}" >/dev/null 2>&1
|
|
225
|
+
git -C "$SRC_ROOT/bun" reset --hard FETCH_HEAD >/dev/null
|
|
226
|
+
git -C "$SRC_ROOT/bun" submodule update --init --recursive --depth=1
|
|
227
|
+
|
|
228
|
+
if compgen -G "/opt/bun-patches/*.patch" >/dev/null; then
|
|
229
|
+
log "Applying bun-patches/*.patch (in lexical order):"
|
|
230
|
+
cd "$SRC_ROOT/bun"
|
|
231
|
+
git config user.email "bun-riscv64@eliza.local"
|
|
232
|
+
git config user.name "bun-riscv64 build"
|
|
233
|
+
for p in $(ls /opt/bun-patches/*.patch | sort); do
|
|
234
|
+
log " -> $p"
|
|
235
|
+
if git apply --reverse --check "$p" >/dev/null 2>&1; then
|
|
236
|
+
log " already applied; skipping"
|
|
237
|
+
continue
|
|
238
|
+
fi
|
|
239
|
+
git apply --3way "$p" || die "Bun patch failed: $p"
|
|
240
|
+
done
|
|
241
|
+
cd "$SRC_ROOT"
|
|
242
|
+
else
|
|
243
|
+
die "No bun-patches/*.patch present — Bun's build system needs riscv64 awareness (Arch type, cpu flags, WebKit pin, etc.). Populate bun-patches/ before running build.sh."
|
|
244
|
+
fi
|
|
245
|
+
|
|
246
|
+
# ──────────────────────────────────────────────────────────────────────────
|
|
247
|
+
# Stage 3: cargo dependencies and rust target.
|
|
248
|
+
# ──────────────────────────────────────────────────────────────────────────
|
|
249
|
+
log "── stage 3: cargo prefetch ──────────────────────────────────────────"
|
|
250
|
+
cd "$SRC_ROOT/bun"
|
|
251
|
+
rustup target add --toolchain "${RUST_NIGHTLY}" riscv64gc-unknown-linux-musl
|
|
252
|
+
# Pre-fetch cargo deps so a later `cargo build --offline` works even if
|
|
253
|
+
# the registry hiccups mid-build. This is a best-effort optimization only.
|
|
254
|
+
#
|
|
255
|
+
# The Rust-core workspace consumes some vendored C libraries as PATH
|
|
256
|
+
# dependencies (e.g. `vendor/lolhtml/c-api`, declared in src/lolhtml_sys),
|
|
257
|
+
# and `vendor/` is .gitignore'd — those trees are populated by Bun's own
|
|
258
|
+
# build system (scripts/build/deps/*.ts) during stage 5, NOT by the git
|
|
259
|
+
# checkout. So `cargo fetch` cannot resolve the workspace manifest yet and
|
|
260
|
+
# fails with "failed to read vendor/.../Cargo.toml". That is expected: the
|
|
261
|
+
# real cargo build in stage 5 runs after dep population and fetches what it
|
|
262
|
+
# needs. Keep the prefetch non-fatal so it never blocks the build.
|
|
263
|
+
if [ -f Cargo.toml ]; then
|
|
264
|
+
cargo +"${RUST_NIGHTLY}" fetch --target riscv64gc-unknown-linux-musl \
|
|
265
|
+
|| log "stage 3: cargo prefetch skipped — vendored path deps are populated by build.ts in stage 5; registry deps will fetch then."
|
|
266
|
+
fi
|
|
267
|
+
|
|
268
|
+
# ──────────────────────────────────────────────────────────────────────────
|
|
269
|
+
# Stage 4: configure + build WebKit for riscv64.
|
|
270
|
+
# ──────────────────────────────────────────────────────────────────────────
|
|
271
|
+
log "── stage 4: WebKit build ────────────────────────────────────────────"
|
|
272
|
+
|
|
273
|
+
WEBKIT_BUILD_DIR="$SRC_ROOT/WebKit/WebKitBuild/riscv64-Release"
|
|
274
|
+
mkdir -p "$WEBKIT_BUILD_DIR"
|
|
275
|
+
cd "$WEBKIT_BUILD_DIR"
|
|
276
|
+
|
|
277
|
+
# JIT switches. WebKit's CMake exposes ENABLE_JIT (umbrella, implies
|
|
278
|
+
# LLInt + Baseline tiers), ENABLE_DFG_JIT, ENABLE_FTL_JIT, and
|
|
279
|
+
# ENABLE_C_LOOP. There is no `ENABLE_BASELINE_JIT` option — Baseline is
|
|
280
|
+
# always built when ENABLE_JIT=ON and the target arch has a Baseline
|
|
281
|
+
# backend (riscv64 does, via WebKit bug #239708 r293316).
|
|
282
|
+
#
|
|
283
|
+
# - Default: ENABLE_JIT=ON (LLInt + Baseline), DFG/FTL OFF.
|
|
284
|
+
# - BUN_RISCV64_FORCE_CLOOP=1: ENABLE_C_LOOP=ON, ENABLE_JIT=OFF (mutually
|
|
285
|
+
# exclusive per WebKit's WEBKIT_OPTION_CONFLICT).
|
|
286
|
+
if [ "$FORCE_CLOOP" = "1" ]; then
|
|
287
|
+
WK_JIT_FLAGS=(
|
|
288
|
+
-DENABLE_C_LOOP=ON
|
|
289
|
+
-DENABLE_JIT=OFF
|
|
290
|
+
-DENABLE_DFG_JIT=OFF
|
|
291
|
+
-DENABLE_FTL_JIT=OFF
|
|
292
|
+
# WebKit enforces ENABLE_WEBASSEMBLY conflicts with ENABLE_C_LOOP, so a
|
|
293
|
+
# JIT-less build cannot include WebAssembly. This is why wasm is off here.
|
|
294
|
+
-DENABLE_WEBASSEMBLY=OFF
|
|
295
|
+
-DENABLE_WEBASSEMBLY_BBQJIT=OFF
|
|
296
|
+
-DENABLE_WEBASSEMBLY_OMGJIT=OFF
|
|
297
|
+
)
|
|
298
|
+
else
|
|
299
|
+
WK_JIT_FLAGS=(
|
|
300
|
+
-DENABLE_C_LOOP=OFF
|
|
301
|
+
-DENABLE_JIT=ON
|
|
302
|
+
-DENABLE_DFG_JIT=OFF
|
|
303
|
+
-DENABLE_FTL_JIT=OFF
|
|
304
|
+
)
|
|
305
|
+
fi
|
|
306
|
+
|
|
307
|
+
# Linker selection: the riscv64-linux-musl-clang wrapper sets --target and
|
|
308
|
+
# --sysroot but does not force a linker. Debian's default linker for
|
|
309
|
+
# clang's driver is `/usr/bin/ld` (GNU binutils, x86_64-only), which
|
|
310
|
+
# rejects the riscv64 `elf64lriscv` emulation and aborts the very first
|
|
311
|
+
# CMake C-compiler probe. Force lld via -fuse-ld=lld on every link line.
|
|
312
|
+
# We do this through CMAKE_*_LINKER_FLAGS (not C/CXX flags) so the flag
|
|
313
|
+
# never reaches a compile-only invocation where clang would warn it is
|
|
314
|
+
# unused.
|
|
315
|
+
WK_LINKER_FLAGS="-fuse-ld=lld"
|
|
316
|
+
|
|
317
|
+
cmake \
|
|
318
|
+
-G Ninja \
|
|
319
|
+
-DCMAKE_BUILD_TYPE=Release \
|
|
320
|
+
-DCMAKE_SYSTEM_NAME=Linux \
|
|
321
|
+
-DCMAKE_SYSTEM_PROCESSOR=riscv64 \
|
|
322
|
+
-DCMAKE_SYSROOT=/sysroot \
|
|
323
|
+
-DCMAKE_FIND_ROOT_PATH=/sysroot \
|
|
324
|
+
-DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER \
|
|
325
|
+
-DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY \
|
|
326
|
+
-DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY \
|
|
327
|
+
-DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ONLY \
|
|
328
|
+
-DCMAKE_C_COMPILER=/opt/cross/bin/riscv64-linux-musl-clang \
|
|
329
|
+
-DCMAKE_CXX_COMPILER=/opt/cross/bin/riscv64-linux-musl-clang++ \
|
|
330
|
+
-DCMAKE_AR=/usr/local/bin/llvm-ar \
|
|
331
|
+
-DCMAKE_RANLIB=/usr/local/bin/llvm-ranlib \
|
|
332
|
+
-DCMAKE_LINKER=/usr/local/bin/ld.lld \
|
|
333
|
+
-DCMAKE_C_FLAGS="-march=rv64gc -mabi=lp64d -O3 -I$SRC_ROOT/WebKit/Source/bmalloc/mimalloc/mimalloc/include" \
|
|
334
|
+
-DCMAKE_CXX_FLAGS="-march=rv64gc -mabi=lp64d -O3 -I$SRC_ROOT/WebKit/Source/bmalloc/mimalloc/mimalloc/include" \
|
|
335
|
+
-DCMAKE_EXE_LINKER_FLAGS_INIT="${WK_LINKER_FLAGS}" \
|
|
336
|
+
-DCMAKE_SHARED_LINKER_FLAGS_INIT="${WK_LINKER_FLAGS}" \
|
|
337
|
+
-DCMAKE_MODULE_LINKER_FLAGS_INIT="${WK_LINKER_FLAGS}" \
|
|
338
|
+
-DPORT=JSCOnly \
|
|
339
|
+
-DENABLE_STATIC_JSC=ON \
|
|
340
|
+
-DUSE_BUN_JSC_ADDITIONS=ON \
|
|
341
|
+
-DUSE_THIN_ARCHIVES=OFF \
|
|
342
|
+
-DUSE_SYSTEM_MALLOC=OFF \
|
|
343
|
+
"${WK_JIT_FLAGS[@]}" \
|
|
344
|
+
"$SRC_ROOT/WebKit" \
|
|
345
|
+
|| die "WebKit cmake configure failed. If Baseline JIT, retry with BUN_RISCV64_FORCE_CLOOP=1."
|
|
346
|
+
|
|
347
|
+
ninja -j"$JOBS" jsc \
|
|
348
|
+
|| die "WebKit ninja build failed. See webkit-patches/README.md if the failure is in offlineasm or LLInt."
|
|
349
|
+
prepare_ninja_object_dirs "$WEBKIT_BUILD_DIR/build.ninja"
|
|
350
|
+
|
|
351
|
+
# ──────────────────────────────────────────────────────────────────────────
|
|
352
|
+
# Stage 5: configure + build Bun.
|
|
353
|
+
# ──────────────────────────────────────────────────────────────────────────
|
|
354
|
+
log "── stage 5: Bun build ───────────────────────────────────────────────"
|
|
355
|
+
|
|
356
|
+
cd "$SRC_ROOT/bun"
|
|
357
|
+
|
|
358
|
+
# Bun's build entrypoint is `bun bd` (build driver). Force flags through
|
|
359
|
+
# env so the bun-patches/ series can stay smaller — anything we can pass
|
|
360
|
+
# at invocation time, we do.
|
|
361
|
+
export BUN_WEBKIT_PATH="$SRC_ROOT/WebKit"
|
|
362
|
+
export BUN_RUST_TARGET=riscv64gc-unknown-linux-musl
|
|
363
|
+
export BUN_CC=/opt/cross/bin/riscv64-linux-musl-clang
|
|
364
|
+
export BUN_CXX=/opt/cross/bin/riscv64-linux-musl-clang++
|
|
365
|
+
export BUN_AR=/usr/local/bin/llvm-ar
|
|
366
|
+
export BUN_RANLIB=/usr/local/bin/llvm-ranlib
|
|
367
|
+
export BUN_LD=/usr/local/bin/ld.lld
|
|
368
|
+
export BUN_STRIP=/usr/local/bin/llvm-strip
|
|
369
|
+
export BUN_SYSROOT=/sysroot
|
|
370
|
+
export BUN_DISABLE_TINYCC=1
|
|
371
|
+
|
|
372
|
+
BUN_BUILD_DIR="$SRC_ROOT/bun/build/release"
|
|
373
|
+
rm -rf "$BUN_BUILD_DIR"
|
|
374
|
+
mkdir -p "$BUN_BUILD_DIR/deps"
|
|
375
|
+
ln -s "$WEBKIT_BUILD_DIR" "$BUN_BUILD_DIR/deps/WebKit"
|
|
376
|
+
|
|
377
|
+
# Configure Bun without letting its dependency graph reconfigure WebKit. The
|
|
378
|
+
# riscv64 patch series marks WebKit as an external, prebuilt dependency, so the
|
|
379
|
+
# completed C_LOOP build above is consumed from build/release/deps/WebKit.
|
|
380
|
+
bun scripts/build.ts \
|
|
381
|
+
--configure-only \
|
|
382
|
+
--profile=release \
|
|
383
|
+
--arch=riscv64 \
|
|
384
|
+
--abi=musl \
|
|
385
|
+
--webkit=local \
|
|
386
|
+
|| die "Bun configure failed. See bun-patches/README.md."
|
|
387
|
+
|
|
388
|
+
configure_targets="$(ninja -C "$BUN_BUILD_DIR" -t targets all | awk -F: '/^configure-/ && $1 != "configure-WebKit" {print $1}')"
|
|
389
|
+
if [ -n "$configure_targets" ]; then
|
|
390
|
+
# shellcheck disable=SC2086
|
|
391
|
+
ninja -C "$BUN_BUILD_DIR" -j"$JOBS" $configure_targets \
|
|
392
|
+
|| die "Bun dependency configure failed."
|
|
393
|
+
fi
|
|
394
|
+
|
|
395
|
+
prepare_ninja_object_dirs "$BUN_BUILD_DIR/build.ninja"
|
|
396
|
+
find "$BUN_BUILD_DIR/deps" -name build.ninja -print \
|
|
397
|
+
| while IFS= read -r ninja_file; do
|
|
398
|
+
prepare_ninja_object_dirs "$ninja_file"
|
|
399
|
+
done
|
|
400
|
+
|
|
401
|
+
ninja -C "$BUN_BUILD_DIR" -j"$JOBS" \
|
|
402
|
+
|| die "Bun build failed. See bun-patches/README.md."
|
|
403
|
+
|
|
404
|
+
# ──────────────────────────────────────────────────────────────────────────
|
|
405
|
+
# Stage 6: package + smoke-test under QEMU.
|
|
406
|
+
# ──────────────────────────────────────────────────────────────────────────
|
|
407
|
+
log "── stage 6: package + smoke test ────────────────────────────────────"
|
|
408
|
+
|
|
409
|
+
BUN_BIN="$SRC_ROOT/bun/build/release/bun"
|
|
410
|
+
[ -x "$BUN_BIN" ] || die "Built bun not found at $BUN_BIN"
|
|
411
|
+
|
|
412
|
+
file "$BUN_BIN"
|
|
413
|
+
# musl-static link: should report "statically linked" or "interpreter
|
|
414
|
+
# /lib/ld-musl-riscv64.so.1". We do not enforce one or the other — Bun's
|
|
415
|
+
# upstream zips are dynamically linked against musl on Alpine, so we
|
|
416
|
+
# match that.
|
|
417
|
+
"$BUN_BIN" --help >/dev/null 2>&1 || true # parse-only sanity (host can't exec it directly)
|
|
418
|
+
|
|
419
|
+
log "Smoke test: qemu-riscv64-static --version"
|
|
420
|
+
qemu-riscv64-static --version | head -1
|
|
421
|
+
|
|
422
|
+
log "Smoke test: qemu-riscv64-static bun --version"
|
|
423
|
+
# QEMU needs to find ld-musl-riscv64.so.1; -L /sysroot provides that.
|
|
424
|
+
QEMU_OUT="$(qemu-riscv64-static -L /sysroot "$BUN_BIN" --version 2>&1)" || \
|
|
425
|
+
die "qemu-riscv64-static bun --version failed: $QEMU_OUT"
|
|
426
|
+
log " → bun reports: $QEMU_OUT"
|
|
427
|
+
|
|
428
|
+
log "Smoke test: qemu-riscv64-static bun -e"
|
|
429
|
+
QEMU_EVAL_OUT="$(qemu-riscv64-static -L /sysroot "$BUN_BIN" -e 'console.log("bun-riscv64-eval-ok", process.arch)' 2>&1)" || \
|
|
430
|
+
die "qemu-riscv64-static bun -e failed: $QEMU_EVAL_OUT"
|
|
431
|
+
case "$QEMU_EVAL_OUT" in
|
|
432
|
+
*"bun-riscv64-eval-ok riscv64"*) ;;
|
|
433
|
+
*) die "qemu-riscv64-static bun -e returned unexpected output: $QEMU_EVAL_OUT" ;;
|
|
434
|
+
esac
|
|
435
|
+
log " → eval reports: $QEMU_EVAL_OUT"
|
|
436
|
+
|
|
437
|
+
log "Smoke test: qemu-riscv64-static bun <script.js>"
|
|
438
|
+
SMOKE_DIR="$(mktemp -d /tmp/bun-riscv64-smoke.XXXXXX)"
|
|
439
|
+
trap 'rm -rf "$SMOKE_DIR"' EXIT
|
|
440
|
+
SMOKE_JS="$SMOKE_DIR/entrypoint.js"
|
|
441
|
+
printf '%s\n' 'console.log("bun-riscv64-script-ok", process.arch);' > "$SMOKE_JS"
|
|
442
|
+
QEMU_SCRIPT_OUT="$(qemu-riscv64-static -L /sysroot "$BUN_BIN" "$SMOKE_JS" 2>&1)" || \
|
|
443
|
+
die "qemu-riscv64-static bun script entrypoint failed: $QEMU_SCRIPT_OUT"
|
|
444
|
+
case "$QEMU_SCRIPT_OUT" in
|
|
445
|
+
*"bun-riscv64-script-ok riscv64"*) ;;
|
|
446
|
+
*) die "qemu-riscv64-static bun script entrypoint returned unexpected output: $QEMU_SCRIPT_OUT" ;;
|
|
447
|
+
esac
|
|
448
|
+
log " → script reports: $QEMU_SCRIPT_OUT"
|
|
449
|
+
|
|
450
|
+
# Layout matches upstream's bun-linux-x64-musl.zip:
|
|
451
|
+
# bun-linux-riscv64-musl/
|
|
452
|
+
# bun
|
|
453
|
+
STAGE_DIR="$SRC_ROOT/stage/bun-linux-riscv64-musl"
|
|
454
|
+
mkdir -p "$STAGE_DIR"
|
|
455
|
+
install -m 0755 "$BUN_BIN" "$STAGE_DIR/bun"
|
|
456
|
+
|
|
457
|
+
ZIP_NAME="bun-linux-riscv64-musl.zip"
|
|
458
|
+
ZIP_PATH="$ARTIFACT_DIR/$ZIP_NAME"
|
|
459
|
+
cd "$SRC_ROOT/stage"
|
|
460
|
+
rm -f "$ZIP_PATH"
|
|
461
|
+
zip -q -r "$ZIP_PATH" "bun-linux-riscv64-musl"
|
|
462
|
+
|
|
463
|
+
SHA="$(sha256sum "$ZIP_PATH" | awk '{print $1}')"
|
|
464
|
+
echo "$SHA $ZIP_NAME" > "$ZIP_PATH.sha256"
|
|
465
|
+
|
|
466
|
+
log "── done ─────────────────────────────────────────────────────────────"
|
|
467
|
+
log "Artifact: $ZIP_PATH"
|
|
468
|
+
log "SHA256 : $SHA"
|
|
469
|
+
log "bun --version: $QEMU_OUT"
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
diff --git a/scripts/build/config.ts b/scripts/build/config.ts
|
|
2
|
+
index fd527a2..00fea58 100644
|
|
3
|
+
--- a/scripts/build/config.ts
|
|
4
|
+
+++ b/scripts/build/config.ts
|
|
5
|
+
@@ -18,7 +18,7 @@ import { cyan, dim, green } from "./tty.ts";
|
|
6
|
+
import { ZIG_COMMIT } from "./zig.ts";
|
|
7
|
+
|
|
8
|
+
export type OS = "linux" | "darwin" | "windows" | "freebsd";
|
|
9
|
+
-export type Arch = "x64" | "aarch64";
|
|
10
|
+
+export type Arch = "x64" | "aarch64" | "riscv64";
|
|
11
|
+
export type Abi = "gnu" | "musl" | "android";
|
|
12
|
+
export type BuildType = "Debug" | "Release" | "RelWithDebInfo" | "MinSizeRel";
|
|
13
|
+
export type BuildMode = "full" | "cpp-only" | "zig-only" | "link-only";
|
|
14
|
+
@@ -79,6 +79,8 @@ export interface Config {
|
|
15
|
+
kqueue: boolean;
|
|
16
|
+
x64: boolean;
|
|
17
|
+
arm64: boolean;
|
|
18
|
+
+ /** RISC-V 64 (rv64gc/lp64d). Cross-compile only — no host build. */
|
|
19
|
+
+ riscv64: boolean;
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* What's running the build. Differs from os/arch/windows (target) in
|
|
23
|
+
@@ -365,9 +367,13 @@ export function detectHost(): Host {
|
|
24
|
+
? "x64"
|
|
25
|
+
: a === "arm64"
|
|
26
|
+
? "aarch64"
|
|
27
|
+
- : (() => {
|
|
28
|
+
- throw new BuildError(`Unsupported host architecture: ${a}`, { hint: "Bun builds on x64 or arm64" });
|
|
29
|
+
- })();
|
|
30
|
+
+ : a === "riscv64"
|
|
31
|
+
+ ? "riscv64"
|
|
32
|
+
+ : (() => {
|
|
33
|
+
+ throw new BuildError(`Unsupported host architecture: ${a}`, {
|
|
34
|
+
+ hint: "Bun builds on x64, arm64, or riscv64",
|
|
35
|
+
+ });
|
|
36
|
+
+ })();
|
|
37
|
+
|
|
38
|
+
return { os, arch, exeSuffix: os === "windows" ? ".exe" : "" };
|
|
39
|
+
}
|
|
40
|
+
@@ -542,6 +548,7 @@ export function resolveConfig(partial: PartialConfig, toolchain: Toolchain): Con
|
|
41
|
+
const kqueue = darwin || freebsd;
|
|
42
|
+
const x64 = arch === "x64";
|
|
43
|
+
const arm64 = arch === "aarch64";
|
|
44
|
+
+ const riscv64 = arch === "riscv64";
|
|
45
|
+
|
|
46
|
+
// Platform file conventions — MSVC style on Windows, Unix everywhere else.
|
|
47
|
+
const exeSuffix = windows ? ".exe" : "";
|
|
48
|
+
@@ -619,7 +626,7 @@ export function resolveConfig(partial: PartialConfig, toolchain: Toolchain): Con
|
|
49
|
+
// TinyCC: off on Windows ARM64 (not supported), Android (no upstream
|
|
50
|
+
// bionic support; FFI cc() falls back to dlopen-only), and FreeBSD
|
|
51
|
+
// (oven-sh/tinycc has no FreeBSD target).
|
|
52
|
+
- const tinycc = partial.tinycc ?? !((windows && arm64) || abi === "android" || freebsd);
|
|
53
|
+
+ const tinycc = partial.tinycc ?? !((windows && arm64) || abi === "android" || freebsd || riscv64);
|
|
54
|
+
|
|
55
|
+
const valgrind = partial.valgrind ?? false;
|
|
56
|
+
const fuzzilli = partial.fuzzilli ?? false;
|
|
57
|
+
@@ -652,6 +659,9 @@ export function resolveConfig(partial: PartialConfig, toolchain: Toolchain): Con
|
|
58
|
+
|
|
59
|
+
// ─── Validation ───
|
|
60
|
+
assert(!baseline || x64, "baseline=true requires arch=x64 (baseline disables AVX which is x64-only)");
|
|
61
|
+
+ // riscv64 only supported on linux-musl right now (cross-compile target
|
|
62
|
+
+ // for the Android agent; Alpine v3.21 sysroot). Reassess when adding glibc.
|
|
63
|
+
+ assert(!riscv64 || (linux && abi === "musl"), "arch=riscv64 currently requires os=linux abi=musl");
|
|
64
|
+
assert(!valgrind || linux, "valgrind=true requires os=linux");
|
|
65
|
+
assert(!(asan && valgrind), "Cannot enable both asan and valgrind simultaneously");
|
|
66
|
+
assert(os !== "linux" || abi !== undefined, "Linux builds require an abi (gnu, musl, or android)");
|
|
67
|
+
@@ -762,6 +772,7 @@ export function resolveConfig(partial: PartialConfig, toolchain: Toolchain): Con
|
|
68
|
+
kqueue,
|
|
69
|
+
x64,
|
|
70
|
+
arm64,
|
|
71
|
+
+ riscv64,
|
|
72
|
+
host,
|
|
73
|
+
exeSuffix,
|
|
74
|
+
objSuffix,
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
diff --git a/scripts/build/flags.ts b/scripts/build/flags.ts
|
|
2
|
+
index df55580..b05828d 100644
|
|
3
|
+
--- a/scripts/build/flags.ts
|
|
4
|
+
+++ b/scripts/build/flags.ts
|
|
5
|
+
@@ -56,6 +56,11 @@ export const cpuTargetFlags: Flag[] = [
|
|
6
|
+
when: c => c.windows && c.arm64,
|
|
7
|
+
desc: "ARM64 Windows: clang-cl prefix required (/clang: passes to clang)",
|
|
8
|
+
},
|
|
9
|
+
+ {
|
|
10
|
+
+ flag: ["-march=rv64gc", "-mabi=lp64d"],
|
|
11
|
+
+ when: c => c.linux && c.riscv64,
|
|
12
|
+
+ desc: "RISC-V 64 Linux: rv64gc (IMAFDC + Zicsr/Zifencei) + lp64d ABI",
|
|
13
|
+
+ },
|
|
14
|
+
{
|
|
15
|
+
flag: "-march=nehalem",
|
|
16
|
+
when: c => c.x64 && c.baseline,
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
diff --git a/scripts/build/zig.ts b/scripts/build/zig.ts
|
|
2
|
+
index 2e0129e..25bf5a7 100644
|
|
3
|
+
--- a/scripts/build/zig.ts
|
|
4
|
+
+++ b/scripts/build/zig.ts
|
|
5
|
+
@@ -89,7 +89,7 @@ export function zigObjectPaths(cfg: Config): string[] {
|
|
6
|
+
* not `x64`/`arm64`.
|
|
7
|
+
*/
|
|
8
|
+
export function zigTarget(cfg: Config): string {
|
|
9
|
+
- const arch = cfg.x64 ? "x86_64" : "aarch64";
|
|
10
|
+
+ const arch = cfg.x64 ? "x86_64" : cfg.riscv64 ? "riscv64" : "aarch64";
|
|
11
|
+
if (cfg.darwin) return `${arch}-macos-none`;
|
|
12
|
+
if (cfg.windows) return `${arch}-windows-msvc`;
|
|
13
|
+
if (cfg.freebsd) {
|
|
14
|
+
@@ -196,6 +196,12 @@ export function zigCpu(cfg: Config): string {
|
|
15
|
+
if (cfg.windows) return "cortex_a76";
|
|
16
|
+
return "native";
|
|
17
|
+
}
|
|
18
|
+
+ if (cfg.riscv64) {
|
|
19
|
+
+ // baseline_rv64 = imafdc (rv64gc). zig's generic_rv64 omits Zalrsc which
|
|
20
|
+
+ // musl's atomic_arch.h requires. Native target would let the build host
|
|
21
|
+
+ // (x86_64) pick — wrong for cross-compile.
|
|
22
|
+
+ return "baseline_rv64";
|
|
23
|
+
+ }
|
|
24
|
+
// x64
|
|
25
|
+
return cfg.baseline ? "nehalem" : "haswell";
|
|
26
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
diff --git a/scripts/build/config.ts b/scripts/build/config.ts
|
|
2
|
+
index 00fea58..64f50f9 100644
|
|
3
|
+
--- a/scripts/build/config.ts
|
|
4
|
+
+++ b/scripts/build/config.ts
|
|
5
|
+
@@ -802,7 +802,11 @@ export function resolveConfig(partial: PartialConfig, toolchain: Toolchain): Con
|
|
6
|
+
timeTrace: partial.timeTrace ?? false,
|
|
7
|
+
ci,
|
|
8
|
+
buildkite,
|
|
9
|
+
- webkit: partial.webkit ?? "prebuilt",
|
|
10
|
+
+ // WebKit mode:
|
|
11
|
+
+ // riscv64: force local (no prebuilt tarball exists for riscv64;
|
|
12
|
+
+ // BUN_WEBKIT_PATH must point at a built WebKitBuild dir).
|
|
13
|
+
+ // else: prebuilt unless overridden.
|
|
14
|
+
+ webkit: partial.webkit ?? (riscv64 ? "local" : "prebuilt"),
|
|
15
|
+
cwd,
|
|
16
|
+
buildDir,
|
|
17
|
+
codegenDir,
|
|
18
|
+
diff --git a/scripts/build/deps/webkit.ts b/scripts/build/deps/webkit.ts
|
|
19
|
+
index c940da8..c5210de 100644
|
|
20
|
+
--- a/scripts/build/deps/webkit.ts
|
|
21
|
+
+++ b/scripts/build/deps/webkit.ts
|
|
22
|
+
@@ -70,6 +70,11 @@ function prebuiltSuffix(cfg: Config): string {
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
function prebuiltUrl(cfg: Config): string {
|
|
26
|
+
+ if (cfg.riscv64) {
|
|
27
|
+
+ throw new Error(
|
|
28
|
+
+ "deps/webkit: no prebuilt WebKit tarball for riscv64. Use --webkit=local with BUN_WEBKIT_PATH set.",
|
|
29
|
+
+ );
|
|
30
|
+
+ }
|
|
31
|
+
const os = cfg.windows ? "windows" : cfg.darwin ? "macos" : cfg.freebsd ? "freebsd" : "linux";
|
|
32
|
+
const arch = cfg.arm64 ? "arm64" : "amd64";
|
|
33
|
+
const name = `bun-webkit-${os}-${arch}${prebuiltSuffix(cfg)}`;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
diff --git a/scripts/build/deps/tinycc.ts b/scripts/build/deps/tinycc.ts
|
|
2
|
+
index 499a83b..2b3544f 100644
|
|
3
|
+
--- a/scripts/build/deps/tinycc.ts
|
|
4
|
+
+++ b/scripts/build/deps/tinycc.ts
|
|
5
|
+
@@ -31,6 +31,11 @@ export const tinycc: Dependency = {
|
|
6
|
+
patches: ["patches/tinycc/tcc.h.patch"],
|
|
7
|
+
|
|
8
|
+
build: cfg => {
|
|
9
|
+
+ if (cfg.riscv64) {
|
|
10
|
+
+ throw new Error(
|
|
11
|
+
+ "deps/tinycc: oven-sh/tinycc has no riscv64 backend. Build with --tinycc=off (default on riscv64).",
|
|
12
|
+
+ );
|
|
13
|
+
+ }
|
|
14
|
+
const sources = ["libtcc.c", "tccpp.c", "tccgen.c", "tccdbg.c", "tccelf.c", "tccasm.c", "tccrun.c"];
|
|
15
|
+
if (cfg.arm64) sources.push("arm64-gen.c", "arm64-link.c", "arm64-asm.c");
|
|
16
|
+
else sources.push("x86_64-gen.c", "x86_64-link.c", "i386-asm.c");
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
diff --git a/scripts/build.ts b/scripts/build.ts
|
|
2
|
+
index f8a3787..98b7ed2 100644
|
|
3
|
+
--- a/scripts/build.ts
|
|
4
|
+
+++ b/scripts/build.ts
|
|
5
|
+
@@ -3,6 +3,10 @@
|
|
6
|
+
*
|
|
7
|
+
* bun scripts/build.ts --profile=debug
|
|
8
|
+
* bun scripts/build.ts --profile=release
|
|
9
|
+
+ * bun scripts/build.ts --profile=release --arch=riscv64 --abi=musl
|
|
10
|
+
+ * # cross-compile to linux-riscv64-musl. Requires:
|
|
11
|
+
+ * # - $BUN_WEBKIT_PATH pointing at a built WebKitBuild dir
|
|
12
|
+
+ * # - cross-clang + riscv64-linux-musl sysroot in PATH
|
|
13
|
+
* bun scripts/build.ts --asan=off test foo.test.ts # override + build + run
|
|
14
|
+
* bun scripts/build.ts --target tinycc # build one dep
|
|
15
|
+
* bun scripts/build.ts --configure-only # emit ninja, don't run
|