dsh-engramory-recall 0.5.2 → 0.5.3
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 +10 -0
- package/README.md +11 -4
- package/package.json +4 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,16 @@
|
|
|
3
3
|
本项目的所有重要变更都记在这里。格式参照 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.1.0/),
|
|
4
4
|
版本号遵循 [语义化版本](https://semver.org/lang/zh-CN/)。
|
|
5
5
|
|
|
6
|
+
## [0.5.3] — 2026-10-15
|
|
7
|
+
|
|
8
|
+
### 新增
|
|
9
|
+
|
|
10
|
+
- **合成基准变成一道可执行的门**:`npm run bench:check` 把这次跑出来的数字跟 `bench/expectations.json` 对账,任何一项偏差超过 2 个百分点就退出非零;桥组与 verbatim 组要求满分(它们掉下来就是改坏了)。分数低不红 —— 绝对值会随语料演化,卡死绝对值只会逼人改尺子;数字悄悄漂走才红。CI 已接上这一步。
|
|
11
|
+
|
|
12
|
+
### 文档
|
|
13
|
+
|
|
14
|
+
- 「测试与自检」补上基准自检这一条,并说明 CI 跑的是哪两件事。
|
|
15
|
+
|
|
6
16
|
## [0.5.2] — 2026-10-15
|
|
7
17
|
|
|
8
18
|
### 文档
|
package/README.md
CHANGED
|
@@ -89,7 +89,9 @@
|
|
|
89
89
|
224 篇程序生成的笔记(中文书面 99 / 英文术语 85 / 口语体 40,其中 42 篇写了 `aliases`)、
|
|
90
90
|
683 条查询、固定随机种子。查询按三种风格分开记分:`verbatim` 抄笔记自己的写法(对照组)、
|
|
91
91
|
`colloquial` 只用口语说法(与正文没有字面重叠)、`keyword` 口语症状加域特征词
|
|
92
|
-
|
|
92
|
+
(同域候选很多,必须靠事件词分辨)。语料是程序生成的,不依赖任何私人库,任何人可复算:
|
|
93
|
+
`npm run bench` 整跑 4 秒,零依赖、零网络,消融表里对我们不利的那几行也照打(去掉字段加权反而高 4 个百分点),
|
|
94
|
+
CI 里再跑一遍 `npm run bench:check` 跟 `bench/expectations.json` 对账。
|
|
93
95
|
|
|
94
96
|
| 引擎 | 总 hit@1 | 总 hit@4 | verbatim | colloquial | keyword |
|
|
95
97
|
|---|---|---|---|---|---|
|
|
@@ -505,10 +507,15 @@ npm test # 分词 / BM25 / 切桶 / 门控 / 闸门 / 索引闸门 / 技
|
|
|
505
507
|
npm run check # 接线自检:配置键认不认、库路径对不对、装的是哪一份、包清单漏没漏文件
|
|
506
508
|
npm run probe # 召回质量探针:3 组 query + 三道对照,跑在真实记忆库上
|
|
507
509
|
npm run probe -- --save # 把这次结果存成基线,之后每次跑自动比对
|
|
508
|
-
|
|
510
|
+
npm run bench:check # 合成基准 + 和 bench/expectations.json 对账(CI 跑的就是它)
|
|
509
511
|
```
|
|
510
512
|
|
|
511
|
-
|
|
513
|
+
CI 跑 `npm test` 和 `npm run bench:check` 两件事。后者是防「数字悄悄漂走」的:任何一项
|
|
514
|
+
跟期望值的偏差超过 2 个百分点就红,桥组与 verbatim 组要求满分(它们掉下来就是我们改坏了)。
|
|
515
|
+
分数低不红 —— 绝对值会随语料演化,卡死绝对值只会逼人去改尺子;漂了才红,因为那说明
|
|
516
|
+
要么是回归、要么是刻意改动而没人说清楚。
|
|
517
|
+
|
|
518
|
+
上面这些命令是克隆仓库开发时用的:`test/`、`scripts/`、`bench/` 不在 npm 包的 `files` 白名单里。
|
|
512
519
|
发布出去的是运行时真正需要的那十几个文件(`npm pack --dry-run` 可核),
|
|
513
520
|
其中 `package.test.mjs` 会从 `index.js` 递归跟所有 `./x.js` 的 import,逐个核对是否都在白名单里。
|
|
514
521
|
这个检查已经抓到过两次真事故(漏 `audit.js`、漏 `archive.js`),两次的后果都是
|
|
@@ -518,7 +525,7 @@ node bench/run.mjs # 合成基准(含消融与参数扫描)
|
|
|
518
525
|
库路径指空、profile 里跑的不是你改的那份、`files` 白名单漏文件、这一行被 `enabled: false` 关掉。
|
|
519
526
|
它顺带跑一遍 `node --check` 校验客户端 bundle 的语法(面板写坏了不会连累宿主加载)。
|
|
520
527
|
唯一做不了的是活体守卫测试:守卫只拦 `write`/`edit` 工具调用,脚本写盘会绕过去,
|
|
521
|
-
所以脚本最后打印的是要由 agent
|
|
528
|
+
所以脚本最后打印的是要由 agent 亲手执行的两个方向探针(完整的四条见上面「写入闸门」一节的复现表)。
|
|
522
529
|
|
|
523
530
|
## 集百家之长
|
|
524
531
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-engramory-recall",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.3",
|
|
4
4
|
"description": "Local BM25 auto-recall, fail-closed write guard, static doctor and a memory panel for the Engramory markdown store — no network, no model, no daemon.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"dsh",
|
|
@@ -71,6 +71,8 @@
|
|
|
71
71
|
"scripts": {
|
|
72
72
|
"test": "node --test test/*.test.mjs",
|
|
73
73
|
"check": "node scripts/check-recall-wiring.mjs",
|
|
74
|
-
"probe": "node scripts/recall-probe.mjs"
|
|
74
|
+
"probe": "node scripts/recall-probe.mjs",
|
|
75
|
+
"bench": "node bench/run.mjs",
|
|
76
|
+
"bench:check": "node bench/run.mjs --check"
|
|
75
77
|
}
|
|
76
78
|
}
|