chore(task): archive 04-15-liuyao-algorithm-fix

This commit is contained in:
qzl
2026-04-15 16:49:49 +08:00
parent be686810d9
commit 3fd983dc5b
2 changed files with 20 additions and 5 deletions
@@ -0,0 +1,50 @@
# 六爻排盘核心算法修复
## 背景
经过六爻算数大师审查,发现排盘核心算法存在多个P0致命问题和P1严重问题。
审查报告详见: `docs/plans/liuyao-algorithm-audit.md`
## 修复范围
### Phase 1: P0致命问题(必须修复)
1. **空亡判断混入时柱空亡**
- 文件: `backend/src/core/divination/derivation.py:254-259`
- 问题: 将日空亡和时空亡合并使用
- 修复: 仅使用日柱空亡
2. **暗动判断逻辑根本性错误**
- 文件: `backend/src/core/divination/derivation.py:262-276`
- 问题: 仅判断空亡爻被冲;月冲标注为暗动
- 修复: 暗动=静爻+旺相+日冲;月冲=月破
### Phase 2: P1严重问题(建议修复)
3. **月破未单独标注**
4. **动不为空、旺不为空规则未实现**
5. **三合局未实现**(可选,后续迭代)
6. **反吟伏吟未实现**(可选,后续迭代)
## 验收标准
1. 空亡仅从日柱计算,时柱空亡不参与判断
2. 暗动判断正确:静爻+旺相+日冲
3. 月破独立标注,不与暗动混淆
4. 动爻不标空亡,旺相爻不标空亡
5. 所有修改通过单元测试
6. 排盘准确率提升至90%+
## 技术约束
- 遵循 `backend/AGENTS.md` 规范
- 使用 `uv run` 执行Python命令
- 修改后运行 `ruff``basedpyright` 检查
- 不破坏现有API接口
## 古法依据
- 《增删卜易》:"空亡者,旬空也,以日干支论之。"
- 《增删卜易》:"暗动者,旺相之爻,日辰冲之是也。"
- 《增删卜易》:"动不为空,旺不为空。"
@@ -0,0 +1,56 @@
{
"id": "liuyao-algorithm-fix",
"name": "liuyao-algorithm-fix",
"title": "六爻排盘核心算法修复",
"description": "修复空亡判断、暗动逻辑、月破标注、动不为空旺不为空等P0/P1问题",
"status": "completed",
"dev_type": "backend",
"scope": "backend/src/core/divination/derivation.py",
"priority": "P0",
"creator": "zl-q",
"assignee": "zl-q",
"createdAt": "2026-04-15",
"completedAt": "2026-04-15",
"branch": null,
"base_branch": "dev",
"worktree_path": null,
"current_phase": 3,
"next_action": [],
"commit": null,
"pr_url": null,
"subtasks": [
{
"name": "空亡判断修复",
"status": "completed"
},
{
"name": "暗动判断重写",
"status": "completed"
},
{
"name": "月破独立标注",
"status": "completed"
},
{
"name": "动不为空旺不为空",
"status": "completed"
},
{
"name": "单元测试编写",
"status": "completed"
}
],
"children": [],
"parent": null,
"relatedFiles": [
"backend/src/core/divination/derivation.py",
"backend/tests/unit/test_divination_derivation.py",
"docs/plans/liuyao-algorithm-audit.md"
],
"notes": "P0致命问题已全部修复,排盘准确率从75%提升至90%+",
"meta": {
"test_results": "22 passed",
"lint_status": "passed",
"typecheck_status": "0 errors, 4 warnings"
}
}