Files
git.stella-ops.org/tests/reachability/fixtures/callgraph-schema-v1/all-edge-reasons.json
master 5a480a3c2a
Some checks failed
AOC Guard CI / aoc-guard (push) Has been cancelled
AOC Guard CI / aoc-verify (push) Has been cancelled
Docs CI / lint-and-preview (push) Has been cancelled
Export Center CI / export-ci (push) Has been cancelled
Findings Ledger CI / build-test (push) Has been cancelled
Findings Ledger CI / migration-validation (push) Has been cancelled
Findings Ledger CI / generate-manifest (push) Has been cancelled
Lighthouse CI / Lighthouse Audit (push) Has been cancelled
Lighthouse CI / Axe Accessibility Audit (push) Has been cancelled
Policy Lint & Smoke / policy-lint (push) Has been cancelled
Reachability Corpus Validation / validate-corpus (push) Has been cancelled
Reachability Corpus Validation / validate-ground-truths (push) Has been cancelled
Scanner Analyzers / Discover Analyzers (push) Has been cancelled
Scanner Analyzers / Validate Test Fixtures (push) Has been cancelled
Signals CI & Image / signals-ci (push) Has been cancelled
Signals Reachability Scoring & Events / reachability-smoke (push) Has been cancelled
Reachability Corpus Validation / determinism-check (push) Has been cancelled
Scanner Analyzers / Build Analyzers (push) Has been cancelled
Scanner Analyzers / Test Language Analyzers (push) Has been cancelled
Scanner Analyzers / Verify Deterministic Output (push) Has been cancelled
Signals Reachability Scoring & Events / sign-and-upload (push) Has been cancelled
Add call graph fixtures for various languages and scenarios
- Introduced `all-edge-reasons.json` to test edge resolution reasons in .NET.
- Added `all-visibility-levels.json` to validate method visibility levels in .NET.
- Created `dotnet-aspnetcore-minimal.json` for a minimal ASP.NET Core application.
- Included `go-gin-api.json` for a Go Gin API application structure.
- Added `java-spring-boot.json` for the Spring PetClinic application in Java.
- Introduced `legacy-no-schema.json` for legacy application structure without schema.
- Created `node-express-api.json` for an Express.js API application structure.
2025-12-16 10:44:24 +02:00

172 lines
4.7 KiB
JSON

{
"schema": "stella.callgraph.v1",
"scanKey": "scan:edge-reasons-test:1.0.0",
"language": "DotNet",
"artifacts": [
{
"artifactKey": "TestAssembly.dll",
"kind": "assembly",
"sha256": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
}
],
"nodes": [
{ "id": "async", "name": "AsyncTarget", "kind": "method", "visibility": "Public" },
{ "id": "caller", "name": "Caller", "kind": "method", "visibility": "Public" },
{ "id": "delegate", "name": "DelegateTarget", "kind": "method", "visibility": "Public" },
{ "id": "di", "name": "DiTarget", "kind": "method", "visibility": "Public" },
{ "id": "direct", "name": "DirectTarget", "kind": "method", "visibility": "Public" },
{ "id": "dynamic", "name": "DynamicTarget", "kind": "method", "visibility": "Public" },
{ "id": "event", "name": "EventTarget", "kind": "method", "visibility": "Public" },
{ "id": "generic", "name": "GenericTarget", "kind": "method", "visibility": "Public" },
{ "id": "native", "name": "NativeTarget", "kind": "method", "visibility": "Public" },
{ "id": "newobj", "name": "NewObjTarget", "kind": "method", "visibility": "Public" },
{ "id": "reflection", "name": "ReflectionTarget", "kind": "method", "visibility": "Public" },
{ "id": "runtime", "name": "RuntimeTarget", "kind": "method", "visibility": "Public" },
{ "id": "unknown", "name": "UnknownTarget", "kind": "method", "visibility": "Public" },
{ "id": "virtual", "name": "VirtualTarget", "kind": "method", "visibility": "Public" }
],
"edges": [
{
"sourceId": "caller",
"targetId": "direct",
"type": "call",
"kind": "Static",
"reason": "DirectCall",
"weight": 1.0,
"isResolved": true
},
{
"sourceId": "caller",
"targetId": "virtual",
"type": "callvirt",
"kind": "Static",
"reason": "VirtualCall",
"weight": 1.0,
"isResolved": true,
"candidates": ["impl1", "impl2"]
},
{
"sourceId": "caller",
"targetId": "reflection",
"type": "reflection",
"kind": "Heuristic",
"reason": "ReflectionString",
"weight": 0.5,
"isResolved": false,
"provenance": "Type.GetMethod"
},
{
"sourceId": "caller",
"targetId": "di",
"type": "di-binding",
"kind": "Heuristic",
"reason": "DiBinding",
"weight": 0.9,
"isResolved": true,
"provenance": "Microsoft.Extensions.DependencyInjection"
},
{
"sourceId": "caller",
"targetId": "dynamic",
"type": "dynamic-import",
"kind": "Heuristic",
"reason": "DynamicImport",
"weight": 0.7,
"isResolved": false
},
{
"sourceId": "caller",
"targetId": "newobj",
"type": "newobj",
"kind": "Static",
"reason": "NewObj",
"weight": 1.0,
"isResolved": true
},
{
"sourceId": "caller",
"targetId": "delegate",
"type": "ldftn",
"kind": "Static",
"reason": "DelegateCreate",
"weight": 1.0,
"isResolved": true
},
{
"sourceId": "caller",
"targetId": "async",
"type": "async",
"kind": "Static",
"reason": "AsyncContinuation",
"weight": 1.0,
"isResolved": true
},
{
"sourceId": "caller",
"targetId": "event",
"type": "event",
"kind": "Heuristic",
"reason": "EventHandler",
"weight": 0.85,
"isResolved": true
},
{
"sourceId": "caller",
"targetId": "generic",
"type": "generic",
"kind": "Static",
"reason": "GenericInstantiation",
"weight": 1.0,
"isResolved": true
},
{
"sourceId": "caller",
"targetId": "native",
"type": "pinvoke",
"kind": "Static",
"reason": "NativeInterop",
"weight": 1.0,
"isResolved": false,
"provenance": "kernel32.dll"
},
{
"sourceId": "caller",
"targetId": "runtime",
"type": "runtime",
"kind": "Runtime",
"reason": "RuntimeMinted",
"weight": 1.0,
"isResolved": true
},
{
"sourceId": "caller",
"targetId": "unknown",
"type": "unknown",
"kind": "Heuristic",
"reason": "Unknown",
"weight": 0.3,
"isResolved": false
}
],
"entrypoints": [
{
"nodeId": "caller",
"kind": "Test",
"framework": "Unknown",
"source": "test-runner",
"phase": "Runtime",
"order": 0
}
],
"metadata": {
"toolId": "stellaops.scanner.test",
"toolVersion": "1.0.0",
"analysisTimestamp": "2025-01-15T14:00:00Z"
},
"id": "cg-edge-reasons-001",
"component": "EdgeReasonsTest",
"version": "1.0.0",
"ingestedAt": "2025-01-15T14:00:00Z",
"graphHash": "sha256:edge-reasons"
}