2.3 KiB
2.3 KiB
Evidence Subgraph UI Visualization
Module
Attestor
Status
PARTIALLY_IMPLEMENTED
Description
Backend proof graph model is implemented (nodes, edges, subgraphs, paths). Evidence panel e2e tests exist. Full frontend visualization component status unclear from source search alone.
What's Implemented
- Proof Graph Model:
src/Attestor/__Libraries/StellaOps.Attestor.ProofChain/Graph/InMemoryProofGraphService.cs(with.Mutation,.Queries,.Subgraph) -- graph service with node/edge management, subgraph extraction, and path queries. - Graph Node:
Graph/ProofGraphNode.cs-- node model with type and metadata. - Graph Edge:
Graph/ProofGraphEdge.cs-- edge model with type linking nodes. - Graph Node/Edge Types:
Graph/ProofGraphNodeType.cs,Graph/ProofGraphEdgeType.cs-- typed node and edge enumerations. - Graph Path:
Graph/ProofGraphPath.cs-- path through the proof graph. - Graph Subgraph:
Graph/ProofGraphSubgraph.cs-- extracted subgraph for a specific subject.
What's Missing
- Frontend graph visualization component: No Angular component rendering the proof graph as an interactive visualization (nodes as circles/rectangles, edges as arrows).
- Interactive exploration: No click-to-expand, zoom, pan, or filter functionality for graph navigation in the UI.
- Subgraph API endpoint: The WebService controllers do not expose a dedicated endpoint for fetching proof graph subgraphs for a given subject.
- Graph layout algorithm: No force-directed or hierarchical layout algorithm for rendering the graph in 2D.
- Evidence node detail panel: No side panel showing node details (attestation content, verification status) when a node is selected.
Implementation Plan
- Add a REST endpoint in
ProofChainControllerfor subgraph queries by subject - Create an Angular component using a graph visualization library (e.g., D3.js or Cytoscape.js)
- Implement interactive exploration (zoom, pan, click-to-expand, filtering by node/edge type)
- Add a node detail panel showing attestation content and verification status
- Implement graph layout algorithm (hierarchical for proof chains, force-directed for evidence graphs)
- Add e2e tests for graph rendering and interaction
Related Documentation
- Source: See feature catalog