# Relational Call-Graph PostgreSQL Schema ## Module Signals ## Status IMPLEMENTED ## Description PostgreSQL migration scripts define relational tables for call-graph data storage. ## Implementation Details - **Modules**: `src/Signals/__Libraries/StellaOps.Signals.Persistence/` - **Key Classes**: - `SignalsDbContext` (`src/Signals/__Libraries/StellaOps.Signals.Persistence/EfCore/Context/SignalsDbContext.cs`) - EF Core database context for Signals persistence - **Migrations**: - `001_initial_schema.sql` (`src/Signals/__Libraries/StellaOps.Signals.Persistence/Migrations/001_initial_schema.sql`) - initial schema with call-graph tables - `002_runtime_agent_schema.sql` (`src/Signals/__Libraries/StellaOps.Signals.Persistence/Migrations/002_runtime_agent_schema.sql`) - runtime agent tables - `V3102_001__callgraph_relational_tables.sql` (archived) - call-graph relational table definitions (func_nodes, call_edges, cve_func_hits) - **Models**: `FuncNodeDocument`, `CallEdgeDocument`, `CveFuncHitDocument` (`src/Signals/StellaOps.Signals/Models/ReachabilityStore/`) - **Source**: Feature matrix scan ## E2E Test Plan - [ ] Run migration scripts and verify all call-graph tables are created (func_nodes, call_edges, cve_func_hits) - [ ] Insert call-graph data via `SignalsDbContext` and verify round-trip persistence - [ ] Verify relational integrity: insert edges referencing func_nodes and confirm foreign key constraints - [ ] Query call paths using relational joins and verify correct path reconstruction - [ ] Verify index performance: query by CVE ID and confirm results return within acceptable latency