Skip to content

CI: Intermittent PSScriptAnalyzer crash in the Analyze task on windows-latest #136

Description

@tablackburn

The Analyze task in the repository's own build (psakeFile.ps1 line 19, Invoke-ScriptAnalyzer -Path $settings.ModuleOutDir -Recurse ...) intermittently crashes on the windows-latest CI leg with an internal PSScriptAnalyzer exception, failing the job before Pester ever runs. Re-running the job succeeds without any change.

Occurrences so far

Date Run Exception Diff under test
2026-07-07 28897944004 (PR #133) Object reference not set to an instance of an object. Changelog text only
2026-07-09 29055849143 (PR #135) Value cannot be null. (Parameter 'name') Files under tests/ only

Why it is a flake, not a regression

  • Both failing commits could not have influenced the Analyze task: it scans only the built module output (ModuleOutDir), and neither diff touched module source
  • The identical merge commits passed Analyze on ubuntu and macOS in the same runs
  • Both failures disappeared on re-run with no code change
  • The two exceptions are different internal PSScriptAnalyzer errors at the same call site, which points at a non-deterministic crash inside PSScriptAnalyzer 1.25.0 (or its interaction with the windows-latest runner image) rather than at anything in this repository

Possible mitigations (not yet decided)

  • Add a retry around Invoke-ScriptAnalyzer in the Analyze task (crude but effective for a known-flaky third-party call)
  • Try a newer PSScriptAnalyzer release when one ships, in case the crash is fixed upstream
  • Report upstream to PSScriptAnalyzer with the two stack signatures if it keeps recurring

Filed to track recurrence; if it bites again, that is three data points and worth acting on rather than re-running.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    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