Windows Production
main is the production branch. Every push to main that touches the Windows app or shared Everything design system runs .github/workflows/windows-production.yml.
The production pipeline has two default outputs:
- A GitHub-hosted App Installer package/feed for direct Windows installation.
- A Microsoft Store
.msixuploadpackage artifact for Partner Center.
WINDOWS_STORE_API_PUBLISH_ENABLED=true only after Partner Center API credentials are confirmed to work; otherwise the workflow builds and uploads the Store candidate artifact without making main red.
The App Installer feed is the pre-Store internal channel. It does not wait for Partner Center screenshots, certification, or package flights. After the first install, Windows checks the same feed for updates on app launch.
The first automated Store publish targets a Private audience submission. After an internal package flight exists, setting WINDOWS_STORE_FLIGHT_ID switches the same workflow to the flight, which is the ongoing Windows equivalent of the Google Play internal testing track.
Workflow
The workflow regenerates the shared design-system outputs, buildsapps/windows/Everything.Windows.csproj with .NET 10 and Windows App SDK, then packages the app twice without production signing or Store credentials in the build job:
windows:packageshape: an MSIX/MSIX bundle candidate for the App Installer feed.windows:store-packageshape: an.msixuploadcandidate for Microsoft Partner Center.
.msixupload artifact, but only when WINDOWS_STORE_API_PUBLISH_ENABLED=true.
The package version is set from the GitHub run:
0.
Required Store setup
Microsoft Store publishing requires a Partner Center app record and Microsoft Store Developer CLI credentials. Internal testing starts with a Private audience known user group, then can move to a package flight after the first private-audience submission is published. See Microsoft Store testing for the setup checklist and GitHub secret names. The Store owner/root administrative Microsoft account isavrahamiyaniv@gmail.com. Customer-facing Store fields should stay on Sapientic branding and support addresses; do not expose the owner account in public support, privacy, or marketing surfaces.
App Installer feed
When the signing secrets are configured, the workflow publishes the production App Installer feed here:Everything.appinstaller: stable install/update feed.Everything.Windows.msixbundleorEverything.Windows.msix: signed app package.Everything.Windows.SigningCertificate.cer: public certificate for the current internal signing key.Install-Everything-Windows.ps1: first-time install helper for internal testers.
Microsoft Store publish
The workflow publishes the generated.msixupload package with:
WINDOWS_STORE_PRIVATE_AUDIENCE_READY must be true before the workflow is allowed to publish without a flight ID. After the internal package flight exists, configure:
Sapientic Everything, with product ID 9NRZB5HT5XSX. The Store package manifest display name must use this reserved name; Partner Center rejects Everything because that exact name is not available for this product.
Store API publishing must use an Entra application from a tenant associated with the avrahamiyaniv@gmail.com Partner Center developer account. The previously configured Sapientic Entra tenant authenticates but cannot see this Store product until Microsoft allows or fixes that tenant association.
The Partner Center package identity is: