VitAI & GlitchWitcher: Repository analysis and defect prediction
Two tools developed during Google Summer of Code: VitAI supports repository exploration and test triage, while GlitchWitcher applies reconstruction-error modelling to file-level defect prediction.
01 / Problem & ownership
Context retrieval for repository investigation and ML-based defect assessment.
My GSoC work addressed two related engineering tasks: helping developers find the context needed to investigate a repository, and applying machine learning to assess potentially defect-prone files.
I contributed the repository-analysis and retrieval components of VitAI, alongside REPD implementation and analysis workflows for GlitchWitcher. These were separate workstreams within the Eclipse Adoptium ecosystem, not successive stages of one prediction pipeline.
02 / How it works
MCP repository intelligence and automated PR defect analysis.
VitAI: An MCP interface exposes repository-analysis capabilities to compatible clients. A ReAct agent can explore repository structure, search GitHub, retrieve file contents, and query indexed code before answering a question. Live GitHub exploration and vector retrieval serve different purposes: live tools inspect repository content and discussions; the retrieval layer searches pre-indexed chunks for relevant context.
GlitchWitcher: The workflow extracts software metrics from changed C/C++ files and uses a trained REPD model to compare base and head predictions. Analysis can be triggered through a pull-request or issue comment, with results returned to the discussion.
03 / Engineering decisions
Structural chunking and research implementation with workflow integration.
Syntax-aware retrieval: VitAI’s indexing layer uses Tree-sitter-based chunking with fallback strategies, FAISS storage, and incremental change detection. This supports retrieval around code structure rather than treating a repository as an undifferentiated text document.
Research implementation with workflow integration: GlitchWitcher implements REPD from published research. Reconstruction errors are compared against fitted distributions for historically defective and non-defective examples.
File-level comparisons: The reported output helps inspect changes between a pull request’s base and head. It is not a claim that individual faulty lines have been located or that a file has a calibrated percentage probability of containing a bug.
04 / Evidence & limitations
Upstream contributions and model assessment boundaries.
The work produced upstream contributions, including VitAI’s initial retrieval components and GlitchWitcher’s GitHub Actions workflow.
Prediction outputs are model assessments, not proof that a file is defective or defect-free. GlitchWitcher reports probability-density values, not calibrated bug probabilities. I do not present the implementation as an independently measured reduction in production defects.