Files
lmxopcua/tools/mem-probe/MemProbe/MemProbe.csproj
T
Joseph Doherty 3834400f05 test(mem-probe): confirm A0 drops production per-script RSS ~11x (18->~1.66 MiB)
Swap MemProbe's ProjectReference from Core.VirtualTags to
Core.Scripting.Abstractions so the heavy-mode globalsType
(ScriptGlobals<VirtualTagContext>) resolves from the post-A0
Roslyn-free assembly.

Measured results (2026-06-07, N=50, Release):
  heavy (post-A0): 2.40 / 2.53 MiB/script  (was ~18 MiB)
  lean:            1.64 / 1.65 MiB/script
  => heavy ≈ lean; both well under the 3 MiB gate. PASS.
2026-06-07 15:19:02 -04:00

27 lines
1.1 KiB
XML

<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net10.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<LangVersion>latest</LangVersion>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<GenerateDocumentationFile>false</GenerateDocumentationFile>
</PropertyGroup>
<ItemGroup>
<!-- Same Roslyn version the repo pins (Directory.Packages.props => 4.12.0, CPM). -->
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Scripting" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\LeanContext\LeanContext.csproj" />
<!-- After A0: VirtualTagContext + ScriptGlobals live in Core.Scripting.Abstractions
(Roslyn-free). We reference that directly so typeof(VirtualTagContext).Assembly
resolves to the lean assembly — the key invariant the probe is verifying. -->
<ProjectReference Include="..\..\..\src\Core\ZB.MOM.WW.OtOpcUa.Core.Scripting.Abstractions\ZB.MOM.WW.OtOpcUa.Core.Scripting.Abstractions.csproj" />
</ItemGroup>
</Project>