# `ziping-strength-v1` 旺衰规则

本规则用于把“得令、得地、得助、克泄耗”转成可复核的程序判断。它是一个公开、确定性的工程模型，不宣称统一所有子平流派。

## 1. 先排四柱

- 输入为中国标准时间（UTC+08:00）的公历民用时间。
- 年柱以立春为界，月柱以节（十二节）为界。
- 换日支持两种显式配置：`midnight` 为 00:00 换日，`zi-hour` 为 23:00 换日。
- v1 不做经度修正或真太阳时换算。

历法部分使用 MIT 许可的 `lunar-typescript`。包装层不修改节气算法，只记录实际采用的规则。

## 2. 建立日主关系

以日干为日主。其余天干、藏干与日主的五行关系分为：

| 关系 | 对日主 | 对应十神 |
| --- | --- | --- |
| 同五行 | 生扶 | 比肩、劫财 |
| 他五行生日主 | 生扶 | 正印、偏印 |
| 日主生他五行 | 泄身 | 食神、伤官 |
| 日主克他五行 | 耗身 | 正财、偏财 |
| 他五行克日主 | 克身 | 正官、七杀 |

## 3. 收集证据

每条证据都带有来源路径、关系、方向、影响级别和说明：

| 证据 | 影响级别 | 决策量 |
| --- | --- | ---: |
| 月支本气（月令） | major | 3 |
| 年、月、时干明透 | moderate | 2 |
| 各支本气 | moderate | 2 |
| 各支中气、余气 | minor | 1 |

同类藏干记为“根”；印星记为“生扶”；食伤、财星、官杀记为“泄耗克”。月令与月支本气分别表达“得令”和“得地/受制”，因此会各自留下证据，而不是暗中去重。

“决策量”只用于让分档边界确定、可测试；它不是五行含量，也不是命理准确率或百分比。

## 4. 五档分级

令 `delta = 生扶决策量 - 泄耗克决策量`：

| delta | 结果 |
| ---: | --- |
| `>= 6` | 极强 `extremely-strong` |
| `2 .. 5` | 偏强 `strong` |
| `-1 .. 1` | 相对中和 `balanced` |
| `-5 .. -2` | 偏弱 `weak` |
| `<= -6` | 极弱 `extremely-weak` |

结果同时返回原始证据和合计值，调用方可以替换阈值或实现自己的分析器。

## 5. 特殊格局保护

v1 不直接判断从强、从弱、专旺、化气或假从。当常规证据出现以下极端结构时，返回 `needs-special-pattern-review`：

- 无同类根、生扶不超过 4、泄耗克不少于 12：候选从弱；
- 生扶不少于 12、泄耗克不超过 3：候选从强。

此时仍提供常规旺衰候选值，但置信度强制为 `low`，提醒调用方不能直接把它当作定格结果。

## 6. 明确不做的事

- 不输出“木 37%、火 22%”一类伪精确比例；
- 不自动取用神、喜忌或生成断语；
- 不处理合化是否成立、调候、刑冲合害造成的复杂增减力；
- `season-context-v1` 只并列输出节气距离、十二长生和旺相休囚死，不参与本模型决策量；
- 不把软件输出用于医疗、法律、财务等现实决策。

后续版本若增加规则，应新增模型版本，而不是静默改变 `ziping-strength-v1` 的结果。
