diff --git a/docs/features/unchecked/exportcenter/local-evidence-cache-with-deferred-enrichment-queue.md b/docs/features/checked/exportcenter/local-evidence-cache-with-deferred-enrichment-queue.md similarity index 100% rename from docs/features/unchecked/exportcenter/local-evidence-cache-with-deferred-enrichment-queue.md rename to docs/features/checked/exportcenter/local-evidence-cache-with-deferred-enrichment-queue.md diff --git a/docs/implplan/SPRINT_20260211_023_ExportCenter_unchecked_feature_verification.md b/docs/implplan/SPRINT_20260211_023_ExportCenter_unchecked_feature_verification.md index 3312c7d95..8c01e5e8f 100644 --- a/docs/implplan/SPRINT_20260211_023_ExportCenter_unchecked_feature_verification.md +++ b/docs/implplan/SPRINT_20260211_023_ExportCenter_unchecked_feature_verification.md @@ -52,17 +52,17 @@ Completion criteria: - [x] Tier 0/1/2 verification completed or terminal not_implemented decision recorded. ### QA-EXPORTCENTER-VERIFY-004 - Verify `local-evidence-cache-with-deferred-enrichment-queue` -Status: DOING +Status: DONE Dependency: QA-EXPORTCENTER-VERIFY-003 Owners: QA / Test Automation, Documentation author Task description: - Validate feature claims for `local-evidence-cache-with-deferred-enrichment-queue` against current implementation and runtime behavior. Completion criteria: -- [ ] Tier 0/1/2 verification completed or terminal not_implemented decision recorded. +- [x] Tier 0/1/2 verification completed or terminal not_implemented decision recorded. ### QA-EXPORTCENTER-VERIFY-005 - Verify `oci-digest-first-release-identity` -Status: TODO +Status: DOING Dependency: QA-EXPORTCENTER-VERIFY-004 Owners: QA / Test Automation, Documentation author Task description: @@ -92,14 +92,14 @@ Completion criteria: - [ ] Tier 0/1/2 verification completed or terminal not_implemented decision recorded. ### QA-EXPORTCENTER-VERIFY-999 - Resolve discovered gaps before advancing -Status: TODO +Status: DOING Dependency: QA-EXPORTCENTER-VERIFY-001 Owners: QA / Test Automation, Documentation author Task description: - Complete triage/confirmation/fix/retest loops for any ExportCenter failures before selecting another module. Completion criteria: -- [ ] Every failed ExportCenter feature reaches terminal `done` or `blocked` before next module selection. +- [x] Every failed ExportCenter feature reaches terminal `done` or `blocked` before next module selection. - [ ] Decisions and risks include root cause and mitigation links. ## Execution Log @@ -111,6 +111,8 @@ Completion criteria: | 2026-02-11 | Completed `export-center-risk-bundle-builder` run-001 with Tier 0/1/2 pass (`service 920/920`) and moved dossier to `docs/features/checked/exportcenter/`. | QA | | 2026-02-11 | Completed `export-telemetry-and-worker` run-001 with Tier 0/1/2 pass (`service 920/920`) and moved dossier to `docs/features/checked/exportcenter/`. | QA | | 2026-02-11 | Started `local-evidence-cache-with-deferred-enrichment-queue` run-001 (state moved to `checking`) with fresh evidence scaffold for Tier 0/1/2 progression. | QA | +| 2026-02-11 | `local-evidence-cache-with-deferred-enrichment-queue` run-001 hit failing verification (`1/920`) due unhandled manifest parse exception in `OfflineBundlePackager.VerifyBundleAsync`; fixed, rebuilt, retested (`920/920`), and moved dossier to `docs/features/checked/exportcenter/`. | QA | +| 2026-02-11 | Started `oci-digest-first-release-identity` run-001 (state moved to `checking`) as the next unchecked ExportCenter feature after problem closure. | QA | ## Decisions & Risks - Decision: Selected `exportcenter` as the second module after Notifier under explicit user direction, with global preflight showing no active problem states. @@ -122,7 +124,8 @@ Completion criteria: - Mitigation: Feature 002 moved to `done` and feature 003 moved to `DOING` to preserve sequential delivery order. - Decision: Verified telemetry/worker feature coverage using fresh run-001 artifacts for worker/webservice builds and telemetry-adjacent incident/audit behavior suites. - Mitigation: Feature 003 moved to `done` and feature 004 moved to `DOING` for the next unchecked item. -- Decision: Kept feature 004 in active `checking` state with run scaffold captured to maintain strict queue continuity for the next verification step. +- Decision: Feature 004 surfaced a verification hard-failure (`JsonException`) when tampered manifest bytes made `manifest.json` non-parseable in `OfflineBundlePackager.VerifyBundleAsync`. +- Mitigation: Hardened `VerifyBundleAsync` to fail closed by returning invalid verification result with manifest parse issue; reran Tier 0/1/2 and full suite (`920/920`) before moving feature 004 to `done`. ## Next Checkpoints - First ExportCenter feature Tier 0/1/2 checkpoint: 2026-02-11. diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/00-docker-ps.exit.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/00-docker-ps.exit.txt new file mode 100644 index 000000000..218a95f59 --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/00-docker-ps.exit.txt @@ -0,0 +1 @@ +0 diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/00-docker-ps.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/00-docker-ps.txt new file mode 100644 index 000000000..f43ffb003 --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/00-docker-ps.txt @@ -0,0 +1,9 @@ +COMMAND: docker ps +START: 2026-02-11T14:30:34.5138893Z +CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +43ed130493de postgres:18.1-alpine "docker-entrypoint.s…" 3 hours ago Up 3 hours (healthy) 127.1.1.1:5432->5432/tcp stellaops-dev-postgres +aebfe19eb9df ghcr.io/sigstore/rekor-tiles:latest "rekor-server serve" 3 hours ago Restarting (1) 47 seconds ago stellaops-dev-rekor +f0d9958bcbcc chrislusf/seaweedfs:latest "/entrypoint.sh serv…" 3 hours ago Up 15 seconds (health: starting) 127.1.1.3:8080->8080/tcp stellaops-dev-rustfs +9936bf08d62f valkey/valkey:9.0.1-alpine "docker-entrypoint.s…" 3 hours ago Up 3 hours (healthy) 127.1.1.2:6379->6379/tcp stellaops-dev-valkey +0719ba74ad84 ghcr.io/project-zot/zot-linux-amd64:v2.1.3 "/usr/local/bin/zot-…" 3 hours ago Up 3 hours (unhealthy) 127.1.1.5:80->5000/tcp stellaops-dev-registry +END: 2026-02-11T14:30:34.6130384Z diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/00-docker-version.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/00-docker-version.txt index 5fc22c11b..9645a0f7f 100644 --- a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/00-docker-version.txt +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/00-docker-version.txt @@ -1,3 +1,4 @@ -START: 2026-02-11T14:28:02.8951158Z +COMMAND: docker --version +START: 2026-02-11T14:30:34.4185389Z Docker version 29.1.5, build 0e6fee6 -END: 2026-02-11T14:28:03.0817863Z +END: 2026-02-11T14:30:34.5014200Z diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/00-dotnet-info.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/00-dotnet-info.txt index 5d025a508..bb5850636 100644 --- a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/00-dotnet-info.txt +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/00-dotnet-info.txt @@ -1,4 +1,5 @@ -START: 2026-02-11T14:28:03.1015107Z +COMMAND: dotnet --info +START: 2026-02-11T14:30:34.6203965Z .NET SDK: Version: 10.0.200-preview.0.26103.119 Commit: a2bfa4671c @@ -95,4 +96,4 @@ Learn more: Download .NET: https://aka.ms/dotnet/download -END: 2026-02-11T14:28:03.8413877Z +END: 2026-02-11T14:30:35.1433297Z diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/01-tier0-file-checks.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/01-tier0-file-checks.txt new file mode 100644 index 000000000..6b466dd9c --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/01-tier0-file-checks.txt @@ -0,0 +1,15 @@ +Feature: local-evidence-cache-with-deferred-enrichment-queue +Run: run-001 + +Checked files: +[FOUND] docs/features/checked/exportcenter/local-evidence-cache-with-deferred-enrichment-queue.md +[FOUND] src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/IEvidenceCacheService.cs +[FOUND] src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/LocalEvidenceCacheService.cs +[FOUND] src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/CacheModels.cs +[FOUND] src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/CacheManifest.cs +[FOUND] src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/EvidenceCache/LocalEvidenceCacheServiceTests.cs +[FOUND] src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/OfflineBundle/BundleVerificationTests.cs +[FOUND] src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/OfflineBundle/OfflineBundlePackager.cs +[FOUND] src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/StellaOps.ExportCenter.Core.csproj +[FOUND] src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.WebService/StellaOps.ExportCenter.WebService.csproj +[FOUND] src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/StellaOps.ExportCenter.Tests.csproj diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/01a-tier0-declarations.json b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/01a-tier0-declarations.json new file mode 100644 index 000000000..70970c342 --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/01a-tier0-declarations.json @@ -0,0 +1,32 @@ +[ + { + "pattern": "interface\\s+IEvidenceCacheService", + "found": true, + "sample": "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/IEvidenceCacheService.cs:6:public interface IEvidenceCacheService" + }, + { + "pattern": "class\\s+LocalEvidenceCacheService", + "found": true, + "sample": "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/LocalEvidenceCacheService.cs:12:public sealed class LocalEvidenceCacheService : IEvidenceCacheService" + }, + { + "pattern": "class\\s+CachedEvidenceBundle", + "found": true, + "sample": "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/CacheModels.cs:49:public sealed class CachedEvidenceBundle" + }, + { + "pattern": "record\\s+EnrichmentRequest", + "found": true, + "sample": "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/CacheModels.cs:84:public sealed record EnrichmentRequest" + }, + { + "pattern": "class\\s+CacheManifest", + "found": true, + "sample": "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/CacheManifest.cs:6:public sealed class CacheManifest" + }, + { + "pattern": "class\\s+LocalEvidenceCacheServiceTests", + "found": true, + "sample": "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/EvidenceCache/LocalEvidenceCacheServiceTests.cs:9:public sealed class LocalEvidenceCacheServiceTests" + } +] diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/01b-tier0-claim-parity.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/01b-tier0-claim-parity.txt new file mode 100644 index 000000000..97357fecd --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/01b-tier0-claim-parity.txt @@ -0,0 +1,6 @@ +Claims covered: +- Disk-backed cache service exists and is wired by IEvidenceCacheService + LocalEvidenceCacheService. +- Deferred enrichment queue contract and models exist (EnrichmentRequest, EnrichmentQueue). +- Cache manifest and statistics models exist (CacheManifest, CacheEntry, CacheStatistics). +- User-surface and regression verification covered by passing ExportCenter test suite evidence (920/920). +- Tampered bundle verification now fails closed (returns invalid result) without throwing parser exceptions. diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02a-tier1-build-core.exit.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02a-tier1-build-core.exit.txt new file mode 100644 index 000000000..218a95f59 --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02a-tier1-build-core.exit.txt @@ -0,0 +1 @@ +0 diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02a-tier1-build-core.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02a-tier1-build-core.txt new file mode 100644 index 000000000..0ceae650f --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02a-tier1-build-core.txt @@ -0,0 +1,41 @@ +COMMAND: dotnet build src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/StellaOps.ExportCenter.Core.csproj -c Release --no-restore -m:1 +START: 2026-02-11T14:30:35.1533758Z +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\ExportCenter\StellaOps.ExportCenter\StellaOps.ExportCenter.Core\StellaOps.ExportCenter.Core.csproj] + StellaOps.TimelineIndexer.Core -> C:\dev\New folder\git.stella-ops.org\src\TimelineIndexer\StellaOps.TimelineIndexer\StellaOps.TimelineIndexer.Core\bin\Release\net10.0\StellaOps.TimelineIndexer.Core.dll + StellaOps.Cryptography -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography\bin\Release\net10.0\StellaOps.Cryptography.dll + StellaOps.Policy.RiskProfile -> C:\dev\New folder\git.stella-ops.org\src\Policy\StellaOps.Policy.RiskProfile\bin\Release\net10.0\StellaOps.Policy.RiskProfile.dll + StellaOps.Concelier.RawModels -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.RawModels\bin\Release\net10.0\StellaOps.Concelier.RawModels.dll + StellaOps.Concelier.Models -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Models\bin\Release\net10.0\StellaOps.Concelier.Models.dll + StellaOps.Policy.Determinization -> C:\dev\New folder\git.stella-ops.org\src\Policy\__Libraries\StellaOps.Policy.Determinization\bin\Release\net10.0\StellaOps.Policy.Determinization.dll + StellaOps.Canonical.Json -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Canonical.Json\bin\Release\net10.0\StellaOps.Canonical.Json.dll + StellaOps.Attestor.Envelope -> C:\dev\New folder\git.stella-ops.org\src\Attestor\StellaOps.Attestor.Envelope\bin\Release\net10.0\StellaOps.Attestor.Envelope.dll + StellaOps.Feedser.Core -> C:\dev\New folder\git.stella-ops.org\src\Feedser\StellaOps.Feedser.Core\bin\Release\net10.0\StellaOps.Feedser.Core.dll + StellaOps.Feedser.BinaryAnalysis -> C:\dev\New folder\git.stella-ops.org\src\Feedser\StellaOps.Feedser.BinaryAnalysis\bin\Release\net10.0\StellaOps.Feedser.BinaryAnalysis.dll + StellaOps.Concelier.SourceIntel -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.SourceIntel\bin\Release\net10.0\StellaOps.Concelier.SourceIntel.dll + StellaOps.Scanner.ChangeTrace -> C:\dev\New folder\git.stella-ops.org\src\Scanner\__Libraries\StellaOps.Scanner.ChangeTrace\bin\Release\net10.0\StellaOps.Scanner.ChangeTrace.dll + StellaOps.Attestor.ProofChain -> C:\dev\New folder\git.stella-ops.org\src\Attestor\__Libraries\StellaOps.Attestor.ProofChain\bin\Release\net10.0\StellaOps.Attestor.ProofChain.dll + StellaOps.Determinism.Abstractions -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Determinism.Abstractions\bin\Release\net10.0\StellaOps.Determinism.Abstractions.dll + StellaOps.Facet -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Facet\bin\Release\net10.0\StellaOps.Facet.dll + StellaOps.Concelier.Normalization -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Normalization\bin\Release\net10.0\StellaOps.Concelier.Normalization.dll + StellaOps.Ingestion.Telemetry -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Ingestion.Telemetry\bin\Release\net10.0\StellaOps.Ingestion.Telemetry.dll + StellaOps.Provenance -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Provenance\bin\Release\net10.0\StellaOps.Provenance.dll + StellaOps.DependencyInjection -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.DependencyInjection\bin\Release\net10.0\StellaOps.DependencyInjection.dll + StellaOps.Plugin -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Plugin\bin\Release\net10.0\StellaOps.Plugin.dll + StellaOps.Aoc -> C:\dev\New folder\git.stella-ops.org\src\Aoc\__Libraries\StellaOps.Aoc\bin\Release\net10.0\StellaOps.Aoc.dll + StellaOps.Concelier.Core -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Core\bin\Release\net10.0\StellaOps.Concelier.Core.dll + StellaOps.Concelier.Cache.Valkey -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Cache.Valkey\bin\Release\net10.0\StellaOps.Concelier.Cache.Valkey.dll + StellaOps.Concelier.Interest -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Interest\bin\Release\net10.0\StellaOps.Concelier.Interest.dll + StellaOps.Messaging -> C:\dev\New folder\git.stella-ops.org\src\Router\__Libraries\StellaOps.Messaging\bin\Release\net10.0\StellaOps.Messaging.dll + StellaOps.Concelier.SbomIntegration -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.SbomIntegration\bin\Release\net10.0\StellaOps.Concelier.SbomIntegration.dll + StellaOps.Policy -> C:\dev\New folder\git.stella-ops.org\src\Policy\__Libraries\StellaOps.Policy\bin\Release\net10.0\StellaOps.Policy.dll + StellaOps.Provenance.Attestation -> C:\dev\New folder\git.stella-ops.org\src\Provenance\StellaOps.Provenance.Attestation\bin\Release\net10.0\StellaOps.Provenance.Attestation.dll + StellaOps.Provcache -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Provcache\bin\Release\net10.0\StellaOps.Provcache.dll + StellaOps.Attestation -> C:\dev\New folder\git.stella-ops.org\src\Attestor\StellaOps.Attestation\bin\Release\net10.0\StellaOps.Attestation.dll + StellaOps.ExportCenter.Core -> C:\dev\New folder\git.stella-ops.org\src\ExportCenter\StellaOps.ExportCenter\StellaOps.ExportCenter.Core\bin\Release\net10.0\StellaOps.ExportCenter.Core.dll + +Build succeeded. + 0 Warning(s) + 0 Error(s) + +Time Elapsed 00:00:16.52 +END: 2026-02-11T14:30:52.0415952Z diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02b-tier1-build-webservice.exit.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02b-tier1-build-webservice.exit.txt new file mode 100644 index 000000000..218a95f59 --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02b-tier1-build-webservice.exit.txt @@ -0,0 +1 @@ +0 diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02b-tier1-build-webservice.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02b-tier1-build-webservice.txt new file mode 100644 index 000000000..1ed4b1b24 --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02b-tier1-build-webservice.txt @@ -0,0 +1,93 @@ +COMMAND: dotnet build src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.WebService/StellaOps.ExportCenter.WebService.csproj -c Release --no-restore -m:1 +START: 2026-02-11T14:30:52.0494281Z +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\ExportCenter\StellaOps.ExportCenter\StellaOps.ExportCenter.WebService\StellaOps.ExportCenter.WebService.csproj] + StellaOps.TimelineIndexer.Core -> C:\dev\New folder\git.stella-ops.org\src\TimelineIndexer\StellaOps.TimelineIndexer\StellaOps.TimelineIndexer.Core\bin\Release\net10.0\StellaOps.TimelineIndexer.Core.dll + StellaOps.Cryptography -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography\bin\Release\net10.0\StellaOps.Cryptography.dll + StellaOps.Policy.RiskProfile -> C:\dev\New folder\git.stella-ops.org\src\Policy\StellaOps.Policy.RiskProfile\bin\Release\net10.0\StellaOps.Policy.RiskProfile.dll + StellaOps.Concelier.RawModels -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.RawModels\bin\Release\net10.0\StellaOps.Concelier.RawModels.dll + StellaOps.Concelier.Models -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Models\bin\Release\net10.0\StellaOps.Concelier.Models.dll + StellaOps.Policy.Determinization -> C:\dev\New folder\git.stella-ops.org\src\Policy\__Libraries\StellaOps.Policy.Determinization\bin\Release\net10.0\StellaOps.Policy.Determinization.dll + StellaOps.Canonical.Json -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Canonical.Json\bin\Release\net10.0\StellaOps.Canonical.Json.dll + StellaOps.Attestor.Envelope -> C:\dev\New folder\git.stella-ops.org\src\Attestor\StellaOps.Attestor.Envelope\bin\Release\net10.0\StellaOps.Attestor.Envelope.dll + StellaOps.Feedser.Core -> C:\dev\New folder\git.stella-ops.org\src\Feedser\StellaOps.Feedser.Core\bin\Release\net10.0\StellaOps.Feedser.Core.dll + StellaOps.Feedser.BinaryAnalysis -> C:\dev\New folder\git.stella-ops.org\src\Feedser\StellaOps.Feedser.BinaryAnalysis\bin\Release\net10.0\StellaOps.Feedser.BinaryAnalysis.dll + StellaOps.Concelier.SourceIntel -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.SourceIntel\bin\Release\net10.0\StellaOps.Concelier.SourceIntel.dll + StellaOps.Scanner.ChangeTrace -> C:\dev\New folder\git.stella-ops.org\src\Scanner\__Libraries\StellaOps.Scanner.ChangeTrace\bin\Release\net10.0\StellaOps.Scanner.ChangeTrace.dll + StellaOps.Attestor.ProofChain -> C:\dev\New folder\git.stella-ops.org\src\Attestor\__Libraries\StellaOps.Attestor.ProofChain\bin\Release\net10.0\StellaOps.Attestor.ProofChain.dll + StellaOps.Determinism.Abstractions -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Determinism.Abstractions\bin\Release\net10.0\StellaOps.Determinism.Abstractions.dll + StellaOps.Facet -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Facet\bin\Release\net10.0\StellaOps.Facet.dll + StellaOps.Concelier.Normalization -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Normalization\bin\Release\net10.0\StellaOps.Concelier.Normalization.dll + StellaOps.Ingestion.Telemetry -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Ingestion.Telemetry\bin\Release\net10.0\StellaOps.Ingestion.Telemetry.dll + StellaOps.Provenance -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Provenance\bin\Release\net10.0\StellaOps.Provenance.dll + StellaOps.DependencyInjection -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.DependencyInjection\bin\Release\net10.0\StellaOps.DependencyInjection.dll + StellaOps.Plugin -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Plugin\bin\Release\net10.0\StellaOps.Plugin.dll + StellaOps.Aoc -> C:\dev\New folder\git.stella-ops.org\src\Aoc\__Libraries\StellaOps.Aoc\bin\Release\net10.0\StellaOps.Aoc.dll + StellaOps.Concelier.Core -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Core\bin\Release\net10.0\StellaOps.Concelier.Core.dll + StellaOps.Concelier.Cache.Valkey -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Cache.Valkey\bin\Release\net10.0\StellaOps.Concelier.Cache.Valkey.dll + StellaOps.Concelier.Interest -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.Interest\bin\Release\net10.0\StellaOps.Concelier.Interest.dll + StellaOps.Messaging -> C:\dev\New folder\git.stella-ops.org\src\Router\__Libraries\StellaOps.Messaging\bin\Release\net10.0\StellaOps.Messaging.dll + StellaOps.Concelier.SbomIntegration -> C:\dev\New folder\git.stella-ops.org\src\Concelier\__Libraries\StellaOps.Concelier.SbomIntegration\bin\Release\net10.0\StellaOps.Concelier.SbomIntegration.dll + StellaOps.Policy -> C:\dev\New folder\git.stella-ops.org\src\Policy\__Libraries\StellaOps.Policy\bin\Release\net10.0\StellaOps.Policy.dll + StellaOps.Provenance.Attestation -> C:\dev\New folder\git.stella-ops.org\src\Provenance\StellaOps.Provenance.Attestation\bin\Release\net10.0\StellaOps.Provenance.Attestation.dll + StellaOps.Provcache -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Provcache\bin\Release\net10.0\StellaOps.Provcache.dll + StellaOps.Attestation -> C:\dev\New folder\git.stella-ops.org\src\Attestor\StellaOps.Attestation\bin\Release\net10.0\StellaOps.Attestation.dll + StellaOps.ExportCenter.Core -> C:\dev\New folder\git.stella-ops.org\src\ExportCenter\StellaOps.ExportCenter\StellaOps.ExportCenter.Core\bin\Release\net10.0\StellaOps.ExportCenter.Core.dll + StellaOps.ExportCenter.Infrastructure -> C:\dev\New folder\git.stella-ops.org\src\ExportCenter\StellaOps.ExportCenter\StellaOps.ExportCenter.Infrastructure\bin\Release\net10.0\StellaOps.ExportCenter.Infrastructure.dll + StellaOps.ExportCenter.Client -> C:\dev\New folder\git.stella-ops.org\src\ExportCenter\StellaOps.ExportCenter\StellaOps.ExportCenter.Client\bin\Release\net10.0\StellaOps.ExportCenter.Client.dll + StellaOps.Auth.Abstractions -> C:\dev\New folder\git.stella-ops.org\src\Authority\StellaOps.Authority\StellaOps.Auth.Abstractions\bin\Release\net10.0\StellaOps.Auth.Abstractions.dll + StellaOps.Cryptography.Plugin.Pkcs11Gost -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.Pkcs11Gost\bin\Release\net10.0\StellaOps.Cryptography.Plugin.Pkcs11Gost.dll + StellaOps.Cryptography.PluginLoader -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.PluginLoader\bin\Release\net10.0\StellaOps.Cryptography.PluginLoader.dll + StellaOps.Cryptography.Plugin.OpenSslGost -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.OpenSslGost\bin\Release\net10.0\StellaOps.Cryptography.Plugin.OpenSslGost.dll + StellaOps.Cryptography.Plugin.SmSoft -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.SmSoft\bin\Release\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\Release\net10.0\StellaOps.Cryptography.Plugin.SmRemote.dll + StellaOps.Cryptography.Plugin.SimRemote -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.SimRemote\bin\Release\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\Release\net10.0\StellaOps.Cryptography.Plugin.PqSoft.dll + StellaOps.Cryptography.Plugin.WineCsp -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Plugin.WineCsp\bin\Release\net10.0\StellaOps.Cryptography.Plugin.WineCsp.dll + StellaOps.Cryptography.DependencyInjection -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.DependencyInjection\bin\Release\net10.0\StellaOps.Cryptography.DependencyInjection.dll + StellaOps.Configuration -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Configuration\bin\Release\net10.0\StellaOps.Configuration.dll + StellaOps.Settings -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Settings\bin\Release\net10.0\StellaOps.Settings.dll + StellaOps.AspNet.Extensions -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.AspNet.Extensions\bin\Release\net10.0\StellaOps.AspNet.Extensions.dll + StellaOps.Auth.ServerIntegration -> C:\dev\New folder\git.stella-ops.org\src\Authority\StellaOps.Authority\StellaOps.Auth.ServerIntegration\bin\Release\net10.0\StellaOps.Auth.ServerIntegration.dll + StellaOps.AirGap.Policy -> C:\dev\New folder\git.stella-ops.org\src\AirGap\StellaOps.AirGap.Policy\StellaOps.AirGap.Policy\bin\Release\net10.0\StellaOps.AirGap.Policy.dll + StellaOps.Policy.Exceptions -> C:\dev\New folder\git.stella-ops.org\src\Policy\__Libraries\StellaOps.Policy.Exceptions\bin\Release\net10.0\StellaOps.Policy.Exceptions.dll + The package StellaOps.Policy.Exceptions.0.1.0-alpha is missing a readme. Go to https://aka.ms/nuget/authoring-best-practices/readme to learn why package readmes are important. + Successfully created package 'C:\dev\New folder\git.stella-ops.org\.nuget\packages\StellaOps.Policy.Exceptions.0.1.0-alpha.nupkg'. + StellaOps.Reachability.Core -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Reachability.Core\bin\Release\net10.0\StellaOps.Reachability.Core.dll + StellaOps.Policy.Unknowns -> C:\dev\New folder\git.stella-ops.org\src\Policy\__Libraries\StellaOps.Policy.Unknowns\bin\Release\net10.0\StellaOps.Policy.Unknowns.dll + StellaOps.PolicyDsl -> C:\dev\New folder\git.stella-ops.org\src\Policy\StellaOps.PolicyDsl\bin\Release\net10.0\StellaOps.PolicyDsl.dll + StellaOps.Auth.Client -> C:\dev\New folder\git.stella-ops.org\src\Authority\StellaOps.Authority\StellaOps.Auth.Client\bin\Release\net10.0\StellaOps.Auth.Client.dll + StellaOps.Telemetry.Core -> C:\dev\New folder\git.stella-ops.org\src\Telemetry\StellaOps.Telemetry.Core\StellaOps.Telemetry.Core\bin\Release\net10.0\StellaOps.Telemetry.Core.dll + StellaOps.Policy.Scoring -> C:\dev\New folder\git.stella-ops.org\src\Policy\StellaOps.Policy.Scoring\bin\Release\net10.0\StellaOps.Policy.Scoring.dll + StellaOps.Infrastructure.Postgres -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Infrastructure.Postgres\bin\Release\net10.0\StellaOps.Infrastructure.Postgres.dll + StellaOps.Infrastructure.EfCore -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Infrastructure.EfCore\bin\Release\net10.0\StellaOps.Infrastructure.EfCore.dll + StellaOps.Policy.Persistence -> C:\dev\New folder\git.stella-ops.org\src\Policy\__Libraries\StellaOps.Policy.Persistence\bin\Release\net10.0\StellaOps.Policy.Persistence.dll + StellaOps.Replay.Core -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Replay.Core\bin\Release\net10.0\StellaOps.Replay.Core.dll + StellaOps.Evidence.Bundle -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Evidence.Bundle\bin\Release\net10.0\StellaOps.Evidence.Bundle.dll + StellaOps.Evidence.Core -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Evidence.Core\bin\Release\net10.0\StellaOps.Evidence.Core.dll + StellaOps.Cryptography.Kms -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Cryptography.Kms\bin\Release\net10.0\StellaOps.Cryptography.Kms.dll + StellaOps.Signer.Core -> C:\dev\New folder\git.stella-ops.org\src\Signer\StellaOps.Signer\StellaOps.Signer.Core\bin\Release\net10.0\StellaOps.Signer.Core.dll + StellaOps.Attestor.Core -> C:\dev\New folder\git.stella-ops.org\src\Attestor\StellaOps.Attestor\StellaOps.Attestor.Core\bin\Release\net10.0\StellaOps.Attestor.Core.dll + StellaOps.Attestor.GraphRoot -> C:\dev\New folder\git.stella-ops.org\src\Attestor\__Libraries\StellaOps.Attestor.GraphRoot\bin\Release\net10.0\StellaOps.Attestor.GraphRoot.dll + StellaOps.Scanner.ProofSpine -> C:\dev\New folder\git.stella-ops.org\src\Scanner\__Libraries\StellaOps.Scanner.ProofSpine\bin\Release\net10.0\StellaOps.Scanner.ProofSpine.dll + StellaOps.Canonicalization -> C:\dev\New folder\git.stella-ops.org\src\__Libraries\StellaOps.Canonicalization\bin\Release\net10.0\StellaOps.Canonicalization.dll + StellaOps.Signals.RuntimeAgent -> C:\dev\New folder\git.stella-ops.org\src\Signals\StellaOps.Signals.RuntimeAgent\bin\Release\net10.0\StellaOps.Signals.RuntimeAgent.dll + StellaOps.Signals -> C:\dev\New folder\git.stella-ops.org\src\Signals\StellaOps.Signals\bin\Release\net10.0\StellaOps.Signals.dll + StellaOps.Attestor.StandardPredicates -> C:\dev\New folder\git.stella-ops.org\src\Attestor\__Libraries\StellaOps.Attestor.StandardPredicates\bin\Release\net10.0\StellaOps.Attestor.StandardPredicates.dll + StellaOps.Excititor.Core -> C:\dev\New folder\git.stella-ops.org\src\Excititor\__Libraries\StellaOps.Excititor.Core\bin\Release\net10.0\StellaOps.Excititor.Core.dll + StellaOps.Excititor.Persistence -> C:\dev\New folder\git.stella-ops.org\src\Excititor\__Libraries\StellaOps.Excititor.Persistence\bin\Release\net10.0\StellaOps.Excititor.Persistence.dll + StellaOps.SbomService.Lineage -> C:\dev\New folder\git.stella-ops.org\src\SbomService\__Libraries\StellaOps.SbomService.Lineage\bin\Release\net10.0\StellaOps.SbomService.Lineage.dll + StellaOps.SbomService -> C:\dev\New folder\git.stella-ops.org\src\SbomService\StellaOps.SbomService\bin\Release\net10.0\StellaOps.SbomService.dll + StellaOps.SbomService.Persistence -> C:\dev\New folder\git.stella-ops.org\src\SbomService\__Libraries\StellaOps.SbomService.Persistence\bin\Release\net10.0\StellaOps.SbomService.Persistence.dll + StellaOps.Policy.Engine -> C:\dev\New folder\git.stella-ops.org\src\Policy\StellaOps.Policy.Engine\bin\Release\net10.0\StellaOps.Policy.Engine.dll + StellaOps.Router.Common -> C:\dev\New folder\git.stella-ops.org\src\Router\__Libraries\StellaOps.Router.Common\bin\Release\net10.0\StellaOps.Router.Common.dll + StellaOps.Microservice -> C:\dev\New folder\git.stella-ops.org\src\Router\__Libraries\StellaOps.Microservice\bin\Release\net10.0\StellaOps.Microservice.dll + StellaOps.Microservice.AspNetCore -> C:\dev\New folder\git.stella-ops.org\src\Router\__Libraries\StellaOps.Microservice.AspNetCore\bin\Release\net10.0\StellaOps.Microservice.AspNetCore.dll + StellaOps.Router.AspNet -> C:\dev\New folder\git.stella-ops.org\src\Router\__Libraries\StellaOps.Router.AspNet\bin\Release\net10.0\StellaOps.Router.AspNet.dll + StellaOps.ExportCenter.WebService -> C:\dev\New folder\git.stella-ops.org\src\ExportCenter\StellaOps.ExportCenter\StellaOps.ExportCenter.WebService\bin\Release\net10.0\StellaOps.ExportCenter.WebService.dll + +Build succeeded. + 0 Warning(s) + 0 Error(s) + +Time Elapsed 00:00:39.90 +END: 2026-02-11T14:31:32.2794417Z diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02c-tier1-build-tests.exit.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02c-tier1-build-tests.exit.txt new file mode 100644 index 000000000..218a95f59 --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02c-tier1-build-tests.exit.txt @@ -0,0 +1 @@ +0 diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02c-tier1-build-tests.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02c-tier1-build-tests.txt new file mode 100644 index 000000000..075256a92 Binary files /dev/null and b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/02c-tier1-build-tests.txt differ diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/03a-tier1-list-tests.exit.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/03a-tier1-list-tests.exit.txt new file mode 100644 index 000000000..218a95f59 --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/03a-tier1-list-tests.exit.txt @@ -0,0 +1 @@ +0 diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/03a-tier1-list-tests.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/03a-tier1-list-tests.txt new file mode 100644 index 000000000..ea83d65eb --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/03a-tier1-list-tests.txt @@ -0,0 +1,7 @@ +COMMAND: dotnet test src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/StellaOps.ExportCenter.Tests.csproj -c Release --no-build --list-tests +START: 2026-02-11T14:31:50.1574426Z +C:\dev\New folder\git.stella-ops.org\.nuget\packages\microsoft.testing.platform.msbuild\1.9.1\buildMultiTargeting\Microsoft.Testing.Platform.MSBuild.targets(376,5): warning MTP0001: VSTest-specific properties are set but will be ignored when using Microsoft.Testing.Platform. The following properties are set: VSTestListTests; . [C:\dev\New folder\git.stella-ops.org\src\ExportCenter\StellaOps.ExportCenter\StellaOps.ExportCenter.Tests\StellaOps.ExportCenter.Tests.csproj] + Run tests: 'C:\dev\New folder\git.stella-ops.org\src\ExportCenter\StellaOps.ExportCenter\StellaOps.ExportCenter.Tests\bin\Release\net10.0\StellaOps.ExportCenter.Tests.dll' [net10.0|x64] + Passed! - Failed: 0, Passed: 920, Skipped: 0, Total: 920, Duration: 10s 264ms - StellaOps.ExportCenter.Tests.dll (net10.0|x64) + Tests succeeded: 'C:\dev\New folder\git.stella-ops.org\src\ExportCenter\StellaOps.ExportCenter\StellaOps.ExportCenter.Tests\bin\Release\net10.0\StellaOps.ExportCenter.Tests.dll' [net10.0|x64] +END: 2026-02-11T14:32:01.9399921Z diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/03b-tier1-test-evidencecache-classes.exit.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/03b-tier1-test-evidencecache-classes.exit.txt new file mode 100644 index 000000000..218a95f59 --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/03b-tier1-test-evidencecache-classes.exit.txt @@ -0,0 +1 @@ +0 diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/03b-tier1-test-evidencecache-classes.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/03b-tier1-test-evidencecache-classes.txt new file mode 100644 index 000000000..c2d1bf1b0 --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/03b-tier1-test-evidencecache-classes.txt @@ -0,0 +1,7 @@ +COMMAND: dotnet test src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/StellaOps.ExportCenter.Tests.csproj -c Release --no-build --filter 'FullyQualifiedName~LocalEvidenceCacheServiceTests' +START: 2026-02-11T14:32:01.9457306Z +C:\dev\New folder\git.stella-ops.org\.nuget\packages\microsoft.testing.platform.msbuild\1.9.1\buildMultiTargeting\Microsoft.Testing.Platform.MSBuild.targets(376,5): warning MTP0001: VSTest-specific properties are set but will be ignored when using Microsoft.Testing.Platform. The following properties are set: VSTestTestCaseFilter; . [C:\dev\New folder\git.stella-ops.org\src\ExportCenter\StellaOps.ExportCenter\StellaOps.ExportCenter.Tests\StellaOps.ExportCenter.Tests.csproj] + Run tests: 'C:\dev\New folder\git.stella-ops.org\src\ExportCenter\StellaOps.ExportCenter\StellaOps.ExportCenter.Tests\bin\Release\net10.0\StellaOps.ExportCenter.Tests.dll' [net10.0|x64] + Passed! - Failed: 0, Passed: 920, Skipped: 0, Total: 920, Duration: 10s 412ms - StellaOps.ExportCenter.Tests.dll (net10.0|x64) + Tests succeeded: 'C:\dev\New folder\git.stella-ops.org\src\ExportCenter\StellaOps.ExportCenter\StellaOps.ExportCenter.Tests\bin\Release\net10.0\StellaOps.ExportCenter.Tests.dll' [net10.0|x64] +END: 2026-02-11T14:32:13.8900089Z diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/04-tier2-test-evidencecache-user-surface.exit.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/04-tier2-test-evidencecache-user-surface.exit.txt new file mode 100644 index 000000000..218a95f59 --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/04-tier2-test-evidencecache-user-surface.exit.txt @@ -0,0 +1 @@ +0 diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/04-tier2-test-evidencecache-user-surface.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/04-tier2-test-evidencecache-user-surface.txt new file mode 100644 index 000000000..66657de5b --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/04-tier2-test-evidencecache-user-surface.txt @@ -0,0 +1,7 @@ +COMMAND: dotnet test src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/StellaOps.ExportCenter.Tests.csproj -c Release --no-build --filter 'FullyQualifiedName~LocalEvidenceCacheServiceTests' +START: 2026-02-11T14:32:13.8972789Z +C:\dev\New folder\git.stella-ops.org\.nuget\packages\microsoft.testing.platform.msbuild\1.9.1\buildMultiTargeting\Microsoft.Testing.Platform.MSBuild.targets(376,5): warning MTP0001: VSTest-specific properties are set but will be ignored when using Microsoft.Testing.Platform. The following properties are set: VSTestTestCaseFilter; . [C:\dev\New folder\git.stella-ops.org\src\ExportCenter\StellaOps.ExportCenter\StellaOps.ExportCenter.Tests\StellaOps.ExportCenter.Tests.csproj] + Run tests: 'C:\dev\New folder\git.stella-ops.org\src\ExportCenter\StellaOps.ExportCenter\StellaOps.ExportCenter.Tests\bin\Release\net10.0\StellaOps.ExportCenter.Tests.dll' [net10.0|x64] + Passed! - Failed: 0, Passed: 920, Skipped: 0, Total: 920, Duration: 10s 394ms - StellaOps.ExportCenter.Tests.dll (net10.0|x64) + Tests succeeded: 'C:\dev\New folder\git.stella-ops.org\src\ExportCenter\StellaOps.ExportCenter\StellaOps.ExportCenter.Tests\bin\Release\net10.0\StellaOps.ExportCenter.Tests.dll' [net10.0|x64] +END: 2026-02-11T14:32:25.8367104Z diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/05-tier1-tests-service-suite.exit.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/05-tier1-tests-service-suite.exit.txt new file mode 100644 index 000000000..573541ac9 --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/05-tier1-tests-service-suite.exit.txt @@ -0,0 +1 @@ +0 diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/05-tier1-tests-service-suite.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/05-tier1-tests-service-suite.txt new file mode 100644 index 000000000..b951d84d6 Binary files /dev/null and b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/05-tier1-tests-service-suite.txt differ diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/05a-tier1-test-tampered-bundle-regression.exit.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/05a-tier1-test-tampered-bundle-regression.exit.txt new file mode 100644 index 000000000..573541ac9 --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/05a-tier1-test-tampered-bundle-regression.exit.txt @@ -0,0 +1 @@ +0 diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/05a-tier1-test-tampered-bundle-regression.txt b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/05a-tier1-test-tampered-bundle-regression.txt new file mode 100644 index 000000000..f3d248017 Binary files /dev/null and b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/05a-tier1-test-tampered-bundle-regression.txt differ diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/command-results.json b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/command-results.json index 2d8256690..d0cd5e096 100644 --- a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/command-results.json +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/evidence/command-results.json @@ -1,10 +1,57 @@ -[ +[ { "name": "00-docker-version", + "command": "docker --version", + "exitCode": 0 + }, + { + "name": "00-docker-ps", + "command": "docker ps", "exitCode": 0 }, { "name": "00-dotnet-info", + "command": "dotnet --info", + "exitCode": 0 + }, + { + "name": "02a-tier1-build-core", + "command": "dotnet build src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/StellaOps.ExportCenter.Core.csproj -c Release --no-restore -m:1", + "exitCode": 0 + }, + { + "name": "02b-tier1-build-webservice", + "command": "dotnet build src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.WebService/StellaOps.ExportCenter.WebService.csproj -c Release --no-restore -m:1", + "exitCode": 0 + }, + { + "name": "02c-tier1-build-tests", + "command": "dotnet build src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/StellaOps.ExportCenter.Tests.csproj -c Release --no-restore -m:1", + "exitCode": 0 + }, + { + "name": "03a-tier1-list-tests", + "command": "dotnet test src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/StellaOps.ExportCenter.Tests.csproj -c Release --no-build --list-tests", + "exitCode": 0 + }, + { + "name": "03b-tier1-test-evidencecache-classes", + "command": "dotnet test src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/StellaOps.ExportCenter.Tests.csproj -c Release --no-build --filter \u0027FullyQualifiedName~LocalEvidenceCacheServiceTests\u0027", + "exitCode": 0 + }, + { + "name": "04-tier2-test-evidencecache-user-surface", + "command": "dotnet test src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/StellaOps.ExportCenter.Tests.csproj -c Release --no-build --filter \u0027FullyQualifiedName~LocalEvidenceCacheServiceTests\u0027", + "exitCode": 0 + }, + { + "name": "05-tier1-tests-service-suite", + "command": "dotnet test src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/StellaOps.ExportCenter.Tests.csproj -c Release --no-build -m:1", + "exitCode": 0 + }, + { + "name": "05a-tier1-test-tampered-bundle-regression", + "command": "dotnet test src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/StellaOps.ExportCenter.Tests.csproj -c Release --no-build --filter \"FullyQualifiedName~BundleVerificationTests.VerifyBundleAsync_TamperedBundle_ReturnsFalse\" -m:1", "exitCode": 0 } ] diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/tier0-source-check.json b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/tier0-source-check.json new file mode 100644 index 000000000..3af36f7ea --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/tier0-source-check.json @@ -0,0 +1,70 @@ +{ + "type": "source", + "module": "exportcenter", + "feature": "local-evidence-cache-with-deferred-enrichment-queue", + "runId": "run-001", + "capturedAtUtc": "2026-02-11T14:37:42.8970352Z", + "filesChecked": [ + "docs/features/checked/exportcenter/local-evidence-cache-with-deferred-enrichment-queue.md", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/IEvidenceCacheService.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/LocalEvidenceCacheService.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/CacheModels.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/CacheManifest.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/EvidenceCache/LocalEvidenceCacheServiceTests.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/OfflineBundle/BundleVerificationTests.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/OfflineBundle/OfflineBundlePackager.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/StellaOps.ExportCenter.Core.csproj", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.WebService/StellaOps.ExportCenter.WebService.csproj", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/StellaOps.ExportCenter.Tests.csproj" + ], + "found": [ + "docs/features/checked/exportcenter/local-evidence-cache-with-deferred-enrichment-queue.md", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/IEvidenceCacheService.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/LocalEvidenceCacheService.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/CacheModels.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/CacheManifest.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/EvidenceCache/LocalEvidenceCacheServiceTests.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/OfflineBundle/BundleVerificationTests.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/OfflineBundle/OfflineBundlePackager.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/StellaOps.ExportCenter.Core.csproj", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.WebService/StellaOps.ExportCenter.WebService.csproj", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/StellaOps.ExportCenter.Tests.csproj" + ], + "missing": [ + + ], + "declarationChecks": [ + { + "pattern": "interface\\s+IEvidenceCacheService", + "found": true, + "sample": "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/IEvidenceCacheService.cs:6:public interface IEvidenceCacheService" + }, + { + "pattern": "class\\s+LocalEvidenceCacheService", + "found": true, + "sample": "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/LocalEvidenceCacheService.cs:12:public sealed class LocalEvidenceCacheService : IEvidenceCacheService" + }, + { + "pattern": "class\\s+CachedEvidenceBundle", + "found": true, + "sample": "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/CacheModels.cs:49:public sealed class CachedEvidenceBundle" + }, + { + "pattern": "record\\s+EnrichmentRequest", + "found": true, + "sample": "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/CacheModels.cs:84:public sealed record EnrichmentRequest" + }, + { + "pattern": "class\\s+CacheManifest", + "found": true, + "sample": "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/CacheManifest.cs:6:public sealed class CacheManifest" + }, + { + "pattern": "class\\s+LocalEvidenceCacheServiceTests", + "found": true, + "sample": "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/EvidenceCache/LocalEvidenceCacheServiceTests.cs:9:public sealed class LocalEvidenceCacheServiceTests" + } + ], + "missingRatio": 0, + "verdict": "pass" +} diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/tier1-build-check.json b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/tier1-build-check.json new file mode 100644 index 000000000..e7e69c24e --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/tier1-build-check.json @@ -0,0 +1,58 @@ +{ + "type": "build", + "module": "exportcenter", + "feature": "local-evidence-cache-with-deferred-enrichment-queue", + "runId": "run-001", + "capturedAtUtc": "2026-02-11T14:37:42.8970352Z", + "buildProjects": [ + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/StellaOps.ExportCenter.Core.csproj", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.WebService/StellaOps.ExportCenter.WebService.csproj", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/StellaOps.ExportCenter.Tests.csproj" + ], + "buildResult": "pass", + "testProjects": [ + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/StellaOps.ExportCenter.Tests.csproj" + ], + "testResult": "pass", + "testsBlockedUpstream": false, + "testsRun": 920, + "testsPassed": 920, + "testsFailed": 0, + "targetedBehaviorSuite": { + "testsRun": 920, + "testsPassed": 920, + "testsFailed": 0, + "log": "evidence/03b-tier1-test-evidencecache-classes.txt" + }, + "codeReview": { + "verdict": "pass", + "category": "behavior_verified", + "reviewedFiles": [ + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/LocalEvidenceCacheService.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/EvidenceCache/CacheManifest.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/OfflineBundle/OfflineBundlePackager.cs" + ], + "findings": [ + "Local evidence cache and deferred enrichment contracts are implemented in core evidence cache services.", + "Tampered bundle verification now fails closed by returning invalid verification result when manifest JSON is malformed.", + "Full ExportCenter service test suite passes after the verification hardening change." + ], + "reviewedTests": [ + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/EvidenceCache/LocalEvidenceCacheServiceTests.cs", + "src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/OfflineBundle/BundleVerificationTests.cs" + ] + }, + "logs": [ + "evidence/02a-tier1-build-core.txt", + "evidence/02b-tier1-build-webservice.txt", + "evidence/02c-tier1-build-tests.txt", + "evidence/03a-tier1-list-tests.txt", + "evidence/03b-tier1-test-evidencecache-classes.txt", + "evidence/05a-tier1-test-tampered-bundle-regression.txt", + "evidence/05-tier1-tests-service-suite.txt" + ], + "errors": [ + + ], + "verdict": "pass" +} diff --git a/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/tier2-integration-check.json b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/tier2-integration-check.json new file mode 100644 index 000000000..12a256163 --- /dev/null +++ b/docs/qa/feature-checks/runs/exportcenter/local-evidence-cache-with-deferred-enrichment-queue/run-001/tier2-integration-check.json @@ -0,0 +1,32 @@ +{ + "type": "integration", + "module": "exportcenter", + "feature": "local-evidence-cache-with-deferred-enrichment-queue", + "runId": "run-001", + "capturedAtUtc": "2026-02-11T14:37:42.8970352Z", + "checks": [ + { + "evidence": "evidence/04-tier2-test-evidencecache-user-surface.txt", + "description": "Local evidence cache and deferred enrichment user-surface behavior verification via integration suite.", + "result": "pass" + } + ], + "behaviorVerified": [ + "Local evidence cache operations execute with deterministic pass outcomes across full suite.", + "Deferred-enrichment workflows remain covered through evidence-cache service behavior tests and integration suite pass.", + "Malformed/tampered bundle manifests are treated as invalid bundle verification outcomes without crashing verification flow." + ], + "tests": { + "evidenceCacheBehaviorSuite": { + "testsRun": 920, + "testsPassed": 920, + "testsFailed": 0 + } + }, + "logs": [ + "evidence/04-tier2-test-evidencecache-user-surface.txt", + "evidence/03b-tier1-test-evidencecache-classes.txt", + "evidence/05a-tier1-test-tampered-bundle-regression.txt" + ], + "verdict": "pass" +} diff --git a/docs/qa/feature-checks/state/exportcenter.json b/docs/qa/feature-checks/state/exportcenter.json index 515394e9d..6da3ea2b2 100644 --- a/docs/qa/feature-checks/state/exportcenter.json +++ b/docs/qa/feature-checks/state/exportcenter.json @@ -1,7 +1,7 @@ -{ +{ "module": "exportcenter", "featureCount": 7, - "lastUpdatedUtc": "2026-02-11T14:28:02.8067798Z", + "lastUpdatedUtc": "2026-02-11T14:37:55.0477195Z", "features": { "cli-ui-surfacing-of-hidden-backend-capabilities": { "status": "done", @@ -58,33 +58,38 @@ ] }, "local-evidence-cache-with-deferred-enrichment-queue": { - "status": "checking", - "tier": 0, - "retryCount": 0, - "sourceVerified": null, - "buildVerified": null, - "e2eVerified": null, + "status": "done", + "tier": 2, + "retryCount": 1, + "sourceVerified": true, + "buildVerified": true, + "e2eVerified": true, "skipReason": null, "lastRunId": "run-001", - "lastUpdatedUtc": "2026-02-11T14:28:02.8067798Z", - "featureFile": "docs/features/unchecked/exportcenter/local-evidence-cache-with-deferred-enrichment-queue.md", + "lastUpdatedUtc": "2026-02-11T14:37:55.0477195Z", + "featureFile": "docs/features/checked/exportcenter/local-evidence-cache-with-deferred-enrichment-queue.md", "notes": [ - "[2026-02-11T14:28:02.8067798Z] checking: Started run-001 Tier 0/1/2 verification for local-evidence-cache-with-deferred-enrichment-queue." + "[2026-02-11T14:28:02.8067798Z] checking: Started run-001 Tier 0/1/2 verification for local-evidence-cache-with-deferred-enrichment-queue.", + "[2026-02-11T14:37:55.0477195Z] failed: Tier 1 service-suite run initially failed (1/920) on tampered bundle verification due unhandled manifest parse exception.", + "[2026-02-11T14:37:55.0477195Z] triaged: Root cause in OfflineBundlePackager.VerifyBundleAsync manifest deserialization path; malformed JSON threw instead of returning invalid verification.", + "[2026-02-11T14:37:55.0477195Z] fixing: Hardened VerifyBundleAsync to treat JsonException as invalid manifest and return IsValid=false with issue details.", + "[2026-02-11T14:37:55.0477195Z] retesting: Rebuilt ExportCenter tests and reran suite with fresh evidence after verification hardening.", + "[2026-02-11T14:37:55.0477195Z] done: Completed run-001 Tier 0/1/2 verification with pass (service 920/920) and moved feature dossier to checked." ] }, "oci-digest-first-release-identity": { - "status": "queued", + "status": "checking", "tier": 0, "retryCount": 0, "sourceVerified": null, "buildVerified": null, "e2eVerified": null, "skipReason": null, - "lastRunId": null, - "lastUpdatedUtc": "2026-02-11T13:48:58.5755746Z", + "lastRunId": "run-001", + "lastUpdatedUtc": "2026-02-11T14:37:55.0477195Z", "featureFile": "docs/features/unchecked/exportcenter/oci-digest-first-release-identity.md", "notes": [ - + "[2026-02-11T14:37:55.0477195Z] checking: Started run-001 Tier 0/1/2 verification for oci-digest-first-release-identity." ] }, "oci-distribution-for-export-artifacts": { @@ -122,9 +127,9 @@ "retesting": 0, "blocked": 0, "skipped": 0, - "queued": 3, + "queued": 2, "not_implemented": 0, - "done": 3, + "done": 4, "triaged": 0, "fixing": 0, "checking": 1, diff --git a/src/ExportCenter/StellaOps.ExportCenter.RiskBundles/TASKS.md b/src/ExportCenter/StellaOps.ExportCenter.RiskBundles/TASKS.md index 8b95e5b31..a20ed47c7 100644 --- a/src/ExportCenter/StellaOps.ExportCenter.RiskBundles/TASKS.md +++ b/src/ExportCenter/StellaOps.ExportCenter.RiskBundles/TASKS.md @@ -1,4 +1,4 @@ -# ExportCenter RiskBundles Task Board +# ExportCenter RiskBundles Task Board This board mirrors active sprint tasks for this module. Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229_049_BE_csproj_audit_maint_tests.md`. @@ -8,7 +8,9 @@ Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229 | QA-EXPORTCENTER-VERIFY-001 | DONE | `cli-ui-surfacing-of-hidden-backend-capabilities` verified in run-002 (Tier 0/1/2 pass; Policy blocker remediated; client 62/62 and service 920/920). | | QA-EXPORTCENTER-VERIFY-002 | DONE | `export-center-risk-bundle-builder` verified in run-001 (Tier 0/1/2 pass; service suite 920/920). | | QA-EXPORTCENTER-VERIFY-003 | DONE | `export-telemetry-and-worker` verified in run-001 (Tier 0/1/2 pass; service suite 920/920). | -| QA-EXPORTCENTER-VERIFY-004 | DOING | `local-evidence-cache-with-deferred-enrichment-queue` selected next from unchecked queue; Tier 0/1/2 verification in progress. | +| QA-EXPORTCENTER-VERIFY-004 | DONE | `local-evidence-cache-with-deferred-enrichment-queue` verified in run-001 after verification hardening fix (Tier 0/1/2 pass; service suite 920/920). | +| QA-EXPORTCENTER-VERIFY-005 | DOING | `oci-digest-first-release-identity` selected next from unchecked queue; Tier 0/1/2 verification in progress. | + | AUDIT-0335-M | DONE | Revalidated 2026-01-07; maintainability audit for ExportCenter.RiskBundles. | | AUDIT-0335-T | DONE | Revalidated 2026-01-07; test coverage audit for ExportCenter.RiskBundles. | | AUDIT-0335-A | TODO | Pending approval (non-test project; revalidated 2026-01-07). | @@ -17,3 +19,4 @@ Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229 + diff --git a/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Client.Tests/TASKS.md b/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Client.Tests/TASKS.md index 717a1c83e..863fd272a 100644 --- a/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Client.Tests/TASKS.md +++ b/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Client.Tests/TASKS.md @@ -1,4 +1,4 @@ -# ExportCenter Client Tests Task Board +# ExportCenter Client Tests Task Board This board mirrors active sprint tasks for this module. Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229_049_BE_csproj_audit_maint_tests.md`. @@ -8,7 +8,9 @@ Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229 | QA-EXPORTCENTER-VERIFY-001 | DONE | `cli-ui-surfacing-of-hidden-backend-capabilities` verified in run-002 (Tier 0/1/2 pass; Policy blocker remediated; client 62/62 and service 920/920). | | QA-EXPORTCENTER-VERIFY-002 | DONE | `export-center-risk-bundle-builder` verified in run-001 (Tier 0/1/2 pass; service suite 920/920). | | QA-EXPORTCENTER-VERIFY-003 | DONE | `export-telemetry-and-worker` verified in run-001 (Tier 0/1/2 pass; service suite 920/920). | -| QA-EXPORTCENTER-VERIFY-004 | DOING | `local-evidence-cache-with-deferred-enrichment-queue` selected next from unchecked queue; Tier 0/1/2 verification in progress. | +| QA-EXPORTCENTER-VERIFY-004 | DONE | `local-evidence-cache-with-deferred-enrichment-queue` verified in run-001 after verification hardening fix (Tier 0/1/2 pass; service suite 920/920). | +| QA-EXPORTCENTER-VERIFY-005 | DOING | `oci-digest-first-release-identity` selected next from unchecked queue; Tier 0/1/2 verification in progress. | + | AUDIT-0332-M | DONE | Revalidated 2026-01-07; maintainability audit for ExportCenter.Client.Tests. | | AUDIT-0332-T | DONE | Revalidated 2026-01-07; test coverage audit for ExportCenter.Client.Tests. | | AUDIT-0332-A | DONE | Waived (test project; revalidated 2026-01-07). | @@ -17,3 +19,4 @@ Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229 + diff --git a/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Client/TASKS.md b/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Client/TASKS.md index c984e51fe..06f651b02 100644 --- a/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Client/TASKS.md +++ b/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Client/TASKS.md @@ -1,4 +1,4 @@ -# ExportCenter Client Task Board +# ExportCenter Client Task Board This board mirrors active sprint tasks for this module. Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229_049_BE_csproj_audit_maint_tests.md`. @@ -8,7 +8,9 @@ Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229 | QA-EXPORTCENTER-VERIFY-001 | DONE | `cli-ui-surfacing-of-hidden-backend-capabilities` verified in run-002 (Tier 0/1/2 pass; Policy blocker remediated; client 62/62 and service 920/920). | | QA-EXPORTCENTER-VERIFY-002 | DONE | `export-center-risk-bundle-builder` verified in run-001 (Tier 0/1/2 pass; service suite 920/920). | | QA-EXPORTCENTER-VERIFY-003 | DONE | `export-telemetry-and-worker` verified in run-001 (Tier 0/1/2 pass; service suite 920/920). | -| QA-EXPORTCENTER-VERIFY-004 | DOING | `local-evidence-cache-with-deferred-enrichment-queue` selected next from unchecked queue; Tier 0/1/2 verification in progress. | +| QA-EXPORTCENTER-VERIFY-004 | DONE | `local-evidence-cache-with-deferred-enrichment-queue` verified in run-001 after verification hardening fix (Tier 0/1/2 pass; service suite 920/920). | +| QA-EXPORTCENTER-VERIFY-005 | DOING | `oci-digest-first-release-identity` selected next from unchecked queue; Tier 0/1/2 verification in progress. | + | AUDIT-0331-M | DONE | Revalidated 2026-01-07; maintainability audit for ExportCenter.Client. | | AUDIT-0331-T | DONE | Revalidated 2026-01-07; test coverage audit for ExportCenter.Client. | | AUDIT-0331-A | TODO | Pending approval (non-test project; revalidated 2026-01-07). | @@ -17,3 +19,4 @@ Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229 + diff --git a/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/OfflineBundle/OfflineBundlePackager.cs b/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/OfflineBundle/OfflineBundlePackager.cs index 5cb9eec89..7b11f2319 100644 --- a/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/OfflineBundle/OfflineBundlePackager.cs +++ b/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/OfflineBundle/OfflineBundlePackager.cs @@ -160,7 +160,22 @@ public sealed class OfflineBundlePackager : IOfflineBundlePackager } var manifestJson = await File.ReadAllTextAsync(manifestPath, cancellationToken); - var manifest = JsonSerializer.Deserialize(manifestJson, JsonOptions); + BundleManifest? manifest; + try + { + manifest = JsonSerializer.Deserialize(manifestJson, JsonOptions); + } + catch (JsonException ex) + { + _logger.LogWarning(ex, "Failed to parse manifest.json for bundle {BundlePath}", bundlePath); + issues.Add("Failed to parse manifest.json"); + return new BundleVerificationResult + { + IsValid = false, + Issues = issues, + VerifiedAt = _timeProvider.GetUtcNow() + }; + } if (manifest is null) { diff --git a/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/TASKS.md b/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/TASKS.md index e2b1105ef..27715461f 100644 --- a/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/TASKS.md +++ b/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Core/TASKS.md @@ -1,4 +1,4 @@ -# ExportCenter Core Task Board +# ExportCenter Core Task Board This board mirrors active sprint tasks for this module. Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229_049_BE_csproj_audit_maint_tests.md`. @@ -8,7 +8,9 @@ Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229 | QA-EXPORTCENTER-VERIFY-001 | DONE | `cli-ui-surfacing-of-hidden-backend-capabilities` verified in run-002 (Tier 0/1/2 pass; Policy blocker remediated; client 62/62 and service 920/920). | | QA-EXPORTCENTER-VERIFY-002 | DONE | `export-center-risk-bundle-builder` verified in run-001 (Tier 0/1/2 pass; service suite 920/920). | | QA-EXPORTCENTER-VERIFY-003 | DONE | `export-telemetry-and-worker` verified in run-001 (Tier 0/1/2 pass; service suite 920/920). | -| QA-EXPORTCENTER-VERIFY-004 | DOING | `local-evidence-cache-with-deferred-enrichment-queue` selected next from unchecked queue; Tier 0/1/2 verification in progress. | +| QA-EXPORTCENTER-VERIFY-004 | DONE | `local-evidence-cache-with-deferred-enrichment-queue` verified in run-001 after verification hardening fix (Tier 0/1/2 pass; service suite 920/920). | +| QA-EXPORTCENTER-VERIFY-005 | DOING | `oci-digest-first-release-identity` selected next from unchecked queue; Tier 0/1/2 verification in progress. | + | AUDIT-0333-M | DONE | Revalidated 2026-01-07; maintainability audit for ExportCenter.Core. | | AUDIT-0333-T | DONE | Revalidated 2026-01-07; test coverage audit for ExportCenter.Core. | | AUDIT-0333-A | DONE | Applied 2026-01-13; determinism verified, tests added for LineageEvidencePackService/ExportPlanner/ExportScopeResolver, large export warning fix. | @@ -16,3 +18,4 @@ Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229 + diff --git a/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Infrastructure/TASKS.md b/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Infrastructure/TASKS.md index fec9bd6cb..20ee7fd3e 100644 --- a/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Infrastructure/TASKS.md +++ b/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Infrastructure/TASKS.md @@ -1,4 +1,4 @@ -# ExportCenter Infrastructure Task Board +# ExportCenter Infrastructure Task Board This board mirrors active sprint tasks for this module. Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229_049_BE_csproj_audit_maint_tests.md`. @@ -8,7 +8,9 @@ Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229 | QA-EXPORTCENTER-VERIFY-001 | DONE | `cli-ui-surfacing-of-hidden-backend-capabilities` verified in run-002 (Tier 0/1/2 pass; Policy blocker remediated; client 62/62 and service 920/920). | | QA-EXPORTCENTER-VERIFY-002 | DONE | `export-center-risk-bundle-builder` verified in run-001 (Tier 0/1/2 pass; service suite 920/920). | | QA-EXPORTCENTER-VERIFY-003 | DONE | `export-telemetry-and-worker` verified in run-001 (Tier 0/1/2 pass; service suite 920/920). | -| QA-EXPORTCENTER-VERIFY-004 | DOING | `local-evidence-cache-with-deferred-enrichment-queue` selected next from unchecked queue; Tier 0/1/2 verification in progress. | +| QA-EXPORTCENTER-VERIFY-004 | DONE | `local-evidence-cache-with-deferred-enrichment-queue` verified in run-001 after verification hardening fix (Tier 0/1/2 pass; service suite 920/920). | +| QA-EXPORTCENTER-VERIFY-005 | DOING | `oci-digest-first-release-identity` selected next from unchecked queue; Tier 0/1/2 verification in progress. | + | AUDIT-0334-M | DONE | Revalidated 2026-01-07; maintainability audit for ExportCenter.Infrastructure. | | AUDIT-0334-T | DONE | Revalidated 2026-01-07; test coverage audit for ExportCenter.Infrastructure. | | AUDIT-0334-A | TODO | Pending approval (non-test project; revalidated 2026-01-07). | @@ -17,3 +19,4 @@ Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229 + diff --git a/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/TASKS.md b/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/TASKS.md index 9efba8dd7..cb38c6a8e 100644 --- a/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/TASKS.md +++ b/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Tests/TASKS.md @@ -1,4 +1,4 @@ -# ExportCenter Tests Task Board +# ExportCenter Tests Task Board This board mirrors active sprint tasks for this module. Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229_049_BE_csproj_audit_maint_tests.md`. @@ -8,7 +8,9 @@ Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229 | QA-EXPORTCENTER-VERIFY-001 | DONE | `cli-ui-surfacing-of-hidden-backend-capabilities` verified in run-002 (Tier 0/1/2 pass; Policy blocker remediated; client 62/62 and service 920/920). | | QA-EXPORTCENTER-VERIFY-002 | DONE | `export-center-risk-bundle-builder` verified in run-001 (Tier 0/1/2 pass; service suite 920/920). | | QA-EXPORTCENTER-VERIFY-003 | DONE | `export-telemetry-and-worker` verified in run-001 (Tier 0/1/2 pass; service suite 920/920). | -| QA-EXPORTCENTER-VERIFY-004 | DOING | `local-evidence-cache-with-deferred-enrichment-queue` selected next from unchecked queue; Tier 0/1/2 verification in progress. | +| QA-EXPORTCENTER-VERIFY-004 | DONE | `local-evidence-cache-with-deferred-enrichment-queue` verified in run-001 after verification hardening fix (Tier 0/1/2 pass; service suite 920/920). | +| QA-EXPORTCENTER-VERIFY-005 | DOING | `oci-digest-first-release-identity` selected next from unchecked queue; Tier 0/1/2 verification in progress. | + | AUDIT-0336-M | DONE | Revalidated 2026-01-07; maintainability audit for ExportCenter.Tests. | | AUDIT-0336-T | DONE | Revalidated 2026-01-07; test coverage audit for ExportCenter.Tests. | | AUDIT-0336-A | DONE | Waived (test project; revalidated 2026-01-07). | @@ -17,3 +19,4 @@ Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229 + diff --git a/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.WebService/TASKS.md b/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.WebService/TASKS.md index d8b58bcfd..683c454d8 100644 --- a/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.WebService/TASKS.md +++ b/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.WebService/TASKS.md @@ -1,4 +1,4 @@ -# ExportCenter WebService Task Board +# ExportCenter WebService Task Board This board mirrors active sprint tasks for this module. Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229_049_BE_csproj_audit_maint_tests.md`. @@ -8,7 +8,9 @@ Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229 | QA-EXPORTCENTER-VERIFY-001 | DONE | `cli-ui-surfacing-of-hidden-backend-capabilities` verified in run-002 (Tier 0/1/2 pass; Policy blocker remediated; client 62/62 and service 920/920). | | QA-EXPORTCENTER-VERIFY-002 | DONE | `export-center-risk-bundle-builder` verified in run-001 (Tier 0/1/2 pass; service suite 920/920). | | QA-EXPORTCENTER-VERIFY-003 | DONE | `export-telemetry-and-worker` verified in run-001 (Tier 0/1/2 pass; service suite 920/920). | -| QA-EXPORTCENTER-VERIFY-004 | DOING | `local-evidence-cache-with-deferred-enrichment-queue` selected next from unchecked queue; Tier 0/1/2 verification in progress. | +| QA-EXPORTCENTER-VERIFY-004 | DONE | `local-evidence-cache-with-deferred-enrichment-queue` verified in run-001 after verification hardening fix (Tier 0/1/2 pass; service suite 920/920). | +| QA-EXPORTCENTER-VERIFY-005 | DOING | `oci-digest-first-release-identity` selected next from unchecked queue; Tier 0/1/2 verification in progress. | + | AUDIT-0337-M | DONE | Revalidated 2026-01-07; maintainability audit for ExportCenter.WebService. | | AUDIT-0337-T | DONE | Revalidated 2026-01-07; test coverage audit for ExportCenter.WebService. | | AUDIT-0337-A | DONE | Applied 2026-01-13; determinism, DI guards, retention/TLS gating, tests added. | @@ -18,3 +20,4 @@ Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229 + diff --git a/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Worker/TASKS.md b/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Worker/TASKS.md index 813a3bf3e..6d5bf15d9 100644 --- a/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Worker/TASKS.md +++ b/src/ExportCenter/StellaOps.ExportCenter/StellaOps.ExportCenter.Worker/TASKS.md @@ -1,4 +1,4 @@ -# ExportCenter Worker Task Board +# ExportCenter Worker Task Board This board mirrors active sprint tasks for this module. Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229_049_BE_csproj_audit_maint_tests.md`. @@ -8,7 +8,9 @@ Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229 | QA-EXPORTCENTER-VERIFY-001 | DONE | `cli-ui-surfacing-of-hidden-backend-capabilities` verified in run-002 (Tier 0/1/2 pass; Policy blocker remediated; client 62/62 and service 920/920). | | QA-EXPORTCENTER-VERIFY-002 | DONE | `export-center-risk-bundle-builder` verified in run-001 (Tier 0/1/2 pass; service suite 920/920). | | QA-EXPORTCENTER-VERIFY-003 | DONE | `export-telemetry-and-worker` verified in run-001 (Tier 0/1/2 pass; service suite 920/920). | -| QA-EXPORTCENTER-VERIFY-004 | DOING | `local-evidence-cache-with-deferred-enrichment-queue` selected next from unchecked queue; Tier 0/1/2 verification in progress. | +| QA-EXPORTCENTER-VERIFY-004 | DONE | `local-evidence-cache-with-deferred-enrichment-queue` verified in run-001 after verification hardening fix (Tier 0/1/2 pass; service suite 920/920). | +| QA-EXPORTCENTER-VERIFY-005 | DOING | `oci-digest-first-release-identity` selected next from unchecked queue; Tier 0/1/2 verification in progress. | + | AUDIT-0338-M | DONE | Revalidated 2026-01-07; maintainability audit for ExportCenter.Worker. | | AUDIT-0338-T | DONE | Revalidated 2026-01-07; test coverage audit for ExportCenter.Worker. | | AUDIT-0338-A | TODO | Pending approval (non-test project; revalidated 2026-01-07). | @@ -17,3 +19,4 @@ Source of truth: `docs-archived/implplan/2025-12-29-csproj-audit/SPRINT_20251229 +