Skip to content

fix: evaluator.py contains hard-coded absolute paths, making it non-portable for contributors #128

@bhavyakeerthi3

Description

@bhavyakeerthi3

Problem

The src/evaluation/evaluator.py script contains two hard-coded absolute paths specific to the original author's development machine:

  • Line 70: Hard-coded path to summations.csv used by the BM25 retriever
  • Line 180: Hard-coded path to the Chroma embeddings directory

This causes a FileNotFoundError for every contributor except the original author, making the evaluation pipeline completely broken for community use.

Proposed Fix

Replace hard-coded paths with:

  • New CLI args: --embeddings-dir and --summations-csv
  • Environment variable fallbacks: REACTOME_EMBEDDINGS_DIR and REACTOME_SUMMATIONS_CSV
  • A reusable resolve_path() utility with a clear error message

This makes the evaluator portable across Windows, Linux, and macOS without any code changes.

I am working on a fix and will submit a PR shortly.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions