shmuelie / shmuelie/powershell-modules

Expose AppInstallManager update requests by package family

Open
#247 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

blocked enhancement module:windows theme:native-interop
Dominant language
PowerShell
Stars
0
Forks
0
Avg merge
21m
Merged PRs (30d)
124

Description

Parent: #232

Dependencies and access restriction

Depends on #233, #234, #236. Implementation remains blocked until the supported-access gate and listed prerequisites are complete.

Microsoft documents AppInstallManager access as protected by a private capability restricted to Microsoft-developed apps. Do not bypass that restriction or treat runFullTrust/admin access alone as sufficient.

API scope

UpdateAppByPackageFamilyNameAsync and UpdateAppByPackageFamilyNameForUserAsync.

Acceptance criteria

  • Accept an exact package-family identity and explicit current/specified-user scope, including typed pipeline identity where appropriate.
  • Keep package-family names distinct from product IDs and display names. No wildcard expansion into unintended updates.
  • Confirm each update request with ShouldProcess; preview submits nothing.
  • Expose supported correlation inputs and capability/version gates without fabricating defaults.
  • Return typed request/item information and preserve native failure, no-applicable-update and partial batch outcomes. Request acceptance does not establish an installed-version change.
  • Reuse the shared monitoring and error contracts; do not duplicate the WinRT execution bridge.

Shared delivery requirements

Follow the parent epic's compiled-C# contract, user-scope and capability/version gates. Include deterministic Pester 6.2+ coverage, comment-based help, public documentation and unreleased notes in the same implementation PR. Use fail-closed fake adapters for side effects; no real installs, entitlement grants or settings changes in CI. Preserve original errors and distinguish unavailable, unknown, requested and completed outcomes.

Documented API references

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Begin with parent #232 and dependencies #233, #234, and #236; review the compiled-C# contract and the two AppInstallManager methods named in the issue. Then trace the shared monitoring and error contracts and fail-closed fake adapters, and use the required Pester 6.2+ coverage, documentation, and unreleased notes to verify the stated outcomes without real installs.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp, powershell
Domain
api, cli, operating-systems, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.