OpenSSF Scorecard / Scorecard analysis (push) Waiting to run
CI / Build & test (Node 20) (push) Canceled after 0s
CI / Build & test (Node 24) (push) Canceled after 0s
CI / Build & test (push) Canceled after 0s
CodeQL / Analyze (javascript-typescript) (push) Canceled after 0s
Security / Secret scan (gitleaks) (push) Canceled after 0s
Security / Dependency scan (OSV-Scanner) (push) Canceled after 0s
Security / IaC/config scan (Trivy) (push) Canceled after 0s
Security / License compliance scan (Trivy) (push) Canceled after 0s
Two separate failures on the first run. Linux could not compile the native module: it needs libpipewire-0.3-dev, which its README states and the apt list omitted. Windows built everything, native module verified, then died on the upload with a bare JSONDecodeError. The cause was curl -sf, which discards the error body, so a failed release creation surfaced as an empty pipe and no reason at all. The step now captures status and body and prints them, treats a failed create as possibly the other matrix job having just created it, and passes target_commitish so the tag can be created. Embedded python gave way to jq: a multi-line heredoc inside a YAML literal block ends the block at the first unindented line, which is how the file became invalid YAML in the first place.