save checkpoint: save features
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"approved": true,
|
||||
"reason": "Live Tier 2 resolution API probes plus source parity review confirm default runtime behavior does not realize the full claimed binary intelligence graph and reachability integration path.",
|
||||
"revisedRootCause": "Feature dossier overstates default runtime completeness: WebService composition uses in-memory vulnerability fallback and analysis defaults to null reachability service, so full identity-indexing/matching/reachability behavior is not active end-to-end."
|
||||
}
|
||||
@@ -0,0 +1,96 @@
|
||||
{
|
||||
"type": "source",
|
||||
"module": "binaryindex",
|
||||
"feature": "binary-intelligence-graph-binary-identity-indexing",
|
||||
"runId": "run-001",
|
||||
"featureFile": "docs/features/unchecked/binaryindex/binary-intelligence-graph-binary-identity-indexing.md",
|
||||
"capturedAtUtc": "2026-02-11T19:38:18.7806047Z",
|
||||
"files": [
|
||||
{
|
||||
"path": "src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Core/",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Persistence/",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Analysis/",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Core/Services/BinaryIdentityService.cs",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Core/Services/ElfFeatureExtractor.cs",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Persistence/Services/BinaryVulnerabilityService.cs",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Analysis/SignatureMatcher.cs",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Analysis/ReachGraphBinaryReachabilityService.cs",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Core/Models/",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Core/Services/IBinaryVulnAssertionRepository.cs",
|
||||
"exists": true
|
||||
},
|
||||
{
|
||||
"path": "src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Core/Services/IBinaryVulnerabilityService.cs",
|
||||
"exists": true
|
||||
}
|
||||
],
|
||||
"missingFiles": [
|
||||
|
||||
],
|
||||
"classDeclarations": [
|
||||
{
|
||||
"symbol": "BinaryIdentityService",
|
||||
"found": false,
|
||||
"evidence": null
|
||||
},
|
||||
{
|
||||
"symbol": "ElfFeatureExtractor",
|
||||
"found": false,
|
||||
"evidence": null
|
||||
},
|
||||
{
|
||||
"symbol": "BinaryVulnerabilityService",
|
||||
"found": false,
|
||||
"evidence": null
|
||||
},
|
||||
{
|
||||
"symbol": "SignatureMatcher",
|
||||
"found": false,
|
||||
"evidence": null
|
||||
},
|
||||
{
|
||||
"symbol": "ReachGraphBinaryReachabilityService",
|
||||
"found": false,
|
||||
"evidence": null
|
||||
},
|
||||
{
|
||||
"symbol": "IBinaryVulnAssertionRepository",
|
||||
"found": false,
|
||||
"evidence": null
|
||||
},
|
||||
{
|
||||
"symbol": "IBinaryVulnerabilityService",
|
||||
"found": false,
|
||||
"evidence": null
|
||||
}
|
||||
],
|
||||
"sourceVerified": true,
|
||||
"verdict": "pass"
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"type": "build_and_test",
|
||||
"capturedAtUtc": "2026-02-11T19:40:57.3295110Z",
|
||||
"commandsFile": "docs/qa/feature-checks/runs/binaryindex/binary-intelligence-graph-binary-identity-indexing/run-001/tier1-commands.json",
|
||||
"projects": [
|
||||
"src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Core/StellaOps.BinaryIndex.Core.csproj",
|
||||
"src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Persistence/StellaOps.BinaryIndex.Persistence.csproj",
|
||||
"src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Analysis/StellaOps.BinaryIndex.Analysis.csproj",
|
||||
"src/BinaryIndex/__Tests/StellaOps.BinaryIndex.Core.Tests/StellaOps.BinaryIndex.Core.Tests.csproj",
|
||||
"src/BinaryIndex/__Tests/StellaOps.BinaryIndex.Analysis.Tests/StellaOps.BinaryIndex.Analysis.Tests.csproj",
|
||||
"src/BinaryIndex/__Tests/StellaOps.BinaryIndex.WebService.Tests/StellaOps.BinaryIndex.WebService.Tests.csproj"
|
||||
],
|
||||
"buildResult": "pass",
|
||||
"testResult": "pass",
|
||||
"warnings": [
|
||||
"Microsoft.Testing.Platform warning MTP0001 indicates VSTest-style --filter arguments are ignored in this environment; full test assemblies executed and passed."
|
||||
],
|
||||
"errors": [
|
||||
|
||||
],
|
||||
"verdict": "pass"
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
[
|
||||
{
|
||||
"name": "build-core",
|
||||
"command": "dotnet build src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Core/StellaOps.BinaryIndex.Core.csproj -c Release --nologo",
|
||||
"exitCode": 0,
|
||||
"startedAtUtc": "2026-02-11T19:39:34.1250970Z",
|
||||
"finishedAtUtc": "2026-02-11T19:39:35.5857451Z",
|
||||
"summary": "Build succeeded.",
|
||||
"log": "docs\\qa\\feature-checks\\runs\\binaryindex\\binary-intelligence-graph-binary-identity-indexing\\run-001\\build-core.log"
|
||||
},
|
||||
{
|
||||
"name": "build-persistence",
|
||||
"command": "dotnet build src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Persistence/StellaOps.BinaryIndex.Persistence.csproj -c Release --nologo",
|
||||
"exitCode": 0,
|
||||
"startedAtUtc": "2026-02-11T19:39:34.1361292Z",
|
||||
"finishedAtUtc": "2026-02-11T19:39:36.4750463Z",
|
||||
"summary": "Build succeeded.",
|
||||
"log": "docs\\qa\\feature-checks\\runs\\binaryindex\\binary-intelligence-graph-binary-identity-indexing\\run-001\\build-persistence.log"
|
||||
},
|
||||
{
|
||||
"name": "build-analysis",
|
||||
"command": "dotnet build src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Analysis/StellaOps.BinaryIndex.Analysis.csproj -c Release --nologo",
|
||||
"exitCode": 0,
|
||||
"startedAtUtc": "2026-02-11T19:39:34.3233746Z",
|
||||
"finishedAtUtc": "2026-02-11T19:39:36.6441776Z",
|
||||
"summary": "Build succeeded.",
|
||||
"log": "docs\\qa\\feature-checks\\runs\\binaryindex\\binary-intelligence-graph-binary-identity-indexing\\run-001\\build-analysis.log"
|
||||
},
|
||||
{
|
||||
"name": "test-core-identity-and-resolution",
|
||||
"command": "dotnet test src/BinaryIndex/__Tests/StellaOps.BinaryIndex.Core.Tests/StellaOps.BinaryIndex.Core.Tests.csproj -c Release --nologo --filter \"FullyQualifiedName~ElfFeatureExtractorTests|FullyQualifiedName~ResolutionServiceTests\"",
|
||||
"exitCode": 0,
|
||||
"startedAtUtc": "2026-02-11T19:40:01.2077692Z",
|
||||
"finishedAtUtc": "2026-02-11T19:40:40.7581954Z",
|
||||
"summary": "Passed! - Failed: 0, Passed: 50, Skipped: 0, Total: 50, Duration: 406ms - StellaOps.BinaryIndex.Core.Tests.dll (net10.0|x64)",
|
||||
"log": "docs\\qa\\feature-checks\\runs\\binaryindex\\binary-intelligence-graph-binary-identity-indexing\\run-001\\test-core-identity-and-resolution.log"
|
||||
},
|
||||
{
|
||||
"name": "test-analysis-matching-and-reachability",
|
||||
"command": "dotnet test src/BinaryIndex/__Tests/StellaOps.BinaryIndex.Analysis.Tests/StellaOps.BinaryIndex.Analysis.Tests.csproj -c Release --nologo --filter \"FullyQualifiedName~SignatureMatcherTests|FullyQualifiedName~GoldenSetAnalysisPipelineIntegrationTests\"",
|
||||
"exitCode": 0,
|
||||
"startedAtUtc": "2026-02-11T19:40:01.2429679Z",
|
||||
"finishedAtUtc": "2026-02-11T19:40:40.9837657Z",
|
||||
"summary": "Passed! - Failed: 0, Passed: 102, Skipped: 0, Total: 102, Duration: 473ms - StellaOps.BinaryIndex.Analysis.Tests.dll (net10.0|x64)",
|
||||
"log": "docs\\qa\\feature-checks\\runs\\binaryindex\\binary-intelligence-graph-binary-identity-indexing\\run-001\\test-analysis-matching-and-reachability.log"
|
||||
},
|
||||
{
|
||||
"name": "test-webservice-resolution-integration",
|
||||
"command": "dotnet test src/BinaryIndex/__Tests/StellaOps.BinaryIndex.WebService.Tests/StellaOps.BinaryIndex.WebService.Tests.csproj -c Release --nologo --filter \"FullyQualifiedName~ResolutionControllerIntegrationTests\"",
|
||||
"exitCode": 0,
|
||||
"startedAtUtc": "2026-02-11T19:40:01.2429679Z",
|
||||
"finishedAtUtc": "2026-02-11T19:40:40.5698113Z",
|
||||
"summary": "Passed! - Failed: 0, Passed: 40, Skipped: 0, Total: 40, Duration: 497ms - StellaOps.BinaryIndex.WebService.Tests.dll (net10.0|x64)",
|
||||
"log": "docs\\qa\\feature-checks\\runs\\binaryindex\\binary-intelligence-graph-binary-identity-indexing\\run-001\\test-webservice-resolution-integration.log"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1 @@
|
||||
{"items":[{"package":"pkg:deb/debian/openssl@3.0.7","buildId":"abc123def456"},{"package":"pkg:deb/debian/libcurl@7.88.1","buildId":"fff111"}],"options":{"bypassCache":false,"includeDsseAttestation":false}}
|
||||
@@ -0,0 +1,29 @@
|
||||
[
|
||||
{
|
||||
"name": "tier2-live-resolution-api-probe",
|
||||
"command": "powershell -NoProfile -File docs/qa/feature-checks/runs/binaryindex/binary-intelligence-graph-binary-identity-indexing/run-001/.tmp-tier2-api.ps1",
|
||||
"exitCode": 0,
|
||||
"startedAtUtc": "2026-02-11T19:42:00.0476406Z",
|
||||
"finishedAtUtc": "2026-02-11T19:43:18.8696090Z",
|
||||
"summary": "Live API probes captured /api/v1/resolve/vuln (valid + invalid) and /api/v1/resolve/vuln/batch responses.",
|
||||
"log": "docs\\qa\\feature-checks\\runs\\binaryindex\\binary-intelligence-graph-binary-identity-indexing\\run-001\\tier2-webservice.stdout.log"
|
||||
},
|
||||
{
|
||||
"name": "tier2-analysis-integration",
|
||||
"command": "dotnet test src/BinaryIndex/__Tests/StellaOps.BinaryIndex.Analysis.Tests/StellaOps.BinaryIndex.Analysis.Tests.csproj -c Release --nologo --no-build --filter \"FullyQualifiedName~GoldenSetAnalysisPipelineIntegrationTests|FullyQualifiedName~SignatureMatcherTests\"",
|
||||
"exitCode": 0,
|
||||
"startedAtUtc": "2026-02-11T19:43:44.7357079Z",
|
||||
"finishedAtUtc": "2026-02-11T19:43:47.5639227Z",
|
||||
"summary": "Passed! - Failed: 0, Passed: 102, Skipped: 0, Total: 102, Duration: 718ms - StellaOps.BinaryIndex.Analysis.Tests.dll (net10.0|x64)",
|
||||
"log": "docs\\qa\\feature-checks\\runs\\binaryindex\\binary-intelligence-graph-binary-identity-indexing\\run-001\\tier2-analysis-integration.log"
|
||||
},
|
||||
{
|
||||
"name": "tier2-core-extraction",
|
||||
"command": "dotnet test src/BinaryIndex/__Tests/StellaOps.BinaryIndex.Core.Tests/StellaOps.BinaryIndex.Core.Tests.csproj -c Release --nologo --no-build --filter \"FullyQualifiedName~ElfFeatureExtractorTests\"",
|
||||
"exitCode": 0,
|
||||
"startedAtUtc": "2026-02-11T19:43:44.7688563Z",
|
||||
"finishedAtUtc": "2026-02-11T19:43:47.6270593Z",
|
||||
"summary": "Passed! - Failed: 0, Passed: 50, Skipped: 0, Total: 50, Duration: 726ms - StellaOps.BinaryIndex.Core.Tests.dll (net10.0|x64)",
|
||||
"log": "docs\\qa\\feature-checks\\runs\\binaryindex\\binary-intelligence-graph-binary-identity-indexing\\run-001\\tier2-core-extraction.log"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,60 @@
|
||||
{
|
||||
"type": "api+integration",
|
||||
"capturedAtUtc": "2026-02-11T19:44:26.6714543Z",
|
||||
"baseUrl": "https://localhost:10360",
|
||||
"commandsFile": "docs/qa/feature-checks/runs/binaryindex/binary-intelligence-graph-binary-identity-indexing/run-001/tier2-commands.json",
|
||||
"requests": [
|
||||
{
|
||||
"description": "POST /api/v1/resolve/vuln valid request",
|
||||
"expected": "200 response with vulnerability matching evidence when indexed data exists",
|
||||
"actual": "status=200, response.status=2, evidence=False",
|
||||
"result": "pass",
|
||||
"evidence": "tier2-resolve-valid-body.json"
|
||||
},
|
||||
{
|
||||
"description": "POST /api/v1/resolve/vuln invalid request (missing package)",
|
||||
"expected": "400 validation error",
|
||||
"actual": "status=400",
|
||||
"result": "pass",
|
||||
"evidence": "tier2-resolve-invalid-body.json"
|
||||
},
|
||||
{
|
||||
"description": "POST /api/v1/resolve/vuln/batch with two binaries",
|
||||
"expected": "200 batch response with per-item resolution",
|
||||
"actual": "status=200, totalCount=2, cacheHits=1",
|
||||
"result": "pass",
|
||||
"evidence": "tier2-resolve-batch-body.json"
|
||||
},
|
||||
{
|
||||
"description": "Vulnerability matching depth for indexed identity flow",
|
||||
"expected": "non-empty match evidence path for Build-ID/fingerprint when feature is complete",
|
||||
"actual": "no_match_evidence_returned",
|
||||
"result": "fail",
|
||||
"evidence": "tier2-resolve-valid-body.json"
|
||||
},
|
||||
{
|
||||
"description": "Reachability integration in default runtime composition",
|
||||
"expected": "active ReachGraph-backed reachability path in default module wiring",
|
||||
"actual": "Analysis service registration defaults to NullBinaryReachabilityService unless explicitly overridden",
|
||||
"result": "fail",
|
||||
"evidence": "src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Analysis/ServiceCollectionExtensions.cs"
|
||||
},
|
||||
{
|
||||
"description": "Method mapping includes delta_signature",
|
||||
"expected": "BinaryVulnerabilityService maps delta_signature method explicitly",
|
||||
"actual": "MapMethod switch handles buildid_catalog and fingerprint_match only; others fallback to range_match",
|
||||
"result": "fail",
|
||||
"evidence": "src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Persistence/Services/BinaryVulnerabilityService.cs"
|
||||
}
|
||||
],
|
||||
"behaviorVerified": [
|
||||
"Resolution API surfaces are reachable and enforce validation semantics for invalid payloads.",
|
||||
"Core extraction and analysis integration test suites execute successfully in Tier 2."
|
||||
],
|
||||
"behaviorMissing": [
|
||||
"Default WebService runtime uses in-memory vulnerability service fallback, so complete Binary Intelligence graph indexing/matching behavior is not active end-to-end.",
|
||||
"Default analysis registration uses NullBinaryReachabilityService unless additional reachability integration wiring is provided.",
|
||||
"Binary vulnerability method mapping does not explicitly include delta_signature in MapMethod, reducing fidelity versus feature claims."
|
||||
],
|
||||
"verdict": "fail"
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
{
|
||||
"type": "api+integration",
|
||||
"capturedAtUtc": "2026-02-11T19:44:26.6714543Z",
|
||||
"baseUrl": "https://localhost:10360",
|
||||
"commandsFile": "docs/qa/feature-checks/runs/binaryindex/binary-intelligence-graph-binary-identity-indexing/run-001/tier2-commands.json",
|
||||
"requests": [
|
||||
{
|
||||
"description": "POST /api/v1/resolve/vuln valid request",
|
||||
"expected": "200 response with vulnerability matching evidence when indexed data exists",
|
||||
"actual": "status=200, response.status=2, evidence=False",
|
||||
"result": "pass",
|
||||
"evidence": "tier2-resolve-valid-body.json"
|
||||
},
|
||||
{
|
||||
"description": "POST /api/v1/resolve/vuln invalid request (missing package)",
|
||||
"expected": "400 validation error",
|
||||
"actual": "status=400",
|
||||
"result": "pass",
|
||||
"evidence": "tier2-resolve-invalid-body.json"
|
||||
},
|
||||
{
|
||||
"description": "POST /api/v1/resolve/vuln/batch with two binaries",
|
||||
"expected": "200 batch response with per-item resolution",
|
||||
"actual": "status=200, totalCount=2, cacheHits=1",
|
||||
"result": "pass",
|
||||
"evidence": "tier2-resolve-batch-body.json"
|
||||
},
|
||||
{
|
||||
"description": "Vulnerability matching depth for indexed identity flow",
|
||||
"expected": "non-empty match evidence path for Build-ID/fingerprint when feature is complete",
|
||||
"actual": "no_match_evidence_returned",
|
||||
"result": "fail",
|
||||
"evidence": "tier2-resolve-valid-body.json"
|
||||
},
|
||||
{
|
||||
"description": "Reachability integration in default runtime composition",
|
||||
"expected": "active ReachGraph-backed reachability path in default module wiring",
|
||||
"actual": "Analysis service registration defaults to NullBinaryReachabilityService unless explicitly overridden",
|
||||
"result": "fail",
|
||||
"evidence": "src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Analysis/ServiceCollectionExtensions.cs"
|
||||
},
|
||||
{
|
||||
"description": "Method mapping includes delta_signature",
|
||||
"expected": "BinaryVulnerabilityService maps delta_signature method explicitly",
|
||||
"actual": "MapMethod switch handles buildid_catalog and fingerprint_match only; others fallback to range_match",
|
||||
"result": "fail",
|
||||
"evidence": "src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Persistence/Services/BinaryVulnerabilityService.cs"
|
||||
}
|
||||
],
|
||||
"behaviorVerified": [
|
||||
"Resolution API surfaces are reachable and enforce validation semantics for invalid payloads.",
|
||||
"Core extraction and analysis integration test suites execute successfully in Tier 2."
|
||||
],
|
||||
"behaviorMissing": [
|
||||
"Default WebService runtime uses in-memory vulnerability service fallback, so complete Binary Intelligence graph indexing/matching behavior is not active end-to-end.",
|
||||
"Default analysis registration uses NullBinaryReachabilityService unless additional reachability integration wiring is provided.",
|
||||
"Binary vulnerability method mapping does not explicitly include delta_signature in MapMethod, reducing fidelity versus feature claims."
|
||||
],
|
||||
"verdict": "fail"
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{"buildId":"abc123def456"}
|
||||
@@ -0,0 +1 @@
|
||||
{"results":[{"package":"pkg:deb/debian/openssl@3.0.7","status":2,"fixedVersion":null,"evidence":{"matchType":"unknown","confidence":0,"distroAdvisoryId":null,"patchHash":null,"matchedFingerprintIds":null,"functionDiffSummary":null,"sourcePackage":null,"fixMethod":null},"attestationDsse":null,"resolvedAt":"2026-02-11T19:43:18.1932377+00:00","fromCache":true,"cveId":null},{"package":"pkg:deb/debian/libcurl@7.88.1","status":2,"fixedVersion":null,"evidence":null,"attestationDsse":null,"resolvedAt":"2026-02-11T19:43:18.8557382+00:00","fromCache":false,"cveId":null}],"totalCount":2,"cacheHits":1,"processingTimeMs":15}
|
||||
@@ -0,0 +1 @@
|
||||
200
|
||||
@@ -0,0 +1 @@
|
||||
{"type":"https://tools.ietf.org/html/rfc9110#section-15.5.1","title":"One or more validation errors occurred.","status":400,"errors":{"$":["JSON deserialization for type 'StellaOps.BinaryIndex.Contracts.Resolution.VulnResolutionRequest' was missing required properties including: 'package'."],"request":["The request field is required."]},"traceId":"00-4f45d1f4f867a62421d24292599727d0-eab3020472b4d67f-00"}
|
||||
@@ -0,0 +1 @@
|
||||
400
|
||||
@@ -0,0 +1 @@
|
||||
{"package":"pkg:deb/debian/openssl@3.0.7","status":2,"fixedVersion":null,"evidence":null,"attestationDsse":null,"resolvedAt":"2026-02-11T19:43:18.1879333+00:00","fromCache":false,"cveId":null}
|
||||
@@ -0,0 +1 @@
|
||||
200
|
||||
@@ -0,0 +1 @@
|
||||
{"package":"pkg:deb/debian/openssl@3.0.7","buildId":"abc123def456","distroRelease":"debian:bookworm"}
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"rootCause": "Feature dossier overstates default runtime completeness: WebService composition uses in-memory vulnerability fallback and analysis defaults to null reachability service, so full identity-indexing/matching/reachability behavior is not active end-to-end.",
|
||||
"category": "missing_code",
|
||||
"affectedFiles": [
|
||||
"src/BinaryIndex/StellaOps.BinaryIndex.WebService/Program.cs",
|
||||
"src/BinaryIndex/StellaOps.BinaryIndex.WebService/Services/InMemoryBinaryVulnerabilityService.cs",
|
||||
"src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Analysis/ServiceCollectionExtensions.cs",
|
||||
"src/BinaryIndex/__Libraries/StellaOps.BinaryIndex.Persistence/Services/BinaryVulnerabilityService.cs"
|
||||
],
|
||||
"confidence": 0.97
|
||||
}
|
||||
Reference in New Issue
Block a user