Create knowledge graph service/interface
Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.
Create a knowledge graph service/interface on Rails side which:
- by "interface" is not meant API but rather a thin library/service which can be used by other callers in Rails
- accepts a user, a project and a cypher query for graph DB
- handles authorization (verifies that the user can use the graph DB for the project)
- finds "primary" node (first replica) for the project's graph DB
- sends query to the graph node and processes response
- does rate-limiting per-user (related to https://gitlab.com/gitlab-com/gl-security/product-security/infrastructure-security/bau/-/issues/15505#note_2635336576) - implement separate rate limiting for AI agents vs human users. Consider per-project quotas and sliding window rate limits. Add metrics to monitor AI agent usage patterns
Edited by 🤖 GitLab Bot 🤖