psadt-deploy-skill 0.29.0 → 0.29.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +14 -22
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -172,7 +172,7 @@ The app's **native installer is always the default**. Everything else is opt-in
|
|
|
172
172
|
- **Self-update** — `scripts/Update-PsadtSkill.ps1` compares against GitHub, shows what changed, and
|
|
173
173
|
updates in place on your confirmation (`git pull --ff-only` for a clone, otherwise a branch-zip overwrite
|
|
174
174
|
of tracked files only). Machine-local state is never touched. Say *"psadt update"*.
|
|
175
|
-
- **
|
|
175
|
+
- **503 Pester tests** over the helper scripts, including drift guards that fail when the docs and the code
|
|
176
176
|
disagree.
|
|
177
177
|
|
|
178
178
|
## Requirements
|
|
@@ -347,7 +347,7 @@ psadt-deploy/
|
|
|
347
347
|
│ ├─ appendix-a-errors.md … -q-drivers.md one file per appendix
|
|
348
348
|
│ ├─ Report-Template.html the fixed dossier template
|
|
349
349
|
│ └─ app-registration.md THE Graph permission matrix + manual portal route
|
|
350
|
-
└─ tests/ Pester suite,
|
|
350
|
+
└─ tests/ Pester suite, 503 tests
|
|
351
351
|
```
|
|
352
352
|
|
|
353
353
|
Machine-local state lives outside the skill folder:
|
|
@@ -368,7 +368,7 @@ psadt-package.json identity · gate decisions · research
|
|
|
368
368
|
## Status
|
|
369
369
|
|
|
370
370
|
In active use for the full build → package → test → dossier workflow, with the direct Graph upload
|
|
371
|
-
verified against a live tenant. The helper scripts are covered by
|
|
371
|
+
verified against a live tenant. The helper scripts are covered by 503 Pester tests.
|
|
372
372
|
|
|
373
373
|
One open point, honestly: **the driver `pnputil` exit-code semantics are documented, not verified here.**
|
|
374
374
|
`0` / `259` / `3010` and the two `0xE...` failures come from Microsoft's documentation; confirming them
|
|
@@ -429,6 +429,17 @@ The two most recent releases are below. **[CHANGELOG.md](CHANGELOG.md)** carries
|
|
|
429
429
|
every release since 0.1.0, and nothing is ever removed from it - this section is a window onto it, not a
|
|
430
430
|
second copy to keep in sync.
|
|
431
431
|
|
|
432
|
+
### 0.29.1 - 2026-09-14
|
|
433
|
+
- **Fixed: Phase 5.5 mapped `Remove-MSIApplications` to `Remove-ADTApplication`**, which v4 does not
|
|
434
|
+
have - the v4 name is `Uninstall-ADTApplication`. The table's right column is now checked against the
|
|
435
|
+
installed toolkit's `FunctionsToExport`.
|
|
436
|
+
- **Fixed: Appendix A named 60012 as the v4 deferral code.** 4.1.x exits a deferral with
|
|
437
|
+
`UI.DeferExitCode`, default 1602. Deliberately NOT added to the mandatory Intune table - every install
|
|
438
|
+
command this skill writes runs `-DeployMode Silent`, where a deferral cannot happen.
|
|
439
|
+
- **Fixed: the Phase 4.3 MSI sample** put the `.mst` in `SupportFiles\` and passed an `-ArgumentList`
|
|
440
|
+
identical to the config defaults. The `.mst` belongs in `Files\` next to the MSI (`TRANSFORMSSECURE=1`);
|
|
441
|
+
extra properties go into `-AdditionalArgumentList`, because `-ArgumentList` REPLACES the defaults.
|
|
442
|
+
- **Fixed: README claimed 441 Pester tests** in three places. Suite 501 -> 503.
|
|
432
443
|
### 0.29.0 - 2026-09-11
|
|
433
444
|
- **Fixed: the 0.28.0 Startup-folder trigger could not run a single task as SYSTEM.** The runner passed
|
|
434
445
|
the elevation check, yet `schtasks /Create` and `/Run` returned 0 while the task never executed - every
|
|
@@ -442,22 +453,3 @@ second copy to keep in sync.
|
|
|
442
453
|
- **Added: three canaries before the loop** (SYSTEM task, toolkit import, toolkit session), **a 60008
|
|
443
454
|
action is re-run once via `powershell.exe -File` to capture the stderr the `.exe` discards**, and a
|
|
444
455
|
**heartbeat in the guest console** so a healthy install no longer looks like a hang. Suite 493 -> 501.
|
|
445
|
-
### 0.28.0 - 2026-09-11
|
|
446
|
-
- **Fixed: a space in the `.wsb` path silently disabled every custom mapped folder.** `Start-Process
|
|
447
|
-
-ArgumentList` does not quote its elements, so Windows Sandbox booted with the built-in shares only -
|
|
448
|
-
no error, no warning. A username with a space in it is enough, and it reads exactly like an upstream
|
|
449
|
-
Sandbox bug.
|
|
450
|
-
- **Fixed: `<LogonCommand>` never ran** on the affected Sandbox app version
|
|
451
|
-
([#125](https://github.com/microsoft/Windows-Sandbox/issues/125)). The work folder is now mapped onto
|
|
452
|
-
the guest's Startup folder and a trigger `.cmd` starts the runner, which lives one level down because
|
|
453
|
-
Startup auto-executes only `.exe/.bat/.cmd/.lnk/.vbs`.
|
|
454
|
-
- **Fixed: a transient read reported a real result as empty** - a detection step captured `stdout: ""`
|
|
455
|
-
while the same file, re-read at the end of the run, held the right answer. The read now retries.
|
|
456
|
-
- **Changed: `schtasks` failures are checked** instead of surfacing as a 900-second timeout, and the
|
|
457
|
-
runner verifies it is elevated before the first action - a Startup item does not carry the full admin
|
|
458
|
-
token by construction the way `<LogonCommand>` did.
|
|
459
|
-
- **Added: NSIS MultiUser needs an explicit `/allusers` or `/currentuser`** (App. L.7). A bare `/S`
|
|
460
|
-
exits in under a second with no output and nothing installed. Now a Gate 2 decision.
|
|
461
|
-
- **Added: an unbundled runtime prerequisite is researched in Phase 2 and decided at Gate 1**, and a
|
|
462
|
-
manual interactive test is offered after a GREEN Phase 6 - the loop proves the package works, never
|
|
463
|
-
that the app does. Suite 484 -> 493.
|