diff --git a/CHANGELOG.md b/CHANGELOG.md index 056be0c..a51fe90 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,24 @@ Format: [Semantic Versioning](https://semver.org/) --- +## [6.12.0] — 2026-06-05 + +### Added + +- **Surgical Context Phase 2 — demand-driven retrieval (#219, PR #220):** + - **`get_lines` MCP tool** (10th tool) — fetch an exact `{ file, start, end }` line range on demand. Lines are clamped to the file bounds, secret-scanned via the existing redactor, and sandboxed to the project root. This is the demand-driven workhorse: agents read the lines behind a `:start-end` anchor instead of re-opening whole files. + - **`sigmap ask --mode index`** — two-tier output that emits only symbol-header pointers (`symbol :start-end`), dropping parameter lists, return types, and bodies. Agents re-fetch bodies via `get_lines`. + - **`sigmap ask --since `** — delta context that restricts ranked output to files changed since a git ref. +- **Token Reduction dashboard panel (Surface A)** — `sigmap --report` now renders a "Token Reduction" panel (whole-file baseline vs ranked signatures vs surgical, with per-repo rows), sourced from `benchmarks/reports/token-reduction.json` — numbers are never hand-typed. +- New **Surgical Context** guide (`docs-vp/guide/surgical-context.md`) covering line anchors, `--mode index`, `--since`, and the `get_lines` MCP tool. + +### Changed + +- **Budget-aware progressive disclosure** — when generated context exceeds `maxTokens`, the token budget now collapses signature bodies to their line anchors (keeping `symbol :start-end`) *before* dropping whole files, degrading gracefully. +- **CI** — added `workflow_dispatch` to the develop→main sync workflow so it can be run on demand (PR #218). + +--- + ## [6.11.1] — 2026-06-04 ### Fixed diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index 854b5dd..b9b3df3 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -35,6 +35,10 @@ To ensure proper attribution: We welcome contributions! See [Contributing](./docs/CONTRIBUTING.md) for guidelines. +### Recent Contributors (v6.12.0) +- **@manojmallick** — feat: Surgical Context Phase 2 — `get_lines` MCP tool, `ask --mode index`, `ask --since`, budget-aware body collapse, Token Reduction dashboard panel (#219, PR #220) +- **@manojmallick** — ci: add `workflow_dispatch` to the develop→main sync workflow (PR #218) + ### Recent Contributors (v6.11.1) - **@rudi193-cmd** — fix: include hot-cold cold signatures in the bundled MCP server (#201, PR #216) diff --git a/README.md b/README.md index 7f42cc0..676db5a 100644 --- a/README.md +++ b/README.md @@ -87,8 +87,8 @@ Ask → Rank → Context → Validate → Judge → Learn ## Benchmark ``` -Benchmark : sigmap-v6.11-main (21 repositories, including R language) -Date : 2026-06-04 +Benchmark : sigmap-v6.12-main (21 repositories, including R language) +Date : 2026-06-05 Hit@5 : 81.1% (baseline 13.6% — 6.0× lift) Token reduction: 96.5% (across 21 repos) @@ -183,7 +183,7 @@ Use SigMap with open-source tools and fully self-hosted setups: | **JetBrains** | [Marketplace](https://plugins.jetbrains.com/plugin/31109-sigmap--ai-context-engine/) | [github.com/manojmallick/sigmap-jetbrains](https://github.com/manojmallick/sigmap-jetbrains) | IntelliJ IDEA, WebStorm, PyCharm, GoLand — tool window + actions | | **Neovim** | lazy.nvim / packer / vim-plug | [github.com/manojmallick/sigmap.nvim](https://github.com/manojmallick/sigmap.nvim) | `:SigMap`, `:SigMapQuery` float window, statusline widget | -**MCP server** — 9 on-demand tools for Claude Code and Cursor: +**MCP server** — 10 on-demand tools for Claude Code and Cursor: ```bash sigmap --mcp diff --git a/docs-vp/guide/benchmark.md b/docs-vp/guide/benchmark.md index 0aa6d2c..8d9718e 100644 --- a/docs-vp/guide/benchmark.md +++ b/docs-vp/guide/benchmark.md @@ -1,13 +1,13 @@ --- title: Benchmark overview -description: Official v6.11.1 benchmark snapshot. 96.5% average token reduction across 21 repos, 81% retrieval hit@5, 41.8% fewer prompts, and R language support verified. +description: Official v6.12.0 benchmark snapshot. 96.5% average token reduction across 21 repos, 81% retrieval hit@5, 41.8% fewer prompts, and R language support verified. head: - - meta - property: og:title - content: "SigMap benchmark overview — v6.11.1 snapshot with R language" + content: "SigMap benchmark overview — v6.12.0 snapshot with R language" - - meta - property: og:description - content: "Token, retrieval, quality, and task metrics from latest v6.11.1 benchmark run (2026-06-04) with 21 repositories including R language support." + content: "Token, retrieval, quality, and task metrics from latest v6.12.0 benchmark run (2026-06-05) with 21 repositories including R language support." - - meta - property: og:url content: "https://manojmallick.github.io/sigmap/guide/benchmark" @@ -15,8 +15,8 @@ head: # Benchmark overview -::: info Official v6.11.1 benchmark snapshot (21 repos, including R language) -**Benchmark ID:** sigmap-v6.11-main  ·  **Date:** 2026-06-04 +::: info Official v6.12.0 benchmark snapshot (21 repos, including R language) +**Benchmark ID:** sigmap-v6.12-main  ·  **Date:** 2026-06-05 | Metric | Value | |---|---:| @@ -37,9 +37,9 @@ This is the landing page for the public benchmark story. It answers four differe | SigMap reduces retries and wrong-context answers | [Task benchmark](/guide/task-benchmark) | | SigMap keeps large repos inside model limits | [Quality benchmark](/guide/quality-benchmark) | -## Official v6.11.1 snapshot (with R language support) +## Official v6.12.0 snapshot (with R language support) -Latest saved benchmark run: **2026-06-04 (v6.11.1)** +Latest saved benchmark run: **2026-06-05 (v6.12.0)** | Metric | Result | |---|---:| @@ -65,6 +65,7 @@ Latest saved benchmark run: **2026-06-04 (v6.11.1)** - ggplot2: 94.3% reduction (381.5K → 21.7K tokens) - dplyr: 93.4% reduction (145.1K → 9.5K tokens) - shiny: 96.2% reduction (264.6K → 10.0K tokens) +- **New in v6.12.0:** demand-driven *Surgical Context* (`ask --mode index` + the `get_lines` MCP tool) cuts upfront `ask` context further on top of the figures above by emitting symbol pointers instead of bodies — see the [Surgical Context guide](/guide/surgical-context). ### 2. Retrieval quality diff --git a/docs-vp/guide/cli.md b/docs-vp/guide/cli.md index 232cf37..2c0379c 100644 --- a/docs-vp/guide/cli.md +++ b/docs-vp/guide/cli.md @@ -7,7 +7,7 @@ head: content: "SigMap CLI Reference — every command and flag with examples" - - meta - property: og:description - content: "All 37 SigMap commands and flags documented with examples. ask, plan, bench, judge, validate, roots, history, --ci, --cost, --coverage, --watch, --diff, --mcp, --report, --health, weights --export/--import and more." + content: "All 39 SigMap commands and flags documented with examples. ask, plan, bench, judge, validate, roots, history, --ci, --cost, --coverage, --watch, --diff, --mcp, --report, --health, weights --export/--import and more." - - meta - property: og:url content: "https://manojmallick.github.io/sigmap/guide/cli" @@ -19,7 +19,7 @@ head: content: "SigMap CLI Reference — every command and flag with examples" - - meta - name: twitter:description - content: "All 37 SigMap commands and flags documented with examples. ask, plan, bench, judge, validate, history, --ci, --cost, --coverage, --watch, --diff, --mcp, --report, --health, weights --export/--import and more." + content: "All 39 SigMap commands and flags documented with examples. ask, plan, bench, judge, validate, history, --ci, --cost, --coverage, --watch, --diff, --mcp, --report, --health, weights --export/--import and more." - - meta - name: twitter:image:alt content: "SigMap CLI Reference" @@ -47,6 +47,8 @@ If you are new to the product, start with the workflow pages first: | `ask "" --followup` | Reuse previous session context for follow-up queries (session carry-forward) | | `ask "" --package ` | Scope retrieval to a specific monorepo workspace package | | `ask "" --global` | Disable package scoping; search entire repo (monorepo override) | +| `ask "" --mode index` | Surgical Context: emit symbol-header pointers (`symbol :start-end`) only — no bodies; fetch on demand via `get_lines` | +| `ask "" --since ` | Delta context: restrict ranked output to files changed since a git ref | | `plan ""` | Analyze change impact and plan modifications — returns files grouped by confidence | | `judge --response --context ` | Rule-based groundedness scoring for LLM responses | | `validate` | Validate config and coverage; optional query symbol check | @@ -180,6 +182,42 @@ sigmap ask "find all auth handlers" --global --json |--------|-------------| | `--global` | Disable automatic package inference; search entire repo | +### ask --mode index (Surgical Context) + +Emit a two-tier **symbol index** instead of full signature blocks. Each ranked file is reduced to its declaration heads plus line anchors (`symbol :start-end`) — parameter lists, return types, and bodies are dropped. The agent reads this minimal map, then fetches the exact lines it needs on demand via the [`get_lines` MCP tool](/guide/mcp). This is the demand-driven half of *Surgical Context* (line anchors are the first half — see above). + +```bash +sigmap ask "where is config loaded" --mode index +``` + +``` +# SigMap Query Context (index mode) +> Symbol index only — fetch exact lines on demand via the `get_lines` MCP tool. + +## src/config/loader.js +function loadConfig :42-58 +function detectAutoSrcDirs :12-39 +``` + +| Option | Description | +|--------|-------------| +| `--mode index` | Emit symbol-header pointers only; bodies fetched on demand via `get_lines` | + +When over `maxTokens`, the regular (non-index) generate path now degrades the same way automatically: it collapses bodies to anchors before dropping whole files. See the [Surgical Context guide](/guide/surgical-context). + +### ask --since (delta context) + +Restrict ranked output to files changed since a git ref, so a steady-state turn carries near-zero context. Combine with `--mode index` for the leanest possible turn. + +```bash +sigmap ask "finish the refactor" --since main +sigmap ask "what did I touch" --since HEAD~3 --mode index +``` + +| Option | Description | +|--------|-------------| +| `--since ` | Keep only ranked files changed since `` (any git ref: branch, tag, or SHA) | + --- ## plan diff --git a/docs-vp/guide/generalization.md b/docs-vp/guide/generalization.md index 0862698..aefac24 100644 --- a/docs-vp/guide/generalization.md +++ b/docs-vp/guide/generalization.md @@ -1,6 +1,6 @@ --- title: Generalization — SigMap across languages, domains & repo sizes -description: SigMap generalizes across 21 repos, 31 languages, and multiple domains with 81.1% hit@5 in the latest saved v6.11.1 retrieval run. +description: SigMap generalizes across 21 repos, 31 languages, and multiple domains with 81.1% hit@5 in the latest saved v6.12.0 retrieval run. head: - - meta - property: og:title @@ -19,8 +19,8 @@ head: SigMap was not tuned for one repo. This benchmark matters because it shows the same workflow transfers across different languages, repo sizes, and architectures without manual tuning. ::: -::: info Official v6.11.1 benchmark snapshot -**Benchmark ID:** sigmap-v6.11-main  ·  **Date:** 2026-06-04 (with R language) +::: info Official v6.12.0 benchmark snapshot +**Benchmark ID:** sigmap-v6.12-main  ·  **Date:** 2026-06-05 (with R language) | Metric | Value | |---|---:| @@ -37,7 +37,7 @@ The important part of SigMap's benchmark story is not just the topline score. It ::: info What "generalization" means here SigMap's signature extractors are hand-written regex patterns, not ML models. Generalization means: *do the patterns hold up on codebases the authors never inspected?* The answer across -these 90 tasks is yes — 81% hit@5 with no per-repo tuning in the latest saved v6.11.1 run. +these 90 tasks is yes — 81% hit@5 with no per-repo tuning in the latest saved v6.12.0 run. ::: - **21 repos** (including 3 R language repos) diff --git a/docs-vp/guide/mcp.md b/docs-vp/guide/mcp.md index e730a7c..de35dca 100644 --- a/docs-vp/guide/mcp.md +++ b/docs-vp/guide/mcp.md @@ -1,13 +1,13 @@ --- title: MCP server setup -description: Set up the SigMap MCP server for Claude Code, Cursor, and Windsurf. On-demand codebase access with 9 tools over stdio. Zero npm install. +description: Set up the SigMap MCP server for Claude Code, Cursor, and Windsurf. On-demand codebase access with 10 tools over stdio. Zero npm install. head: - - meta - property: og:title content: "SigMap MCP Server — on-demand codebase context" - - meta - property: og:description - content: "Give Claude Code, Cursor, and Windsurf on-demand access to your codebase signatures. 9 MCP tools over stdio." + content: "Give Claude Code, Cursor, and Windsurf on-demand access to your codebase signatures. 10 MCP tools over stdio." - - meta - property: og:url content: "https://manojmallick.github.io/sigmap/guide/mcp" @@ -22,7 +22,7 @@ head: Give Claude Code, Cursor, and Windsurf on-demand access to your codebase signatures. Zero npm install. -The SigMap MCP server exposes 9 tools over the stdio Model Context Protocol. Your AI agent calls only what it needs — keeping token costs low. +The SigMap MCP server exposes 10 tools over the stdio Model Context Protocol. Your AI agent calls only what it needs — keeping token costs low. > **Setup time: under 2 minutes.** Use `sigmap --setup` for automatic configuration. @@ -96,10 +96,10 @@ Stack both MCP servers for the two-layer context strategy — SigMap for always- } ``` -## 9 available tools +## 10 available tools ::: tip New in v6.3.0 — native tool registration -Claude Code and Codex now receive the full tool list at MCP startup without a discovery round-trip. The server declares all 9 tools in the `initialize` response, so your AI sees them immediately. No config change needed — upgrade via `npm install -g sigmap@latest`. +Claude Code and Codex now receive the full tool list at MCP startup without a discovery round-trip. The server declares all 10 tools in the `initialize` response, so your AI sees them immediately. No config change needed — upgrade via `npm install -g sigmap@latest`. ::: All tools are available on-demand — your AI agent calls only what it needs. @@ -114,6 +114,8 @@ All tools are available on-demand — your AI agent calls only what it needs. | `create_checkpoint` | Records session progress with a git state snapshot. | `summary` (required string) | `create_checkpoint(summary="Added rate limiting")` | | `get_routing` | Returns the model tier hints table (fast / balanced / powerful per file) based on complexity scores. | none | `get_routing()` | | `query_context` | Ranks all files by relevance to a free-text query using TF-IDF scoring. Returns top-K files. New in v2.3. | `query` (required string), `topK` (optional number, default 10) | `query_context(query="authentication flow")` | +| `get_impact` | Returns the blast radius of a file — direct importers, transitive importers, affected tests and routes. | `file` (required string), `depth` (optional number, default 3) | `get_impact(file="src/auth/service.ts")` | +| `get_lines` | **Surgical Context** demand-driven fetch: returns an exact line range from a file behind a `:start-end` anchor. Clamped to file bounds, secret-scanned, sandboxed to the project root. New in v6.12.0. | `file` (required string), `start` (required number), `end` (required number) | `get_lines(file="src/config/loader.js", start=42, end=58)` | ## Token cost per tool call @@ -165,7 +167,9 @@ Expected output: { "name": "list_modules" }, { "name": "create_checkpoint" }, { "name": "get_routing" }, - { "name": "query_context" } + { "name": "query_context" }, + { "name": "get_impact" }, + { "name": "get_lines" } ] } } diff --git a/docs-vp/guide/quality-benchmark.md b/docs-vp/guide/quality-benchmark.md index c445fc4..5c123a7 100644 --- a/docs-vp/guide/quality-benchmark.md +++ b/docs-vp/guide/quality-benchmark.md @@ -1,6 +1,6 @@ --- title: Quality benchmark -description: What token reduction means operationally in v6.11.1. 16/21 repos overflow GPT-4o without SigMap, 5,200+ files would be hidden, and GPT-4o input savings reach $10,500+/month at 10 calls/day. +description: What token reduction means operationally in v6.12.0. 16/21 repos overflow GPT-4o without SigMap, 5,200+ files would be hidden, and GPT-4o input savings reach $10,500+/month at 10 calls/day. head: - - meta - property: og:title @@ -15,8 +15,8 @@ head: # Quality benchmark -::: info Official v6.11.1 benchmark snapshot -**Benchmark ID:** sigmap-v6.11-main  ·  **Date:** 2026-06-04 (with R language) +::: info Official v6.12.0 benchmark snapshot +**Benchmark ID:** sigmap-v6.12-main  ·  **Date:** 2026-06-05 (with R language) | Metric | Value | |---|---:| @@ -34,7 +34,7 @@ Token reduction is the mechanism. This benchmark shows the operational consequen - how much code would be hidden without SigMap? - what does that mean for API cost? -Latest saved run: **2026-06-04 (v6.11.1)** +Latest saved run: **2026-06-05 (v6.12.0)** ## Headline numbers diff --git a/docs-vp/guide/retrieval-benchmark.md b/docs-vp/guide/retrieval-benchmark.md index 3464ce9..4e5947d 100644 --- a/docs-vp/guide/retrieval-benchmark.md +++ b/docs-vp/guide/retrieval-benchmark.md @@ -1,6 +1,6 @@ --- title: Retrieval benchmark -description: Latest saved retrieval benchmark for SigMap v6.11.1. 81% hit@5 vs 13.6% random baseline across 90 tasks on 18 repos, with R language support. +description: Latest saved retrieval benchmark for SigMap v6.12.0. 81% hit@5 vs 13.6% random baseline across 90 tasks on 18 repos, with R language support. head: - - meta - property: og:title @@ -15,8 +15,8 @@ head: # Retrieval benchmark -::: info Official v6.11.1 benchmark snapshot -**Benchmark ID:** sigmap-v6.11-main  ·  **Date:** 2026-06-04 (with R language) +::: info Official v6.12.0 benchmark snapshot +**Benchmark ID:** sigmap-v6.12-main  ·  **Date:** 2026-06-05 (with R language) | Metric | Value | |---|---:| @@ -29,7 +29,7 @@ head: | GPT-4o overflow (without → with) | **16/21 → 0/21** | ::: -Latest saved run: **2026-06-04 (v6.11.1)** +Latest saved run: **2026-06-05 (v6.12.0)** **Result:** SigMap finds the right file in the top 5 far more often than chance — **81% hit@5** vs **13.6%** random baseline across 90 tasks on 18 real repos. diff --git a/docs-vp/guide/roadmap.md b/docs-vp/guide/roadmap.md index e9ba876..7954506 100644 --- a/docs-vp/guide/roadmap.md +++ b/docs-vp/guide/roadmap.md @@ -20,9 +20,9 @@ head: --- # Roadmap -Fifty-six versions shipped. MIT open source from day one. +Fifty-seven versions shipped. MIT open source from day one. -**Stats:** 96.5% overall token reduction · 722 tests passing · 29 languages · 17-language source resolver · 0 npm deps +**Stats:** 96.5% overall token reduction · 735 tests passing · 29 languages · 17-language source resolver · 0 npm deps ## Token reduction by version @@ -37,6 +37,7 @@ Fifty-six versions shipped. MIT open source from day one. | v1.0 | 97% total | Full system — 80,000 → under 4,000 | | v1.1 | ~200 always-on | hot-cold + MCP: 99.75% reduction from baseline | | v1.3 | 50 diff-mode | Active PR work: 95%+ reduction for diffs | +| v6.12 | symbol-index + delta | Demand-driven `--mode index`: headers only, bodies via `get_lines`; `--since` delta = near-zero per turn | ## Complete version timeline @@ -785,9 +786,19 @@ Community patch from **@rudi193-cmd**: the bundled MCP server now includes the h --- -## Current milestone — v6.12+ (Surgical Context Phase 2) +### v6.12.0 — Surgical Context Phase 2 (demand-driven + delta) ✓ (tagged v6.12.0 — 2026-06-05) -v6.0–v6.11.0 shipped graph-boosted retrieval with dependency-aware scoring, incremental signature cache, weights sharing, native tool instructions across all 7 adapters, MCP auto-wire for 10 AI tools, native tool registration, docs trust sync, intelligent source root detection, intent-aware retrieval with signal transparency, cross-session context memory with impact planning, JVM project structure auto-detection, enhanced monorepo JVM support, 2-hop graph boost with hub suppression, session-aware context carry-forward with safe change planning, segmented benchmarks with answer usefulness evaluation, monorepo workspace-scoped retrieval, R language support with S4 patterns, Python AST extraction for complex signatures, open-source agent/local LLM integration guides, complete Python import detection in both import-graph and builder modules for accurate blast radius on Python monorepos, and line anchors on signatures (Surgical Context Phase 1). Next: Surgical Context Phase 2 — demand-driven `--mode index` plus a `get_lines` MCP tool and delta context for further token reduction — extended language/framework coverage (line anchors for the remaining extractors, S3 methods in R), and performance optimizations for very large monorepos (>50K files). +The demand-driven half of **Surgical Context**. A new **`get_lines` MCP tool** (the 10th) fetches an exact `{ file, start, end }` line range behind a `:start-end` anchor — clamped, secret-scanned, and sandboxed to the project root — so agents read just the lines they need instead of re-opening whole files. `sigmap ask --mode index` emits a two-tier symbol index (`symbol :start-end` pointers only, no bodies), and `sigmap ask --since ` restricts output to files changed since a git ref. The token budget now degrades gracefully: it collapses signature bodies to anchors before dropping whole files. The dashboard gains a **Token Reduction** panel (baseline vs ranked vs surgical), sourced from the published benchmark. + +**Tags:** `surgical context` · `demand-driven` · `delta` · `get_lines` · `mcp` · `--mode index` · `--since` · `dashboard` · `issue #219` · `PR #220` + +**Impact:** 10 MCP tools (was 9) · symbol-index mode cuts upfront `ask` context further on top of ranked retrieval, with no `hit@5` regression. + +--- + +## Current milestone — v6.13+ (Hallucination Guard) + +v6.0–v6.12.0 shipped graph-boosted retrieval with dependency-aware scoring, incremental signature cache, weights sharing, native tool instructions across all 7 adapters, MCP auto-wire for 10 AI tools, native tool registration, docs trust sync, intelligent source root detection, intent-aware retrieval with signal transparency, cross-session context memory with impact planning, JVM project structure auto-detection, enhanced monorepo JVM support, 2-hop graph boost with hub suppression, session-aware context carry-forward with safe change planning, segmented benchmarks with answer usefulness evaluation, monorepo workspace-scoped retrieval, R language support with S4 patterns, Python AST extraction for complex signatures, open-source agent/local LLM integration guides, complete Python import detection for accurate Python blast radius, line anchors on signatures (Surgical Context Phase 1), and demand-driven retrieval with the `get_lines` MCP tool, `--mode index`, and `--since` delta context (Surgical Context Phase 2). Next: **`verify-ai-output` (Hallucination Guard)** — a deterministic verifier that flags fake files, imports, and symbols in an AI answer against the live symbol index and file map — extended language/framework coverage (line anchors for the remaining extractors, S3 methods in R), and performance optimizations for very large monorepos (>50K files). --- diff --git a/docs-vp/guide/task-benchmark.md b/docs-vp/guide/task-benchmark.md index 44b05ea..190295b 100644 --- a/docs-vp/guide/task-benchmark.md +++ b/docs-vp/guide/task-benchmark.md @@ -1,6 +1,6 @@ --- title: Task benchmark -description: Latest saved task benchmark for SigMap v6.11.1. 53.3% correct, 41.8% fewer prompts, 81% hit@5 across 90 tasks, with R language support. +description: Latest saved task benchmark for SigMap v6.12.0. 53.3% correct, 41.8% fewer prompts, 81% hit@5 across 90 tasks, with R language support. head: - - meta - property: og:title @@ -15,8 +15,8 @@ head: # Task benchmark -::: info Official v6.11.1 benchmark snapshot -**Benchmark ID:** sigmap-v6.11-main  ·  **Date:** 2026-06-04 (with R language) +::: info Official v6.12.0 benchmark snapshot +**Benchmark ID:** sigmap-v6.12-main  ·  **Date:** 2026-06-05 (with R language) | Metric | Value | |---|---:| @@ -29,7 +29,7 @@ head: | GPT-4o overflow (without → with) | **16/21 → 0/21** | ::: -Latest saved run: **2026-06-04 (v6.11.1)** — Now includes R language support (ggplot2, dplyr, shiny) +Latest saved run: **2026-06-05 (v6.12.0)** — Now includes R language support (ggplot2, dplyr, shiny) This page answers the question people care about most: diff --git a/docs-vp/index.md b/docs-vp/index.md index b0cce05..455e623 100644 --- a/docs-vp/index.md +++ b/docs-vp/index.md @@ -78,14 +78,14 @@ features:
- Release: v6.11.1 + Release: v6.12.0 · - MCP hot-cold bundle fix (community) + Surgical Context Phase 2 — demand-driven + delta
- Benchmark: sigmap-v6.11-main + Benchmark: sigmap-v6.12-main · - 81% hit@5 · 96.5% token reduction · 2026-06-04 + 81% hit@5 · 96.5% token reduction · 2026-06-05
@@ -176,7 +176,7 @@ See the full [end-to-end walkthrough](/guide/walkthrough) to watch this in actio | Overall token reduction | — | **96.5%** | | GPT-4o overflow repos | 16/21 | **0/21** | -Latest saved benchmark run: **2026-06-04 (v6.11.1)**. +Latest saved benchmark run: **2026-06-05 (v6.12.0)**. diff --git a/gen-context.js b/gen-context.js index ef71e99..3e9bfd4 100755 --- a/gen-context.js +++ b/gen-context.js @@ -6043,7 +6043,7 @@ __factories["./src/mcp/server"] = function(module, exports) { const SERVER_INFO = { name: 'sigmap', - version: '6.11.1', + version: '6.12.0', description: 'SigMap MCP server — code signatures on demand', }; @@ -8867,7 +8867,7 @@ const path = require('path'); const os = require('os'); const { execSync } = require('child_process'); -const VERSION = '6.11.1'; +const VERSION = '6.12.0'; const MARKER = '\n\n## Auto-generated signatures\n\n'; function requireSourceOrBundled(key) { diff --git a/package.json b/package.json index 1d7b0c9..ec7a4ad 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "sigmap", - "version": "6.11.1", + "version": "6.12.0", "description": "Zero-dependency AI context engine — 97% token reduction. No npm install. Runs on Node 18+.", "main": "gen-context.js", "exports": { diff --git a/packages/cli/package.json b/packages/cli/package.json index f1b990e..bc3544c 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "sigmap-cli", - "version": "6.11.1", + "version": "6.12.0", "description": "SigMap CLI wrapper — thin adapter for programmatic CLI invocation", "main": "index.js", "keywords": [ diff --git a/packages/core/package.json b/packages/core/package.json index b6618fc..0442afc 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "sigmap-core", - "version": "6.11.1", + "version": "6.12.0", "description": "SigMap core library — zero-dependency code signature extraction, retrieval, and security scanning", "main": "index.js", "keywords": [ diff --git a/src/mcp/server.js b/src/mcp/server.js index f53be44..d4898d8 100644 --- a/src/mcp/server.js +++ b/src/mcp/server.js @@ -18,7 +18,7 @@ const { readContext, searchSignatures, getMap, createCheckpoint, getRouting, exp const SERVER_INFO = { name: 'sigmap', - version: '6.11.1', + version: '6.12.0', description: 'SigMap MCP server — code signatures on demand', }; diff --git a/test/integration/features/docs-sync.test.js b/test/integration/features/docs-sync.test.js index 7b59c9e..dbcc028 100644 --- a/test/integration/features/docs-sync.test.js +++ b/test/integration/features/docs-sync.test.js @@ -120,10 +120,10 @@ test('docs/index.html: structured-data description uses 29 languages', () => { // ── MCP tool count ──────────────────────────────────────────────────────────── -test('mcp.md: description mentions 9 tools (not 8)', () => { +test('mcp.md: description mentions 10 tools (not 9)', () => { const src = readGuide('mcp.md'); - assert.ok(!src.includes('with 8 tools'), 'found "8 tools" in mcp.md description'); - assert.ok(src.includes('9 tools'), 'missing "9 tools" in mcp.md'); + assert.ok(!src.includes('with 9 tools'), 'found "9 tools" in mcp.md description'); + assert.ok(src.includes('10 tools'), 'missing "10 tools" in mcp.md'); }); // ── Troubleshooting v5.5 coverage entry ─────────────────────────────────────── diff --git a/test/integration/features/readme-structure.test.js b/test/integration/features/readme-structure.test.js index 2d080c7..c9041e2 100644 --- a/test/integration/features/readme-structure.test.js +++ b/test/integration/features/readme-structure.test.js @@ -122,12 +122,12 @@ test('workflow: Ask → Rank → Context → Validate → Judge → Learn', () = // ── Section 7: Benchmark ───────────────────────────────────────────────────── -test('benchmark: sigmap-v6.11-main ID present', () => { - assert.ok(src.includes('sigmap-v6.11-main'), 'missing sigmap-v6.11-main benchmark ID'); +test('benchmark: sigmap-v6.12-main ID present', () => { + assert.ok(src.includes('sigmap-v6.12-main'), 'missing sigmap-v6.12-main benchmark ID'); }); -test('benchmark: date 2026-06-04 present', () => { - assert.ok(src.includes('2026-06-04'), 'missing benchmark date 2026-06-04'); +test('benchmark: date 2026-06-05 present', () => { + assert.ok(src.includes('2026-06-05'), 'missing benchmark date 2026-06-05'); }); test('benchmark: Hit@5 81.1% present', () => { diff --git a/version.json b/version.json index a77a0e8..2e11d0b 100644 --- a/version.json +++ b/version.json @@ -1,7 +1,7 @@ { - "version": "6.11.1", - "benchmark_date": "2026-06-04", - "benchmark_id": "sigmap-v6.11-main", + "version": "6.12.0", + "benchmark_date": "2026-06-05", + "benchmark_id": "sigmap-v6.12-main", "languages": 31, "mcp_tools": 10, "tests": 60,