sigmap 7.24.1 → 7.25.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 CHANGED
@@ -10,6 +10,28 @@ Format: [Semantic Versioning](https://semver.org/)
10
10
 
11
11
  ---
12
12
 
13
+ ## [7.25.0] — 2026-06-21
14
+
15
+ Minor release — **Trust Hygiene (H1 + H3):** one generated source of benchmark truth, gated in CI. First installment of the v7.25.x milestone.
16
+
17
+ ### Added
18
+ - **Single source of benchmark truth (#363):** `benchmarks/latest.json` is now generated from the benchmark reports (`scripts/gen-benchmark-latest.mjs`), and `version.json` metrics, `README.md` (via `<!--SM:KEY-->` markers), and `llms.txt`/`llms-full.txt` all read from it (`scripts/sync-metrics.mjs`). Every hand-typed metric is removed — published numbers can no longer silently drift from the measured reports. New `npm run metrics:sync` regenerates the whole chain; `npm run check:metrics` gates it in `prepublishOnly` **and** CI.
19
+ - **Truthful `version.json` (#363):** `languages`, `extractors`, `mcp_tools`, and `tests` are auto-derived from source via a shared `scripts/lib/source-meta.mjs` (the same derivation the llms generator uses, so the language count can never diverge). Added the `extractors` field.
20
+
21
+ ### Changed
22
+ - **Every published number traces to one fresh, gated benchmark run (#363):** the long-standing drift (committed reports vs hand-typed README/`version.json`/`llms.txt`) is eliminated — all surfaces now derive from `benchmarks/latest.json`. This release regenerates that file from a **live** benchmark run (2026-06-21, `sigmap-v7.25-main`, 21 repos): hit@5 **75.6%** (13.6% baseline, 5.6× lift), token reduction **97%**, task success **52.2%**, prompts/task **1.72 → 2.84**, prompt reduction **39.4%**. `languages` corrected `31 → 33`; `extractors` (42) now reported.
23
+
24
+ ---
25
+
26
+ ## [7.24.2] — 2026-06-19
27
+
28
+ Patch release — surface the StarMapper stargazer map in the docs.
29
+
30
+ ### Added
31
+ - **StarMapper stargazer-map badge + link (#360):** the README badge row gains a StarMapper badge and the Support section a "stargazers around the world" link; the docs site adds a community link — all pointing to the [StarMapper map](https://starmapper.bruniaux.com/manojmallick/sigmap) (517 stars across 37 countries). StarMapper is a client-rendered SPA with no verifiable badge endpoint, so a reliable shields.io static badge links to the map rather than embedding an unverifiable image. A README-structure test pins the StarMapper URL.
32
+
33
+ ---
34
+
13
35
  ## [7.24.1] — 2026-06-19
14
36
 
15
37
  Patch release — publish the first measured §9 grounding result.
package/README.md CHANGED
@@ -12,6 +12,7 @@
12
12
  [![Zero deps](https://img.shields.io/badge/dependencies-zero-22c55e)](package.json)
13
13
  [![License: MIT](https://img.shields.io/badge/License-MIT-7c6af7.svg)](LICENSE)
14
14
  [![GitHub Stars](https://img.shields.io/github/stars/manojmallick/sigmap?style=flat&color=f59e0b&logo=github)](https://github.com/manojmallick/sigmap/stargazers)
15
+ [![Stargazer map](https://img.shields.io/badge/StarMapper-view%20star%20map-7c6af7?logo=googlemaps&logoColor=white)](https://starmapper.bruniaux.com/manojmallick/sigmap)
15
16
  [![Star History Chart](https://api.star-history.com/svg?repos=manojmallick/sigmap&type=Date)](https://star-history.com/#manojmallick/sigmap&Date)
16
17
  [![Discover on ShyPD](https://img.shields.io/badge/ShyPD-Discover-7c6af7?logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij48Y2lyY2xlIGN4PSI4IiBjeT0iOCIgcj0iOCIgZmlsbD0id2hpdGUiLz48L3N2Zz4=&logoColor=7c6af7)](https://shypd.ai/tools/sigmap)
17
18
 
@@ -47,11 +48,13 @@ SigMap extracts function and class signatures from your codebase and feeds the r
47
48
 
48
49
  ## Why SigMap?
49
50
 
51
+ <!--SM:whyMetrics-->
50
52
  - **75.6% hit@5** — right file found in top 5 results (vs 13.6% baseline)
51
53
  - **97.0% token reduction** — average across 21 real repos
52
54
  - **52.2% task success rate** — up from 10% without context
53
55
  - **1.72 prompts per task** — down from 2.84 (39.4% fewer retries)
54
- - **31 languages supported** — TypeScript, Python, Go, Rust, Java, R, and 25 others
56
+ <!--/SM:whyMetrics-->
57
+ - **<!--SM:languages-->33<!--/SM:languages--> languages supported** — TypeScript, Python, Go, Rust, Java, R, and more
55
58
  - **No vendor lock-in** — works with any AI assistant or local LLM
56
59
  - **No API costs** — use local models (Ollama, llama.cpp, vLLM) with zero token fees
57
60
  - **Full privacy** — keep your code and context on your machine
@@ -63,7 +66,7 @@ SigMap extracts function and class signatures from your codebase and feeds the r
63
66
 
64
67
  | Without SigMap | With SigMap |
65
68
  |---|---|
66
- | ❌ Guessing which files are relevant | ✅ Right file in context — 76% of the time |
69
+ | ❌ Guessing which files are relevant | ✅ Right file in context — <!--SM:hitWhole-->76%<!--/SM:hitWhole--> of the time |
67
70
  | ❌ Sending the full repo to your AI | ✅ Minimal context — only what matters |
68
71
  | ❌ Embeddings / vector DB required | ✅ Grounded answers, no infra needed |
69
72
 
@@ -86,9 +89,10 @@ Ask → Rank → Context → Validate → Judge → Learn
86
89
 
87
90
  ## Benchmark
88
91
 
92
+ <!--SM:benchmarkBlock-->
89
93
  ```
90
- Benchmark : sigmap-v7.0-main (21 repositories, including R language)
91
- Date : 2026-06-19
94
+ Benchmark : sigmap-v7.25-main (21 repositories, including R language)
95
+ Date : 2026-06-21
92
96
 
93
97
  Hit@5 : 75.6% (baseline 13.6% — 5.6× lift)
94
98
  Token reduction: 97.0% (across 21 repos)
@@ -96,6 +100,9 @@ Prompt reduction : 39.4% (2.84 → 1.72 prompts per task)
96
100
  Task success : 52.2% (baseline 10%)
97
101
  Repos tested : 21 (JavaScript, Python, Go, Rust, Java, R, C++, C#, Dart, Swift, Ruby, PHP, Scala, Kotlin, and more)
98
102
  ```
103
+ <!--/SM:benchmarkBlock-->
104
+
105
+ <sub>All numbers above are generated from `benchmarks/latest.json` (`npm run metrics:sync`) — never hand-typed.</sub>
99
106
 
100
107
  Measured on 90 coding tasks across 18 real public repos. No LLM API — fully reproducible.
101
108
 
@@ -233,7 +240,7 @@ sigmap --health
233
240
  | Benchmark methodology | [benchmark.html](https://sigmap.io/guide/benchmark.html) |
234
241
  | Config reference | [config.html](https://sigmap.io/guide/config.html) |
235
242
  | Roadmap | [roadmap.html](https://sigmap.io/guide/roadmap.html) |
236
- | 31 languages | [generalization.html](https://sigmap.io/guide/generalization.html) |
243
+ | <!--SM:languages-->33<!--/SM:languages--> languages | [generalization.html](https://sigmap.io/guide/generalization.html) |
237
244
 
238
245
  ---
239
246
 
@@ -241,6 +248,8 @@ sigmap --health
241
248
 
242
249
  If SigMap saves you context or API spend, a ⭐ on [GitHub](https://github.com/manojmallick/sigmap) helps others find it.
243
250
 
251
+ 🌍 See where SigMap's stargazers are around the world on the **[StarMapper star map →](https://starmapper.bruniaux.com/manojmallick/sigmap)**.
252
+
244
253
  [Report an issue](https://github.com/manojmallick/sigmap/issues) · [Changelog](CHANGELOG.md)
245
254
 
246
255
  ---
@@ -286,7 +295,7 @@ See [.github/PULL_REQUEST_TEMPLATE.md](.github/PULL_REQUEST_TEMPLATE.md) for the
286
295
 
287
296
  ---
288
297
 
289
- ## 31 languages
298
+ ## <!--SM:languages-->33<!--/SM:languages--> languages
290
299
 
291
300
  TypeScript · JavaScript · Python · Java · Kotlin · Go · Rust · C# · C/C++ · Ruby · PHP · Swift · Dart · Scala · Vue · Svelte · HTML · CSS/SCSS · YAML · Shell · SQL · GraphQL · Terraform · Protobuf · Dockerfile · TOML · XML · Properties · Markdown · R · GDScript
292
301
 
package/gen-context.js CHANGED
@@ -8102,7 +8102,7 @@ __factories["./src/mcp/server"] = function(module, exports) {
8102
8102
 
8103
8103
  const SERVER_INFO = {
8104
8104
  name: 'sigmap',
8105
- version: '7.24.1',
8105
+ version: '7.25.0',
8106
8106
  description: 'SigMap MCP server — code signatures on demand',
8107
8107
  };
8108
8108
 
@@ -13805,7 +13805,7 @@ function __tryGit(args, opts = {}) {
13805
13805
  catch (_) { return ''; }
13806
13806
  }
13807
13807
 
13808
- const VERSION = '7.24.1';
13808
+ const VERSION = '7.25.0';
13809
13809
  const MARKER = '\n\n## Auto-generated signatures\n<!-- Updated by gen-context.js -->\n';
13810
13810
 
13811
13811
  function requireSourceOrBundled(key) {
package/llms-full.txt CHANGED
@@ -9,13 +9,13 @@ the files relevant to the task — cutting tokens ~97% while keeping answers
9
9
  grounded. Deterministic, offline, no embeddings or vector database. Works with
10
10
  Claude, Cursor, GitHub Copilot, Aider, Windsurf, local LLMs, and MCP.
11
11
 
12
- # Version: 7.24.1 | Benchmark: sigmap-v7.0-main (2026-06-19)
13
- # Source: auto-generated from package.json, version.json, src/mcp/tools.js, src/config/defaults.js
12
+ # Version: 7.25.0 | Benchmark: sigmap-v7.25-main (2026-06-21)
13
+ # Source: auto-generated from package.json, version.json, benchmarks/latest.json, src/mcp/tools.js, src/config/defaults.js
14
14
  # Regenerate: npm run generate:llms | Validate: npm run validate:llms
15
15
 
16
16
  ---
17
17
 
18
- ## Core metrics (benchmark: sigmap-v7.0-main, 2026-06-19)
18
+ ## Core metrics (benchmark: sigmap-v7.25-main, 2026-06-21)
19
19
 
20
20
  | Metric | Without SigMap | With SigMap |
21
21
  |--------|----------------|-------------|
@@ -23,7 +23,7 @@ Claude, Cursor, GitHub Copilot, Aider, Windsurf, local LLMs, and MCP.
23
23
  | Token reduction | — | 97.0% average |
24
24
  | Task success proxy | 10% | 52.2% |
25
25
  | Prompts per task | 2.84 | 1.72 (39.4% fewer) |
26
- | Supported languages | — | 31 |
26
+ | Supported languages | — | 33 |
27
27
  | MCP tools | — | 15 |
28
28
  | npm runtime dependencies | — | 0 |
29
29
 
@@ -285,9 +285,9 @@ impact = {"depth":3,"includeSigs":true}
285
285
 
286
286
  ---
287
287
 
288
- ## Supported languages (35 extractors)
288
+ ## Supported languages (33 extractors)
289
289
 
290
- cpp, csharp, css, dart, dispatch, dockerfile, gdscript, generic, go, graphql, html, java, javascript, kotlin, markdown, php, properties, protobuf, python, r, ruby, rust, scala, shell, sql, svelte, swift, terraform, toml, typescript, typescript_react, vue, vue_sfc, xml, yaml
290
+ cpp, csharp, css, dart, dockerfile, gdscript, go, graphql, html, java, javascript, kotlin, markdown, php, properties, protobuf, python, r, ruby, rust, scala, shell, sql, svelte, swift, terraform, toml, typescript, typescript_react, vue, vue_sfc, xml, yaml
291
291
 
292
292
  ---
293
293
 
package/llms.txt CHANGED
@@ -9,8 +9,8 @@ the files relevant to the task — cutting tokens ~97% while keeping answers
9
9
  grounded. Deterministic, offline, no embeddings or vector database. Works with
10
10
  Claude, Cursor, GitHub Copilot, Aider, Windsurf, local LLMs, and MCP.
11
11
 
12
- # Version: 7.24.1 | Benchmark: sigmap-v7.0-main (2026-06-19)
13
- # Source: auto-generated from package.json, version.json, src/mcp/tools.js, src/config/defaults.js
12
+ # Version: 7.25.0 | Benchmark: sigmap-v7.25-main (2026-06-21)
13
+ # Source: auto-generated from package.json, version.json, benchmarks/latest.json, src/mcp/tools.js, src/config/defaults.js
14
14
  # Regenerate: npm run generate:llms | Validate: npm run validate:llms
15
15
 
16
16
  ## What SigMap solves
@@ -21,13 +21,13 @@ Claude, Cursor, GitHub Copilot, Aider, Windsurf, local LLMs, and MCP.
21
21
  - No blast-radius awareness before editing a hub file — `--impact` shows every file a change touches.
22
22
  - Pasted stack traces, CI logs, and JSON bloat the prompt — `squeeze` minimizes them and enriches the top frame from the symbol index.
23
23
 
24
- ## Core metrics (benchmark: sigmap-v7.0-main, 2026-06-19)
24
+ ## Core metrics (benchmark: sigmap-v7.25-main, 2026-06-21)
25
25
 
26
26
  - hit@5 retrieval: 75.6% vs 13.6% random baseline (5.6× lift)
27
27
  - Token reduction: 97.0% average across benchmark repos
28
28
  - Task success: 52.2% vs 10% without SigMap
29
29
  - Prompts per task: 1.72 vs 2.84 baseline (39.4% fewer)
30
- - Languages: 31 supported · MCP tools: 15
30
+ - Languages: 33 supported · MCP tools: 15
31
31
  - Dependencies: zero npm runtime dependencies · fully offline
32
32
 
33
33
  ## Quick start
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sigmap",
3
- "version": "7.24.1",
3
+ "version": "7.25.0",
4
4
  "description": "97% token reduction for AI coding. Extracts function & class signatures with TF-IDF ranking to feed only the right files to Claude, Cursor, Copilot, Aider, Windsurf, local LLMs & MCP. Zero dependencies, runs offline via npx.",
5
5
  "main": "packages/core/index.js",
6
6
  "exports": {
@@ -38,7 +38,10 @@
38
38
  "version:sync": "node scripts/sync-versions.mjs",
39
39
  "generate:llms": "node scripts/generate-llms.mjs",
40
40
  "validate:llms": "node scripts/validate-llms.mjs",
41
- "prepublishOnly": "node scripts/check-bundle.mjs && node scripts/check-version-meta.mjs && node scripts/generate-llms.mjs",
41
+ "metrics:latest": "node scripts/gen-benchmark-latest.mjs",
42
+ "metrics:sync": "node scripts/gen-benchmark-latest.mjs && node scripts/check-version-meta.mjs --fix && node scripts/sync-metrics.mjs && node scripts/generate-llms.mjs",
43
+ "check:metrics": "node scripts/gen-benchmark-latest.mjs --check && node scripts/check-version-meta.mjs && node scripts/sync-metrics.mjs --check",
44
+ "prepublishOnly": "node scripts/check-bundle.mjs && node scripts/gen-benchmark-latest.mjs --check && node scripts/check-version-meta.mjs && node scripts/sync-metrics.mjs --check && node scripts/generate-llms.mjs",
42
45
  "benchmark:grounding": "node scripts/run-hallucination-benchmark.mjs",
43
46
  "benchmark:llm-ablation": "node scripts/run-llm-ablation.mjs"
44
47
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sigmap-cli",
3
- "version": "7.24.1",
3
+ "version": "7.25.0",
4
4
  "description": "SigMap CLI wrapper — thin adapter for programmatic CLI invocation",
5
5
  "main": "index.js",
6
6
  "keywords": [
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sigmap-core",
3
- "version": "7.24.1",
3
+ "version": "7.25.0",
4
4
  "description": "SigMap core library — zero-dependency code signature extraction, retrieval, and security scanning",
5
5
  "main": "index.js",
6
6
  "keywords": [
package/src/mcp/server.js CHANGED
@@ -18,7 +18,7 @@ const { readContext, searchSignatures, getMap, createCheckpoint, getRouting, exp
18
18
 
19
19
  const SERVER_INFO = {
20
20
  name: 'sigmap',
21
- version: '7.24.1',
21
+ version: '7.25.0',
22
22
  description: 'SigMap MCP server — code signatures on demand',
23
23
  };
24
24