Skip to content

Validation-Executable-Error: Squirrel (Update.exe / squirrel.exe) and app exe exit -1 during WinGetSvc validation (PhraseVault) #323262

@ptmrio

Description

@ptmrio

Problem

My submission PR fails repo validation with Validation-Executable-Error even though the installer works locally.

PR: #319203
Pipeline: WinGetSvc-Validation-122-319203-20251215-1
Validator build: 1184

Failure output:
Executable C:\Users\Validator\AppData\Local\PhraseVault\Update.exe returned exit code: -1
Executable C:\Users\Validator\AppData\Local\PhraseVault\PhraseVault.exe returned exit code: -1
Executable C:\Users\Validator\AppData\Local\PhraseVault\app-2.2.2\squirrel.exe returned exit code: -1
(0xFFFFFFFF / 4294967295 / “Cancel”)

Package / installer details

  • App: PhraseVault
  • Tech: Electron Forge + Squirrel.Windows (creates PhraseVault.exe + Update.exe + squirrel.exe)
  • Signed: Certum code signing cert

Local verification

  • Clean Win11 Hyper-V VM: install works; app runs.
  • SmartScreen no longer appears when installing/running locally.
  • winget validate + winget install --manifest works locally.

Suspected cause

Initially thought it was blocked by SmartScreen due to change to Squirrel Installer and new Certificate
Repo validation appears to execute installed EXEs directly (without args / without interactive UI context).
Squirrel helper binaries (Update.exe / squirrel.exe) and/or the app stub may return -1 when launched this way.

Ask

  1. Is this a known/expected false-positive for Squirrel/Electron packages in WinGetSvc validation?
  2. What is the recommended way to get Squirrel-based packages through validation?
    • Ignore Squirrel helper EXEs during validation?
    • Invoke with specific args (e.g. --help/--version) instead of bare execution?
    • Other manifest metadata that avoids probing these binaries?
  3. If you need extra diagnostics from me, tell me what to capture and where to paste it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Needs-TriageThis work item needs to be triaged by a member of the core team.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions