Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

[Feature]: `graphify benchmark` measures answer size but never whether the answer is right

Open
#4,341 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

@rohit-jsfreaky is already working on this.

Since Oct 11, 2026.

  • #4342 by @rohit-jsfreaky — open

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
48/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Active
Tech stack
python
Domain
cli

Research direction

Read the existing graphify benchmark command and the query_graph path it uses; the issue does not name source files or tests. Start by tracing how the benchmark invokes queries and formats its report, then compare that path with the proposed --questions, --json, --depth, and --budget options. Done means JSON and JSONL question files produce the requested file-rank metrics and answer sizes while the benchmark without --questions stays unchanged.

Written by the indexing model from the issue text.

Description

enhancement
Problem or use case

graphify benchmark reports how many tokens a query costs versus reading the corpus. Nothing measures whether the answer contains what the question needed, so a change to query scoring, seeding or rendering can make answers smaller and worse and the benchmark calls it a win. Twenty-odd open PRs change how query ranks or renders (#2403, #3284, #3417, #3636, ...), and there is no shared number to compare them by.

I built such a number from a public set with known answers: the 177 SWE-bench Lite issues of django, pytest, sphinx, requests, flask, pylint, seaborn, xarray and astropy, each repo built at the commit its issues were filed against, the issue title as the question and the files the real fix changed as the right answer. query_graph with the MCP defaults (BFS, depth 3, ~2000 tokens), graphify 0.9.85:

right file is the first file shown in the first 3 in the first 5 anywhere in the answer
query_graph 25% 34% 38% 62%
BM25 over the repo's .py files (reference) 32% 56% 64% 92% in the top 50

The same set run against some open query PRs (each applied on its own base, same graphs):

first 5 answers carrying "Complete answer over budget" (full issue text as the question)
0.9.85 38% 55 of 177
#2403 (no test-path seeds) 51% 38
#3417 (ranking rewrite) 51% 146
#3284 39% 61
#3636 38% 55
Proposed solution

graphify benchmark --questions FILE: a JSON list or JSON Lines of {"question": ..., "files": [...]}. Each question goes through query_graph as the MCP tool runs it; the report gives how often an expected file is the first file shown, in the first 3 and 5 files, anywhere, and the answer size. --json for raw per-question results, --depth / --budget to match other settings. A project's own history supplies questions: issue titles and the files their fixes changed.

Alternatives considered

A separate harness outside the repo (what produced the tables above): nobody running or reviewing a query change has it, and it drifts from the real query_graph path.

Area

Graph building or querying

Are you willing to submit a PR?

Yes, I can work on this

Compatibility / behavior impact

CLI and docs only. graphify benchmark without --questions is unchanged; no graph, cache, extraction or MCP output change.

Additional context

Questions built from SWE-bench Lite (problem statement title, files of the gold patch), each repo checked out at the most common base commit of its instances. PR right after this issue.

Dominant language
Python
Stars
124k
Forks
11.9k
PR merge metrics
No merged PRs in 30d

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from Graphify-Labs/graphify

All issues in Graphify-Labs/graphify

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.