save checkpoint
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
{
|
||||
"type": "api",
|
||||
"baseUrl": "http://127.0.0.1:19100",
|
||||
"runId": "run-002",
|
||||
"timestampUtc": "2026-02-10T11:45:00Z",
|
||||
"requests": [
|
||||
{
|
||||
"description": "Export job creation succeeds for authorized tenant",
|
||||
"method": "POST",
|
||||
"path": "/graph/export",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"requestBody": {
|
||||
"format": "ndjson",
|
||||
"includeEdges": true
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download succeeds for matching tenant with export scope",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"assertion": "Response includes X-Content-SHA256 and application/x-ndjson content type",
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download rejects unauthenticated caller",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 401,
|
||||
"actualStatus": 401,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download is tenant-isolated",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "bravo",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 404,
|
||||
"actualStatus": 404,
|
||||
"result": "pass"
|
||||
}
|
||||
],
|
||||
"verdict": "pass"
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
{
|
||||
"filesChecked": [
|
||||
"src/Graph/StellaOps.Graph.Api/Program.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs"
|
||||
],
|
||||
"found": [
|
||||
"src/Graph/StellaOps.Graph.Api/Program.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs"
|
||||
],
|
||||
"missing": [],
|
||||
"verdict": "pass"
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"project": "src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj",
|
||||
"buildResult": "pass",
|
||||
"testResult": "pass",
|
||||
"command": "dotnet test src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj -c Release --nologo",
|
||||
"testsRun": 66,
|
||||
"testsPassed": 66,
|
||||
"testsFailed": 0,
|
||||
"errors": [
|
||||
|
||||
],
|
||||
"runAtUtc": "2026-02-10T19:53:04Z"
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
{
|
||||
"type": "api",
|
||||
"baseUrl": "http://127.0.0.1:19100",
|
||||
"runId": "run-005",
|
||||
"timestampUtc": "2026-02-10T19:53:04Z",
|
||||
"requests": [
|
||||
{
|
||||
"description": "Export job creation succeeds for authorized tenant",
|
||||
"method": "POST",
|
||||
"path": "/graph/export",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"requestBody": {
|
||||
"format": "ndjson",
|
||||
"includeEdges": true
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download succeeds for matching tenant with export scope",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"assertion": "Response includes X-Content-SHA256 and application/x-ndjson content type",
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download rejects unauthenticated caller",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 401,
|
||||
"actualStatus": 401,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download is tenant-isolated",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "bravo",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 404,
|
||||
"actualStatus": 404,
|
||||
"result": "pass"
|
||||
}
|
||||
],
|
||||
"verdict": "pass",
|
||||
"suiteReplay": {
|
||||
"command": "dotnet test src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj -c Release --nologo",
|
||||
"testsRun": 66,
|
||||
"testsPassed": 66,
|
||||
"testsFailed": 0
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"filesChecked": [
|
||||
"src/Graph/StellaOps.Graph.Api/Program.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs"
|
||||
],
|
||||
"found": [
|
||||
"src/Graph/StellaOps.Graph.Api/Program.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs"
|
||||
],
|
||||
"missing": [
|
||||
|
||||
],
|
||||
"verdict": "pass"
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"project": "src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj",
|
||||
"buildResult": "pass",
|
||||
"testResult": "pass",
|
||||
"command": "dotnet test src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj -c Release --nologo",
|
||||
"testsRun": 66,
|
||||
"testsPassed": 66,
|
||||
"testsFailed": 0,
|
||||
"errors": [
|
||||
|
||||
],
|
||||
"runAtUtc": "2026-02-10T20:24:04Z"
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
{
|
||||
"type": "api",
|
||||
"baseUrl": "http://127.0.0.1:19100",
|
||||
"runId": "run-006",
|
||||
"timestampUtc": "2026-02-10T20:24:04Z",
|
||||
"requests": [
|
||||
{
|
||||
"description": "Export job creation succeeds for authorized tenant",
|
||||
"method": "POST",
|
||||
"path": "/graph/export",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"requestBody": {
|
||||
"format": "ndjson",
|
||||
"includeEdges": true
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download succeeds for matching tenant with export scope",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"assertion": "Response includes X-Content-SHA256 and application/x-ndjson content type",
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download rejects unauthenticated caller",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 401,
|
||||
"actualStatus": 401,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download is tenant-isolated",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "bravo",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 404,
|
||||
"actualStatus": 404,
|
||||
"result": "pass"
|
||||
}
|
||||
],
|
||||
"verdict": "pass",
|
||||
"suiteReplay": {
|
||||
"command": "dotnet test src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj -c Release --nologo",
|
||||
"testsRun": 66,
|
||||
"testsPassed": 66,
|
||||
"testsFailed": 0
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"filesChecked": [
|
||||
"src/Graph/StellaOps.Graph.Api/Program.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs"
|
||||
],
|
||||
"found": [
|
||||
"src/Graph/StellaOps.Graph.Api/Program.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs"
|
||||
],
|
||||
"missing": [
|
||||
|
||||
],
|
||||
"verdict": "pass"
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"project": "src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj",
|
||||
"buildResult": "pass",
|
||||
"testResult": "pass",
|
||||
"command": "dotnet test src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj -c Release --nologo",
|
||||
"testsRun": 66,
|
||||
"testsPassed": 66,
|
||||
"testsFailed": 0,
|
||||
"errors": [
|
||||
|
||||
],
|
||||
"runAtUtc": "2026-02-10T20:36:50Z"
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
{
|
||||
"type": "api",
|
||||
"baseUrl": "http://127.0.0.1:19100",
|
||||
"runId": "run-007",
|
||||
"timestampUtc": "2026-02-10T20:36:50Z",
|
||||
"requests": [
|
||||
{
|
||||
"description": "Export job creation succeeds for authorized tenant",
|
||||
"method": "POST",
|
||||
"path": "/graph/export",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"requestBody": {
|
||||
"format": "ndjson",
|
||||
"includeEdges": true
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download succeeds for matching tenant with export scope",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"assertion": "Response includes X-Content-SHA256 and application/x-ndjson content type",
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download rejects unauthenticated caller",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 401,
|
||||
"actualStatus": 401,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download is tenant-isolated",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "bravo",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 404,
|
||||
"actualStatus": 404,
|
||||
"result": "pass"
|
||||
}
|
||||
],
|
||||
"verdict": "pass",
|
||||
"suiteReplay": {
|
||||
"command": "dotnet test src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj -c Release --nologo",
|
||||
"testsRun": 66,
|
||||
"testsPassed": 66,
|
||||
"testsFailed": 0
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"filesChecked": [
|
||||
"src/Graph/StellaOps.Graph.Api/Program.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs"
|
||||
],
|
||||
"found": [
|
||||
"src/Graph/StellaOps.Graph.Api/Program.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs"
|
||||
],
|
||||
"missing": [
|
||||
|
||||
],
|
||||
"verdict": "pass"
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"project": "src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj",
|
||||
"buildResult": "pass",
|
||||
"testResult": "pass",
|
||||
"command": "dotnet test src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj -c Release --nologo",
|
||||
"testsRun": 66,
|
||||
"testsPassed": 66,
|
||||
"testsFailed": 0,
|
||||
"errors": [
|
||||
|
||||
],
|
||||
"runAtUtc": "2026-02-10T20:53:04Z"
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
{
|
||||
"type": "api",
|
||||
"baseUrl": "http://127.0.0.1:19100",
|
||||
"runId": "run-008",
|
||||
"timestampUtc": "2026-02-10T20:53:04Z",
|
||||
"requests": [
|
||||
{
|
||||
"description": "Export job creation succeeds for authorized tenant",
|
||||
"method": "POST",
|
||||
"path": "/graph/export",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"requestBody": {
|
||||
"format": "ndjson",
|
||||
"includeEdges": true
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download succeeds for matching tenant with export scope",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"assertion": "Response includes X-Content-SHA256 and application/x-ndjson content type",
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download rejects unauthenticated caller",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 401,
|
||||
"actualStatus": 401,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download is tenant-isolated",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "bravo",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 404,
|
||||
"actualStatus": 404,
|
||||
"result": "pass"
|
||||
}
|
||||
],
|
||||
"verdict": "pass",
|
||||
"suiteReplay": {
|
||||
"command": "dotnet test src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj -c Release --nologo",
|
||||
"testsRun": 66,
|
||||
"testsPassed": 66,
|
||||
"testsFailed": 0
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,77 @@
|
||||
{
|
||||
"filesChecked": [
|
||||
"src/Graph/StellaOps.Graph.Api/Program.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs"
|
||||
],
|
||||
"found": [
|
||||
"src/Graph/StellaOps.Graph.Api/Program.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs"
|
||||
],
|
||||
"missing": [
|
||||
|
||||
],
|
||||
"verdict": "pass"
|
||||
}
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"project": "src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj",
|
||||
"buildResult": "pass",
|
||||
"testResult": "pass",
|
||||
"command": "dotnet test src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj -c Release --nologo",
|
||||
"testsRun": 66,
|
||||
"testsPassed": 66,
|
||||
"testsFailed": 0,
|
||||
"errors": [
|
||||
|
||||
],
|
||||
"runAtUtc": "2026-02-10T21:16:25Z"
|
||||
}
|
||||
|
||||
@@ -0,0 +1,72 @@
|
||||
{
|
||||
"type": "api",
|
||||
"baseUrl": "http://127.0.0.1:19100",
|
||||
"runId": "run-009",
|
||||
"timestampUtc": "2026-02-10T21:16:25Z",
|
||||
"requests": [
|
||||
{
|
||||
"description": "Export job creation succeeds for authorized tenant",
|
||||
"method": "POST",
|
||||
"path": "/graph/export",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"requestBody": {
|
||||
"format": "ndjson",
|
||||
"includeEdges": true
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download succeeds for matching tenant with export scope",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"assertion": "Response includes X-Content-SHA256 and application/x-ndjson content type",
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download rejects unauthenticated caller",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 401,
|
||||
"actualStatus": 401,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download is tenant-isolated",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "bravo",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 404,
|
||||
"actualStatus": 404,
|
||||
"result": "pass"
|
||||
}
|
||||
],
|
||||
"verdict": "pass",
|
||||
"suiteReplay": {
|
||||
"command": "dotnet test src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj -c Release --nologo",
|
||||
"testsRun": 66,
|
||||
"testsPassed": 66,
|
||||
"testsFailed": 0
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"filesChecked": [
|
||||
"src/Graph/StellaOps.Graph.Api/Program.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs"
|
||||
],
|
||||
"found": [
|
||||
"src/Graph/StellaOps.Graph.Api/Program.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs"
|
||||
],
|
||||
"missing": [
|
||||
|
||||
],
|
||||
"verdict": "pass"
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"project": "src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj",
|
||||
"buildResult": "pass",
|
||||
"testResult": "pass",
|
||||
"command": "dotnet test src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj -c Release --nologo",
|
||||
"testsRun": 66,
|
||||
"testsPassed": 66,
|
||||
"testsFailed": 0,
|
||||
"errors": [
|
||||
|
||||
],
|
||||
"runAtUtc": "2026-02-10T21:34:45Z"
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
{
|
||||
"type": "api",
|
||||
"baseUrl": "http://127.0.0.1:19100",
|
||||
"runId": "run-010",
|
||||
"timestampUtc": "2026-02-10T21:34:45Z",
|
||||
"requests": [
|
||||
{
|
||||
"description": "Export job creation succeeds for authorized tenant",
|
||||
"method": "POST",
|
||||
"path": "/graph/export",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"requestBody": {
|
||||
"format": "ndjson",
|
||||
"includeEdges": true
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download succeeds for matching tenant with export scope",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"assertion": "Response includes X-Content-SHA256 and application/x-ndjson content type",
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download rejects unauthenticated caller",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 401,
|
||||
"actualStatus": 401,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download is tenant-isolated",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "bravo",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 404,
|
||||
"actualStatus": 404,
|
||||
"result": "pass"
|
||||
}
|
||||
],
|
||||
"verdict": "pass",
|
||||
"suiteReplay": {
|
||||
"command": "dotnet test src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj -c Release --nologo",
|
||||
"testsRun": 66,
|
||||
"testsPassed": 66,
|
||||
"testsFailed": 0
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"filesChecked": [
|
||||
"src/Graph/StellaOps.Graph.Api/Program.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs"
|
||||
],
|
||||
"found": [
|
||||
"src/Graph/StellaOps.Graph.Api/Program.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs"
|
||||
],
|
||||
"missing": [
|
||||
|
||||
],
|
||||
"verdict": "pass"
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"project": "src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj",
|
||||
"buildResult": "pass",
|
||||
"testResult": "pass",
|
||||
"command": "dotnet test src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj -c Release --nologo",
|
||||
"testsRun": 66,
|
||||
"testsPassed": 66,
|
||||
"testsFailed": 0,
|
||||
"errors": [
|
||||
|
||||
],
|
||||
"runAtUtc": "2026-02-10T21:52:50Z"
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
{
|
||||
"type": "api",
|
||||
"baseUrl": "http://127.0.0.1:19100",
|
||||
"runId": "run-011",
|
||||
"timestampUtc": "2026-02-10T21:52:50Z",
|
||||
"requests": [
|
||||
{
|
||||
"description": "Export job creation succeeds for authorized tenant",
|
||||
"method": "POST",
|
||||
"path": "/graph/export",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"requestBody": {
|
||||
"format": "ndjson",
|
||||
"includeEdges": true
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download succeeds for matching tenant with export scope",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"assertion": "Response includes X-Content-SHA256 and application/x-ndjson content type",
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download rejects unauthenticated caller",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 401,
|
||||
"actualStatus": 401,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download is tenant-isolated",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "bravo",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 404,
|
||||
"actualStatus": 404,
|
||||
"result": "pass"
|
||||
}
|
||||
],
|
||||
"verdict": "pass",
|
||||
"suiteReplay": {
|
||||
"command": "dotnet test src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj -c Release --nologo",
|
||||
"testsRun": 66,
|
||||
"testsPassed": 66,
|
||||
"testsFailed": 0
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
{
|
||||
"filesChecked": [
|
||||
"src/Graph/StellaOps.Graph.Api/Program.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs"
|
||||
],
|
||||
"found": [
|
||||
"src/Graph/StellaOps.Graph.Api/Program.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphQueryService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphSearchService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphPathService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphDiffService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphExportService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryGraphLineageService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryOverlayService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/InMemoryReachabilityDeltaService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/RateLimiterService.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/GraphMetrics.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Services/IAuditLogger.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/SearchContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/LineageContracts.cs",
|
||||
"src/Graph/StellaOps.Graph.Api/Contracts/ReachabilityContracts.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/QueryServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/SearchServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/PathServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/DiffServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/ExportServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LineageServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/LoadTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/MetricsTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/RateLimiterServiceTests.cs",
|
||||
"src/Graph/__Tests/StellaOps.Graph.Api.Tests/GraphApiContractTests.cs"
|
||||
],
|
||||
"missing": [
|
||||
|
||||
],
|
||||
"verdict": "pass"
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"project": "src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj",
|
||||
"buildResult": "pass",
|
||||
"testResult": "pass",
|
||||
"command": "dotnet test src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj -c Release --nologo; dotnet test src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/StellaOps.Graph.Indexer.Tests.csproj -c Release --nologo; dotnet test src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/StellaOps.Graph.Indexer.Persistence.Tests.csproj -c Release --nologo",
|
||||
"testsRun": 120,
|
||||
"testsPassed": 120,
|
||||
"testsFailed": 0,
|
||||
"errors": [
|
||||
|
||||
],
|
||||
"runAtUtc": "2026-02-10T22:53:19Z"
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
{
|
||||
"type": "api",
|
||||
"baseUrl": "http://127.0.0.1:19100",
|
||||
"runId": "run-012",
|
||||
"timestampUtc": "2026-02-10T22:53:19Z",
|
||||
"requests": [
|
||||
{
|
||||
"description": "Export job creation succeeds for authorized tenant",
|
||||
"method": "POST",
|
||||
"path": "/graph/export",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"requestBody": {
|
||||
"format": "ndjson",
|
||||
"includeEdges": true
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download succeeds for matching tenant with export scope",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 200,
|
||||
"actualStatus": 200,
|
||||
"assertion": "Response includes X-Content-SHA256 and application/x-ndjson content type",
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download rejects unauthenticated caller",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"X-Stella-Tenant": "acme",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 401,
|
||||
"actualStatus": 401,
|
||||
"result": "pass"
|
||||
},
|
||||
{
|
||||
"description": "Export download is tenant-isolated",
|
||||
"method": "GET",
|
||||
"path": "/graph/export/{jobId}",
|
||||
"headers": {
|
||||
"Authorization": "Bearer qa-token",
|
||||
"X-Stella-Tenant": "bravo",
|
||||
"X-Stella-Scopes": "graph:export"
|
||||
},
|
||||
"expectedStatus": 404,
|
||||
"actualStatus": 404,
|
||||
"result": "pass"
|
||||
}
|
||||
],
|
||||
"verdict": "pass",
|
||||
"suiteReplay": {
|
||||
"command": "dotnet test src/Graph/__Tests/StellaOps.Graph.Api.Tests/StellaOps.Graph.Api.Tests.csproj -c Release --nologo; dotnet test src/Graph/__Tests/StellaOps.Graph.Indexer.Tests/StellaOps.Graph.Indexer.Tests.csproj -c Release --nologo; dotnet test src/Graph/__Tests/StellaOps.Graph.Indexer.Persistence.Tests/StellaOps.Graph.Indexer.Persistence.Tests.csproj -c Release --nologo",
|
||||
"testsRun": 120,
|
||||
"testsPassed": 120,
|
||||
"testsFailed": 0
|
||||
},
|
||||
"dateUtc": "2026-02-10T22:53:19Z"
|
||||
}
|
||||
Reference in New Issue
Block a user