Bugfix: Three GitHub Actions CI failures in Vitto Desktop release: L...
Documentation for Sessions
🐛 Bugfix: Three GitHub Actions CI failures in Vitto Desktop release: L...
Date: 2026-02-25
Time: 17:50:50 UTC
Session: gspace1-141.8
Agent: angular
Confidence: 97%
Status: ✅ Documented
📋 Decision Context
Question:
Three GitHub Actions CI failures in Vitto Desktop release: Linux 403, Windows NX, macOS updater key decode
Task: Fix all Vitto Desktop CI release failures
🎯 Decision Made
Chosen:
Three separate fixes: (1) Linux: add NODE_AUTH_TOKEN + registry-url + packages:read, (2) Windows: add shell:bash to NX build step, (3) macOS: TAURI_SIGNING_PRIVATE_KEY must be base64-encoded file content, not raw file content
Options Considered:
- Fix all three
- Fix one at a time
- Skip Linux/Windows and ship macOS only
💭 Reasoning
Root causes at depth: (1) Linux 403 — GitHub Actions Linux runners need explicit npm auth token even for public packages when registry-url is not configured; macOS/Windows runners happened to have implicit auth. (2) Windows NX — yarn resolves nx as ./scripts/nx which is a Unix shell script; Windows cmd.exe cannot run it. shell:bash forces Git Bash which can. (3) macOS key decode — TAURI_SIGNING_PRIVATE_KEY was stored as raw .key file content (two lines: untrusted comment + base64 key with = padding). The minisign decoder processes it as base64 and chokes on = at offset 276 because = is only valid at END of base64, not mid-string. Must store as base64 -i vitto.key | tr -d newlines. The Apple cert signing DID work (notarization accepted) — only the updater .sig step failed. These are three completely independent failures in the same workflow run.
📁 Files Involved
.github/workflows/release-vitto-desktop.yml
🔗 Related
- Decision ID:
dev_1772041850920_hs0o2rq - Session: 141
- Workspace: gspace1
Auto-generated by MCP Smart Consolidation