- Implemented comprehensive tests for verdict artifact generation to ensure deterministic outputs across various scenarios, including identical inputs, parallel execution, and change ordering. - Created helper methods for generating sample verdict inputs and computing canonical hashes. - Added tests to validate the stability of canonical hashes, proof spine ordering, and summary statistics. - Introduced a new PowerShell script to update SHA256 sums for files, ensuring accurate hash generation and file integrity checks.
66 lines
3.0 KiB
XML
66 lines
3.0 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!--
|
|
StellaOps.Integration.Determinism.csproj
|
|
Sprint: SPRINT_3500_0004_0003_integration_tests_corpus
|
|
Task: T5 - Determinism Validation Suite
|
|
Description: Tests to validate scoring determinism across runs, platforms, and time
|
|
-->
|
|
<Project Sdk="Microsoft.NET.Sdk">
|
|
|
|
<PropertyGroup>
|
|
<TargetFramework>net10.0</TargetFramework>
|
|
<LangVersion>preview</LangVersion>
|
|
<ImplicitUsings>enable</ImplicitUsings>
|
|
<Nullable>enable</Nullable>
|
|
<IsPackable>false</IsPackable>
|
|
<IsTestProject>true</IsTestProject>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.10.0" />
|
|
<PackageReference Include="xunit" Version="2.7.0" />
|
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.8">
|
|
<PrivateAssets>all</PrivateAssets>
|
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
|
</PackageReference>
|
|
<PackageReference Include="FluentAssertions" Version="6.12.0" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<!-- Policy scoring for determinism tests -->
|
|
<ProjectReference Include="../../../src/Policy/__Libraries/StellaOps.Policy.Scoring/StellaOps.Policy.Scoring.csproj" />
|
|
|
|
<!-- Proof chain for hash verification -->
|
|
<ProjectReference Include="../../../src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/StellaOps.Attestor.ProofChain.csproj" />
|
|
|
|
<!-- Cryptography for hashing -->
|
|
<ProjectReference Include="../../../src/__Libraries/StellaOps.Cryptography/StellaOps.Cryptography.csproj" />
|
|
|
|
<!-- Canonical JSON -->
|
|
<ProjectReference Include="../../../src/__Libraries/StellaOps.Canonical.Json/StellaOps.Canonical.Json.csproj" />
|
|
|
|
<!-- Determinism manifest writer/reader (NEW for SPRINT_5100_0007_0003) -->
|
|
<ProjectReference Include="../../../src/__Libraries/StellaOps.Testing.Determinism/StellaOps.Testing.Determinism.csproj" />
|
|
|
|
<!-- Scanner Emit for SBOM generation (SPRINT_5100_0009_0001 Task 7) -->
|
|
<ProjectReference Include="../../../src/Scanner/__Libraries/StellaOps.Scanner.Emit/StellaOps.Scanner.Emit.csproj" />
|
|
|
|
<!-- Scanner Core contracts for composition requests -->
|
|
<ProjectReference Include="../../../src/Scanner/__Libraries/StellaOps.Scanner.Core/StellaOps.Scanner.Core.csproj" />
|
|
|
|
<!-- Scanner Reachability for reachability evidence determinism (SPRINT_5100_0009_0001 Task 8) -->
|
|
<ProjectReference Include="../../../src/Scanner/__Libraries/StellaOps.Scanner.Reachability/StellaOps.Scanner.Reachability.csproj" />
|
|
|
|
<!-- Scanner Evidence for reachability evidence models (SPRINT_5100_0009_0001 Task 8) -->
|
|
<ProjectReference Include="../../../src/Scanner/__Libraries/StellaOps.Scanner.Evidence/StellaOps.Scanner.Evidence.csproj" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<!-- Determinism corpus -->
|
|
<Content Include="../../../bench/determinism/**/*">
|
|
<Link>determinism/%(RecursiveDir)%(Filename)%(Extension)</Link>
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
</ItemGroup>
|
|
|
|
</Project>
|