[geaflow/ai-memory] Define `RetrievalMode` contract
- Dominant language
- Java
- Stars
- 808
- Forks
- 188
- Avg merge
- 3d 22h
- Merged PRs (30d)
- 2
Description
Priority: P0
Difficulty: Starter
Context: `GraphMemoryServer` currently iterates over configured index stores. There is no explicit Basic, Vector, Graph, or Hybrid mode contract.
Scope:
- Add enum or contract for `BASIC`, `VECTOR`, `GRAPH`, `HYBRID`.
- Define required inputs, allowed indexes, and expected outputs for each mode.
- Add tests that each mode can be selected explicitly.
Constraints:
- Do not implement router ranking in this issue.
- Do not change answer synthesis.
Acceptance Criteria:
- Calling unsupported mode fails with typed error.
- Mode selection is visible in retrieval trace.
Suggested paths:
- `geaflow-ai/src/main/java/org/apache/geaflow/ai/retrieval`
Contributor guide
Research direction
Start in geaflow-ai/src/main/java/org/apache/geaflow/ai/retrieval and trace how GraphMemoryServer currently iterates over configured index stores. Define the RetrievalMode contract for BASIC, VECTOR, GRAPH, and HYBRID, then add tests showing each mode can be selected explicitly. Done means unsupported modes produce a typed error and the selected mode appears in the retrieval trace, without changing ranking or answer synthesis.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- ai, backend-api-design
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100