documentation cleanse, sprints work and planning. remaining non EF DAL migration to EF
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"approved": true,
|
||||
"reason": "Source parity and deterministic replay tests confirm ordering is caller-controlled and not enforced in runtime projector path.",
|
||||
"revisedRootCause": "Projection pipeline does not reorder out-of-order events by sequence before reduction, contrary to the feature claim."
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
{
|
||||
"type": "source",
|
||||
"module": "findings",
|
||||
"feature": "ledger-projections",
|
||||
"runId": "run-001",
|
||||
"featureFile": "docs/features/unchecked/findings/ledger-projections.md",
|
||||
"capturedAtUtc": "2026-02-11T19:20:18.5538983Z",
|
||||
"files": [
|
||||
{
|
||||
"path": "src/Findings/StellaOps.Findings.Ledger/Infrastructure/Projection/LedgerProjectionWorker.cs",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/Findings/StellaOps.Findings.Ledger/Services/LedgerProjectionReducer.cs",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/Findings/StellaOps.Findings.Ledger/Domain/ProjectionModels.cs",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/Findings/StellaOps.Findings.Ledger/Hashing/ProjectionHashing.cs",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/Findings/StellaOps.Findings.Ledger/Infrastructure/IFindingProjectionRepository.cs",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/Findings/StellaOps.Findings.Ledger/Infrastructure/Postgres/PostgresFindingProjectionRepository.cs",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/Findings/__Tests/StellaOps.Findings.Ledger.Tests/LedgerProjectionReducerTests.cs",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/Findings/StellaOps.Findings.Ledger.Tests/ProjectionHashingTests.cs",
|
||||
"exists": true
|
||||
}
|
||||
],
|
||||
"missingFiles": [
|
||||
|
||||
],
|
||||
"classDeclarations": [
|
||||
{
|
||||
"symbol": "LedgerProjectionWorker",
|
||||
"found": true,
|
||||
"evidence": "src/Findings\\StellaOps.Findings.Ledger\\Infrastructure\\Projection\\LedgerProjectionWorker.cs:16:public sealed class LedgerProjectionWorker : BackgroundService"
|
||||
},
|
||||
{
|
||||
"symbol": "LedgerProjectionReducer",
|
||||
"found": true,
|
||||
"evidence": "src/Findings\\StellaOps.Findings.Ledger\\Services\\LedgerProjectionReducer.cs:10:public static class LedgerProjectionReducer"
|
||||
},
|
||||
{
|
||||
"symbol": "ProjectionModels",
|
||||
"found": false,
|
||||
"evidence": {
|
||||
|
||||
}
|
||||
},
|
||||
{
|
||||
"symbol": "ProjectionHashing",
|
||||
"found": true,
|
||||
"evidence": "src/Findings\\StellaOps.Findings.Ledger\\Hashing\\ProjectionHashing.cs:7:public static class ProjectionHashing"
|
||||
},
|
||||
{
|
||||
"symbol": "IFindingProjectionRepository",
|
||||
"found": true,
|
||||
"evidence": "src/Findings\\StellaOps.Findings.Ledger\\Infrastructure\\IFindingProjectionRepository.cs:17:public interface IFindingProjectionRepository"
|
||||
},
|
||||
{
|
||||
"symbol": "PostgresFindingProjectionRepository",
|
||||
"found": true,
|
||||
"evidence": "src/Findings\\StellaOps.Findings.Ledger\\Infrastructure\\Postgres\\PostgresFindingProjectionRepository.cs:14:public sealed class PostgresFindingProjectionRepository : IFindingProjectionRepository"
|
||||
}
|
||||
],
|
||||
"sourceVerified": true,
|
||||
"verdict": "pass"
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
{
|
||||
"type": "build_and_test",
|
||||
"capturedAtUtc": "2026-02-11T19:25:39.6286983Z",
|
||||
"commandsFile": "docs/qa/feature-checks/runs/findings/ledger-projections/run-001/tier1-commands.json",
|
||||
"projects": [
|
||||
"src/Findings/StellaOps.Findings.Ledger/StellaOps.Findings.Ledger.csproj",
|
||||
"src/Findings/StellaOps.Findings.Ledger.WebService/StellaOps.Findings.Ledger.WebService.csproj",
|
||||
"src/Findings/__Tests/StellaOps.Findings.Ledger.Tests/StellaOps.Findings.Ledger.Tests.csproj",
|
||||
"src/Findings/StellaOps.Findings.Ledger.Tests/StellaOps.Findings.Ledger.Tests.csproj"
|
||||
],
|
||||
"buildResult": "pass",
|
||||
"testResult": "pass",
|
||||
"warnings": [
|
||||
"Microsoft.Testing.Platform warning MTP0001 indicates legacy VSTest filter arguments are ignored in this environment; full test assemblies executed and passed."
|
||||
],
|
||||
"errors": [
|
||||
|
||||
],
|
||||
"verdict": "pass"
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
[
|
||||
{
|
||||
"name": "build-ledger-lib",
|
||||
"command": "dotnet build src/Findings/StellaOps.Findings.Ledger/StellaOps.Findings.Ledger.csproj -c Release --nologo",
|
||||
"exitCode": 0,
|
||||
"startedAtUtc": "2026-02-11T19:20:31.1149504Z",
|
||||
"finishedAtUtc": "2026-02-11T19:20:32.7621218Z",
|
||||
"summary": "Build succeeded.",
|
||||
"log": "docs\\qa\\feature-checks\\runs\\findings\\ledger-projections\\run-001\\build-ledger-lib.log"
|
||||
},
|
||||
{
|
||||
"name": "build-webservice",
|
||||
"command": "dotnet build src/Findings/StellaOps.Findings.Ledger.WebService/StellaOps.Findings.Ledger.WebService.csproj -c Release --nologo",
|
||||
"exitCode": 0,
|
||||
"startedAtUtc": "2026-02-11T19:20:32.8011417Z",
|
||||
"finishedAtUtc": "2026-02-11T19:20:39.7585976Z",
|
||||
"summary": "Build succeeded.",
|
||||
"log": "docs\\qa\\feature-checks\\runs\\findings\\ledger-projections\\run-001\\build-webservice.log"
|
||||
},
|
||||
{
|
||||
"name": "test-underscore-projection",
|
||||
"command": "dotnet test src/Findings/__Tests/StellaOps.Findings.Ledger.Tests/StellaOps.Findings.Ledger.Tests.csproj -c Release --nologo --filter \"FullyQualifiedName~LedgerProjectionReducerTests\"",
|
||||
"exitCode": 0,
|
||||
"startedAtUtc": "2026-02-11T19:20:39.7635726Z",
|
||||
"finishedAtUtc": "2026-02-11T19:20:53.9309447Z",
|
||||
"summary": " Passed! - Failed: 0, Passed: 141, Skipped: 0, Total: 141, Duration: 2s 120ms - StellaOps.Findings.Ledger.Tests.dll (net10.0|x64)",
|
||||
"log": "docs\\qa\\feature-checks\\runs\\findings\\ledger-projections\\run-001\\test-underscore-projection.log"
|
||||
},
|
||||
{
|
||||
"name": "test-projection-hashing",
|
||||
"command": "dotnet test src/Findings/StellaOps.Findings.Ledger.Tests/StellaOps.Findings.Ledger.Tests.csproj -c Release --nologo --filter \"FullyQualifiedName~ProjectionHashingTests\"",
|
||||
"exitCode": 0,
|
||||
"startedAtUtc": "2026-02-11T19:20:53.9371834Z",
|
||||
"finishedAtUtc": "2026-02-11T19:21:10.7752721Z",
|
||||
"summary": " Passed! - Failed: 0, Passed: 77, Skipped: 0, Total: 77, Duration: 5s 293ms - StellaOps.Findings.Ledger.Tests.dll (net10.0|x64)",
|
||||
"log": "docs\\qa\\feature-checks\\runs\\findings\\ledger-projections\\run-001\\test-projection-hashing.log"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,20 @@
|
||||
[
|
||||
{
|
||||
"name": "tier2-projection-reducer-behavior",
|
||||
"command": "dotnet test src/Findings/__Tests/StellaOps.Findings.Ledger.Tests/StellaOps.Findings.Ledger.Tests.csproj -c Release --no-build --nologo --filter \"FullyQualifiedName~LedgerProjectionReducerTests\"",
|
||||
"exitCode": 0,
|
||||
"startedAtUtc": "2026-02-11T19:23:45.0831508Z",
|
||||
"finishedAtUtc": "2026-02-11T19:23:47.9529049Z",
|
||||
"summary": "Passed! - Failed: 0, Passed: 141, Skipped: 0, Total: 141, Duration: 1s 858ms - StellaOps.Findings.Ledger.Tests.dll (net10.0|x64)",
|
||||
"log": "docs\\qa\\feature-checks\\runs\\findings\\ledger-projections\\run-001\\tier2-projection-reducer-behavior.log"
|
||||
},
|
||||
{
|
||||
"name": "tier2-projection-replay-and-ordering",
|
||||
"command": "dotnet test src/Findings/StellaOps.Findings.Ledger.Tests/StellaOps.Findings.Ledger.Tests.csproj -c Release --no-build --nologo --filter \"FullyQualifiedName~LedgerReplayDeterminismTests|FullyQualifiedName~FindingsLedgerIntegrationTests\"",
|
||||
"exitCode": 0,
|
||||
"startedAtUtc": "2026-02-11T19:23:52.5137514Z",
|
||||
"finishedAtUtc": "2026-02-11T19:23:57.9332333Z",
|
||||
"summary": "Passed! - Failed: 0, Passed: 77, Skipped: 0, Total: 77, Duration: 4s 399ms - StellaOps.Findings.Ledger.Tests.dll (net10.0|x64)",
|
||||
"log": "docs\\qa\\feature-checks\\runs\\findings\\ledger-projections\\run-001\\tier2-projection-replay-and-ordering.log"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,34 @@
|
||||
{
|
||||
"type": "integration",
|
||||
"capturedAtUtc": "2026-02-11T19:25:50.1971698Z",
|
||||
"commandsFile": "docs/qa/feature-checks/runs/findings/ledger-projections/run-001/tier2-commands.json",
|
||||
"tests": [
|
||||
{
|
||||
"behaviorObserved": [
|
||||
"Reducer builds projection state, history entry, and action entry from finding events.",
|
||||
"Projection hash generation remains deterministic for equivalent projection content."
|
||||
],
|
||||
"result": "pass",
|
||||
"name": "projection-reducer-behavior",
|
||||
"log": "tier2-projection-reducer-behavior.log",
|
||||
"behaviorGap": null
|
||||
},
|
||||
{
|
||||
"behaviorObserved": [
|
||||
"Replay/integration test suite validates deterministic projection for consistently ordered sequences.",
|
||||
"Contract/integration surfaces execute successfully under module test harness."
|
||||
],
|
||||
"result": "pass",
|
||||
"name": "projection-replay-and-ordering",
|
||||
"log": "tier2-projection-replay-and-ordering.log",
|
||||
"behaviorGap": "Out-of-order delivery handling claimed by feature is not implemented in runtime reducer/worker logic."
|
||||
}
|
||||
],
|
||||
"behaviorVerified": [
|
||||
"Projection reduction and deterministic cycle hashing behavior execute successfully in Tier 2 integration surfaces."
|
||||
],
|
||||
"behaviorMissing": [
|
||||
"Feature claim \"projection reducer correctly handles out-of-order event delivery by ordering events by sequence\" is not satisfied: runtime flow consumes batch order directly (LedgerProjectionWorker foreach over batch) and applies events without sequence reordering before LedgerProjectionReducer.Reduce."
|
||||
],
|
||||
"verdict": "fail"
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
{
|
||||
"type": "integration",
|
||||
"capturedAtUtc": "2026-02-11T19:25:50.1971698Z",
|
||||
"commandsFile": "docs/qa/feature-checks/runs/findings/ledger-projections/run-001/tier2-commands.json",
|
||||
"tests": [
|
||||
{
|
||||
"behaviorObserved": [
|
||||
"Reducer builds projection state, history entry, and action entry from finding events.",
|
||||
"Projection hash generation remains deterministic for equivalent projection content."
|
||||
],
|
||||
"result": "pass",
|
||||
"name": "projection-reducer-behavior",
|
||||
"log": "tier2-projection-reducer-behavior.log",
|
||||
"behaviorGap": null
|
||||
},
|
||||
{
|
||||
"behaviorObserved": [
|
||||
"Replay/integration test suite validates deterministic projection for consistently ordered sequences.",
|
||||
"Contract/integration surfaces execute successfully under module test harness."
|
||||
],
|
||||
"result": "pass",
|
||||
"name": "projection-replay-and-ordering",
|
||||
"log": "tier2-projection-replay-and-ordering.log",
|
||||
"behaviorGap": "Out-of-order delivery handling claimed by feature is not implemented in runtime reducer/worker logic."
|
||||
}
|
||||
],
|
||||
"behaviorVerified": [
|
||||
"Projection reduction and deterministic cycle hashing behavior execute successfully in Tier 2 integration surfaces."
|
||||
],
|
||||
"behaviorMissing": [
|
||||
"Feature claim \"projection reducer correctly handles out-of-order event delivery by ordering events by sequence\" is not satisfied: runtime flow consumes batch order directly (LedgerProjectionWorker foreach over batch) and applies events without sequence reordering before LedgerProjectionReducer.Reduce."
|
||||
],
|
||||
"verdict": "fail"
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"rootCause": "Projection pipeline does not reorder out-of-order events by sequence before reduction, contrary to the feature claim.",
|
||||
"category": "missing_code",
|
||||
"affectedFiles": [
|
||||
"src/Findings/StellaOps.Findings.Ledger/Infrastructure/Projection/LedgerProjectionWorker.cs",
|
||||
"src/Findings/StellaOps.Findings.Ledger/Services/LedgerProjectionReducer.cs",
|
||||
"src/Findings/StellaOps.Findings.Ledger.Tests/LedgerReplayDeterminismTests.cs"
|
||||
],
|
||||
"confidence": 0.96
|
||||
}
|
||||
Reference in New Issue
Block a user