From d2155f260c1e723f08cad7503e6c1d6202076c2e Mon Sep 17 00:00:00 2001 From: fadwen <110697945+fadwen@users.noreply.github.com> Date: Thu, 15 Oct 2026 11:19:54 -0700 Subject: [PATCH] release: 0.34.0 --- CHANGELOG.md | 33 +++++++++++++++++++++++---------- IntuneScriptLab.psd1 | 20 ++++++++++---------- 2 files changed, 33 insertions(+), 20 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index efb6dd2..5f7cc81 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,16 +11,14 @@ release notes. ## [Unreleased] -### Fixed +## [0.34.0] - 2026-10-15 -- `Test-IntuneDeployedScript` cited ASSIGN-INEX, round 9's remediation included and excluded for - the same group, as evidence that a policy without an include never runs. That policy has an - include: the service drops the exclusion, and the device has run it every hour since 28 September - (180 probe records by 15 October, Graph run state updated 13 October, the policy unchanged since - its creation). The evidence names ASSIGN-NONE and ASSIGN-EXCLONLY only, and - `Validation/Findings.md` records the corrected result; the command's verdict on such a policy, - silence, was already right. Its file `doesNotExist` finding cited `W32-FILE-NOTEXIST-PRESENT`; - the experiment is `W32-FILE-NOTEXIST-FALSE`. +A correction to the evidence behind one finding, found while writing up the validation lab. Round 9 +concluded that a remediation included and excluded for the same group never runs; the device has +run it every hour since, because the service drops the exclusion and keeps the include. The +command's verdict on such a policy, silence, was already right, so no verdict changes; the evidence +string and Findings say what the device did. The validation kit's agent restart now works, and its +lab scripts and docs describe the kit as it is. ### Changed @@ -33,6 +31,20 @@ release notes. the driver. The kit's README no longer points at the monorepo paths the module came from, and the experiment catalog's header says what it holds. +### Fixed + +- `Test-IntuneDeployedScript` cited ASSIGN-INEX, round 9's remediation included and excluded for + the same group, as evidence that a policy without an include never runs. That policy has an + include: the service drops the exclusion, and the device has run it every hour since 28 September + (186 probe records by 15 October, Graph run state updated 13 October, the policy unchanged since + its creation). The evidence names ASSIGN-NONE and ASSIGN-EXCLONLY only, and + `Validation/Findings.md` records the corrected result; the command's verdict on such a policy, + silence, was already right. Its file `doesNotExist` finding cited `W32-FILE-NOTEXIST-PRESENT`; + the experiment is `W32-FILE-NOTEXIST-FALSE`. +- `Tests/Unit/Private/Get-IslInboxModule.Tests.ps1` failed on a hosted runner that lacked + `ConfigDefender` and `ConfigDefenderPerformance`, which the Defender platform update puts under + System32 rather than the Windows image; the test allows the two to be absent from the host. + ## [0.33.0] - 2026-10-15 Fixes to the CI pieces, found by running the gate script, the workflow template, the suite template @@ -696,7 +708,8 @@ Nothing any command does has changed. - Static rules: `Test-IntuneScript`. -[Unreleased]: https://github.com/fadwen/IntuneScriptLab/compare/v0.33.0...HEAD +[Unreleased]: https://github.com/fadwen/IntuneScriptLab/compare/v0.34.0...HEAD +[0.34.0]: https://github.com/fadwen/IntuneScriptLab/compare/v0.33.0...v0.34.0 [0.33.0]: https://github.com/fadwen/IntuneScriptLab/compare/v0.32.0...v0.33.0 [0.32.0]: https://github.com/fadwen/IntuneScriptLab/compare/v0.31.0...v0.32.0 [0.31.0]: https://github.com/fadwen/IntuneScriptLab/compare/v0.30.0...v0.31.0 diff --git a/IntuneScriptLab.psd1 b/IntuneScriptLab.psd1 index 7e29d27..3a92157 100644 --- a/IntuneScriptLab.psd1 +++ b/IntuneScriptLab.psd1 @@ -1,7 +1,7 @@ @{ # Module manifest for IntuneScriptLab RootModule = 'IntuneScriptLab.psm1' - ModuleVersion = '0.33.0' + ModuleVersion = '0.34.0' GUID = '3f6b2c9e-7d41-4a8f-9c2b-5e0d8a1f4b76' Author = 'Jeffrey Stuhr' CompanyName = '' @@ -64,6 +64,14 @@ pre-flight over the tenant's deployed scripts and readers for the agent's logs LicenseUri = 'https://github.com/fadwen/IntuneScriptLab/blob/main/LICENSE' ProjectUri = 'https://github.com/fadwen/IntuneScriptLab' ReleaseNotes = @' +0.34.0 - Evidence correction. Test-IntuneDeployedScript cited the round 9 include-plus-exclude + experiment as a policy no device runs; the device has run it every hour since, because the + service drops the exclusion and keeps the include. The evidence names the two experiments + that do show a policy without an include never running, and Findings records the corrected + result; the command's verdict, silence on such a policy, was already right. A file + doesNotExist finding now cites the experiment that exists. The validation kit restarts the + agent by stopping its process, since Restart-Service restarted nothing, and its lab scripts + and docs are current. See CHANGELOG.md. 0.33.0 - The CI pieces, after a run against a repository laid out the way the templates describe. The gate script no longer analyzes a Pester suite next to the scripts or the contents of a Win32 app's Package folder, both of which the suite template puts there and both of which @@ -80,15 +88,7 @@ pre-flight over the tenant's deployed scripts and readers for the agent's logs tables is 40 characters wide, so a long policy name stays on one line. The README's log blocks show the Agent abbreviation and the list form of the diagnostic result. See CHANGELOG.md. -0.31.0 - Assignment filter messages. The parser warns about a -contains value that is only - whitespace, which the service trims to nothing so the clause matches every device; a double - quote inside a value is refused with a message saying no escape exists and that -contains - or -startsWith on the parts around it is the way through. In exclude mode, - Test-IntuneAssignmentFilter and Test-IntuneDeployedScript say what a warning means for the - assignment: a clause that never matches excludes nobody, so the assignment reaches every - device in the group. The tenant-wide help example keeps to Windows filters. See - CHANGELOG.md. -Earlier versions, 0.1.0 to 0.30.0: CHANGELOG.md, which ships with the module. +Earlier versions, 0.1.0 to 0.31.0: CHANGELOG.md, which ships with the module. '@ RequireLicenseAcceptance = $false }