From 33360e8d9d13700ed772343dbe3a98cdf9d173a2 Mon Sep 17 00:00:00 2001 From: master <> Date: Wed, 11 Feb 2026 14:28:58 +0200 Subject: [PATCH] qa(advisoryai): verify deterministic replay feature --- .../deterministic-ai-artifact-replay.md | 14 ++- ...I_unchecked_feature_verification_batch3.md | 49 ++++++++ .../run-001/evidence/command-results.json | 32 ++++++ .../evidence/tier1-build-attestor-replay.txt | 26 +++++ .../run-001/evidence/tier1-build-core.txt | 79 +++++++++++++ .../run-001/evidence/tier1-build-tests.txt | 108 ++++++++++++++++++ .../evidence/tier1-test-replay-suite.txt | 22 ++++ .../evidence/tier2-test-replay-behavior.txt | 46 ++++++++ .../run-001/tier0-source-check.json | 93 +++++++++++++++ .../run-001/tier1-build-check.json | 56 +++++++++ .../run-001/tier2-integration-check.json | 31 +++++ docs/qa/feature-checks/state/advisoryai.json | 24 +++- src/AdvisoryAI/StellaOps.AdvisoryAI/TASKS.md | 1 + .../StellaOps.AdvisoryAI.Tests/TASKS.md | 1 + 14 files changed, 574 insertions(+), 8 deletions(-) rename docs/features/{unchecked => checked}/advisoryai/deterministic-ai-artifact-replay.md (77%) create mode 100644 docs/implplan/SPRINT_20260211_020_AdvisoryAI_unchecked_feature_verification_batch3.md create mode 100644 docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/command-results.json create mode 100644 docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-attestor-replay.txt create mode 100644 docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-core.txt create mode 100644 docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-tests.txt create mode 100644 docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-test-replay-suite.txt create mode 100644 docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier2-test-replay-behavior.txt create mode 100644 docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/tier0-source-check.json create mode 100644 docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/tier1-build-check.json create mode 100644 docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/tier2-integration-check.json diff --git a/docs/features/unchecked/advisoryai/deterministic-ai-artifact-replay.md b/docs/features/checked/advisoryai/deterministic-ai-artifact-replay.md similarity index 77% rename from docs/features/unchecked/advisoryai/deterministic-ai-artifact-replay.md rename to docs/features/checked/advisoryai/deterministic-ai-artifact-replay.md index c8024c6e6..f691f2812 100644 --- a/docs/features/unchecked/advisoryai/deterministic-ai-artifact-replay.md +++ b/docs/features/checked/advisoryai/deterministic-ai-artifact-replay.md @@ -4,21 +4,21 @@ AdvisoryAI ## Status -IMPLEMENTED +VERIFIED ## Description Deterministic replay infrastructure for AI artifacts including replay manifests, prompt template versioning, and input artifact hashing for reproducible AI outputs. ## Implementation Details -- **Modules**: `src/AdvisoryAi/StellaOps.AdvisoryAI/Replay/`, `src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/` +- **Modules**: `src/AdvisoryAI/StellaOps.AdvisoryAI/Replay/`, `src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/` - **Key Classes**: - - `AIArtifactReplayer` (`src/AdvisoryAi/StellaOps.AdvisoryAI/Replay/AIArtifactReplayer.cs`) - replays AI artifacts with deterministic inputs for verification + - `AIArtifactReplayer` (`src/AdvisoryAI/StellaOps.AdvisoryAI/Replay/AIArtifactReplayer.cs`) - replays AI artifacts with deterministic inputs for verification - `ReplayInputArtifact` (`src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayInputArtifact.cs`) - input artifact model with content-addressed hashing - `ReplayPromptTemplate` (`src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayPromptTemplate.cs`) - versioned prompt templates for replay - `ReplayResult` (`src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayResult.cs`) - replay execution result with comparison data - `ReplayVerificationResult` (`src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayVerificationResult.cs`) - verification of replay output against original - `ReplayStatus` (`src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayStatus.cs`) - replay status tracking - - `DeterministicHashVectorEncoder` (`src/AdvisoryAi/StellaOps.AdvisoryAI/Vectorization/DeterministicHashVectorEncoder.cs`) - deterministic hash-based vector encoding for reproducibility + - `DeterministicHashVectorEncoder` (`src/AdvisoryAI/StellaOps.AdvisoryAI/Vectorization/DeterministicHashVectorEncoder.cs`) - deterministic hash-based vector encoding for reproducibility - **Interfaces**: None (uses concrete replay pipeline) - **Source**: Feature matrix scan @@ -29,3 +29,9 @@ Deterministic replay infrastructure for AI artifacts including replay manifests, - [ ] Verify `ReplayVerificationResult` detects differences when the replay output diverges from the original - [ ] Verify `DeterministicHashVectorEncoder` produces identical vectors for identical inputs across runs - [ ] Verify replay with temperature=0 and fixed seed produces bit-identical outputs for supported providers + +## Verification +- Verified on 2026-02-11 via `run-001`. +- Tier 0: `docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/tier0-source-check.json` +- Tier 1: `docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/tier1-build-check.json` +- Tier 2: `docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/tier2-integration-check.json` diff --git a/docs/implplan/SPRINT_20260211_020_AdvisoryAI_unchecked_feature_verification_batch3.md b/docs/implplan/SPRINT_20260211_020_AdvisoryAI_unchecked_feature_verification_batch3.md new file mode 100644 index 000000000..1a3438dff --- /dev/null +++ b/docs/implplan/SPRINT_20260211_020_AdvisoryAI_unchecked_feature_verification_batch3.md @@ -0,0 +1,49 @@ +# Sprint 20260211_020 - AdvisoryAI Unchecked Feature Verification Batch 3 + +## Topic & Scope +- Continue FLOW-based verification for remaining unchecked `advisoryai` features after batch-2 completion. +- Prioritize deterministic replay capability claims and convert verified dossiers to `docs/features/checked/advisoryai/`. +- Produce Tier 0/1/2 artifacts for replay contracts, implementation, and behavior tests. +- Working directory: `src/AdvisoryAI`. +- Expected evidence: `docs/qa/feature-checks/runs/advisoryai/**`, `docs/qa/feature-checks/state/advisoryai.json`, feature-file moves. + +## Dependencies & Concurrency +- Depends on `docs/qa/feature-checks/FLOW.md` and `src/AdvisoryAI/**`. +- Cross-directory updates are limited to `docs/features/**`, `docs/qa/feature-checks/**`, `docs/implplan/**`, and AdvisoryAI local task boards. +- Concurrent-agent rule: if another agent already terminalizes the same feature, record the skip/conflict note and continue to the next queue item. + +## Documentation Prerequisites +- `docs/qa/feature-checks/FLOW.md` +- `src/AdvisoryAI/AGENTS.md` +- `docs/modules/advisory-ai/architecture.md` + +## Delivery Tracker + +### QA-AIAI-VERIFY-005 - Verify `deterministic-ai-artifact-replay` +Status: DONE +Dependency: none +Owners: QA / Test Automation +Task description: +- Verify deterministic AI replay contracts and behavior across AdvisoryAI replay implementation, vector deterministic encoder, and Attestor replay schema models. +- Capture Tier 0 source evidence, Tier 1 build + focused test evidence, and Tier 2 behavioral replay verification evidence. +- Move feature file from `docs/features/unchecked/advisoryai/` to `docs/features/checked/advisoryai/` on pass. + +Completion criteria: +- [x] Tier 0 source verification completed. +- [x] Tier 1 build and test verification completed. +- [x] Tier 2 behavioral verification completed with fresh run evidence. +- [x] State file updated and feature moved to checked. + +## Execution Log +| Date (UTC) | Update | Owner | +| --- | --- | --- | +| 2026-02-11 | Sprint created; started `deterministic-ai-artifact-replay` verification with run-001. | QA | +| 2026-02-11 | `deterministic-ai-artifact-replay` verified (run-001 Tier 0/1/2 pass) with replay determinism and vector retrieval behavior evidence (`12/12`) and moved to `docs/features/checked/advisoryai/`. | QA | + +## Decisions & Risks +- Decision: No active FLOW problem-state entries remained at selection time; continuing with next AdvisoryAI unchecked feature. +- Risk: Feature dossier references both AdvisoryAI and Attestor replay models; verification must cover cross-module contract parity without modifying Attestor runtime code. +- Mitigation: include Attestor replay schema files in Tier 0/code-review evidence and keep implementation edits scoped to verification artifacts/docs only. + +## Next Checkpoints +- `QA-AIAI-VERIFY-005` completed; re-scan global state before selecting the next feature. diff --git a/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/command-results.json b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/command-results.json new file mode 100644 index 000000000..f6384e1fa --- /dev/null +++ b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/command-results.json @@ -0,0 +1,32 @@ +[ + { + "name": "tier1-build-core", + "command": "dotnet build src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj -v minimal", + "exitCode": 0, + "log": "docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-core.txt" + }, + { + "name": "tier1-build-attestor-replay", + "command": "dotnet build src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/StellaOps.Attestor.ProofChain.csproj -v minimal", + "exitCode": 0, + "log": "docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-attestor-replay.txt" + }, + { + "name": "tier1-build-tests", + "command": "dotnet build src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/StellaOps.AdvisoryAI.Tests.csproj -v minimal", + "exitCode": 0, + "log": "docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-tests.txt" + }, + { + "name": "tier1-test-replay-suite", + "command": "dotnet src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/bin/Debug/net10.0/StellaOps.AdvisoryAI.Tests.dll -class StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests -class StellaOps.AdvisoryAI.Tests.AdvisoryVectorRetrieverTests", + "exitCode": 0, + "log": "docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-test-replay-suite.txt" + }, + { + "name": "tier2-test-replay-behavior", + "command": "dotnet src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/bin/Debug/net10.0/StellaOps.AdvisoryAI.Tests.dll -class StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests -class StellaOps.AdvisoryAI.Tests.AdvisoryVectorRetrieverTests -reporter verbose", + "exitCode": 0, + "log": "docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier2-test-replay-behavior.txt" + } +] diff --git a/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-attestor-replay.txt b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-attestor-replay.txt new file mode 100644 index 000000000..f20d2ecd4 --- /dev/null +++ b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-attestor-replay.txt @@ -0,0 +1,26 @@ +### COMMAND +dotnet build src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/StellaOps.Attestor.ProofChain.csproj -v minimal + + Determining projects to restore... + All projects are up-to-date for restore. +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Attestor\__Libraries\StellaOps.Attestor.ProofChain\StellaOps.Attestor.ProofChain.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Scanner\__Libraries\StellaOps.Scanner.ChangeTrace\StellaOps.Scanner.ChangeTrace.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Canonical.Json\StellaOps.Canonical.Json.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Feedser\StellaOps.Feedser.Core\StellaOps.Feedser.Core.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Attestor\StellaOps.Attestor.Envelope\StellaOps.Attestor.Envelope.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.SourceIntel\StellaOps.Concelier.SourceIntel.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography\StellaOps.Cryptography.csproj] + StellaOps.Feedser.Core -> C:\dev\New folder\git.stella-ops.org\src\Feedser\StellaOps.Feedser.Core\bin\Debug\net10.0\StellaOps.Feedser.Core.dll + StellaOps.Feedser.BinaryAnalysis -> C:\dev\New folder\git.stella-ops.org\src\Feedser\StellaOps.Feedser.BinaryAnalysis\bin\Debug\net10.0\StellaOps.Feedser.BinaryAnalysis.dll + StellaOps.Concelier.SourceIntel -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.SourceIntel\bin\Debug\net10.0\StellaOps.Concelier.SourceIntel.dll + StellaOps.Cryptography -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography\bin\Debug\net10.0\StellaOps.Cryptography.dll + StellaOps.Canonical.Json -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Canonical.Json\bin\Debug\net10.0\StellaOps.Canonical.Json.dll + StellaOps.Attestor.Envelope -> C:\dev\New folder\git.stella-ops.org\src\Attestor\StellaOps.Attestor.Envelope\bin\Debug\net10.0\StellaOps.Attestor.Envelope.dll + StellaOps.Scanner.ChangeTrace -> C:\dev\New folder\git.stella-ops.org\src\Scanner\__Libraries\StellaOps.Scanner.ChangeTrace\bin\Debug\net10.0\StellaOps.Scanner.ChangeTrace.dll + StellaOps.Attestor.ProofChain -> C:\dev\New folder\git.stella-ops.org\src\Attestor\__Libraries\StellaOps.Attestor.ProofChain\bin\Debug\net10.0\StellaOps.Attestor.ProofChain.dll + +Build succeeded. + 0 Warning(s) + 0 Error(s) + +Time Elapsed 00:00:03.61 diff --git a/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-core.txt b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-core.txt new file mode 100644 index 000000000..8ff9fa7f7 --- /dev/null +++ b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-core.txt @@ -0,0 +1,79 @@ +### COMMAND +dotnet build src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj -v minimal + + Determining projects to restore... + All projects are up-to-date for restore. +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\AdvisoryAI\StellaOps.AdvisoryAI\StellaOps.AdvisoryAI.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Authority\StellaOps.Authority\StellaOps.Auth.Abstractions\StellaOps.Auth.Abstractions.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Models\StellaOps.Concelier.Models.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\AirGap\StellaOps.AirGap.Policy\StellaOps.AirGap.Policy\StellaOps.AirGap.Policy.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Configuration\StellaOps.Configuration.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Aoc\__Libraries\StellaOps.Aoc\StellaOps.Aoc.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Interest\StellaOps.Concelier.Interest.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Attestor\StellaOps.Attestation\StellaOps.Attestation.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Excititor\__Libraries\StellaOps.Excititor.Core\StellaOps.Excititor.Core.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Attestor\__Libraries\StellaOps.Attestor.StandardPredicates\StellaOps.Attestor.StandardPredicates.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\OpsMemory\StellaOps.OpsMemory\StellaOps.OpsMemory.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Evidence.Pack\StellaOps.Evidence.Pack.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Canonicalization\StellaOps.Canonicalization.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.AdvisoryAI.Attestation\StellaOps.AdvisoryAI.Attestation.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Canonical.Json\StellaOps.Canonical.Json.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Core\StellaOps.Concelier.Core.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Cache.Valkey\StellaOps.Concelier.Cache.Valkey.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography\StellaOps.Cryptography.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Attestor\StellaOps.Attestor.Envelope\StellaOps.Attestor.Envelope.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.RawModels\StellaOps.Concelier.RawModels.csproj] + StellaOps.Aoc -> C:\dev\New folder\git.stella-ops.org\src\Aoc\__Libraries\StellaOps.Aoc\bin\Debug\net10.0\StellaOps.Aoc.dll + StellaOps.Canonicalization -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Canonicalization\bin\Debug\net10.0\StellaOps.Canonicalization.dll + StellaOps.Concelier.RawModels -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.RawModels\bin\Debug\net10.0\StellaOps.Concelier.RawModels.dll + StellaOps.Canonical.Json -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Canonical.Json\bin\Debug\net10.0\StellaOps.Canonical.Json.dll + StellaOps.Cryptography -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography\bin\Debug\net10.0\StellaOps.Cryptography.dll + StellaOps.Determinism.Abstractions -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Determinism.Abstractions\bin\Debug\net10.0\StellaOps.Determinism.Abstractions.dll + StellaOps.Feedser.Core -> C:\dev\New folder\git.stella-ops.org\src\Feedser\StellaOps.Feedser.Core\bin\Debug\net10.0\StellaOps.Feedser.Core.dll + StellaOps.Concelier.SourceIntel -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.SourceIntel\bin\Debug\net10.0\StellaOps.Concelier.SourceIntel.dll + StellaOps.Ingestion.Telemetry -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Ingestion.Telemetry\bin\Debug\net10.0\StellaOps.Ingestion.Telemetry.dll + StellaOps.Scanner.ChangeTrace -> C:\dev\New folder\git.stella-ops.org\src\Scanner\__Libraries\StellaOps.Scanner.ChangeTrace\bin\Debug\net10.0\StellaOps.Scanner.ChangeTrace.dll + StellaOps.Facet -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Facet\bin\Debug\net10.0\StellaOps.Facet.dll + StellaOps.Feedser.BinaryAnalysis -> C:\dev\New folder\git.stella-ops.org\src\Feedser\StellaOps.Feedser.BinaryAnalysis\bin\Debug\net10.0\StellaOps.Feedser.BinaryAnalysis.dll + StellaOps.AdvisoryAI.Attestation -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.AdvisoryAI.Attestation\bin\Debug\net10.0\StellaOps.AdvisoryAI.Attestation.dll + StellaOps.AirGap.Policy -> C:\dev\New folder\git.stella-ops.org\src\AirGap\StellaOps.AirGap.Policy\StellaOps.AirGap.Policy\bin\Debug\net10.0\StellaOps.AirGap.Policy.dll + StellaOps.Concelier.Models -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Models\bin\Debug\net10.0\StellaOps.Concelier.Models.dll + StellaOps.Cryptography.PluginLoader -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.PluginLoader\bin\Debug\net10.0\StellaOps.Cryptography.PluginLoader.dll + StellaOps.Auth.Abstractions -> C:\dev\New folder\git.stella-ops.org\src\Authority\StellaOps.Authority\StellaOps.Auth.Abstractions\bin\Debug\net10.0\StellaOps.Auth.Abstractions.dll + StellaOps.Policy.RiskProfile -> C:\dev\New folder\git.stella-ops.org\src\Policy\StellaOps.Policy.RiskProfile\bin\Debug\net10.0\StellaOps.Policy.RiskProfile.dll + StellaOps.Provenance -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Provenance\bin\Debug\net10.0\StellaOps.Provenance.dll + StellaOps.Policy.Determinization -> C:\dev\New folder\git.stella-ops.org\src\Policy\__Libraries\StellaOps.Policy.Determinization\bin\Debug\net10.0\StellaOps.Policy.Determinization.dll + StellaOps.Attestor.Envelope -> C:\dev\New folder\git.stella-ops.org\src\Attestor\StellaOps.Attestor.Envelope\bin\Debug\net10.0\StellaOps.Attestor.Envelope.dll + StellaOps.DependencyInjection -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.DependencyInjection\bin\Debug\net10.0\StellaOps.DependencyInjection.dll + StellaOps.Attestor.ProofChain -> C:\dev\New folder\git.stella-ops.org\src\Attestor\__Libraries\StellaOps.Attestor.ProofChain\bin\Debug\net10.0\StellaOps.Attestor.ProofChain.dll + StellaOps.Attestation -> C:\dev\New folder\git.stella-ops.org\src\Attestor\StellaOps.Attestation\bin\Debug\net10.0\StellaOps.Attestation.dll + StellaOps.Concelier.Normalization -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Normalization\bin\Debug\net10.0\StellaOps.Concelier.Normalization.dll + StellaOps.Evidence.Pack -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Evidence.Pack\bin\Debug\net10.0\StellaOps.Evidence.Pack.dll + StellaOps.Plugin -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Plugin\bin\Debug\net10.0\StellaOps.Plugin.dll + StellaOps.Telemetry.Core -> C:\dev\New folder\git.stella-ops.org\src\Telemetry\StellaOps.Telemetry.Core\StellaOps.Telemetry.Core\bin\Debug\net10.0\StellaOps.Telemetry.Core.dll + StellaOps.Attestor.StandardPredicates -> C:\dev\New folder\git.stella-ops.org\src\Attestor\__Libraries\StellaOps.Attestor.StandardPredicates\bin\Debug\net10.0\StellaOps.Attestor.StandardPredicates.dll + StellaOps.Cryptography.Plugin.PqSoft -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.PqSoft\bin\Debug\net10.0\StellaOps.Cryptography.Plugin.PqSoft.dll + StellaOps.Cryptography.Plugin.SimRemote -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.SimRemote\bin\Debug\net10.0\StellaOps.Cryptography.Plugin.SimRemote.dll + StellaOps.Concelier.Core -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Core\bin\Debug\net10.0\StellaOps.Concelier.Core.dll + StellaOps.Cryptography.Plugin.WineCsp -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.WineCsp\bin\Debug\net10.0\StellaOps.Cryptography.Plugin.WineCsp.dll + StellaOps.Cryptography.Plugin.Pkcs11Gost -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.Pkcs11Gost\bin\Debug\net10.0\StellaOps.Cryptography.Plugin.Pkcs11Gost.dll + StellaOps.Concelier.Cache.Valkey -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Cache.Valkey\bin\Debug\net10.0\StellaOps.Concelier.Cache.Valkey.dll + StellaOps.Cryptography.Plugin.SmSoft -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.SmSoft\bin\Debug\net10.0\StellaOps.Cryptography.Plugin.SmSoft.dll + StellaOps.Cryptography.Plugin.SmRemote -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.SmRemote\bin\Debug\net10.0\StellaOps.Cryptography.Plugin.SmRemote.dll + StellaOps.Messaging -> C:\dev\New folder\git.stella-ops.org\src\Router\__Libraries\StellaOps.Messaging\bin\Debug\net10.0\StellaOps.Messaging.dll + StellaOps.Concelier.Interest -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Interest\bin\Debug\net10.0\StellaOps.Concelier.Interest.dll + StellaOps.Concelier.SbomIntegration -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.SbomIntegration\bin\Debug\net10.0\StellaOps.Concelier.SbomIntegration.dll + StellaOps.Policy -> C:\dev\New folder\git.stella-ops.org\src\Policy\__Libraries\StellaOps.Policy\bin\Debug\net10.0\StellaOps.Policy.dll + StellaOps.Cryptography.Plugin.OpenSslGost -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.OpenSslGost\bin\Debug\net10.0\StellaOps.Cryptography.Plugin.OpenSslGost.dll + StellaOps.Findings.Ledger -> C:\dev\New folder\git.stella-ops.org\src\Findings\StellaOps.Findings.Ledger\bin\Debug\net10.0\StellaOps.Findings.Ledger.dll + StellaOps.Excititor.Core -> C:\dev\New folder\git.stella-ops.org\src\Excititor\__Libraries\StellaOps.Excititor.Core\bin\Debug\net10.0\StellaOps.Excititor.Core.dll + StellaOps.Cryptography.DependencyInjection -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.DependencyInjection\bin\Debug\net10.0\StellaOps.Cryptography.DependencyInjection.dll + StellaOps.OpsMemory -> C:\dev\New folder\git.stella-ops.org\src\OpsMemory\StellaOps.OpsMemory\bin\Debug\net10.0\StellaOps.OpsMemory.dll + StellaOps.Configuration -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Configuration\bin\Debug\net10.0\StellaOps.Configuration.dll + StellaOps.AdvisoryAI -> C:\dev\New folder\git.stella-ops.org\src\AdvisoryAI\StellaOps.AdvisoryAI\bin\Debug\net10.0\StellaOps.AdvisoryAI.dll + +Build succeeded. + 0 Warning(s) + 0 Error(s) + +Time Elapsed 00:00:23.62 diff --git a/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-tests.txt b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-tests.txt new file mode 100644 index 000000000..e21820234 --- /dev/null +++ b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-tests.txt @@ -0,0 +1,108 @@ +### COMMAND +dotnet build src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/StellaOps.AdvisoryAI.Tests.csproj -v minimal + + Determining projects to restore... + All projects are up-to-date for restore. +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\AdvisoryAI\__Tests\StellaOps.AdvisoryAI.Tests\StellaOps.AdvisoryAI.Tests.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Attestor\__Libraries\StellaOps.Attestor.StandardPredicates\StellaOps.Attestor.StandardPredicates.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\__Tests\__Libraries\StellaOps.Concelier.Testing\StellaOps.Concelier.Testing.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Aoc\__Libraries\StellaOps.Aoc\StellaOps.Aoc.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.AdvisoryAI.Attestation\StellaOps.AdvisoryAI.Attestation.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.RawModels\StellaOps.Concelier.RawModels.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\AdvisoryAI\StellaOps.AdvisoryAI.Worker\StellaOps.AdvisoryAI.Worker.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Attestor\StellaOps.Attestor.Envelope\StellaOps.Attestor.Envelope.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\AdvisoryAI\StellaOps.AdvisoryAI.Hosting\StellaOps.AdvisoryAI.Hosting.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\AirGap\StellaOps.AirGap.Policy\StellaOps.AirGap.Policy\StellaOps.AirGap.Policy.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\AdvisoryAI\StellaOps.AdvisoryAI.Scm.Plugin.Unified\StellaOps.AdvisoryAI.Scm.Plugin.Unified.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Attestor\__Libraries\StellaOps.Attestor.ProofChain\StellaOps.Attestor.ProofChain.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Attestor\StellaOps.Attestation\StellaOps.Attestation.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Core\StellaOps.Concelier.Core.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\AdvisoryAI\StellaOps.AdvisoryAI\StellaOps.AdvisoryAI.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Plugin\StellaOps.Plugin.Testing\StellaOps.Plugin.Testing.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\AdvisoryAI\StellaOps.AdvisoryAI.WebService\StellaOps.AdvisoryAI.WebService.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\AdvisoryAI\StellaOps.AdvisoryAI.Plugin.Unified\StellaOps.AdvisoryAI.Plugin.Unified.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.TestKit\StellaOps.TestKit.csproj] +C:\Program Files\dotnet\sdk\10.0.200-preview.0.26103.119\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(383,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\dev\New folder\git.stella-ops.org\src\Excititor\__Libraries\StellaOps.Excititor.Core\StellaOps.Excititor.Core.csproj] + StellaOps.AirGap.Policy -> C:\dev\New folder\git.stella-ops.org\src\AirGap\StellaOps.AirGap.Policy\StellaOps.AirGap.Policy\bin\Debug\net10.0\StellaOps.AirGap.Policy.dll + StellaOps.Canonical.Json -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Canonical.Json\bin\Debug\net10.0\StellaOps.Canonical.Json.dll + StellaOps.DependencyInjection -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.DependencyInjection\bin\Debug\net10.0\StellaOps.DependencyInjection.dll + StellaOps.Auth.Abstractions -> C:\dev\New folder\git.stella-ops.org\src\Authority\StellaOps.Authority\StellaOps.Auth.Abstractions\bin\Debug\net10.0\StellaOps.Auth.Abstractions.dll + StellaOps.Concelier.SourceIntel -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.SourceIntel\bin\Debug\net10.0\StellaOps.Concelier.SourceIntel.dll + StellaOps.Feedser.Core -> C:\dev\New folder\git.stella-ops.org\src\Feedser\StellaOps.Feedser.Core\bin\Debug\net10.0\StellaOps.Feedser.Core.dll + StellaOps.Cryptography -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography\bin\Debug\net10.0\StellaOps.Cryptography.dll + StellaOps.Facet -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Facet\bin\Debug\net10.0\StellaOps.Facet.dll + StellaOps.VersionComparison -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.VersionComparison\bin\Debug\net10.0\StellaOps.VersionComparison.dll + StellaOps.Worker.Health -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Worker.Health\bin\Debug\net10.0\StellaOps.Worker.Health.dll + StellaOps.Canonicalization -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Canonicalization\bin\Debug\net10.0\StellaOps.Canonicalization.dll + StellaOps.Determinism.Abstractions -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Determinism.Abstractions\bin\Debug\net10.0\StellaOps.Determinism.Abstractions.dll + StellaOps.Feedser.BinaryAnalysis -> C:\dev\New folder\git.stella-ops.org\src\Feedser\StellaOps.Feedser.BinaryAnalysis\bin\Debug\net10.0\StellaOps.Feedser.BinaryAnalysis.dll + StellaOps.Settings -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Settings\bin\Debug\net10.0\StellaOps.Settings.dll + StellaOps.Infrastructure.Postgres -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Infrastructure.Postgres\bin\Debug\net10.0\StellaOps.Infrastructure.Postgres.dll + StellaOps.Router.Common -> C:\dev\New folder\git.stella-ops.org\src\Router\__Libraries\StellaOps.Router.Common\bin\Debug\net10.0\StellaOps.Router.Common.dll + StellaOps.Cryptography.PluginLoader -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.PluginLoader\bin\Debug\net10.0\StellaOps.Cryptography.PluginLoader.dll + StellaOps.Ingestion.Telemetry -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Ingestion.Telemetry\bin\Debug\net10.0\StellaOps.Ingestion.Telemetry.dll + StellaOps.Policy.RiskProfile -> C:\dev\New folder\git.stella-ops.org\src\Policy\StellaOps.Policy.RiskProfile\bin\Debug\net10.0\StellaOps.Policy.RiskProfile.dll + StellaOps.Plugin.Abstractions -> C:\dev\New folder\git.stella-ops.org\src\Plugin\StellaOps.Plugin.Abstractions\bin\Debug\net10.0\StellaOps.Plugin.Abstractions.dll + StellaOps.Infrastructure.EfCore -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Infrastructure.EfCore\bin\Debug\net10.0\StellaOps.Infrastructure.EfCore.dll + StellaOps.Provenance.Attestation -> C:\dev\New folder\git.stella-ops.org\src\Provenance\StellaOps.Provenance.Attestation\bin\Debug\net10.0\StellaOps.Provenance.Attestation.dll + StellaOps.Scanner.ChangeTrace -> C:\dev\New folder\git.stella-ops.org\src\Scanner\__Libraries\StellaOps.Scanner.ChangeTrace\bin\Debug\net10.0\StellaOps.Scanner.ChangeTrace.dll + StellaOps.TestKit -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.TestKit\bin\Debug\net10.0\StellaOps.TestKit.dll + StellaOps.Attestor.Envelope -> C:\dev\New folder\git.stella-ops.org\src\Attestor\StellaOps.Attestor.Envelope\bin\Debug\net10.0\StellaOps.Attestor.Envelope.dll + StellaOps.Aoc -> C:\dev\New folder\git.stella-ops.org\src\Aoc\__Libraries\StellaOps.Aoc\bin\Debug\net10.0\StellaOps.Aoc.dll + StellaOps.Telemetry.Core -> C:\dev\New folder\git.stella-ops.org\src\Telemetry\StellaOps.Telemetry.Core\StellaOps.Telemetry.Core\bin\Debug\net10.0\StellaOps.Telemetry.Core.dll + StellaOps.Concelier.RawModels -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.RawModels\bin\Debug\net10.0\StellaOps.Concelier.RawModels.dll + StellaOps.AdvisoryAI.Attestation -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.AdvisoryAI.Attestation\bin\Debug\net10.0\StellaOps.AdvisoryAI.Attestation.dll + StellaOps.AspNet.Extensions -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.AspNet.Extensions\bin\Debug\net10.0\StellaOps.AspNet.Extensions.dll + StellaOps.Plugin -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Plugin\bin\Debug\net10.0\StellaOps.Plugin.dll + StellaOps.Concelier.Models -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Models\bin\Debug\net10.0\StellaOps.Concelier.Models.dll + StellaOps.Infrastructure.Postgres.Testing -> C:\dev\New folder\git.stella-ops.org\src\__Tests\__Libraries\StellaOps.Infrastructure.Postgres.Testing\bin\Debug\net10.0\StellaOps.Infrastructure.Postgres.Testing.dll + StellaOps.Plugin.Sdk -> C:\dev\New folder\git.stella-ops.org\src\Plugin\StellaOps.Plugin.Sdk\bin\Debug\net10.0\StellaOps.Plugin.Sdk.dll + StellaOps.Cryptography.Plugin.WineCsp -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.WineCsp\bin\Debug\net10.0\StellaOps.Cryptography.Plugin.WineCsp.dll + StellaOps.Cryptography.Plugin.Pkcs11Gost -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.Pkcs11Gost\bin\Debug\net10.0\StellaOps.Cryptography.Plugin.Pkcs11Gost.dll + StellaOps.Cryptography.Plugin.SimRemote -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.SimRemote\bin\Debug\net10.0\StellaOps.Cryptography.Plugin.SimRemote.dll + StellaOps.Cryptography.Plugin.PqSoft -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.PqSoft\bin\Debug\net10.0\StellaOps.Cryptography.Plugin.PqSoft.dll + StellaOps.Cryptography.Plugin.SmSoft -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.SmSoft\bin\Debug\net10.0\StellaOps.Cryptography.Plugin.SmSoft.dll + StellaOps.Cryptography.Plugin.SmRemote -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.SmRemote\bin\Debug\net10.0\StellaOps.Cryptography.Plugin.SmRemote.dll + StellaOps.Cryptography.Plugin.OpenSslGost -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.OpenSslGost\bin\Debug\net10.0\StellaOps.Cryptography.Plugin.OpenSslGost.dll + StellaOps.Policy.Determinization -> C:\dev\New folder\git.stella-ops.org\src\Policy\__Libraries\StellaOps.Policy.Determinization\bin\Debug\net10.0\StellaOps.Policy.Determinization.dll + StellaOps.Provenance -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Provenance\bin\Debug\net10.0\StellaOps.Provenance.dll + StellaOps.Attestation -> C:\dev\New folder\git.stella-ops.org\src\Attestor\StellaOps.Attestation\bin\Debug\net10.0\StellaOps.Attestation.dll + StellaOps.Concelier.Normalization -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Normalization\bin\Debug\net10.0\StellaOps.Concelier.Normalization.dll + StellaOps.Findings.Ledger -> C:\dev\New folder\git.stella-ops.org\src\Findings\StellaOps.Findings.Ledger\bin\Debug\net10.0\StellaOps.Findings.Ledger.dll + StellaOps.Microservice -> C:\dev\New folder\git.stella-ops.org\src\Router\__Libraries\StellaOps.Microservice\bin\Debug\net10.0\StellaOps.Microservice.dll + StellaOps.Messaging -> C:\dev\New folder\git.stella-ops.org\src\Router\__Libraries\StellaOps.Messaging\bin\Debug\net10.0\StellaOps.Messaging.dll + StellaOps.Attestor.ProofChain -> C:\dev\New folder\git.stella-ops.org\src\Attestor\__Libraries\StellaOps.Attestor.ProofChain\bin\Debug\net10.0\StellaOps.Attestor.ProofChain.dll + StellaOps.Cryptography.DependencyInjection -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.DependencyInjection\bin\Debug\net10.0\StellaOps.Cryptography.DependencyInjection.dll + StellaOps.Plugin.Testing -> C:\dev\New folder\git.stella-ops.org\src\Plugin\StellaOps.Plugin.Testing\bin\Debug\net10.0\StellaOps.Plugin.Testing.dll + StellaOps.Evidence.Pack -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Evidence.Pack\bin\Debug\net10.0\StellaOps.Evidence.Pack.dll + StellaOps.Concelier.ProofService -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.ProofService\bin\Debug\net10.0\StellaOps.Concelier.ProofService.dll + StellaOps.OpsMemory -> C:\dev\New folder\git.stella-ops.org\src\OpsMemory\StellaOps.OpsMemory\bin\Debug\net10.0\StellaOps.OpsMemory.dll + StellaOps.Concelier.Core -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Core\bin\Debug\net10.0\StellaOps.Concelier.Core.dll + StellaOps.Attestor.StandardPredicates -> C:\dev\New folder\git.stella-ops.org\src\Attestor\__Libraries\StellaOps.Attestor.StandardPredicates\bin\Debug\net10.0\StellaOps.Attestor.StandardPredicates.dll + StellaOps.Configuration -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Configuration\bin\Debug\net10.0\StellaOps.Configuration.dll + StellaOps.Provcache -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Provcache\bin\Debug\net10.0\StellaOps.Provcache.dll + StellaOps.Microservice.AspNetCore -> C:\dev\New folder\git.stella-ops.org\src\Router\__Libraries\StellaOps.Microservice.AspNetCore\bin\Debug\net10.0\StellaOps.Microservice.AspNetCore.dll + StellaOps.Concelier.Cache.Valkey -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Cache.Valkey\bin\Debug\net10.0\StellaOps.Concelier.Cache.Valkey.dll + StellaOps.Concelier.Merge -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Merge\bin\Debug\net10.0\StellaOps.Concelier.Merge.dll + StellaOps.Concelier.Interest -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Interest\bin\Debug\net10.0\StellaOps.Concelier.Interest.dll + StellaOps.Router.AspNet -> C:\dev\New folder\git.stella-ops.org\src\Router\__Libraries\StellaOps.Router.AspNet\bin\Debug\net10.0\StellaOps.Router.AspNet.dll + StellaOps.Auth.ServerIntegration -> C:\dev\New folder\git.stella-ops.org\src\Authority\StellaOps.Authority\StellaOps.Auth.ServerIntegration\bin\Debug\net10.0\StellaOps.Auth.ServerIntegration.dll + StellaOps.Concelier.SbomIntegration -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.SbomIntegration\bin\Debug\net10.0\StellaOps.Concelier.SbomIntegration.dll + StellaOps.Concelier.Persistence -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Persistence\bin\Debug\net10.0\StellaOps.Concelier.Persistence.dll + StellaOps.Policy -> C:\dev\New folder\git.stella-ops.org\src\Policy\__Libraries\StellaOps.Policy\bin\Debug\net10.0\StellaOps.Policy.dll + StellaOps.Concelier.Connector.Common -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Connector.Common\bin\Debug\net10.0\StellaOps.Concelier.Connector.Common.dll + StellaOps.Excititor.Core -> C:\dev\New folder\git.stella-ops.org\src\Excititor\__Libraries\StellaOps.Excititor.Core\bin\Debug\net10.0\StellaOps.Excititor.Core.dll + StellaOps.AdvisoryAI -> C:\dev\New folder\git.stella-ops.org\src\AdvisoryAI\StellaOps.AdvisoryAI\bin\Debug\net10.0\StellaOps.AdvisoryAI.dll + StellaOps.Concelier.Testing -> C:\dev\New folder\git.stella-ops.org\src\__Tests\__Libraries\StellaOps.Concelier.Testing\bin\Debug\net10.0\StellaOps.Concelier.Testing.dll + StellaOps.AdvisoryAI.Hosting -> C:\dev\New folder\git.stella-ops.org\src\AdvisoryAI\StellaOps.AdvisoryAI.Hosting\bin\Debug\net10.0\StellaOps.AdvisoryAI.Hosting.dll + StellaOps.AdvisoryAI.Scm.Plugin.Unified -> C:\dev\New folder\git.stella-ops.org\src\AdvisoryAI\StellaOps.AdvisoryAI.Scm.Plugin.Unified\bin\Debug\net10.0\StellaOps.AdvisoryAI.Scm.Plugin.Unified.dll + StellaOps.AdvisoryAI.Plugin.Unified -> C:\dev\New folder\git.stella-ops.org\src\AdvisoryAI\StellaOps.AdvisoryAI.Plugin.Unified\bin\Debug\net10.0\StellaOps.AdvisoryAI.Plugin.Unified.dll + StellaOps.AdvisoryAI.WebService -> C:\dev\New folder\git.stella-ops.org\src\AdvisoryAI\StellaOps.AdvisoryAI.WebService\bin\Debug\net10.0\StellaOps.AdvisoryAI.WebService.dll + StellaOps.AdvisoryAI.Worker -> C:\dev\New folder\git.stella-ops.org\src\AdvisoryAI\StellaOps.AdvisoryAI.Worker\bin\Debug\net10.0\StellaOps.AdvisoryAI.Worker.dll + StellaOps.AdvisoryAI.Tests -> C:\dev\New folder\git.stella-ops.org\src\AdvisoryAI\__Tests\StellaOps.AdvisoryAI.Tests\bin\Debug\net10.0\StellaOps.AdvisoryAI.Tests.dll + +Build succeeded. + 0 Warning(s) + 0 Error(s) + +Time Elapsed 00:00:15.87 diff --git a/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-test-replay-suite.txt b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-test-replay-suite.txt new file mode 100644 index 000000000..911827e29 --- /dev/null +++ b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-test-replay-suite.txt @@ -0,0 +1,22 @@ +### COMMAND +dotnet src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/bin/Debug/net10.0/StellaOps.AdvisoryAI.Tests.dll -class StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests -class StellaOps.AdvisoryAI.Tests.AdvisoryVectorRetrieverTests + +xUnit.net v3 In-Process Runner v3.2.1+a9cfb80929 (64-bit .NET 10.0.3) + Discovering: StellaOps.AdvisoryAI.Tests + Discovered: StellaOps.AdvisoryAI.Tests + Starting: StellaOps.AdvisoryAI.Tests + Warning: + The component "Fluent Assertions" is governed by the rules defined in the Xceed License Agreement and + the Xceed Fluent Assertions Community License. You may use Fluent Assertions free of charge for + non-commercial use only. An active subscription is required to use Fluent Assertions for commercial use. + + Please contact Xceed Sales mailto:sales@xceed.com to acquire a subscription at a very low cost. + + A paid commercial license supports the development and continued increasing support of + Fluent Assertions users under both commercial and community licenses. Help us + keep Fluent Assertions at the forefront of unit testing. + + For more information, visit https://xceed.com/products/unit-testing/fluent-assertions/ + Finished: StellaOps.AdvisoryAI.Tests (ID = '9c3b68018171facfd306cf6a2e18586efd3dbe395ae98682f35e58e3f6d4f0d5') +=== TEST EXECUTION SUMMARY === + StellaOps.AdvisoryAI.Tests Total: 12, Errors: 0, Failed: 0, Skipped: 0, Not Run: 0, Time: 0.257s diff --git a/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier2-test-replay-behavior.txt b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier2-test-replay-behavior.txt new file mode 100644 index 000000000..01cd557bb --- /dev/null +++ b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier2-test-replay-behavior.txt @@ -0,0 +1,46 @@ +### COMMAND +dotnet src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/bin/Debug/net10.0/StellaOps.AdvisoryAI.Tests.dll -class StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests -class StellaOps.AdvisoryAI.Tests.AdvisoryVectorRetrieverTests -reporter verbose + +xUnit.net v3 In-Process Runner v3.2.1+a9cfb80929 (64-bit .NET 10.0.3) + Discovering: StellaOps.AdvisoryAI.Tests + Discovered: StellaOps.AdvisoryAI.Tests + Starting: StellaOps.AdvisoryAI.Tests + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.OutputHash_MatchesContentHash [STARTING] + Warning: + The component "Fluent Assertions" is governed by the rules defined in the Xceed License Agreement and + the Xceed Fluent Assertions Community License. You may use Fluent Assertions free of charge for + non-commercial use only. An active subscription is required to use Fluent Assertions for commercial use. + + Please contact Xceed Sales mailto:sales@xceed.com to acquire a subscription at a very low cost. + + A paid commercial license supports the development and continued increasing support of + Fluent Assertions users under both commercial and community licenses. Help us + keep Fluent Assertions at the forefront of unit testing. + + For more information, visit https://xceed.com/products/unit-testing/fluent-assertions/ + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.OutputHash_MatchesContentHash [FINISHED] Time: 0.0270466s + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.InputHashOrder_IsConsistent [STARTING] + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.InputHashOrder_IsConsistent [FINISHED] Time: 0.0439296s + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.ExplanationId_IsDeterministicFromInputsAndOutput [STARTING] + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.ExplanationId_IsDeterministicFromInputsAndOutput [FINISHED] Time: 0.000693s + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.GoldenOutput_MatchesExpectedFormat [STARTING] + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.GoldenOutput_MatchesExpectedFormat [FINISHED] Time: 0.0099548s + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.SummaryGeneration_IsDeterministic [STARTING] + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.SummaryGeneration_IsDeterministic [FINISHED] Time: 0.000999s + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.MultipleReplays_ProduceIdenticalResults [STARTING] + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.MultipleReplays_ProduceIdenticalResults [FINISHED] Time: 0.0028298s + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.CitationVerification_IsDeterministic [STARTING] + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.CitationVerification_IsDeterministic [FINISHED] Time: 0.0016178s + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.ReplayAsync_PreservesExplanationStructure [STARTING] + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.ReplayAsync_PreservesExplanationStructure [FINISHED] Time: 0.0337793s + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.ReplayAsync_WithSameInputs_ProducesIdenticalOutput [STARTING] + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.ReplayAsync_WithSameInputs_ProducesIdenticalOutput [FINISHED] Time: 0.0038877s + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.DifferentInputs_ProduceDifferentIds [STARTING] + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.DifferentInputs_ProduceDifferentIds [FINISHED] Time: 0.0017183s + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.ReplayAsync_WithChangedEvidence_ThrowsException [STARTING] + StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests.ReplayAsync_WithChangedEvidence_ThrowsException [FINISHED] Time: 0.0132736s + StellaOps.AdvisoryAI.Tests.AdvisoryVectorRetrieverTests.SearchAsync_ReturnsBestMatchingChunk [STARTING] + StellaOps.AdvisoryAI.Tests.AdvisoryVectorRetrieverTests.SearchAsync_ReturnsBestMatchingChunk [FINISHED] Time: 0.0499959s + Finished: StellaOps.AdvisoryAI.Tests (ID = '9c3b68018171facfd306cf6a2e18586efd3dbe395ae98682f35e58e3f6d4f0d5') +=== TEST EXECUTION SUMMARY === + StellaOps.AdvisoryAI.Tests Total: 12, Errors: 0, Failed: 0, Skipped: 0, Not Run: 0, Time: 0.321s diff --git a/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/tier0-source-check.json b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/tier0-source-check.json new file mode 100644 index 000000000..686973186 --- /dev/null +++ b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/tier0-source-check.json @@ -0,0 +1,93 @@ +{ + "type": "source", + "module": "advisoryai", + "feature": "deterministic-ai-artifact-replay", + "runId": "run-001", + "capturedAtUtc": "2026-02-11T12:25:04.0727544Z", + "filesChecked": [ + "src/AdvisoryAI/StellaOps.AdvisoryAI/Replay/AIArtifactReplayer.cs", + "src/AdvisoryAI/StellaOps.AdvisoryAI/Vectorization/DeterministicHashVectorEncoder.cs", + "src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/ExplanationReplayGoldenTests.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/AIArtifactReplayManifest.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/IAIArtifactReplayer.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayInputArtifact.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayPromptTemplate.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayResult.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayVerificationResult.cs" + ], + "found": [ + "src/AdvisoryAI/StellaOps.AdvisoryAI/Replay/AIArtifactReplayer.cs", + "src/AdvisoryAI/StellaOps.AdvisoryAI/Vectorization/DeterministicHashVectorEncoder.cs", + "src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/ExplanationReplayGoldenTests.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/AIArtifactReplayManifest.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/IAIArtifactReplayer.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayInputArtifact.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayPromptTemplate.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayResult.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayVerificationResult.cs" + ], + "missing": [ + + ], + "declarationChecks": [ + { + "pattern": "interface IAIArtifactReplayer", + "found": true, + "sample": [ + "src/AdvisoryAI\\StellaOps.AdvisoryAI\\Replay\\AIArtifactReplayer.cs:14:public interface IAIArtifactReplayer", + "src/Attestor\\__Libraries\\StellaOps.Attestor.ProofChain\\Replay\\IAIArtifactReplayer.cs:10:public interface IAIArtifactReplayer" + ] + }, + { + "pattern": "class AIArtifactReplayer", + "found": true, + "sample": "src/AdvisoryAI\\StellaOps.AdvisoryAI\\Replay\\AIArtifactReplayer.cs:169:public sealed class AIArtifactReplayer : IAIArtifactReplayer" + }, + { + "pattern": "record AIArtifactReplayManifest", + "found": true, + "sample": [ + "src/AdvisoryAI\\StellaOps.AdvisoryAI\\Replay\\AIArtifactReplayer.cs:44:public sealed record AIArtifactReplayManifest", + "src/Attestor\\__Libraries\\StellaOps.Attestor.ProofChain\\Replay\\AIArtifactReplayManifest.cs:11:public sealed record AIArtifactReplayManifest" + ] + }, + { + "pattern": "record ReplayResult", + "found": true, + "sample": [ + "src/AdvisoryAI\\StellaOps.AdvisoryAI\\Replay\\AIArtifactReplayer.cs:120:public sealed record ReplayResult", + "src/Attestor\\__Libraries\\StellaOps.Attestor.ProofChain\\Replay\\ReplayResult.cs:6:public sealed record ReplayResult" + ] + }, + { + "pattern": "record ReplayVerificationResult", + "found": true, + "sample": [ + "src/AdvisoryAI\\StellaOps.AdvisoryAI\\Replay\\AIArtifactReplayer.cs:157:public sealed record ReplayVerificationResult", + "src/Attestor\\__Libraries\\StellaOps.Attestor.ProofChain\\Replay\\ReplayVerificationResult.cs:8:public sealed record ReplayVerificationResult" + ] + }, + { + "pattern": "class DeterministicHashVectorEncoder", + "found": true, + "sample": "src/AdvisoryAI\\StellaOps.AdvisoryAI\\Vectorization\\DeterministicHashVectorEncoder.cs:15:internal sealed class DeterministicHashVectorEncoder : IVectorEncoder" + }, + { + "pattern": "class ExplanationReplayGoldenTests", + "found": true, + "sample": "src/AdvisoryAI\\__Tests\\StellaOps.AdvisoryAI.Tests\\ExplanationReplayGoldenTests.cs:17:public sealed class ExplanationReplayGoldenTests" + }, + { + "pattern": "record ReplayInputArtifact", + "found": true, + "sample": "src/Attestor\\__Libraries\\StellaOps.Attestor.ProofChain\\Replay\\ReplayInputArtifact.cs:8:public sealed record ReplayInputArtifact" + }, + { + "pattern": "record ReplayPromptTemplate", + "found": true, + "sample": "src/Attestor\\__Libraries\\StellaOps.Attestor.ProofChain\\Replay\\ReplayPromptTemplate.cs:8:public sealed record ReplayPromptTemplate" + } + ], + "missingRatio": 0, + "verdict": "pass" +} diff --git a/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/tier1-build-check.json b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/tier1-build-check.json new file mode 100644 index 000000000..9eef4bcc4 --- /dev/null +++ b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/tier1-build-check.json @@ -0,0 +1,56 @@ +{ + "type": "build", + "module": "advisoryai", + "feature": "deterministic-ai-artifact-replay", + "runId": "run-001", + "capturedAtUtc": "2026-02-11T12:27:22.0422913Z", + "projects": [ + { + "project": "src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj", + "buildResult": "pass", + "exitCode": 0, + "evidence": "docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-core.txt" + }, + { + "project": "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/StellaOps.Attestor.ProofChain.csproj", + "buildResult": "pass", + "exitCode": 0, + "evidence": "docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-attestor-replay.txt" + }, + { + "project": "src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/StellaOps.AdvisoryAI.Tests.csproj", + "buildResult": "pass", + "exitCode": 0, + "evidence": "docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-build-tests.txt" + } + ], + "tests": { + "command": "dotnet src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/bin/Debug/net10.0/StellaOps.AdvisoryAI.Tests.dll -class StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests -class StellaOps.AdvisoryAI.Tests.AdvisoryVectorRetrieverTests", + "exitCode": 0, + "failed": 0, + "passed": 12, + "skipped": 0, + "total": 12, + "log": "docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier1-test-replay-suite.txt" + }, + "codeReview": { + "verdict": "pass", + "reviewedFiles": [ + "src/AdvisoryAI/StellaOps.AdvisoryAI/Replay/AIArtifactReplayer.cs", + "src/AdvisoryAI/StellaOps.AdvisoryAI/Vectorization/DeterministicHashVectorEncoder.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/AIArtifactReplayManifest.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayInputArtifact.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayPromptTemplate.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayResult.cs", + "src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Replay/ReplayVerificationResult.cs" + ], + "reviewedTests": [ + "src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/ExplanationReplayGoldenTests.cs", + "src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/AdvisoryVectorRetrieverTests.cs" + ] + }, + "warnings": [ + "Fluent Assertions community-license warning appears in xUnit runner output; does not affect test pass/fail." + ], + "verdict": "pass" +} diff --git a/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/tier2-integration-check.json b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/tier2-integration-check.json new file mode 100644 index 000000000..0ad7d9c5d --- /dev/null +++ b/docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/tier2-integration-check.json @@ -0,0 +1,31 @@ +{ + "type": "integration", + "module": "advisoryai", + "feature": "deterministic-ai-artifact-replay", + "runId": "run-001", + "capturedAtUtc": "2026-02-11T12:27:22.0523880Z", + "command": { + "value": "dotnet src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/bin/Debug/net10.0/StellaOps.AdvisoryAI.Tests.dll -class StellaOps.AdvisoryAI.Tests.ExplanationReplayGoldenTests -class StellaOps.AdvisoryAI.Tests.AdvisoryVectorRetrieverTests -reporter verbose", + "exitCode": 0, + "failed": 0, + "passed": 12, + "skipped": 0, + "total": 12, + "log": "docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier2-test-replay-behavior.txt" + }, + "behaviorVerified": [ + "Replay of the same explanation inputs preserves output hash, content, input hashes, and explanation structure across repeated executions.", + "Replay divergence path is exercised: changed evidence raises an exception and verification fails as expected.", + "Explanation IDs and citation/summary generation remain deterministic across repeated runs and input variations.", + "Deterministic hash vector encoder participates in vector retrieval behavior and returns stable best-match chunk for the same query/content corpus." + ], + "evidence": [ + "docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/evidence/tier2-test-replay-behavior.txt", + "src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/ExplanationReplayGoldenTests.cs", + "src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/AdvisoryVectorRetrieverTests.cs" + ], + "warnings": [ + "Fluent Assertions community-license warning appears in xUnit runner output; tests still pass (12/12)." + ], + "verdict": "pass" +} diff --git a/docs/qa/feature-checks/state/advisoryai.json b/docs/qa/feature-checks/state/advisoryai.json index b8a6dc2af..1b37a7ed8 100644 --- a/docs/qa/feature-checks/state/advisoryai.json +++ b/docs/qa/feature-checks/state/advisoryai.json @@ -1,7 +1,7 @@ { "module": "advisoryai", - "featureCount": 4, - "lastUpdatedUtc": "2026-02-11T12:02:43.4719391Z", + "featureCount": 5, + "lastUpdatedUtc": "2026-02-11T12:27:49.8818054Z", "features": { "advisoryai-orchestrator": { "status": "done", @@ -69,10 +69,26 @@ "[2026-02-11T12:01:50.5859168Z] done: run-002 Tier 0/1/2 passed with companion endpoint authorization/mapping checks and deterministic runtime-signal companion behavior evidence; feature confirmed in checked/ docs.", "[2026-02-11T12:02:43.4719391Z] done: run-002 recheck passed with companion endpoint + deterministic service behavior evidence; latest checked dossier references run-002 artifacts." ] - } + }, + "deterministic-ai-artifact-replay": { + "status": "done", + "tier": 2, + "retryCount": 0, + "sourceVerified": true, + "buildVerified": true, + "e2eVerified": true, + "skipReason": null, + "lastRunId": "run-001", + "lastUpdatedUtc": "2026-02-11T12:27:49.8818054Z", + "featureFile": "docs/features/checked/advisoryai/deterministic-ai-artifact-replay.md", + "notes": [ + "[2026-02-11T12:24:48.6138169Z] checking: Started run-001 Tier 0/1/2 verification for deterministic-ai-artifact-replay.", + "[2026-02-11T12:27:49.8818054Z] done: run-001 Tier 0/1/2 passed with deterministic replay and vector encoder behavior evidence (12/12); feature moved to checked." + ] + } }, "summary": { - "done": 4, + "done": 5, "not_implemented": 0, "blocked": 0, "failed": 0, diff --git a/src/AdvisoryAI/StellaOps.AdvisoryAI/TASKS.md b/src/AdvisoryAI/StellaOps.AdvisoryAI/TASKS.md index ef53510ff..412d79ddc 100644 --- a/src/AdvisoryAI/StellaOps.AdvisoryAI/TASKS.md +++ b/src/AdvisoryAI/StellaOps.AdvisoryAI/TASKS.md @@ -17,4 +17,5 @@ Source of truth: `docs/implplan/SPRINT_20260113_005_ADVISORYAI_controlled_conver | QA-AIAI-VERIFY-002 | DONE | FLOW verification complete for `advisoryai-pipeline-with-guardrails` with Tier 0/1/2 artifacts under `docs/qa/feature-checks/runs/advisoryai/advisoryai-pipeline-with-guardrails/run-001/`. | | QA-AIAI-VERIFY-003 | DONE | FLOW verification complete for `ai-action-policy-gate` with Tier 0/1/2 artifacts under `docs/qa/feature-checks/runs/advisoryai/ai-action-policy-gate/run-001/`. | | QA-AIAI-VERIFY-004 | DONE | FLOW verification complete for `ai-codex-zastava-companion` with Tier 0/1/2 artifacts under `docs/qa/feature-checks/runs/advisoryai/ai-codex-zastava-companion/run-002/`. | +| QA-AIAI-VERIFY-005 | DONE | FLOW verification complete for `deterministic-ai-artifact-replay` with Tier 0/1/2 artifacts under `docs/qa/feature-checks/runs/advisoryai/deterministic-ai-artifact-replay/run-001/`. | diff --git a/src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/TASKS.md b/src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/TASKS.md index 336af1316..f7694c4b0 100644 --- a/src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/TASKS.md +++ b/src/AdvisoryAI/__Tests/StellaOps.AdvisoryAI.Tests/TASKS.md @@ -12,4 +12,5 @@ Source of truth: `docs/implplan/SPRINT_20260130_002_Tools_csproj_remediation_sol | QA-AIAI-VERIFY-002 | DONE | Guardrail/pipeline/retriever/action/idempotency evidence collection completed for `advisoryai-pipeline-with-guardrails` in run-001. | | QA-AIAI-VERIFY-003 | DONE | Action-policy gate behavioral re-verification completed in run-002 with added action workflow integration coverage. | | QA-AIAI-VERIFY-004 | DONE | Codex/Zastava companion behavioral re-verification completed in run-002 with refreshed endpoint/service evidence. | +| QA-AIAI-VERIFY-005 | DONE | Deterministic replay behavior verification completed for `deterministic-ai-artifact-replay` with run-001 evidence (`12/12`). |