π Description
A graphical, interactive map of how content items connectβthrough references, dependencies, shared metadata profiles, and semantic similarity.
π Business Value
Accelerates impact analysis, reduces missed update ripple effects, and improves structural governance by making hidden relationships visible and explorable in real time.
β Merged to main
π Development time: 11d-04h-21mβ± Time to deployment: 0d-00h-00m
π Development Summary
Summary: The Relationships Visualizer backend was implemented and merged to main, delivering core services and APIs for dependency mapping, semantic discovery, and relationship graph visualization. The work added real-time update capabilities, version-aware graph handling, compatibility and semantic relationship management, and supporting architecture/documentation, while also refining the API by removing deprecated and unnecessary view state persistence functionality.
Key Changes:
- Implemented backend support for the Relationships Visualizer, including relationship graph models, compatibility violation handling, and semantic relationship services.
- Added version-aware enhancements to the Relationship Graph Service, along with real-time notifications using SignalR and a polling fallback endpoint for relationship changes.
- Introduced endpoints for graph view state management and language variant grouping, then later removed deprecated view state persistence and version filter methods to simplify the final API surface.
- Added compatibility rules management endpoints and completed remaining functional requirements for the visualizer feature.
- Delivered supporting technical artifacts, including feature specifications, research/task documentation, and ADR 031 for the extended Cosmos DB container architecture, plus Cosmos DB configuration cleanup.
Impact: These changes establish the backend foundation for an interactive relationships visualization capability, enabling users to explore dependencies and semantic links with timely updates and version-aware graph data. The cleanup of deprecated endpoints and supporting architectural work improves maintainability, scalability, and readiness for production use.
π§ API Changes (8 files)
-
A
src/Aleido.Platform.API/Endpoints/ObjectRelationshipEndpoints.cs
-
M
src/Aleido.Platform.API/Extensions/ServiceRegistrationExtensions.cs
-
M
src/Aleido.Platform.API/Extensions/WebApplicationExtensions.cs
-
M
src/Aleido.Platform.API/Hubs/PlatformHub.cs
-
M
src/Aleido.Platform.API/Services/ObjectService.Operations.cs
-
M
src/Aleido.Platform.API/Services/ObjectService.cs
-
A
src/Aleido.Platform.API/Services/RelationshipNotificationService.cs
-
A
src/Aleido.Platform.API/Services/RelationshipService.cs
π Commit Log
eb34e2df7 feat: Remove view state persistence endpoints from ObjectRelationshipEndpoints
b9c296a7a Merge origin/024-relationships-visualizer after rebase - resolve conflicts
23898de28 feat: Remove deprecated view state management and version filter methods from relationship endpoints and repository
d5629f521 feat: Implement remaining functional requirements for relationships visualizer
bfc7960dd feat: Enhance Relationship Graph Service with Versioning and Real-Time Notifications
4d7460f72 feat: Add graph view state management and language variant grouping endpoints
79e09354c feat: Enhance Relationship Graph Service with Versioning and Real-Time Notifications
27b15aa30 feat: Add graph view state management and language variant grouping endpoints
375928ced Add research and task documentation for Relationships Visualizer feature
4d866567c feat(spec): add relationships visualizer for dependency mapping and semantic discovery
d4b8dba08 fix: remove duplicate methods after rebase resolution
de0f23092 fix(cosmos): remove unnecessary included paths from container specifications
d18355e3b feat(adr): add ADR 031 for extended Cosmos DB container architecture
32b1b48da feat: Update tools list in Gilfoyle chat mode for improved functionality
56866645f feat: Implement polling fallback for relationship changes via new endpoint
41ba87bd9 feat: Update build number handling to use environment variable for commit messages
19ab29661 feat: Add graph view state management and language variant grouping endpoints
e3a50074f feat(spec): add relationships visualizer for dependency mapping and semantic discovery
680d3e2e1 feat: Implement SignalR real-time updates and event models for relationships visualizer
766a14498 feat: Implement SignalR integration for real-time relationship notifications
56ed90195 feat: Enhance Relationship Graph Service with Versioning and Real-Time Notifications
7924a1639 feat: Add graph view state management and language variant grouping endpoints
f4a8aa709 feat: Add compatibility rules management endpoints and semantic relationship service
752cfea3a feat: Add relationship graph models and compatibility violation handling
a1465a460 Add research and task documentation for Relationships Visualizer feature
7dfe739d3 feat(spec): add relationships visualizer for dependency mapping and semantic discovery
2421ce583 feat: Implement remaining functional requirements for relationships visualizer
44d85e798 merge: resolve conflicts with origin/024-relationships-visualizer
268f15ff0 fix: remove duplicate methods after rebase resolution
a6eab2fc3 fix(cosmos): remove unnecessary included paths from container specifications
04b0fdc58 feat(adr): add ADR 031 for extended Cosmos DB container architecture
f7f70cad1 feat: Update tools list in Gilfoyle chat mode for improved functionality
f8e1cdec8 feat: Implement polling fallback for relationship changes via new endpoint
26132ab0d feat: Update build number handling to use environment variable for commit messages
478cc97ad feat: Add graph view state management and language variant grouping endpoints
702babdc0 feat(spec): add relationships visualizer for dependency mapping and semantic discovery
9c80bd2ea feat: Implement SignalR real-time updates and event models for relationships visualizer
91131f243 feat: Implement SignalR integration for real-time relationship notifications
a60fe1ec1 feat: Enhance Relationship Graph Service with Versioning and Real-Time Notifications
447c8a5a4 feat: Add graph view state management and language variant grouping endpoints
2633221ef feat: Add compatibility rules management endpoints and semantic relationship service
a6a11ca0c feat: Add relationship graph models and compatibility violation handling
592bfbce8 Add research and task documentation for Relationships Visualizer feature
8e3853c72 feat(spec): add relationships visualizer for dependency mapping and semantic discovery
0e9950e7d fix(cosmos): remove unnecessary included paths from container specifications
cde0b5c9e feat(adr): add ADR 031 for extended Cosmos DB container architecture
cc0c8bbe9 Merge branch '024-relationships-visualizer' of https://dev.azure.com/aleidotech/AleidoTechCore/_git/AleidoTechCore into 024-relationships-visualizer
eeaa8fe2b feat: Implement polling fallback for relationship changes via new endpoint
33add3938 feat: Update tools list in Gilfoyle chat mode for improved functionality
9eceb5ee1 feat: Update build number handling to use environment variable for commit messages
640b8db8f Merge branch '024-relationships-visualizer' of https://dev.azure.com/aleidotech/AleidoTechCore/_git/AleidoTechCore into 024-relationships-visualizer
27ce5dd76 feat: Implement SignalR real-time updates and event models for relationships visualizer
7fb1dfe99 feat: Implement SignalR integration for real-time relationship notifications
8b632ee88 feat: Enhance Relationship Graph Service with Versioning and Real-Time Notifications
4f24be788 feat: Add graph view state management and language variant grouping endpoints
5e6ca0cd8 feat: Add compatibility rules management endpoints and semantic relationship service
a8386c5fb feat: Add relationship graph models and compatibility violation handling
f48301d60 Add research and task documentation for Relationships Visualizer feature
ae546b463 feat(spec): add relationships visualizer for dependency mapping and semantic discovery
bb40d79fe feat: Implement SignalR real-time updates and event models for relationships visualizer
453c9cde3 feat: Implement SignalR integration for real-time relationship notifications
6a116e197 feat: Enhance Relationship Graph Service with Versioning and Real-Time Notifications
c37073026 feat: Add graph view state management and language variant grouping endpoints
6245fc234 feat: Add compatibility rules management endpoints and semantic relationship service
c68fcfb62 feat: Add relationship graph models and compatibility violation handling
78cdf7a75 Merge branch '024-relationships-visualizer' of https://dev.azure.com/aleidotech/AleidoTechCore/_git/AleidoTechCore into 024-relationships-visualizer
ecbf78dbe Add research and task documentation for Relationships Visualizer feature
782944596 feat(spec): add relationships visualizer for dependency mapping and semantic discovery
1b912a09f Add research and task documentation for Relationships Visualizer feature
73d05c50a Merge branch '024-relationships-visualizer' of https://dev.azure.com/aleidotech/AleidoTechCore/_git/AleidoTechCore into 024-relationships-visualizer
507a9dc44 feat(spec): add relationships visualizer for dependency mapping and semantic discovery
dead5825c feat(spec): add relationships visualizer for dependency mapping and semantic discovery
Cross-cutting Infrastructure, Validation, and Telemetry
Audit logging, BI events, error handling, graph export, view state persistence, performance validation, and documentation tasks spread across features.
Advanced Graph Features and Filtering
Implements additional graph capabilities such as node expansion, workspace-wide views, type/direction/depth filtering, clustering by various attributes, and weighted path finding.
Semantic Relationship Discovery
Implements semantic similarity relationship detection using Azure AI Search vectors, with caching, threshold configuration, and integration into the graph view.
Real-time and Polling Updates
Implements both SignalR-based real-time graph updates and polling fallback endpoints, with event models, hub subscription methods, event emission on changes, and associated tests.
Compatibility Rules and Violation Handling
Implements compatibility rule repositories, services, evaluators, endpoints, and violation detection, including integration into graph edges, CRUD operations, pattern matching, remediation suggestions, and associated tests.
Shared Metadata Cluster Discovery
Implements the ability to identify and visualize clusters of objects sharing metadata, supporting strategic content governance for User Story 2.
Direct Dependency Graph Visualization
Implements core backend logic, data models, and API endpoints for viewing inbound/outbound relationships of a content object, including layout computation, repository and service layers, and automated tests to support User Story 1 (impact analysis).
π Backend Requirements (3)
Related requirement tasks from other projects
β 1.24 - System supports topic to topic linking and propogates the links to downstream systems to utilize
To Do
Description Platform Status: PPT Status: MVP: Yes Must Have: Priority 1 (A) Use Case Many topics link to each other or relate. Is this capability possible (link from topic A to B and E and then back to A) Current Challenges Loss of relationship table functionality with PTC WC.
View in Azure DevOps β
β 1.70 - System has a mechanism(s) for users to search for reusable content.
To Do
Description Supports component search; regex/xPath; semantic match during editing; future relationship visualiser. Platform Status: partially implemented PPT Status: Partly MVP: Yes Must Have: Priority 1 (A) Use Case Does the system support viewing a list of reusable content in the content repository? Current Challenges We can search products for for "name" of the object (essentially the title only) but we cannot search by applied metadata or terms within the topics. For example, we want to search to see if anything has been written about the cab for Fendt 700 because it will be reused in a JAX built product. Or we want to search for anything related to tier4f engines to update a safety step. Notes Superusers xPath or Regex? Not focus on too much. Currently implemented While editing, return a semantically similar component. Should be based on what the user is adding to the topic Admonition, or other sub-topic-component Future implementation Relationship visualiser Query for reusable components based on context What is being written (admonition) Which product Which meta-data filters are applied to the current topic Very XML editor dependant. Product Owner Notes Need UX and front end Notes: Context match; reusable component query; filters; XML editor dependent.
View in Azure DevOps β
β 1.90 - System supports efficient (easy) reuse across platforms, products etc.(including sections, maps,topics, graphics, etc.)
To Do
Description Platform Status: in roadmap PPT Status: Partly MVP: Yes Must Have: Priority 1 (A) Use Case Do not have to create copies to reuse, for example Current Challenges Currently if marketing changes the term "Accuterminal" to "varioterminal", tech info has to create a "save as" copy and find everywhere version A was originally used and replace it with verison B. Not an affective way to manage content. We could update the title to varioterminal, but the topic name and content holder would still be "accuterminal". Likewise, if we went ahead and changed the topic "name" and content holder, it would change all previous versions - essentially no version control. Requires new content each time which makes managing reuse difficult. Product Owner Notes Need UX and front end
View in Azure DevOps β