The managed module lifecycle is feature-complete against the stable
Microsoft.PowerShell.PSResourceGet 1.2.0 module workflows. The authoritative
behavior and intentional differences are documented in:
This page tracks only the evidence needed for a release claim. It is not a feature roadmap.
- Managed find, inventory, save, install, update, uninstall, publish, compression, and estate repair use shared C# engines behind thin PowerShell cmdlets.
- Estate repair keeps physical roots, PowerShell editions, scopes, and local profiles independent; supplied inventories and maintenance receipts retain explicit destinations; cleanup replans after delivery, requires an error-free refreshed plan, batch-preflights exact-path uninstall safety, protects current-runspace loaded modules, validates global/profile/custom cross-root dependencies with per-profile visibility for global cleanup targets, treats unknown-edition roots conservatively, fails closed when a previously available inventory/dependency root cannot be inspected, preserves profile/edition visibility instead of pooling unrelated alternatives, orders selected dependents before dependencies, and returns post-apply convergence evidence without treating declined actions as success.
- Common PowerShellGet and stable PSResourceGet module workflows have documented managed equivalents, including typed pipelines and version-range selection.
- Supported module operations do not invoke PowerShellGet, PSResourceGet, PackageManagement, external executables, or embedded PowerShell scripts.
- Windows PowerShell 5.1 and PowerShell 7 validation covers the supported lifecycle, compatibility contracts, generated help, and package artifacts.
- Stable PSResourceGet 1.2.0
-AuthenticodeCheckbehavior is covered by unsigned module-file and.mofno-promotion tests plus an exact-candidate install of the upstreamPackageManagement1.4.3 fixture. WinTrust accepted 26 signed files, includingPackageManagement.cat, before promotion. The managed command fails closed on unsupported non-Windows hosts instead of continuing unchecked. - Repeated exact-candidate benchmark runs completed on PowerShell 7.6.3 and
Windows PowerShell 5.1.26100.8875 with one warmup, three measured iterations,
grouped rotation, correctness validation, and zero failures. Runs
20260718-104931-72cb50bdand20260718-105032-37d8daf2pinned runtime candidate3dbb6e3af4c34df2d3bb267eae941ec1c53fb842; native provider install lanes were skipped because the current-profile benchmark intentionally does not mutate the maintainer's module roots. - The public README keeps the representative multi-scenario matrix rather
than replacing it with a focused release spot check. Both use Managed as the
1.00xbaseline, show raw times, and label non-equivalent or skipped lanes. - Generated and PSGallery 3.0.68 packages were imported under PowerShell 7 and Windows PowerShell 5.1 and exercised through documented managed-module repair, provenance, dependency-safety, and convergence workflows.
The focused release run used PSScriptAnalyzer 1.25.0 against the normal
PowerShell Gallery paths. Times are medians of three measured iterations after
one warmup; install rows are Managed-only because native install benchmarking
requires the isolated TemporaryLocalUser profile.
| Host | Operation | Managed | PSResourceGet | PowerShellGet |
|---|---|---|---|---|
| PowerShell 7.6.3 | Find | 285 ms | 321 ms | 478 ms |
| PowerShell 7.6.3 | Install | 592 ms | Skipped | Skipped |
| PowerShell 7.6.3 | Save | 1.22 s | 1.92 s | 4.06 s |
| Windows PowerShell 5.1 | Find | 349 ms | Unsupported | 671 ms |
| Windows PowerShell 5.1 | Install | 912 ms | Unsupported | Skipped |
| Windows PowerShell 5.1 | Save | 1.34 s | Unsupported | 3.57 s |
The pinned net10.0 assembly SHA-256 was
F97858DE917D422A5D8FCCE388CD225B5B6F6D9400839DA03D532EB4E8459581; the
net472 assembly SHA-256 was
79666E6C9C891F8CEEF0411435929DA6E29191F943846F8AAE3E8B864C203C32.
The final documentation-only commit does not change this measured runtime
source or either pinned assembly.
These do not block the managed module lifecycle release:
- remaining script find, update, uninstall, publish, and compression commands
- DSC-resource, command-name, and role-capability package-content search
- automatic repository-priority fanout
- automatic credential-provider installation or bootstrap
- Microsoft Artifact Registry
ModulePrefixtransport - direct discovery and conversion from the PowerShellGet v2 repository store
Add any future capability only through a reusable resource or repository model that preserves the current module-path behavior and performance.