dsh-metaphysics 0.17.0 → 0.17.1
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 -1
- package/README.md +23 -8
- package/client.js +1 -1
- package/engine/geo.js +1 -1
- package/package.json +3 -2
package/CHANGELOG.md
CHANGED
|
@@ -2,7 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
版本按「一组可感知的改动」发,README 与市场条目描述随能力同步。
|
|
4
4
|
|
|
5
|
-
## 0.17.
|
|
5
|
+
## 0.17.1(未发布)
|
|
6
|
+
|
|
7
|
+
同步更新,**无运行时行为变化**:
|
|
8
|
+
|
|
9
|
+
- README 与仓库现状对齐:补齐奇门 / 合盘(八套体系)、0.16–0.17 的报告化与可核验能力、安装示例版本
|
|
10
|
+
- CI 自检加固:新增 `tools/check-bundle.mjs` 产物自检闸(逐模块编译 client.js、核对与源码一致),`test:ci`
|
|
11
|
+
先构建再检查;`ask.test` 不再读取仓库外的生成物
|
|
12
|
+
- 仅 UA 字符串随版本号更新(`dsh-metaphysics/0.17.1`),排盘逻辑与输出不变
|
|
13
|
+
|
|
14
|
+
## 0.17.0(已发布)
|
|
6
15
|
|
|
7
16
|
对应「晚子时开关 / 验前事 / 生时校正」三条用户反馈:
|
|
8
17
|
|
package/README.md
CHANGED
|
@@ -1,23 +1,37 @@
|
|
|
1
1
|
# dsh-metaphysics · 命理排盘
|
|
2
2
|
|
|
3
|
-
Chinese metaphysics for [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness): BaZi (Four Pillars), Zi Wei Dou Shu, LiuYao, MeiHua YiShu, Da Liu Ren and Tarot.
|
|
3
|
+
Chinese metaphysics for [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness): BaZi (Four Pillars), Zi Wei Dou Shu, LiuYao, MeiHua YiShu, Da Liu Ren, Qi Men Dun Jia, relationship compatibility and Tarot.
|
|
4
4
|
|
|
5
|
-
给 DeepSeek Harness
|
|
5
|
+
给 DeepSeek Harness 用的命理插件:**四柱八字、紫微斗数、六爻纳甲、梅花易数、大六壬、奇门遁甲、合盘、塔罗牌**,同时提供 Agent 工具与 Web 面板。
|
|
6
6
|
|
|
7
7
|
> 传统命理与占卜属文化娱乐用途,不构成医疗、投资、法律或生死判断的依据。
|
|
8
8
|
|
|
9
9
|
## 插件市场备注
|
|
10
10
|
|
|
11
|
-
**命理排盘 · 八字 / 紫微 / 六爻 / 梅花 / 六壬 / 塔罗** ——
|
|
11
|
+
**命理排盘 · 八字 / 紫微 / 六爻 / 梅花 / 六壬 / 奇门 / 合盘 / 塔罗** —— 一个插件把八套体系装进 Harness:对话里说一句就排盘,侧栏还有可视化面板。
|
|
12
12
|
|
|
13
13
|
- **八字**:42 颗神煞(分吉凶七类,天干星双查年干与日干、三合星双查年支与日支,悬停看查法)、日主旺衰量化并给出依据、格局与用神(月令取格 + 化气/专旺/从格 + 十神组合,每条附判定依据)、大运流年按喜忌五行与十神打分(大吉/吉/平/忌/大忌,可看逐项理由)
|
|
14
14
|
- **紫微**:十四主星与 49 星曜(主星带**庙旺得利平不陷**亮度标注)、四层十二神、生年四化与宫干自化、34 条格局(标吉/忌倾向与依据)、大限一览、流年四化落宫;本命/大限/流年三视图一键切换,命宫红框、三方四正浅底标出;竖屏与窄侧栏保持 4×4 宫盘(宫位相对位置不丢)
|
|
15
15
|
- **六爻**:摇卦或手动爻值、纳甲、六亲、六神、世应;本卦/变卦并列、真爻线渲染(阳爻整条、阴爻断开、动爻描红)
|
|
16
16
|
- **梅花**:时间/数字起卦、体用生克分档、互变错综四卦齐出,本卦上下卦分块标体用
|
|
17
17
|
- **大六壬**:天地盘 4×4 方盘(天盘大字、地盘小字、天将右下)、四课、九宗门三传、格局(贼克/元首/重审/伏吟/返吟/八专等)
|
|
18
|
+
- **奇门遁甲**:时家转盘,拆补 / 超神接气 / 置闰三流派取局;九宫、值符值使、空亡驿马、门迫与宫制门严格区分
|
|
19
|
+
- **合盘**:八字或紫微双盘对照(日主、夫妻宫、五行互补 / 互落宫、四化引动)
|
|
18
20
|
- **塔罗**:78 张全牌、1/3/5 张牌阵,逐牌牌位义 + 整体解读,体系与逆位口径写明
|
|
19
21
|
- 全部本地计算,不收集数据;结果供文化娱乐参考,不作医疗、投资、法律或生死判断
|
|
20
22
|
|
|
23
|
+
### 报告化与可核验(0.16 / 0.17 新增)
|
|
24
|
+
|
|
25
|
+
- **一页读懂 + 三张表**:整体/事业/财富/感情/节奏五条摘要;大运表、流年表、触发事件表(紫微是大限/流年/触发)
|
|
26
|
+
- **证据卡 + 置信度**:每条维度结论可展开到逐条盘面事实与所用技法,置信度按证据条数分强/中/弱
|
|
27
|
+
- **追问**:工具参数 `ask`,围绕已算好的盘回答「2027 年事业怎么样」这类问题;不重排、不猜测,找不到会明说
|
|
28
|
+
- **八字 × 紫微 交叉验证**:工具参数 `cross`,五项并列对照,标注同向 / 有张力 / 互补
|
|
29
|
+
- **晚子时开关**:23:00 后算次日还是当日,面板与独立页都能切;奇门另有「归当日 / 归次日」
|
|
30
|
+
- **验前事**:列出过去几年流年信号,自评准/不准/不确定后算贴合度;只读,不改盘
|
|
31
|
+
- **生时校正**:给定过去 2–3 件大事,对候选时辰逐一排盘打分排序;只缩小范围,不替代出生记录
|
|
32
|
+
- **导出**:`.md`(盘面 + 解析)与 PNG 摘要长图(Canvas 直出,零依赖);独立页支持打印/存 PDF
|
|
33
|
+
- **方法与验证页**:独立页内置静态页,写明对拍数据、测试与闸门、口径与已知边界
|
|
34
|
+
|
|
21
35
|
## 功能
|
|
22
36
|
|
|
23
37
|
### 四柱八字(bazi)
|
|
@@ -76,9 +90,9 @@ Chinese metaphysics for [DeepSeek Harness](https://github.com/deepseek-ai/deepse
|
|
|
76
90
|
- **八字 × 紫微 交叉验证**:工具参数 `cross`(或面板勾选)会用同一份出生信息再排另一套盘,对事业/财富/感情/身体/节奏五项并列对照,标注「同向 / 有张力 / 互补」;只作对照,不把两套体系折算成同一个分数
|
|
77
91
|
- **量化口径**:只量化引擎已有数据(十神权重、大运/流年档位、宫位与四化计数),**不换算金额、不给健康诊断**;报告里有「量化口径」分节写明这条边界
|
|
78
92
|
- **方法与验证**:独立页内置同页「方法与验证」(体系、128 条卦例对拍、53 个测试文件/1362 条断言、五道闸、口径与已知边界),离线可开
|
|
79
|
-
- **晚子时开关**:面板与独立页都能切「23:00 后算次日/当日」;奇门另可切「归当日/归次日」——这是排盘口径,不是结果重算
|
|
80
|
-
- **验前事**:八字报告下方列出过去 6 年流年信号,用户自评「准/不准/不确定」,算一个贴合度提示;只读、不改盘
|
|
81
|
-
- **生时校正**:输入过去 2–3 件大事(年份 + 类别),对候选时辰逐一排盘并按固定规则打分,返回候选排序——用于缩小时辰范围,不替代出生记录
|
|
93
|
+
- **晚子时开关**:面板与独立页都能切「23:00 后算次日/当日」;奇门另可切「归当日/归次日」——这是排盘口径,不是结果重算
|
|
94
|
+
- **验前事**:八字报告下方列出过去 6 年流年信号,用户自评「准/不准/不确定」,算一个贴合度提示;只读、不改盘
|
|
95
|
+
- **生时校正**:输入过去 2–3 件大事(年份 + 类别),对候选时辰逐一排盘并按固定规则打分,返回候选排序——用于缩小时辰范围,不替代出生记录
|
|
82
96
|
- **导出**:面板与独立页都能「导出 .md」(盘面 + 一页读懂 + 三张表 + 交叉验证 + 追问);独立页另有打印/存 PDF
|
|
83
97
|
- **推导可复核**:八字/紫微另有「看盘顺序」「时间窗」「交叉校验」「未纳入」四段——先看什么后看什么、未来几步大运与近五年流年、喜忌分量与运年是否同向、以及这套算法**没有**计算什么;六爻/六壬对应给「看卦/看课顺序」与「未纳入」。这些都从盘面数据推出,不新增断语
|
|
84
98
|
- **卦象**(六爻/梅花/大六壬)额外给:卦名与卦辞大意、爻辞与动爻、体用关系、互卦与变卦、落到生活里
|
|
@@ -115,7 +129,7 @@ dsh plugin install /path/to/dsh-metaphysics
|
|
|
115
129
|
### 从 tgz
|
|
116
130
|
|
|
117
131
|
```bash
|
|
118
|
-
dsh plugin install ./dsh-metaphysics-0.
|
|
132
|
+
dsh plugin install ./dsh-metaphysics-0.17.0.tgz
|
|
119
133
|
```
|
|
120
134
|
|
|
121
135
|
## 使用
|
|
@@ -178,7 +192,7 @@ npm run check:patterns # 单独跑工程约定检查
|
|
|
178
192
|
npm run release # 测试 → 构建 → 校验产物 → 发 npm(token 从 NPM_TOKEN 读)
|
|
179
193
|
```
|
|
180
194
|
|
|
181
|
-
也可以直接调脚本:`node tools/build-client.mjs`、`node tools/build-html.mjs`、`node tools/test-all.mjs`、`node tools/check-assertions.mjs`、`node tools/verify-tests-can-fail.mjs`、`node tools/check-html-sinks.mjs`、`node tools/check-patterns.mjs`、`node tools/release.mjs`。
|
|
195
|
+
也可以直接调脚本:`node tools/build-client.mjs`、`node tools/build-html.mjs`、`node tools/check-bundle.mjs`、`node tools/test-all.mjs`、`node tools/check-assertions.mjs`、`node tools/verify-tests-can-fail.mjs`、`node tools/check-html-sinks.mjs`、`node tools/check-patterns.mjs`、`node tools/release.mjs`。
|
|
182
196
|
|
|
183
197
|
**测试的四道闸 + 一道稳定性扫射**:
|
|
184
198
|
|
|
@@ -188,6 +202,7 @@ npm run release # 测试 → 构建 → 校验产物 → 发 npm(token
|
|
|
188
202
|
4. `tools/check-html-sinks.mjs`——`innerHTML` 里拼接的量必须经过白名单转义函数,否则 CI 直接红
|
|
189
203
|
5. `tools/check-patterns.mjs`——engine 不得引用浏览器/Node API 与 `console`,不得用 `var`/`debugger`,`new Date()` 与 `Math.random` 只允许出现在白名单文件
|
|
190
204
|
6. `test/fuzz.test.mjs`——固定种子的随机生日扫射八个体系,覆盖边界日期、参数矩阵与"同参数必得同结果"
|
|
205
|
+
7. `tools/check-bundle.mjs`——产物必须在**宿主形态**下能编译能跑:读 `client.js` 原文逐模块编译、模拟 `__ModuleLoader__` 执行 factory、校验 IIFE 收口与不可见分隔符,并要求产物与源码重构建逐字节一致(2026-10-25 的启动崩溃就是 Node 侧全绿、Chromium 侧语法错,这道闸专门守这个缝)
|
|
191
206
|
|
|
192
207
|
`client.js` 是构建产物,不要手改;改动记录见 [CHANGELOG.md](CHANGELOG.md)。
|
|
193
208
|
|
package/client.js
CHANGED
|
@@ -746,7 +746,7 @@ function resolveAddress(input) {
|
|
|
746
746
|
|
|
747
747
|
const DETAIL = /(区|县|镇|乡|村|小区|街道|路|号|巷|弄|组|队)/;
|
|
748
748
|
|
|
749
|
-
const USER_AGENT = 'dsh-metaphysics/0.17.
|
|
749
|
+
const USER_AGENT = 'dsh-metaphysics/0.17.1 (+https://github.com/xuanfu-web/dsh-metaphysics)';
|
|
750
750
|
|
|
751
751
|
async function onlineLookup(text, { timeoutMs = 2500 } = {}) {
|
|
752
752
|
if (typeof fetch !== 'function') return null;
|
package/engine/geo.js
CHANGED
|
@@ -143,7 +143,7 @@ const DETAIL = /(区|县|镇|乡|村|小区|街道|路|号|巷|弄|组|队)/;
|
|
|
143
143
|
|
|
144
144
|
/** OpenStreetMap Nominatim:免密钥、支持中文。失败返回 null。
|
|
145
145
|
* UA 按 OSM 使用政策要求写明应用与联系方式(改版本时同步这里)。 */
|
|
146
|
-
const USER_AGENT = 'dsh-metaphysics/0.17.
|
|
146
|
+
const USER_AGENT = 'dsh-metaphysics/0.17.1 (+https://github.com/xuanfu-web/dsh-metaphysics)';
|
|
147
147
|
|
|
148
148
|
async function onlineLookup(text, { timeoutMs = 2500 } = {}) {
|
|
149
149
|
if (typeof fetch !== 'function') return null;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-metaphysics",
|
|
3
|
-
"version": "0.17.
|
|
3
|
+
"version": "0.17.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "命理排盘 for DeepSeek Harness: eight systems — BaZi four pillars (42 shensha, pattern / useful-god / luck scoring), Zi Wei Dou Shu (34 patterns, 大限, 流年/流月/流日/流时四化), LiuYao with real line rendering, MeiHua YiShu, Da Liu Ren, Qi Men Dun Jia (chaibu / chaoshen / zhirun), compatibility charts (BaZi + Zi Wei) and Tarot; Ask(所问之事 + 询问方向)driven interpretation, plus a plain-language 解析与详解 module. Reproducible via seed/asOf. All computed locally, networking off by default — as an agent tool plus a Web panel.",
|
|
6
6
|
"keywords": [
|
|
@@ -74,9 +74,10 @@
|
|
|
74
74
|
"build": "node tools/build-client.mjs",
|
|
75
75
|
"build:html": "node tools/build-html.mjs",
|
|
76
76
|
"test": "node tools/test-all.mjs",
|
|
77
|
-
"test:ci": "node tools/test-all.mjs && node tools/check-assertions.mjs && node tools/verify-tests-can-fail.mjs && node tools/check-html-sinks.mjs && node tools/check-patterns.mjs",
|
|
77
|
+
"test:ci": "node tools/build-client.mjs && node tools/check-bundle.mjs && node tools/test-all.mjs && node tools/check-assertions.mjs && node tools/verify-tests-can-fail.mjs && node tools/check-html-sinks.mjs && node tools/check-patterns.mjs",
|
|
78
78
|
"test:baseline": "node tools/check-assertions.mjs --update",
|
|
79
79
|
"check:html": "node tools/check-html-sinks.mjs",
|
|
80
|
+
"check:bundle": "node tools/check-bundle.mjs",
|
|
80
81
|
"check:patterns": "node tools/check-patterns.mjs",
|
|
81
82
|
"release": "node tools/release.mjs"
|
|
82
83
|
}
|