sigmap 6.11.1 → 6.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +37 -0
- package/README.md +3 -3
- package/gen-context.js +449 -88
- package/package.json +1 -1
- package/packages/cli/package.json +1 -1
- package/packages/core/package.json +1 -1
- package/src/extractors/javascript.js +44 -7
- package/src/extractors/typescript.js +22 -6
- package/src/format/dashboard.js +105 -0
- package/src/mcp/handlers.js +58 -1
- package/src/mcp/server.js +4 -3
- package/src/mcp/tools.js +31 -2
package/CHANGELOG.md
CHANGED
|
@@ -10,6 +10,43 @@ Format: [Semantic Versioning](https://semver.org/)
|
|
|
10
10
|
|
|
11
11
|
---
|
|
12
12
|
|
|
13
|
+
## [6.13.0] — 2026-06-05
|
|
14
|
+
|
|
15
|
+
### Added
|
|
16
|
+
|
|
17
|
+
- **Line anchors for JavaScript + member-level anchors (Surgical Context Phase 2.1, #223, PR #224):**
|
|
18
|
+
- The **JavaScript extractor** now emits `:start-end` line anchors on top-level functions, classes, exported arrow functions, and `module.exports` — previously only TypeScript and Python carried anchors. JS block-comment stripping switched to the newline-preserving blank so anchor line numbers stay exact below a `/* … */`.
|
|
19
|
+
- **Class methods and interface members** (TypeScript **and** JavaScript) now carry their **own** `:start-end` anchor spanning the member body, instead of inheriting nothing — unlocking method-level targeting with the `get_lines` MCP tool.
|
|
20
|
+
- Measured effect: index-mode token reduction on real repos rises from ~4.6% to **32–42%** (axios 42.1%, fastify 41.1%, svelte 36.8%, vue-core 32.4%), now 100% anchored.
|
|
21
|
+
|
|
22
|
+
### Changed
|
|
23
|
+
|
|
24
|
+
- The bundled standalone `gen-context.js` extractor factories are re-synced with `src/` (the bundle had been stale since v6.11.0), so anchors work in the single-file distribution too.
|
|
25
|
+
|
|
26
|
+
### Fixed
|
|
27
|
+
|
|
28
|
+
- **Token budget could exceed `maxTokens` with many files.** The budget was signature-only and undercounted per-file section headers plus the fixed ~150-token preamble; with anchored (collapsible) signatures keeping more files alive, output could overflow. `applyTokenBudget` now budgets *rendered* cost (signatures + section overhead) against `maxTokens` minus a `max(200, 10%)` preamble reserve.
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## [6.12.0] — 2026-06-05
|
|
33
|
+
|
|
34
|
+
### Added
|
|
35
|
+
|
|
36
|
+
- **Surgical Context Phase 2 — demand-driven retrieval (#219, PR #220):**
|
|
37
|
+
- **`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.
|
|
38
|
+
- **`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`.
|
|
39
|
+
- **`sigmap ask --since <ref>`** — delta context that restricts ranked output to files changed since a git ref.
|
|
40
|
+
- **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.
|
|
41
|
+
- New **Surgical Context** guide (`docs-vp/guide/surgical-context.md`) covering line anchors, `--mode index`, `--since`, and the `get_lines` MCP tool.
|
|
42
|
+
|
|
43
|
+
### Changed
|
|
44
|
+
|
|
45
|
+
- **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.
|
|
46
|
+
- **CI** — added `workflow_dispatch` to the develop→main sync workflow so it can be run on demand (PR #218).
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
13
50
|
## [6.11.1] — 2026-06-04
|
|
14
51
|
|
|
15
52
|
### Fixed
|
package/README.md
CHANGED
|
@@ -87,8 +87,8 @@ Ask → Rank → Context → Validate → Judge → Learn
|
|
|
87
87
|
## Benchmark
|
|
88
88
|
|
|
89
89
|
```
|
|
90
|
-
Benchmark : sigmap-v6.
|
|
91
|
-
Date : 2026-06-
|
|
90
|
+
Benchmark : sigmap-v6.13-main (21 repositories, including R language)
|
|
91
|
+
Date : 2026-06-05
|
|
92
92
|
|
|
93
93
|
Hit@5 : 81.1% (baseline 13.6% — 6.0× lift)
|
|
94
94
|
Token reduction: 96.5% (across 21 repos)
|
|
@@ -183,7 +183,7 @@ Use SigMap with open-source tools and fully self-hosted setups:
|
|
|
183
183
|
| **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 |
|
|
184
184
|
| **Neovim** | lazy.nvim / packer / vim-plug | [github.com/manojmallick/sigmap.nvim](https://github.com/manojmallick/sigmap.nvim) | `:SigMap`, `:SigMapQuery` float window, statusline widget |
|
|
185
185
|
|
|
186
|
-
**MCP server** —
|
|
186
|
+
**MCP server** — 10 on-demand tools for Claude Code and Cursor:
|
|
187
187
|
|
|
188
188
|
```bash
|
|
189
189
|
sigmap --mcp
|