v0.5.0 — Topology-Aware Search & Architecture Decomposition
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 mcpwarns when daemon is already running (SQLite lock contention risk)- Ollama health check added to
mcpcommand - 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 serveFull changelog: v0.4.1...v0.5.0