Skip to content

Commit 6c98258

Browse files
committed
Revert CoVe contexts to full payloads: preserve all vector store metadata
**FIX:** Line 292: Use full payloads from final_results, not filtered contexts - Was: contexts=contexts (only id, text, doc_title, url, retrieval_score) - Now: cove_contexts = [payload for _, payload, _ in final_results] - Preserves ALL vector store metadata (position, total_chunks, metadata dict, etc.) **Why this matters:** - Vector store payloads contain additional fields beyond our filtered contexts - CoVe citation_injector and verifier may need these metadata fields - Filtering to only 5 fields could break CoVe's functionality - Original code was correct - passed full payloads **Example lost fields:** - position (chunk position in doc) - total_chunks (total chunks in doc) - metadata dict (custom fields like doc_type, etc.) - Any reranker-added fields (local_rerank_score, etc.) Reverts to original implementation that preserves all payload data.
1 parent 4fa4b51 commit 6c98258

1 file changed

Lines changed: 5 additions & 2 deletions

File tree

src/ragx/api/routers/eval.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -288,11 +288,14 @@ async def pipeline_ablation(
288288
if request.cove_enabled:
289289
start_cove = time.time()
290290

291-
# Run CoVe verification (reuse contexts built earlier)
291+
# Prepare contexts for CoVe (full payloads with all metadata)
292+
cove_contexts = [payload for _, payload, _ in final_results]
293+
294+
# Run CoVe verification
292295
cove_result = cove_enhancer.verify(
293296
query=query,
294297
answer=answer,
295-
contexts=contexts, # Already built as List[Dict] from final_results
298+
contexts=cove_contexts,
296299
)
297300

298301
# Update answer if corrections were made

0 commit comments

Comments
 (0)