Repository navigation
0.2.3
Release Date: 2026-01-04
Major refactoring with centralized provider config, async search pipeline, benchmark framework, and improved API compatibility
New Features
MULocBench Evaluation Framework
- Modular benchmark system (
datasets/,evaluation/,run/submodules) - Function-level ground truth with MULocBench dataset
- Metrics: file recall/precision/F1, line coverage/precision/F1, matched-only precision, line IoU, function hit rate
- CLI runner with dry-run, filters (added-files, function-scopes), limit/shuffle/seed, progress bar
- Auto clone/checkout repos with timing and dataset fingerprint tracking
- Result analysis tool for detailed tables and distribution stats
- Install:
pip install relace-mcp[benchmark]
Async Search Pipeline
- Native async execution (
chat_async,run_async) with thread-based tool execution - Improved logging with query preview and exception traceback
Provider Configuration
- Centralized
ProviderConfigsystem with validated settings - Temperature control via
APPLY_TEMPERATUREandSEARCH_TEMPERATURE
MCP Tool Annotations
- Safety annotations: fast_apply (destructive, non-idempotent), fast_search (read-only, idempotent)
Other
- Lenient
read_text_best_effortfunction for robust encoding handling - Block process substitution in shell commands for security
Breaking Changes
Environment Variables Migration:
RELACE_BASE_DIR→MCP_BASE_DIRRELACE_LOGGING→MCP_LOGGINGRELACE_TIMEOUT_SECONDS→APPLY_TIMEOUT_SECONDSRELACE_LSP_TIMEOUT_SECONDS→SEARCH_LSP_TIMEOUT_SECONDSRELACE_EXPERIMENTAL_POST_CHECK→APPLY_POST_CHECK- Prefer
APPLY_*andSEARCH_*overRELACE_APPLY_*andRELACE_SEARCH_*(deprecated variants still work with warnings)
OpenAI-Compatible Endpoints: Set SEARCH_ENDPOINT to provider base URL (not /chat/completions)
Dashboard Script: Renamed from relace-dashboard to relogs
Improvements
- API Compatibility: Sanitize assistant messages for Mistral and other OpenAI-compatible APIs (fixes 422 errors)
- Search Prompts: Tightened prompts with 8-call/turn limit, mandatory
report_back, precise line range requirements - Error Handling: Streamlined error handling in SearchLLMClient with better logging
- CI/CD: Added mypy and bandit security checks to GitHub Actions
Dependencies
- Added:
psutil,bandit[toml](dev),click(benchmark extra)
Documentation
- Benchmark guides:
docs/benchmark.mdanddocs/benchmark.zh-CN.md - Updated
.env.examplewith new configuration options - Added MCP badge to READMEs
- Enhanced advanced configuration docs
- Fixed incorrect
RELACE_TEMPERATUREreferences (actual:APPLY_TEMPERATURE,SEARCH_TEMPERATURE)
Stats
85 files changed, 3282 insertions(+), 974 deletions(-)
Full Changelog: v0.2.2...v0.2.3