dsh-metaphysics 0.64.0 → 0.66.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
@@ -1,3 +1,81 @@
1
+ ## 0.66.0(2026-11-10,已发布)
2
+
3
+ > 本段主题:八字神煞对拍《问真神煞大全》+ **DeepSeek 派口径裁决**——17 条缺失神煞补齐(规则 42 → 59),并对四处历代分歧口径给出取舍与理由,另修一处「学堂/词馆从未生效」的真 bug。
4
+
5
+ ### DeepSeek 派口径裁决(本版价值核心)
6
+ 读了 55 章神煞古诀与 33 篇命理知识后,不再「照抄某一派」,凡遇分歧自行裁定并写明理由。四条裁决:
7
+
8
+ 1. **羊刃取十二长生帝旺本位**(阳干沿用历代无争议的甲卯丙午戊午庚酉壬子)。旧表把阴干记作「禄前一位」(乙辰丁未己未辛戌癸丑),但那一位在十二长生里是**衰**,不是帝旺——宋以后禄命家把阳干式硬套阴干留下的错位。今改阴干为帝旺位:乙寅、丁巳、己巳、辛申、癸亥。飞刃不再手写表,直接由羊刃逐干取六冲推得(甲酉、乙申、丙子、丁亥、戊子、己亥、庚卯、辛寅、壬午、癸巳),免两表再度走散。
9
+ 2. **福星贵人 丁 取亥**。本表所引《甲丙相邀入虎乡歌》原文作「戊猴己未丁宜亥」,旧表却写丁酉——与自家引的歌诀打架,属后世把「丁酉」这个干支名误当查法。改从歌诀,旧说保留在 rule 文本里备查。其余九干不动。
10
+ 3. **天罗地网两支成对即算 + 纳音法并行**。旧实现要求「戌亥俱全」(四支里必须同时出现戌与亥),而问真两法都不这么严:法一以年支/日支查余三支,戌见亥即算;法二以年柱纳音查日支(火命见戌亥为天罗,水土命见辰巳为地网,金木无)。旧实现漏掉大半命中。今两法并列,命中的起查柱与应柱都标出来,读盘时能追溯成因。
11
+ 4. **童子煞季节法与纳音法并行**。口诀「金木马卯合,水火鸡犬多,土命逢辰巳」是独立一法,旧实现只做季节法、把纳音法写成「流派多歧仅作参考」,等于漏了一半查法。今两法取并集。
12
+ 5. **年柱旬空单立一项(年空)**,与日柱旬空并标,不互相冒充。古法多取日柱旬空,年柱旬空另有一派,两派所据都是「本旬无支可用」,逻辑同构,故并列而不取此舍彼。
13
+
14
+ ### 修复:学堂/词馆在真实排盘里从未命中
15
+ `nayin(idx)` 返回的是纳音**名**(字符串),旧代码却写 `nayin(yearIdx).element`,恒为 `undefined`。后果是学堂、词馆(纳音长生/临官)与童子纳音法在**真实排盘**里一条都没生效过;单测没暴露,是因为它们直接给 `computeBaziShensha` 喂了 `yearNayinElement`。改为 `nayinOf(yearIdx).element`,并以端到端断言钉死(土命见申必出学堂,换成木命必不出)。
16
+
17
+ ### 神煞大全 55 章对拍补缺(17 条新增)
18
+ - 口径全部按《问真神煞大全》55 章实读钉死(问真课堂 www.iwzbz.com)。新增:天德合、血刃、勾绞煞(按性别取勾/绞位)、红艳煞、孤鸾煞、元辰(按性别取阳男阴女/阴男阳女位)、天转、地转、丧门、吊客、披麻、十灵日、八专、九丑、学堂(年纳音长生查法)、词馆(年纳音临官查法)、拱禄(五日五时日时虚拱)。
19
+ - `engine/shensha.js`:`computeBaziShensha(pillars, kongwang, opts)` 增第三参 `{ gender, yearNayinElement, yearKongwang }`——gender 供勾绞煞/元辰辨阴阳男女,yearNayinElement 供学堂/词馆/童子纳音法/天罗地网纳音法,yearKongwang 供年空。`engine/bazi.js` 调用时传 `gender`、年柱纳音五行、年柱旬空。
20
+ - 新测试 `test/shensha-wenzhen.test.mjs`:17 条逐条命中 + 学堂/词馆不查年支本身 + 元辰性别取位 + RULE_TABLE 注册齐 + 真实命例回归,42 PASS。
21
+ - 新测试 `test/school-rulings.test.mjs`:55 PASS,逐条钉住上述五条裁决——包括反证断言(乙日见辰不再算羊刃、丁日见酉不再算福星、金木命不因纳音见亥而误报天罗),以及 rule 文本必须写明取舍理由。
22
+ - 断言基线 9019 → 9074(167 个文件)。
23
+
24
+ ## 0.65.0(2026-11-10,已发布)
25
+
26
+ > 本段主题(2026-11-10):文墨未渲染数据补渲染——运曜/流曜、来因宫、限流十二神、日干四化、非节气四柱、太极点转换落地;「显示设置」扩到 17 项。
27
+
28
+ ### 非节气四柱落地 +「显示非节气四柱」开关(第 16 项)
29
+ - 口径(紫微斗数排盘口径,与 Steemit 瑞悦玄承专文对拍):紫微按农历排盘——年柱以正月初一换岁、月柱按农历月配五虎遁;日柱时柱与节气版一致。与八字(节气)四柱只在立春前后出生者上年/月两柱有分歧。
30
+ - 引擎:`engine/ziwei.js` 结果对象新增 `nonJieqi: {year, month, day, hour, note}`(农历年干支 + 农历月五虎遁 + 日柱时柱)。
31
+ - 冒烟:1990-02-01(立春前)非节气 `庚午戊寅…` vs 八字 `己巳丁丑…` ✓;1990-05-12 普通日期两者全同 ✓。
32
+ - 面板:中宫四柱行下新增非节气行(带「非节气」小标签),默认隐藏,勾选第 16 开关才显示。
33
+ - 断言基线 9010 → 9019。
34
+
35
+ ### 太极点转换信息 +「显示太极点转换信息」开关(第 17 项)
36
+ - 口径(「一物一太极」,多源一致):以任一宫为新命宫重布十二宫名——如以官禄宫立太极,则官禄为新命宫,按本命宫名序依次重排。
37
+ - 面板:点宫详情新增「太极转换」行 `以某宫[支]立太极 命宫[…] 兄弟[…] …`,默认隐藏,勾选第 17 开关才显示。纯展示,不改排盘数据。
38
+
39
+ ### 日干四化落地 +「显示日干四化」开关(第 15 项)
40
+ - 口径:取日柱天干查十干四化表,四颗化星(禄权科忌)落宫标注。日柱经 `window.Engine.buildBazi`(与中宫四柱同源);四化表借 `daxianList[]` 里宫干等于日干那一宫的 `mutagenHits`(十二宫宫干覆盖十干,即同一张十干四化表)。
41
+ - 面板:宫格下方新增 `.pp-rigan` 一行 `日干丁四化 禄太阴·戌命宫 权天同·寅官禄 科天机·午财帛 忌巨门·子福德`,四化字着禄权科忌四色;默认隐藏,勾选第 15 开关「显示日干四化」(飞星派显示组)才显示。
42
+ - 冒烟:1990-05-12(丁亥日)四颗化星与落宫全对 ✓;`test/display-toggles.test.mjs` 62 条(新增真实渲染断言)。
43
+ - 断言基线 9001 → 9010。
44
+
45
+ ### 限流十二神随限流变化(iztro 口径)
46
+ - 口径(iztro `FunctionalAstrolabe._getHoroscopeBySolarDate` 实读钉死):随流年/大限**重安的只有岁前与将前两组**(`yearlyDecStar: getYearly12(solarDate)`);长生十二神、博士十二神只在本命排一次,horoscope scope 不重算。
47
+ - 引擎:`engine/ziwei.js` 新增 `suiqiByBranch(branch, suipoSchool)`(流支起岁建顺数,中州派大耗改岁破)与 `jiangqianByBranch(branch)`(寅午戌起午、申子辰起子、巳酉丑起酉、亥卯未起卯);`daxianList[]` 挂 `yunSuiqi/yunJiangqian`、流年项挂 `lnSuiqi/lnJiangqian`。
48
+ - 面板:并入 `.pp-hs` 小字行(勾选「显示运曜和流曜」即可见,不再另设开关);大限 12 宫全有、流年 12 宫全有。
49
+ - 冒烟:戌限 `岁建戌…病符酉`、将星起午 ✓;2026 丙午 `岁建午…病符巳` ✓。
50
+
51
+ ### 来因宫落地(iztro 口径)+「显示来因宫」开关
52
+ - 口径(iztro `isOriginalPalace`):生年天干与宫干相同的宫,子丑两宫除外(五虎遁下这两支永不对应生年干)。
53
+ - 引擎:`engine/ziwei.js` 结果新增 `laiyin: {branch, palace, ganzhi}`。
54
+ - 面板:来因宫右上角「因」角标(与身宫左上「身」对称,忌色底),第 14 个显示开关 `显示来因宫`(四化派组,默认勾,取消即藏)。
55
+ - 测试:`test/ziwei.test.mjs` 新增 12 年干 × 3 条断言(不在子丑、唯一且字段一致、与五虎遁独立重算一致),102 PASS;基线 8962 → **9001 条 PASS**。
56
+
57
+ ### 运曜/流曜落地(限流星曜按 iztro 口径)
58
+ - 口径从 iztro 源码实读钉死(`star/horoscopeStar.ts` + `star/location.ts`):按运限/流年干支用本命同表安 10 颗——魁钺禄羊陀按干、天马按支三合、红鸾天喜按支(卯起逆数)、昌曲按干(本命按时支,唯一差异);年解戌起子逆数。火铃不随限流重安。前缀:大限运X、流年流X。
59
+ - 引擎:`engine/ziwei.js` 新增 `horoscopeStarsOf` / `horoscopeStarsByBranch`;`daxianList[]` 每项挂 `yunStars`(10 颗按宫摊);流年结果补 流昌/流曲/流马/流鸾/流喜/年解 六键。
60
+ - 面板:大限/流年视图宫格内新增 `.pp-hs` 小字行(如「运昌酉 流鸾酉」),第 13 个显示开关 `显示运曜和流曜`(默认不勾,勾了才显示——纯增强,默认观感不变)。
61
+ - 「显示设置」12 项 → 13 项;`test/display-toggles.test.mjs` 50 → 51 条;基线 8960 → **8962 条 PASS**。
62
+
63
+ ### 新增文墨式「显示设置」12 项(纯 CSS 显隐)
64
+ - 面板新增 `<details>` 折叠工具条,分「飞星派显示 / 四化派显示 / 限流盘显示」三组,勾了盘面立刻变,**不重排盘、不进引擎、不进工具 schema**(35 个独立参数会撑爆 schema 预算)。
65
+ - 组1 飞星派 5 项:显示神煞(十二神文字)、三台八座恩光天贵、彩色箭头标识自化、流年虚岁年龄、中宫八字;组2 四化派 4 项:显示小星、显示身宫、显示命宫四化、显示三方四正;组3 限流盘 3 项纯增强:自化箭头加粗、六煞星黑字、主辅星加粗。
66
+ - 实现走 CSS 兄弟选择器:复选框是 `.pp` 直接子元素且排在 `.pp-body` / `.pp-zhlegend` 之前;组1/2 默认勾(`:not(:checked)` 才隐藏),组3 默认不勾(`:checked` 才增强)→ **默认盘观感逐字节不变**。
67
+ - 只给四颗日系吉星追加 `.st-sbg`、只给十二神文字包 `.pp-ss-txt`;十四主星仍是字面 `<span class="pp-st main">`,`pp-shen::after` / `pp-tri` 原规则均保留,不动既有顺序断言。
68
+ - 浏览器实测 12 个开关逐个切换:7 组隐藏 `display:none`、身宫角标 `::after{display:none}`、三方连线 `display:none`、3 组增强 `stroke-width:2.8px` / 黑字 / `font-weight:700`,全部生效。
69
+ - 测试:新增 `test/display-toggles.test.mjs` 49 条(结构与默认态、CSS 接线、目标可寻址、不改排盘数据、不碰引擎/schema);基线 164 文件 8911 → **165 文件 8960 条 PASS**。
70
+
71
+ ### 新增第十五、十六类流派开关:截路空亡 / 岁前十二神(中州派)
72
+ - jieluSchool 截路空亡:off 照常(默认)/ zhongzhou 整组不排。只动杂曜清单,不动宫盘。
73
+ - suipoSchool 岁前十二神:off 照常(默认)/ zhongzhou 把「大耗」改记作「岁破」,宫位不变、只换名字。
74
+ - 两把开关独立可选;与 tianshiTianshang 的 zhongzhou 档无耦合。
75
+ - 中州派剩余四处差异至此全部落地:命主取法、四化科、天使天伤位置、截路空亡有无、岁前十二神大耗改岁破。
76
+ - 接线四处:ZIWEI_SCHOOL_KEYS、OPTION_KEYS、OPTION_HINTS、SYSTEM_PARAMS.ziwei、口径对照表各加两档。
77
+ - 测试:开关扩到十六类,紫微对照 18 组,口径卡 18 行;schema-budget 参数 92 个。
78
+
1
79
  ## 0.64.0(2026-11-10,已发布)
2
80
 
3
81
  > 本段主题(2026-11-10):自化从「虚下划线徽章」换成文墨天机式的彩色小箭头,修掉 push-tag / autopublish 的 SSH 兜底在这台机上必崩的问题,并按文墨设置树补上「流年四化取干」「十干四化变体」「命主取法」三档口径。**默认盘逐字节不变**:新增开关的默认值等于旧行为。