Files
git.stella-ops.org/tests/reachability/README.md
2025-11-25 23:26:46 +02:00

1.4 KiB

Reachability Fixture Harness

This directory carries the reachbench fixture packs used by Sprint 201 to validate reachability explainability.

  • fixtures/reachbench-2025-expanded/ contains 24 multi-language cases with reachable and unreachable variants, SBOMs, callgraphs, runtime traces, and DSSE envelopes. Each variant ships a manifest with SHA-256 hashes to keep runs deterministic.
  • StellaOps.Reachability.FixtureTests provides guard rails that ensure files exist, hashes match manifests, and ground-truth paths align with reachable/unreachable variants before the Signals/Scanner reachability pipeline consumes them.

Running the fixture tests

# From the repo root
DOTNET_CLI_UI_LANGUAGE=en DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1 \
  dotnet test tests/reachability/StellaOps.Reachability.FixtureTests/StellaOps.Reachability.FixtureTests.csproj

# Focus only the evaluation harness checks
DOTNET_CLI_UI_LANGUAGE=en DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1 \
  dotnet test tests/reachability/StellaOps.Reachability.FixtureTests/StellaOps.Reachability.FixtureTests.csproj \
  --filter ReachbenchEvaluationHarnessTests

The tests validate fixture integrity (hashes, schema versions) and now enforce the evaluation harness contract: reachable variants must surface execution paths while unreachable variants must not. Keep the environment overrides above in CI to avoid localization drift during hash comparisons.