Tags: microsoft/WindowsAppSDK
Tags
Fix MICROSOFT_WINDOWSAPPRUNTIME_BASE_DIRECTORY leaking to child proce… …sses (#5987) (#6619) The Windows App SDK auto-initializer sets the process environment variable MICROSOFT_WINDOWSAPPRUNTIME_BASE_DIRECTORY (a requirement for PublishSingleFile SxS manifest redirection). Because it is a process environment variable, it is inherited by child processes spawned via CreateProcess: a child's MRTCore then resolved the parent's resources.pri, and reg-free WinRT redirection could be steered by a parent-controlled directory. Stamp the owning process id in MICROSOFT_WINDOWSAPPRUNTIME_BASE_DIRECTORY_PID and honor the base directory only when the stamp matches the current process: - MRM.cpp and catalog.cpp ignore the base directory unless it was stamped by the current process, so inherited (foreign) values fall back to the module directory. A parent cannot forge a stamp equal to the not-yet-known child pid, so this also prevents steering where an elevated child reads data files from. - Move the base-directory setter out of the URFW auto-initializer into a new, clearly-named WindowsAppRuntimeBaseDirectoryAutoInitializer; the URFW file is now runtime-load only. This addresses the filename confusion raised on the issue. Add MrtCore EnvironmentVariableIsolationTests: an in-process PID-guard test and a real cross-process test proving a spawned child ignores the inherited base directory. Copilot-Session: dac4165f-ec13-4406-9206-60cd55b24c2b Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add Templates PR validation pipeline (dotnet new + VSIX) (#6526) Adds `WindowsAppSDK-Templates-PR` to validate changes under `dev/Templates/`. For developers to check if their changes would break the build of WinUI templates. **What it runs** - Build a dotnet new templates NuGet of the changed code for local tests (no signing, no publish) - Builds 4 VSIXes (Cs/Cpp x Standalone/Component) of the changed code against the latest nightly nupkg from `main`.
Add Templates PR validation pipeline (dotnet new + VSIX) (#6526) Adds `WindowsAppSDK-Templates-PR` to validate changes under `dev/Templates/`. For developers to check if their changes would break the build of WinUI templates. **What it runs** - Build a dotnet new templates NuGet of the changed code for local tests (no signing, no publish) - Builds 4 VSIXes (Cs/Cpp x Standalone/Component) of the changed code against the latest nightly nupkg from `main`.
Add Templates PR validation pipeline (dotnet new + VSIX) (#6526) Adds `WindowsAppSDK-Templates-PR` to validate changes under `dev/Templates/`. For developers to check if their changes would break the build of WinUI templates. **What it runs** - Build a dotnet new templates NuGet of the changed code for local tests (no signing, no publish) - Builds 4 VSIXes (Cs/Cpp x Standalone/Component) of the changed code against the latest nightly nupkg from `main`.
docs: add Component Versioning Across Channels guideline (#6453) * docs: add Component Versioning Across Channels guideline Adds an interim contributor guideline at docs/Coding-Guidelines/ComponentVersioning.md establishing the invariant that an aggregate WindowsAppSDK upgrade must never contain a component package downgrade. Covers: - The cross-channel race condition that produces NuGet downgrades (e.g., 2.0.325-experimental > 2.0.300 stable for WinML). - Approaches considered and explicitly rejected (encoding channel into SemVer fields). - Short-term policy until the monobuild cutover: per-component monotonic-version rules, version.json baseline-bump pattern at release-branch creation, aggregator pre-publish downgrade check, and a ~2-week stagger between experimental and stable/servicing aggregate releases. - Long-term: the WindowsAppSDKVersionPinned unified versioning scheme from the monobuild (a single WindowsAppSDKVersion stamped at the top of the aggregator pipeline; Directory.Packages.props floats 2.* for CI/PR/local and pins to the exact version for Official/Nightly). Cross-linked from docs/Coding-Guidelines.md and specs/Deployment/WindowsAppSDKVersioning.md. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * docs: point unified versioning references at release/main + section 9 anchor Updates the long-term unified versioning strategy references in docs/Coding-Guidelines/ComponentVersioning.md to: - Use the release/main branch on OS/WinAppSDK (instead of release/dev/monobuild) - Link directly to section 9 'Version Management' in Mono-Build-Pipeline-Migration.md via the documented anchor - Standardize on the microsoft.visualstudio.com/OS host Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * docs(ComponentVersioning): replace stagger guidance with stable-first sequencing After team discussion, the staggered-release approach was dropped in favor of a sequencing guarantee: when experimental and stable/servicing aggregate RC builds are scheduled on the same day (or close together), stable/servicing always builds first. Component owners can rely on that sequencing when designing their per-component versioning so per-channel counter advances applied for the experimental build cannot retroactively cause the stable build to ship a lower component version. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * docs(ComponentVersioning): add §5.4 floating release symbols pattern After the monobuild cutover, contributors should declare a milestone alias (e.g. WinAppSDK_2_Servicing) on runtime compatibility / change-ID checks rather than hardcoding a SemVer literal. The monobuild resolves the alias to the concrete version it is producing (e.g. 2.1.0) at build time, so contributors no longer have to anticipate the version their change will land in. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
[main] Update dependencies from microsoft/LiftedIXP/DCPP (#6229) * Update dependencies from https://dev.azure.com/microsoft/LiftedIXP/_git/DCPP build 20260219.1 On relative base path root Microsoft.FrameworkUdk , Microsoft.ProjectReunion.InteractiveExperiences.TransportPackage From Version 2.0.0-preview-27200.1852.260127-0700.2 -> To Version 2.0.0-experimental-27200.1855.260219-0800.0 Microsoft.WindowsAppSDK.InteractiveExperiences From Version 2.0.6-preview -> To Version 2.0.7-experimental * Update dependencies from https://dev.azure.com/microsoft/LiftedIXP/_git/DCPP build 20260222.1 On relative base path root Microsoft.FrameworkUdk , Microsoft.ProjectReunion.InteractiveExperiences.TransportPackage From Version 2.0.0-preview-27200.1852.260127-0700.2 -> To Version 2.0.0-experimental-27300.1856.260222-1705.0 Microsoft.WindowsAppSDK.InteractiveExperiences From Version 2.0.6-preview -> To Version 2.0.8-experimental * Update dependencies from https://dev.azure.com/microsoft/LiftedIXP/_git/DCPP build 20260302.2 On relative base path root Microsoft.FrameworkUdk , Microsoft.ProjectReunion.InteractiveExperiences.TransportPackage From Version 2.0.0-preview-27200.1852.260127-0700.2 -> To Version 2.0.0-experimental-27300.1857.260302-0806.0 Microsoft.WindowsAppSDK.InteractiveExperiences From Version 2.0.6-preview -> To Version 2.0.10-experimental * Update dependencies from https://dev.azure.com/microsoft/LiftedIXP/_git/DCPP build 20260320.1 On relative base path root Microsoft.FrameworkUdk , Microsoft.ProjectReunion.InteractiveExperiences.TransportPackage From Version 2.0.0-preview-27200.1852.260127-0700.2 -> To Version 3.0.0-experimental-27300.1861.260318-1015.4 Microsoft.WindowsAppSDK.InteractiveExperiences From Version 2.0.6-preview -> To Version 3.0.0-experimental-Rolling.20260320.1 * Update dependencies from https://dev.azure.com/microsoft/LiftedIXP/_git/DCPP build 20260323.1 On relative base path root Microsoft.FrameworkUdk , Microsoft.ProjectReunion.InteractiveExperiences.TransportPackage From Version 2.0.0-preview-27200.1852.260127-0700.2 -> To Version 3.0.0-experimental-27300.1862.260322-1815.0 Microsoft.WindowsAppSDK.InteractiveExperiences From Version 2.0.6-preview -> To Version 3.0.0-experimental-Rolling.20260323.1 * Update dependencies from https://dev.azure.com/microsoft/LiftedIXP/_git/DCPP build 20260331.2 On relative base path root Microsoft.FrameworkUdk , Microsoft.ProjectReunion.InteractiveExperiences.TransportPackage From Version 2.0.0-preview-27200.1852.260127-0700.2 -> To Version 3.0.0-experimental-27300.1863.260330-1030.2 Microsoft.WindowsAppSDK.InteractiveExperiences From Version 2.0.6-preview -> To Version 3.0.0-experimental-Rolling.20260331.2 * Update dependencies from https://dev.azure.com/microsoft/LiftedIXP/_git/DCPP build 20260406.1 On relative base path root Microsoft.FrameworkUdk , Microsoft.ProjectReunion.InteractiveExperiences.TransportPackage From Version 2.0.0-preview-27200.1852.260127-0700.2 -> To Version 3.0.0-experimental-27300.1864.260406-1400.0 Microsoft.WindowsAppSDK.InteractiveExperiences From Version 2.0.6-preview -> To Version 3.0.0-experimental-Rolling.20260406.1 * Update dependencies from https://dev.azure.com/microsoft/LiftedIXP/_git/DCPP build 20260412.3 On relative base path root Microsoft.FrameworkUdk , Microsoft.ProjectReunion.InteractiveExperiences.TransportPackage From Version 2.0.0-preview-27200.1852.260127-0700.2 -> To Version 3.0.0-experimental-27300.1865.260412-1530.2 Microsoft.WindowsAppSDK.InteractiveExperiences From Version 2.0.6-preview -> To Version 3.0.0-experimental-Rolling.20260412.3 * Update dependencies from https://dev.azure.com/microsoft/LiftedIXP/_git/DCPP build 20260419.2 On relative base path root Microsoft.FrameworkUdk , Microsoft.ProjectReunion.InteractiveExperiences.TransportPackage From Version 2.0.0-preview-27200.1852.260127-0700.2 -> To Version 3.0.0-experimental-27300.1866.260419-1600.1 Microsoft.WindowsAppSDK.InteractiveExperiences From Version 2.0.6-preview -> To Version 3.0.0-experimental-Rolling.20260419.2 --------- Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com> Co-authored-by: agniuks <41223743+agniuks@users.noreply.github.com>
Enhance triage skills with updated scoring (#6294) * Update Generate-FeatureAreaReport.ps1 to only search for area-* feature areas * Add Validate-FeatureAreaReport.ps1 to issue-triage-report skill * Enhance triage skills with updated scoring, confidence, and P-scale labels Scoring System: - New weights: reactions=30%, age=30%, comments=30%, severity=10% - P-scale severity labels: P0=critical, P1=high, P2=medium, P3=low - Confidence scoring with grep-friendly [confidence:XX] format (0-100) Label Consolidation: - Merged Hot + Popular into Popular (>=5 reactions threshold) Contact Schema: - Simplified from {primary, secondary} to single {contact} field - Removed legacy schema backward compatibility Area Suggestions: - Get-IssueDetails.ps1 dynamically fetches area labels via Get-RepositoryLabels.ps1 - area-Notifications covers all notification types (toast, badge, push, wns) - Fixed area-PowerManagement naming Documentation: - Added PowerShell examples alongside Bash for confidence filtering - Updated all SKILL.md files with new configuration details * Revert trending criteria to include recency as a scoring factor * Remove copy of ScoringConfig.json in favor of the filepath * ReportLib.ps1: Remove defaults in Get-ScoringConfig and rely on ScoringConfig.json * ReportLib.ps1: Remove defaults in Get-IssueScore and rely on ScoringConfig.json for severity labels * ReportLib.ps1: Update Get-AreaContacts to rely on area-contacts.json, fails fast on errors * GetHighlightScore.ps1: Use Get-Issue score for calculation. Let this script handle human-readable formatting * ReportLib.ps1: Remove unused thresholds assignment from Get-IssueScore * Skills: updates the label fetching code so Get-RepositoryLabels.ps1 is the source of truth * Create area-keywords.json * Update Get-IssueDetails.ps1 to reference area labels json * Enforce trending_days recency check for Trending highlight label - Add RawUpdateAgeDays to Get-IssueScore (computed from updatedAt) - Require comments >= trending_comments AND updated within trending_days in both Get-HighlightLabels (ReportLib) and Get-DetailedIssueScore - Fix scoring-algorithm.md: comments >= 5 -> >= 10, add trending_days to highlight table and thresholds reference - Add missing trending_days to SKILL.md config example * Update scoring-algorithm.md to walk through scripts and config files * Remove sample json with hardcoded weight values * Correct Validate-FeatureAreaReport.ps1 to use PSScriptRoot instead of System.Management.Automation.InvocationInfo.MyCommand.Path * Remove security label from issue-triage-report skill * Remove keyword classification on area labels and replace with agent instructions * Clean up block word matching in ReportLib.ps1 * Convert script-based confidence scoring in issue-triage-report skill to LLM based confidence scoring (what we originally intended) * Update Get-AreaContacts.ps1 and ReportLib.ps1 to use the contacts/notes schema * Move severity and blocker determination to agent SKILL.md instead of PowerShell script * Add agent assessments for severity and blockers * Remove bucket scoring * Scale weights to percentages and use double loading for point values * Replace outdated severity labels with severity multipliers * Update docs to reflect recent scoring changes * Have human-edited IssueAssesments.json take scoring priority * Fix indentation typo in SKILL.md for issue-triage-report * Minor corrections in SKILL.md and scoring-algorithm.md * Remove labelPriority * Bringing back scores between 0 to 100 * Condense ReadAgentAssessments and ReadIssueAssessments into one ReadAssessments file * Condense Get-AgentAssessmentsPath and Get-IssueAssessmentsPath into one Get-AssessmentsPath file * Remove unused Test-HasLabelMatching * Add Get-IssueScore docs * Move Get-DetailedIssueScore into ReportLib.ps1 * Update Scoring Results section of scoring-algorithm.md * Actually consolidate Read-IssueAssessments and Read-AgentAssessments into ReadAssessments in ReportLib.ps1 * Add instructions to persistent reasoning to files in SKILL.md
PreviousNext