Skip to content

v0.5.0 — Topology-Aware Search & Architecture Decomposition

Choose a tag to compare

@nillo nillo released this 07 Apr 14:50

What's new

Topology analysis pipeline. After each index, reporecall runs Louvain community detection on the call graph, identifies architectural hub nodes, scores surprising cross-boundary connections, and generates investigation questions. Results are persisted in SQLite and injected into prompt context automatically.

4 new MCP tools for exploring codebase structure:

Tool What it returns
get_communities Module clusters with cohesion scores and auto-generated labels
get_hub_nodes Most-connected nodes (architectural hubs) in the call graph
get_surprises Unexpected cross-boundary connections ranked by surprise score
suggest_investigations Auto-generated investigation questions about weak spots

Community-aware search scoring. Results from the same Louvain community as the query seed receive a locality boost (1.10x), improving architecture and trace queries.

Search architecture decomposition. The monolithic hybrid.ts (~6,800 lines) was split into 7 focused modules: pipeline-core, bug-strategy, architecture-strategy, trace-strategy, lookup-strategy, context-prioritization, and a thin orchestrator. Public API unchanged.

Daemon hardening:

  • Index scheduler queues bounded at 50k entries (OOM protection)
  • FileWatcher pending-change buffer bounded at 10k events with backpressure logging
  • Shutdown timeout configurable via shutdownTimeoutMs (1000–60000ms, default 10s)

Hook request validation. All hook endpoints validate request bodies with Zod schemas, returning 400 on malformed payloads.

Other improvements:

  • Tree-sitter parse timeout (5s) prevents hangs on malformed files
  • reporecall mcp warns when daemon is already running (SQLite lock contention risk)
  • Ollama health check added to mcp command
  • Bug intent classifier recognizes plural forms ("bugs", "issues", "problems")
  • New dependencies: graphology, graphology-communities-louvain

Install / Upgrade

npm install -g @proofofwork-agency/reporecall@0.5.0
reporecall index   # re-index to generate topology data
reporecall serve

Full changelog: v0.4.1...v0.5.0