coldpass

ancsemi/Haven-Desktop

GitHub ↗ · How this check works

Per-setup public labels: Linux / Haiku: Works

Static status badge · SVG · read-only JSON. Embed with ![Coldpass status](https://coldpass.dev/badge/ancsemi--Haven-Desktop.svg).

chatdesktop-appdiscordgaminghavennodejs

Works

Only older checks are saved; no current product test.

Answers apply to each recorded setup, revision and operation. Earlier observations remain in Run details.

Tested on Linux
PlatformHaikuLuna
Linuxyes

Linux / Haiku 5.5: yes · Oct 17, 2026 · b70e9fb65870 · claude-code / 2.1.300 (Claude Code)
Recorded operation: /opt/node22/bin/node -e 'const m=require('"'"'/workspace/native/build/Release/haven_audio.node'"'"'); console.log(JSON.stringify({isSupported:m.isSupported}))'

Needs keys or browser
None seen
Setup time
1 min 56 s to install, 8 s to first use
Issue
none found in recorded check

Safety: no observations were recorded for the selected revision. Functional results do not establish a safety result.

Repair history and test corrections
Current diagnosis: unknown · resolved

superseded; repo ancsemi/Haven-Desktop has a later non-harness result a recorded run

Repair record fix-ec124373000efc66e795 · current status JSON. Original run outcomes remain unchanged.

Failed run: ancsemi/Haven-Desktop · Oct 16, 2026 · Our test failed; no repo verdict.

Repair development: ancsemi/Haven-Desktop · Oct 17, 2026 · Repair work (development) · not an initial-trial result.

Test-repair rerun: ancsemi/Haven-Desktop · Oct 17, 2026 · Checked operation passed.

Run details

Haiku 5.5

Native agent · Checked operation passed

Checked operation /opt/node22/bin/node -e 'const m=require('"'"'/workspace/native/build/Release/haven_audio.node'"'"'); console.log(JSON.stringify({isSupported:m.isSupported()}))'

Agent-reported scope: Installed Haven Desktop dependencies, built the native per-app audio addon (npm run build:native), loaded it in Node 22 and called its isSupported() export, which returned false as expected for this headless VM.

Run details
run
ancsemi--Haven-Desktop-claude-haiku-5-5-1792212209743659541
date
Oct 17, 2026
time to working
153.4s
product hosting / execution
Local command in the guest
recorded operation scope
product operation
model
claude-haiku-5-5
agent / version
claude-code / 2.1.300 (Claude Code)
platform
linux
reported cost
$0.006742
Recorded source
https://github.com/ancsemi/Haven-Desktop
Tool transport
mcp-assigned-vm
Test version
readme-3691798994c35a4248db43f18225b5f420ad493d7ca35c5ea2e8f1d0d89e7c20
revision
b70e9fb65870a437bf3dcc3dcb7f78b6a0f87504

Agent-reported additional finding (agent-reported): Optional: fix src/i18n catalogs so npm run i18n:check passes (remove unreferenced screenPicker.* keys and add missing pt-BR keys). Run a PulseAudio or PipeWire server to get isSupported() true and exercise real capture. Run the Electron GUI with a display or use the shared CDP endpoint for browser-based checks.

What the agent did

Installed Haven Desktop dependencies, built the native per-app audio addon (npm run build:native), loaded it in Node 22 and called its isSupported() export, which returned false as expected for this headless VM.

apt-get install build-essential, libpulse-dev, libx11-dev, libxtst-dev, libxinerama-dev, libxt-dev, libxrandr-dev, libxfixes-dev (README: Prerequisites, Linux)
Installed Node v22.23.2 from nodejs.org tarball to /opt/node22 (README: Prerequisites, Node.js 22.23.2+)
npm install (README: Quick Start (Terminal)), rc=0
npm run build:native (README: Quick Start (Terminal)), rc=0, produced native/build/Release/haven_audio.node
node -e require haven_audio.node; isSupported() -> false (README: How Per-App Audio Works, Linux PulseAudio path; false is expected without a sound server)
npm run i18n:check (README build script), rc=1, pre-existing unreferenced/missing catalog keys; not fixed, source unchanged

No product verdict. Run record.

No product verdict. Run record.

Repair work and diagnoses (1)

Haiku 5.5

Native agent · Repair work (development) · not an initial-trial result

Operation / attempted scope /opt/node22/bin/node -e 'const m=require('"'"'/workspace/native/build/Release/haven_audio.node'"'"'); console.log(JSON.stringify({isSupported:m.isSupported(),exports:Object.keys(m).sort()}))'

Agent-reported scope: Load the Linux per-application audio native addon (native/build/Release/haven_audio.node) built by `npm run build:native`, call isSupported() and check the exported API (cleanup, getAudioApplications, getWindowProcesses, isSupported, optOutOfDucking, startCapture, stopCapture). Output: {"isSupported":true,...}. Replayable as .coldpass/probe.json.

Run details
run
ancsemi--Haven-Desktop-claude-haiku-5-5-1792209252394216373
date
Oct 17, 2026
time to working
280.9s (recorded; checker proof unavailable)
product hosting / execution
Local command in the guest
recorded operation scope
product operation
model
claude-haiku-5-5
agent / version
claude-code / 2.1.300 (Claude Code)
platform
linux
reported cost
$0.016633
Recorded source
https://github.com/ancsemi/Haven-Desktop
Tool transport
mcp-assigned-vm
Test version
readme-4d371155405b0e1c900a3da2fbabb0c02b8391c08080b1529dd86021a2355e8e
revision
b70e9fb65870a437bf3dcc3dcb7f78b6a0f87504
Current diagnosis: unknown · resolved

superseded; repo ancsemi/Haven-Desktop has a later non-harness result a recorded run

Repair record fix-ec124373000efc66e795 · current status JSON. Original run outcomes remain unchanged.

Failed run: ancsemi/Haven-Desktop · Oct 16, 2026 · Our test failed; no repo verdict.

Repair development: ancsemi/Haven-Desktop · Oct 17, 2026 · Repair work (development) · not an initial-trial result.

Test-repair rerun: ancsemi/Haven-Desktop · Oct 17, 2026 · Checked operation passed.

Double-checks failed run: ancsemi/Haven-Desktop · Oct 16, 2026.

Fix: fix-ec124373000efc66e795.

What the agent did

Load the Linux per-application audio native addon (native/build/Release/haven_audio.node) built by `npm run build:native`, call isSupported() and check the exported API (cleanup, getAudioApplications, getWindowProcesses, isSupported, optOutOfDucking, startCapture, stopCapture). Output: {"isSupported":true,...}. Replayable as .coldpass/probe.json.

Installed Ubuntu 24.04 prerequisites via apt: xz-utils, build-essential, libpulse-dev, libx11-dev, libxtst-dev, libxinerama-dev, libxt-dev, libxrandr-dev, libxfixes-dev, python3 (README: Building from Source > Prerequisites, Linux)
Installed Node.js 22.23.2 (sha256 verified against nodejs.org SHASUMS256) into /opt/node22 (README: Prerequisites, Node.js 22.23.2+)
npm install (README: Quick Start (Terminal)); postinstall electron-builder install-app-deps succeeded (uiohook-napi)
npm run build:native (README: Quick Start (Terminal)); built native/build/Release/haven_audio.node
Verified the earlier stuck step: node -e require(haven_audio.node) now loads and exports the 7 expected functions
Installed pulseaudio + pulseaudio-utils and started a daemon (README: Supported Platforms, Linux PulseAudio); isSupported() then returned true
Restored package-lock.json to the pinned-commit bytes after npm install rewrote it (CRLF to LF, content otherwise identical); verified workspace matches pinned commit b70e9fb65870a437bf3dcc3dcb7f78b6a0f87504 except node_modules and native/build