<Project Sdk="Microsoft.NET.Sdk">

  <!-- M1 spike (a), phase 1 — docs/WINDOWS_PORT.md §13.
       Reports the REAL Microsoft.WSL.Containers object model, and checks every assumption
       NucleicBroker/Wslc/WslcFacade.cs makes against it.

       Deliberately NOT in Nucleic.sln: it needs the preview NuGet, which the broker's own
       contract tests must never require (they run on Linux against FakeWslc). Build it by
       path — see windows/spikes/README.md. -->
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <AssemblyName>wslc-api-dump</AssemblyName>
    <RootNamespace>WslcApiDump</RootNamespace>
    <!-- Windows SDK 19041 is not optional: it is the TFM the package ships for, and it is what
         makes the SDK reference Microsoft.Windows.SDK.NET.Ref, which supplies the WinRT.Runtime
         this projection needs. The package declares no dependencies, so nothing else pulls it. -->
    <TargetFramework>net9.0-windows10.0.19041.0</TargetFramework>
    <!-- The dev box has the .NET 10 SDK and may have no .NET 9 runtime; without this a built
         net9.0 app fails to launch with "framework not found". A spike must not make anyone
         install a runtime to answer one question. -->
    <RollForward>LatestMajor</RollForward>
  </PropertyGroup>

  <ItemGroup>
    <!-- Same pin as the broker (docs/WINDOWS_PORT.md §15). If restore fails because the
         version moved, change it HERE first, find out what the new API looks like, and only
         then bump the broker — that ordering is the whole point of this spike. -->
    <PackageReference Include="Microsoft.WSL.Containers" Version="[2.9.3]" />
  </ItemGroup>

</Project>
