Skip to content

Tracing unavailable on linux-arm64 — VSIX ships x86-64 @vscode/sqlite3 native binary #550

Description

@truythu169

Summary

On the linux-arm64 build (v1.6.2 and v1.6.3), the Tracing feature never appears.
isTracingSupported() fails because @vscode/sqlite3's native module in the VSIX is
compiled for x86-64, so it can't load on arm64. As a result the
ai-mlstudio.tracing.* commands (startCollector/stopCollector/open/showStatus) are
never registered and the collector never listens on 4317.

Environment

  • Host: Linux aarch64 (arm64), VS Code Server, Node v24.15.0 (ABI 137)
  • Extension: ms-windows-ai-studio.windows-ai-studio 1.6.3 (linux-arm64); also reproduced on 1.6.2

Evidence

Path: dist/node_modules/@vscode/sqlite3/build/Release/vscode-sqlite3.node

$ file vscode-sqlite3.node
ELF 64-bit LSB shared object, x86-64, ... not stripped ← wrong arch

$ readelf -h vscode-sqlite3.node | grep Machine
Machine: Advanced Micro Devices X86-64

Package metadata: @vscode/sqlite3 5.1.6-vscode, N-API (node-addon-api ^4.2.0, napi_versions [3,6]).

Root cause (suspected)

The platform-targeted VSIX is packaged on an x86-64 CI agent and bundles the host-arch
prebuilt native module instead of the arm64 one. Likely affects all non-x64 targets.

Workaround (confirmed)

Replace with the matching arm64 N-API build (ABI-independent, no compile):
download napi-v6-linux-glibc-arm64 sqlite3 5.1.6 and overwrite vscode-sqlite3.node.
Reload window → tracing commands register and work.

Suggested fix

  • Install the target-arch prebuilt before vsce package --target <arch>
    (e.g. npm_config_arch / prebuild-install --arch).
  • Add a CI check: after packaging each target, assert the bundled .node ELF Machine
    matches the target arch.

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs attentionThe issue needs contributor's attention

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions