sigmap 5.7.0 → 5.9.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 +43 -0
- package/README.md +6 -6
- package/gen-context.js +70 -2
- package/package.json +1 -1
- package/packages/cli/package.json +1 -1
- package/packages/core/package.json +1 -1
- package/src/mcp/server.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -10,6 +10,49 @@ Format: [Semantic Versioning](https://semver.org/)
|
|
|
10
10
|
|
|
11
11
|
---
|
|
12
12
|
|
|
13
|
+
## [5.9.0] — 2026-04-18
|
|
14
|
+
|
|
15
|
+
### Added
|
|
16
|
+
|
|
17
|
+
- **`sigmap bench --submit`** — new CLI command that reads `version.json` + local `.context/benchmark-history.ndjson` and formats a shareable community benchmark submission block (text and `--json`).
|
|
18
|
+
- **`scripts/verify-checksums.mjs`** — new standalone script to verify a downloaded binary against its `.sha256` checksum file; exits 0 on match, 1 on mismatch.
|
|
19
|
+
- **SHA-256 checksum generation in `build-binary.mjs`** — each binary build now writes a matching `dist/<artifact>.sha256` file automatically.
|
|
20
|
+
- **22 integration tests** in `test/integration/v590-binary-polish.test.js` covering all acceptance criteria.
|
|
21
|
+
|
|
22
|
+
### Changed
|
|
23
|
+
|
|
24
|
+
- **`scripts/verify-binary.mjs`** — extended smoke tests with 5 new checks (tests 6–10): `ask`, `weights`, `history`, `bench --submit`, and `bench --submit --json`.
|
|
25
|
+
- **`version.json`** — bumped to `5.9.0`, `benchmark_id` updated to `sigmap-v5.9-main`.
|
|
26
|
+
- **`test/integration/v580-trust-completion.test.js`** — version assertion relaxed from exact `5.8.0` to `>= 5.8.0` so future releases don't break the test.
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## [5.8.0] — 2026-04-18
|
|
31
|
+
|
|
32
|
+
### Added
|
|
33
|
+
|
|
34
|
+
- **`docs-vp/guide/compare-alternatives.md`** — new page comparing SigMap vs embeddings/RAG, RepoMix, Copilot context, and manual curation with side-by-side tables.
|
|
35
|
+
- **`docs-vp/guide/walkthrough.md`** — end-to-end walkthrough on a real repo (gin): ask → validate → judge → learn, with before/after token and cost table.
|
|
36
|
+
- **Canonical benchmark header block** — `:::info` snapshot block added to all 5 benchmark guide pages (benchmark, retrieval, task, quality, generalization), each referencing `sigmap-v5.8-main`.
|
|
37
|
+
- **30-second demo strip** — homepage `docs/index.html` now shows a terminal demo section (ask → validate → judge) directly below the stats bar.
|
|
38
|
+
- **User-type routing table** — `docs-vp/index.md` landing now opens with a "Who is this for?" table routing new users, daily users, team setup, MCP users, and monorepo evaluators.
|
|
39
|
+
- **Both new guide pages in sidebar** — `compare-alternatives` and `walkthrough` added under a new "Guides" section in `docs-vp/.vitepress/config.mts`.
|
|
40
|
+
- **`version.json` — `retrieval_lift` field** — `metrics.retrieval_lift: 5.9` added; `version` bumped to `5.8.0`; `benchmark_id` updated to `sigmap-v5.8-main`.
|
|
41
|
+
- **33 new integration tests** in `test/integration/v580-trust-completion.test.js` covering all 7 acceptance criteria.
|
|
42
|
+
|
|
43
|
+
### Changed
|
|
44
|
+
|
|
45
|
+
- **`version.json`** — bumped to `5.8.0`, `benchmark_id` updated to `sigmap-v5.8-main`.
|
|
46
|
+
- **SVG metrics** — `docs/impact-banner.svg`: `78.9%→80.0%` hit@5, `1.69→1.68` prompts, `40.6%→40.8%` prompt reduction card, "hallucinates" replaced with "unsupported answers"; `docs/comparison-chart.svg`: `78.9%→80.0%`.
|
|
47
|
+
- **`docs/index.html`** — `softwareVersion` structured-data updated to `5.8.0`; stats bar language count corrected from `21` to `29`.
|
|
48
|
+
- **`docs/readmes/vscode-extension.md`** — language count updated from `21` to `29 languages and formats` in badge, table, and architecture diagram.
|
|
49
|
+
- **`docs-vp/index.md`** — tagline updated to remove stale v5.5 text; `v5.7.0` snapshot reference updated to `v5.8.0`; stale v5.5 launch strip replaced with v5.8 announcement.
|
|
50
|
+
- **Benchmark sub-pages** — `retrieval-benchmark.md`, `task-benchmark.md`, `quality-benchmark.md`, `generalization.md` all updated to `v5.8.0` as latest saved run.
|
|
51
|
+
- **`generalization.md`** — adds "Why this matters" intro callout; stale `v5.5.0` snapshot reference updated to `v5.8.0`.
|
|
52
|
+
- **`v560-docs-sync` tests** — version assertions updated to accept `v5.8.0` as the current benchmark version.
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
13
56
|
## [5.7.0] — 2026-04-17
|
|
14
57
|
|
|
15
58
|
### Added
|
package/README.md
CHANGED
|
@@ -25,13 +25,13 @@ npx sigmap # 10 seconds. zero config. your AI never reads the wrong file again
|
|
|
25
25
|
- Fewer retries (1.68 vs 2.84 prompts per task)
|
|
26
26
|
- Far smaller context (~2K–4K tokens instead of ~80K)
|
|
27
27
|
|
|
28
|
-
> Latest: **v5.
|
|
28
|
+
> Latest: **v5.9.0** — Binary Polish & Community Benchmarks. SHA-256 checksum generation for binaries, `sigmap bench --submit` for community benchmark sharing, extended binary smoke tests covering the full v5.x workflow.
|
|
29
29
|
|
|
30
|
-
**What's new in v5.
|
|
31
|
-
-
|
|
32
|
-
-
|
|
33
|
-
-
|
|
34
|
-
-
|
|
30
|
+
**What's new in v5.9**
|
|
31
|
+
- `sigmap bench --submit` — formats local benchmark history as a shareable community block (text and `--json`)
|
|
32
|
+
- Binary builds now write a `.sha256` checksum file alongside each artifact
|
|
33
|
+
- `scripts/verify-checksums.mjs` — verify any downloaded binary against its checksum
|
|
34
|
+
- Extended `verify-binary.mjs` smoke tests: `ask`, `weights`, `history`, `bench --submit`
|
|
35
35
|
|
|
36
36
|
**Daily workflow**
|
|
37
37
|
|
package/gen-context.js
CHANGED
|
@@ -5291,7 +5291,7 @@ __factories["./src/mcp/server"] = function(module, exports) {
|
|
|
5291
5291
|
|
|
5292
5292
|
const SERVER_INFO = {
|
|
5293
5293
|
name: 'sigmap',
|
|
5294
|
-
version: '5.
|
|
5294
|
+
version: '5.9.0',
|
|
5295
5295
|
description: 'SigMap MCP server — code signatures on demand',
|
|
5296
5296
|
};
|
|
5297
5297
|
|
|
@@ -7009,7 +7009,7 @@ const path = require('path');
|
|
|
7009
7009
|
const os = require('os');
|
|
7010
7010
|
const { execSync } = require('child_process');
|
|
7011
7011
|
|
|
7012
|
-
const VERSION = '5.
|
|
7012
|
+
const VERSION = '5.9.0';
|
|
7013
7013
|
const MARKER = '\n\n## Auto-generated signatures\n<!-- Updated by gen-context.js -->\n';
|
|
7014
7014
|
|
|
7015
7015
|
function requireSourceOrBundled(key) {
|
|
@@ -9081,6 +9081,74 @@ function main() {
|
|
|
9081
9081
|
process.exit(0);
|
|
9082
9082
|
}
|
|
9083
9083
|
|
|
9084
|
+
// v5.9: `sigmap bench --submit` — format local benchmark history as a shareable community block
|
|
9085
|
+
if (args[0] === 'bench' && args.includes('--submit')) {
|
|
9086
|
+
const versionMeta = (() => {
|
|
9087
|
+
try { return JSON.parse(fs.readFileSync(path.join(__dirname, 'version.json'), 'utf8')); }
|
|
9088
|
+
catch (_) { return {}; }
|
|
9089
|
+
})();
|
|
9090
|
+
|
|
9091
|
+
const histPath = path.join(cwd, '.context', 'benchmark-history.ndjson');
|
|
9092
|
+
let localMetrics = null;
|
|
9093
|
+
if (fs.existsSync(histPath)) {
|
|
9094
|
+
try {
|
|
9095
|
+
const entries = fs.readFileSync(histPath, 'utf8').trim().split('\n')
|
|
9096
|
+
.map((l) => { try { return JSON.parse(l); } catch (_) { return null; } }).filter(Boolean);
|
|
9097
|
+
const ret = [...entries].reverse().find((e) => e.type === 'retrieval');
|
|
9098
|
+
const tok = [...entries].reverse().find((e) => e.type === 'token-reduction');
|
|
9099
|
+
if (ret || tok) {
|
|
9100
|
+
localMetrics = {
|
|
9101
|
+
hitAt5Pct: ret ? (ret.hitAt5Pct || Math.round((ret.hitAt5 || 0) * 100)) : null,
|
|
9102
|
+
reductionPct: tok ? (tok.reduction || tok.avgReductionPct || null) : null,
|
|
9103
|
+
runDate: (ret || tok).ts ? new Date((ret || tok).ts).toISOString().slice(0, 10) : null,
|
|
9104
|
+
};
|
|
9105
|
+
}
|
|
9106
|
+
} catch (_) {}
|
|
9107
|
+
}
|
|
9108
|
+
|
|
9109
|
+
const canonical = versionMeta.metrics || {};
|
|
9110
|
+
const submission = {
|
|
9111
|
+
sigmapVersion: versionMeta.version || 'unknown',
|
|
9112
|
+
benchmarkId: versionMeta.benchmark_id || 'unknown',
|
|
9113
|
+
canonicalHitAt5: canonical.hit_at_5 != null ? Math.round(canonical.hit_at_5 * 1000) / 10 : null,
|
|
9114
|
+
canonicalReduction: canonical.overall_token_reduction_pct || null,
|
|
9115
|
+
local: localMetrics,
|
|
9116
|
+
submittedAt: new Date().toISOString().slice(0, 10),
|
|
9117
|
+
};
|
|
9118
|
+
|
|
9119
|
+
if (args.includes('--json')) {
|
|
9120
|
+
process.stdout.write(JSON.stringify(submission, null, 2) + '\n');
|
|
9121
|
+
} else {
|
|
9122
|
+
const bar = '─'.repeat(56);
|
|
9123
|
+
const lines = [
|
|
9124
|
+
bar,
|
|
9125
|
+
' SigMap Community Benchmark Submission',
|
|
9126
|
+
bar,
|
|
9127
|
+
` SigMap version : ${submission.sigmapVersion}`,
|
|
9128
|
+
` Benchmark ID : ${submission.benchmarkId}`,
|
|
9129
|
+
` Submitted : ${submission.submittedAt}`,
|
|
9130
|
+
bar,
|
|
9131
|
+
' Canonical metrics (official release):',
|
|
9132
|
+
` hit@5 : ${submission.canonicalHitAt5 != null ? submission.canonicalHitAt5 + '%' : 'n/a'}`,
|
|
9133
|
+
` token reduction: ${submission.canonicalReduction != null ? submission.canonicalReduction + '%' : 'n/a'}`,
|
|
9134
|
+
];
|
|
9135
|
+
if (localMetrics) {
|
|
9136
|
+
lines.push(bar, ' Local run metrics (this repo):');
|
|
9137
|
+
if (localMetrics.hitAt5Pct != null) lines.push(` hit@5 : ${localMetrics.hitAt5Pct}%`);
|
|
9138
|
+
if (localMetrics.reductionPct != null) lines.push(` token reduction: ${localMetrics.reductionPct}%`);
|
|
9139
|
+
if (localMetrics.runDate) lines.push(` run date : ${localMetrics.runDate}`);
|
|
9140
|
+
} else {
|
|
9141
|
+
lines.push(bar, ' Local run metrics: none yet — run node scripts/run-retrieval-benchmark.mjs');
|
|
9142
|
+
}
|
|
9143
|
+
lines.push(bar);
|
|
9144
|
+
lines.push(' Paste the block above into a GitHub Discussion to share your results.');
|
|
9145
|
+
lines.push(' https://github.com/manojmallick/sigmap/discussions');
|
|
9146
|
+
lines.push(bar);
|
|
9147
|
+
console.log(lines.join('\n'));
|
|
9148
|
+
}
|
|
9149
|
+
process.exit(0);
|
|
9150
|
+
}
|
|
9151
|
+
|
|
9084
9152
|
// v5.2: `sigmap learn` — manual learning controls for ranking
|
|
9085
9153
|
if (args[0] === 'learn') {
|
|
9086
9154
|
const doReset = args.includes('--reset');
|
package/package.json
CHANGED
package/src/mcp/server.js
CHANGED