From 61f8515a33bb25d1416174109b428101579deee5 Mon Sep 17 00:00:00 2001 From: Kyle Sexton <153232337+kyle-sexton@users.noreply.github.com> Date: Wed, 23 Sep 2026 13:25:38 -0400 Subject: [PATCH 1/2] fix(machine-health): drop Export-ModuleMember from Mock-Helpers PSScriptAnalyzer 1.25.0 intermittently throws a NullReferenceException on files that call Export-ModuleMember: rules run in parallel and share a cached CommandInfo (PowerShell/PSScriptAnalyzer#1867, #2188; fix pending in PR #2206). Without the call a .psm1 exports every function it defines, and this module exports all 14 of its functions, so the exported set is unchanged. Refs melodic-software/standards#598 Co-Authored-By: Claude Opus 5.5 (1M context) Claude-Session: https://claude.ai/code/session_01XJ1oJNVZ9BySCtLzdJtf25 --- .../audit/tests/helpers/Mock-Helpers.psm1 | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/plugins/machine-health/skills/audit/tests/helpers/Mock-Helpers.psm1 b/plugins/machine-health/skills/audit/tests/helpers/Mock-Helpers.psm1 index e0bc20854f..efc2c06baa 100644 --- a/plugins/machine-health/skills/audit/tests/helpers/Mock-Helpers.psm1 +++ b/plugins/machine-health/skills/audit/tests/helpers/Mock-Helpers.psm1 @@ -292,20 +292,3 @@ function Remove-MachineHealthTempDir { } } } - -Export-ModuleMember -Function @( - 'New-MachineHealthTempDir' - 'New-MockBattery' - 'New-MockDefenderComputerStatus' - 'New-MockDriver' - 'New-MockEnvironmentKey' - 'New-MockEventLogRecord' - 'New-MockPartition' - 'New-MockPhysicalDisk' - 'New-MockReliabilityCounter' - 'New-MockReliabilityRecord' - 'New-MockReliabilityStabilityMetric' - 'New-MockService' - 'New-MockVolume' - 'Remove-MachineHealthTempDir' -) From ac8aef703dcf075d0d070962283784c65cdb2d5c Mon Sep 17 00:00:00 2001 From: Kyle Sexton <153232337+kyle-sexton@users.noreply.github.com> Date: Wed, 23 Sep 2026 13:33:19 -0400 Subject: [PATCH 2/2] chore(machine-health): bump to 0.13.1 Co-Authored-By: Claude Opus 5.5 (1M context) Claude-Session: https://claude.ai/code/session_01XJ1oJNVZ9BySCtLzdJtf25 --- plugins/machine-health/.claude-plugin/plugin.json | 2 +- plugins/machine-health/CHANGELOG.md | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/plugins/machine-health/.claude-plugin/plugin.json b/plugins/machine-health/.claude-plugin/plugin.json index 87ae06fabf..521c7d1c40 100644 --- a/plugins/machine-health/.claude-plugin/plugin.json +++ b/plugins/machine-health/.claude-plugin/plugin.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json", "name": "machine-health", - "version": "0.13.0", + "version": "0.13.1", "description": "Workstation health audit: OS-specific checks (disk, OS updates, security posture, CISA KEV correlation) run from a versioned catalog with trend-aware severity, approval-gated remediations, and dated markdown reports. Windows fully implemented; macOS/Linux scaffolded (report UNKNOWN and stop). Machine state persists in the plugin data directory; the report directory and check catalog are configurable.", "author": { "name": "Melodic Software", diff --git a/plugins/machine-health/CHANGELOG.md b/plugins/machine-health/CHANGELOG.md index c60387ed7c..ec60c1ac72 100644 --- a/plugins/machine-health/CHANGELOG.md +++ b/plugins/machine-health/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to the `machine-health` plugin are documented here. Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); this plugin uses semantic versioning. +## [0.13.1] - 2026-09-23 + +### Fixed + +- The test helper module `Mock-Helpers.psm1` no longer calls `Export-ModuleMember`, which + triggers an intermittent PSScriptAnalyzer 1.25.0 NullReferenceException. It still exports + the same 14 functions. + ## [0.13.0] - 2026-09-23 ### Changed