Scope PageRank fallback to repo and collection#186
Conversation
Updated Cypher queries in Neo4jGraphBackend and Neo4jKnowledgeGraph to ensure PageRank fallback logic only considers CALLS and IMPORTS relationships within the same collection and/or repo. This prevents cross-repo or cross-collection influence when calculating in-degree approximations.
🤖 Augment PR SummarySummary: Scopes the PageRank fallback (in-degree approximation) to avoid cross-repo/cross-collection influence. 🤖 Was this summary useful? React with 👍 or 👎 |
| WHERE n.repo = $repo | ||
| OPTIONAL MATCH (n)<-[r:CALLS|IMPORTS]-() | ||
| OPTIONAL MATCH (n)<-[r:CALLS|IMPORTS {collection: $collection}]-(caller) | ||
| WHERE caller.repo = $repo |
There was a problem hiding this comment.
Because this WHERE caller.repo = $repo is applied after an OPTIONAL MATCH, rows where no caller exists will be filtered out (since caller is null), so symbols with zero incoming edges may not get the intended base pagerank. Consider making the repo predicate null-safe or pushing it into the OPTIONAL MATCH pattern so unmatched rows are preserved.
🤖 Was this useful? React with 👍 or 👎
| WHERE n.repo = $repo | ||
| OPTIONAL MATCH (n)<-[r:CALLS|IMPORTS]-() | ||
| OPTIONAL MATCH (n)<-[r:CALLS|IMPORTS]-(caller) | ||
| WHERE caller.repo = $repo |
There was a problem hiding this comment.
Same OPTIONAL MATCH + WHERE caller.repo = $repo interaction here: nodes with no incoming CALLS/IMPORTS will be dropped, which contradicts the comment about giving all nodes a base rank. This could cause some symbols in the repo to never have pagerank set in the fallback path.
🤖 Was this useful? React with 👍 or 👎
Added OpenCode to the supported clients list in README.md and provided detailed configuration instructions and examples for OpenCode in docs/IDE_CLIENTS.md, including MCP bridge and direct HTTP endpoint setups.
Introduces pre-configured agent profiles for Sisyphus, each tailored for specific development, documentation, planning, and testing tasks. Agents are enhanced with Context-Engine MCP tools for semantic code search, symbol graph navigation, and memory storage, with detailed guidelines and tool matrices for each role.
Updated Cypher queries in Neo4jGraphBackend and Neo4jKnowledgeGraph to ensure PageRank fallback logic only considers CALLS and IMPORTS relationships within the same collection and/or repo. This prevents cross-repo or cross-collection influence when calculating in-degree approximations.