{"slug": "show-hn-deltacode-pure-ast-beat-qwen-s-zvec-grep-on-our-test-92-vs-48", "title": "Show HN: DeltaCode – Pure AST beat Qwen's zvec-grep on our test (92% vs 48%)", "summary": "DeltaCode, an open-source coding-agent tool from aitrailblazer, reports that its deterministic AST-based ranker achieved 92% path Recall@5 on a frozen 25-case private Go-repository suite, outperforming two zvec-grep model configurations that reached 40% and 48% on their best routes. Version 0.1 uses no vector database, embeddings, or network access, and the results are not independently reproducible because the repository and tasks are private.", "body_md": "Deterministic task-to-symbol discovery and bounded AST context for coding agents.\n\nDeltaCode turns a coding objective into a small, inspectable context packet. It uses repository paths, Go symbols, signatures, receivers, comments, and function bodies—not embeddings—to rank likely implementation sites. It then returns bounded Go or Python AST slices with source hashes.\n\nVersion 0.1 deliberately has:\n\n- no vector database;\n- no embedding model or model download;\n- no persistent index or indexing daemon;\n- no network access in discovery and slicing;\n- no code-execution authority.\n\nThe MCP transport uses the official Go MCP SDK. The retrieval and slicing core uses the Go standard library.\n\nOn one frozen 25-case private Go-repository suite, the structural ranker reached\n92% path Recall@5. The two tested `zvec-grep`\n\nmodel configurations reached 40% and\n48% on their best routes. That is a result for one repository and one frozen\ntask set—not a universal claim that AST retrieval beats vector retrieval.\n\nThe underlying repository and task definitions are private, so this historical result is not independently reproducible. A cross-repository public benchmark is required before broader comparative claims.\n\n| Frozen private suite (25 cases) | Recall@1 | Recall@5 | Exact symbol@5 | p95 |\n|---|---|---|---|---|\n| DeltaCode structural ranker, current replay | 72% | 92% |\n80% |\n169 ms |\n`zvec-grep` + Jina, vector route |\n8% | 48% | 0% | 401 ms |\n`zvec-grep` + Potion, best path route |\n8% | 40% | 16% | 687 ms |\n\nThe aggregate receipt and its limitations are in\n[ benchmarks/private-go-summary.json](/aitrailblazer/deltacode-engine/blob/main/benchmarks/private-go-summary.json).\n\n```\ngo install github.com/aitrailblazer/deltacode-engine/cmd/deltacode@v0.1.0\n\n# Or build from a checkout:\ngo test ./...\ngo build -trimpath -o ./bin/deltacode ./cmd/deltacode\n# Rank likely Go symbols for a task.\n./bin/deltacode discover \\\n  -root /path/to/repository \\\n  -query \"reject workspace paths that escape through symlinks\" \\\n  -top-k 5\n\n# Slice one file. The path must remain inside the declared root.\n./bin/deltacode slice \\\n  -root /path/to/repository \\\n  -path pkg/workspace/workspace.go \\\n  -target ResolveFile\n\n# Produce a model-independent context packet.\n./bin/deltacode context \\\n  -root /path/to/repository \\\n  -objective \"reject workspace paths that escape through symlinks\" \\\n  -top-k 5\n```\n\nRunning `deltacode`\n\nwith no arguments starts the stdio MCP server bound to the\ncurrent directory. Set the root explicitly with `deltacode mcp -root /repo`\n\n.\nThe server exposes:\n\n`discover_symbols`\n\n`slice_symbol`\n\n`context_for_task`\n\nExample configuration:\n\n```\n{\n  \"mcpServers\": {\n    \"deltacode\": {\n      \"command\": \"/absolute/path/to/deltacode\",\n      \"args\": [\"mcp\", \"-root\", \"/absolute/path/to/repository\"]\n    }\n  }\n}\n```\n\nEvery file request is resolved under the process-configured repository root.\nAbsolute paths, `..`\n\nescapes, symlinks, non-regular files, oversized files, and\nunsupported source types fail closed.\n\n```\ngo run ./cmd/deltacode-bench \\\n  -root /path/to/checked-out-repository \\\n  -cases /path/to/cases.json \\\n  -top-k 5 \\\n  -out result.json\n```\n\nThe report binds the case-file hash, source manifest hash, runtime, per-case rankings, and aggregate metrics. Benchmark cases must be frozen before tuning.\n\nThe discovery ranker currently indexes Go functions and methods. The slicer supports Go and Python. DeltaCode proposes context; compilers, tests, policy controllers, and human review retain authority over edits and execution.\n\nThe earlier Model2Vec/bbolt prototype is preserved on the\n`experimental/vector`\n\nbranch and is not part of the v0.1 release.\n\nApache License 2.0.", "url": "https://wpnews.pro/news/show-hn-deltacode-pure-ast-beat-qwen-s-zvec-grep-on-our-test-92-vs-48", "canonical_source": "https://github.com/aitrailblazer/deltacode-engine", "published_at": "2026-09-03 00:32:54+00:00", "updated_at": "2026-09-03 00:52:26.518088+00:00", "lang": "en", "topics": ["developer-tools", "artificial-intelligence"], "entities": ["DeltaCode", "aitrailblazer", "zvec-grep", "Jina", "Potion", "Go MCP SDK"], "alternates": {"html": "https://wpnews.pro/news/show-hn-deltacode-pure-ast-beat-qwen-s-zvec-grep-on-our-test-92-vs-48", "markdown": "https://wpnews.pro/news/show-hn-deltacode-pure-ast-beat-qwen-s-zvec-grep-on-our-test-92-vs-48.md", "text": "https://wpnews.pro/news/show-hn-deltacode-pure-ast-beat-qwen-s-zvec-grep-on-our-test-92-vs-48.txt", "jsonld": "https://wpnews.pro/news/show-hn-deltacode-pure-ast-beat-qwen-s-zvec-grep-on-our-test-92-vs-48.jsonld"}}