← All projects

adrRadar

In development

A Rust tool that detects emerging architectural decisions in git history and reports them with evidence — CLI for humans, MCP server for agents.

RustDeveloper ToolingStatic AnalysisMCPGit

At a glance

  • Outcome — Architectural decisions that never got written down become visible: adrRadar diffs structural snapshots of a repo across commits and surfaces hypotheses like “possible new module boundary,” each citing the concrete evidence behind it.
  • Status — In development; the v1.0 deterministic core works end-to-end on Rust repositories.
  • Role — Solo. I own the invariants, signature catalog design, acceptance criteria, and review; implementation is AI-assisted and reviewed.
  • Stack — Rust workspace (8 crates), tree-sitter for import analysis, git notes for review state, JSON-RPC 2.0 MCP server.
  • Source — Public, MIT-licensed: github.com/Griffinhale/adrRadar, with CI running fmt, clippy, and the full suite.
  • What works todayscan, diff, and suggest over real repositories; the evidence-backed structural model; the signature catalog with confidence tiers; accept/reject review persisted in git notes; and an MCP server that serves only reviewed findings to agents.
  • Validation — Nine test suites over synthetic fixture corpora, plus design invariants enforced in tests — the first is “every claim cites evidence.”
  • Limitations — Deep import analysis covers Rust only so far; corpus-hardening runs against large public repos and per-signature confidence rationale are still open before a tagged v1.0.

Overview

Most architectural decisions accrete instead of getting documented. adrRadar treats that as a detection problem: a cartographer builds a structural model of the repo at a SHA (files, manifests, module boundaries, dependency edges, coupling metrics), an evolution layer diffs two models into a deterministic event stream, and a hypothesizer matches event clusters against a curated signature catalog to propose decisions a maintainer might want to write down as ADRs.

The design optimizes for precision over recall. Confidence comes from corroboration breadth, every hypothesis cites its evidence, and below the per-signature confidence floor the tool emits nothing — silence is a feature, not a failure mode.

The agent angle

Findings flow to two transports over the same core: a CLI that renders hypotheses for a human to accept or reject (state lives in git notes, so review travels with the repo), and an MCP server that exposes findings to coding agents — gated so agents only ever see human-reviewed hypotheses. An optional LLM renderer can narrate results through a local model, off by default and enforced cite-or-drop.

Status

The deterministic v1.0 floor is implemented and tested; what remains before a tagged release is hardening: corpus runs against large public Rust repos, documented per-signature confidence rationale, and catalog version stamping. Go, TypeScript, and Python analysis are planned after that.