Skip to content

Map every published .NET runtime component to exact notice evidence - #140

Merged
KeyffMS merged 19 commits into
mainfrom
agent/issue-83-exact-component-notice-map
Jul 30, 2026
Merged

Map every published .NET runtime component to exact notice evidence#140
KeyffMS merged 19 commits into
mainfrom
agent/issue-83-exact-component-notice-map

Conversation

@KeyffMS

@KeyffMS KeyffMS commented Jul 30, 2026

Copy link
Copy Markdown
Owner

What changed

  • capture the exact MSBuild FilesToBundle inventory between PrepareForBundle and single-file generation;
  • import exact official .NET license and ThirdPartyNotices.txt material from a hash-verified SDK archive;
  • generate a separate component-coverage stage from restored packages and final publish files;
  • retain exact NuGet SHA-512, .nuspec license metadata, package-relative asset paths and component SHA-256 values;
  • map 447 embedded and 5 loose package components across three exact packages;
  • identify two previously misclassified shipped assemblies from Microsoft.Windows.SDK.NET.Ref/10.0.19041.56 and record its package-specific license section;
  • write schema-2 component evidence without retaining build-machine paths;
  • independently validate every loose binary and notice mapping inside the final ZIP;
  • reject unreviewed/non-shipped packages and any binary whose component mapping is missing;
  • add a negative case that removes one real mapping while leaving its DLL in the package;
  • correct dependency policy and redistribution/build/packaging documentation.

Root cause

The previous implementation proved exact SDK/runtime versions and official notice hashes, but only connected them to runtime-pack identities. It did not preserve a component-level inventory for the actual embedded and loose files. Publish-time evidence also showed that Microsoft.Windows.SDK.NET.Ref, previously described as build-reference-only, contributes Microsoft.Windows.SDK.NET.dll and WinRT.Runtime.dll to SightAdapt.exe.

Validation result

The reviewed artifact maps 452 components across:

  • Microsoft.NETCore.App.Runtime.win-x64/8.0.29 — 165 components;
  • Microsoft.WindowsDesktop.App.Runtime.win-x64/8.0.29 — 285 components;
  • Microsoft.Windows.SDK.NET.Ref/10.0.19041.56 — 2 embedded components.

All five loose native DLLs are verified by SHA-256. The package-specific Windows SDK notice records exact SHA-512 and the .nuspec license URL https://aka.ms/WinSDKLicenseURL.

Scope

Release packaging, notice evidence and focused package validation only. Application behavior is unchanged.

Closes #83.

KeyffMS added 19 commits July 30, 2026 13:04
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
Signed-off-by: KeyffMS <124252104+KeyffMS@users.noreply.github.com>
@KeyffMS
KeyffMS merged commit 1e49e3d into main Jul 30, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Legal/.NET] Generate exact-version THIRD-PARTY-NOTICES for self-contained builds

1 participant