记下王者格遍历集合导致顺序随哈希种子变化。

这是改英文之前就有的现象。本轮只记录,不改排序。

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
jesse-ux
2026-10-22 09:58:20 +08:00
co-authored by Grok (agent loop) Cursor
parent adfa98bf97
commit 184880e8d5
+16
View File
@@ -37115,3 +37115,19 @@
- 相关记录:BUG-1413、BUG-1272、BUG-1218。issue #89。本条在合并 staging 后从与 #86 相撞的 BUG-1411 改为 BUG-1414。
- 复发自:无。与 BUG-1272 同一类末尾替换,单独记吃空格和错译。
- 修复版本:分支 `codex/report-english-han-leak-20261021`。
## BUG-1415 | 王者格配对顺序随 PYTHONHASHSEED 变化
- 状态:investigating
- 首次发现:2026-10-21(英文版中文逐字节对比)
- 最近更新:2026-10-22
- 影响面:`scripts/yogas_doshas.py` 的 `calc_raj_yogas`
- 用户现象:同一张盘的王者格,两次生成可能配上不同的行星。不固定哈希种子时,中文完整数据版逐字节对不上。
- 触发条件:进程没有设置 `PYTHONHASHSEED`。`dual_lords`、`pure_kendra_lords`、`pure_trikona_lords` 都是集合,遍历顺序随哈希种子变。
- 根因:遍历 `set`。英文版改动之前就这样。本轮不改排序。
- 修复:无。
- 验证:固定 `PYTHONHASHSEED=0` 后做中文逐字节对比。不固定种子时顺序仍会变。
- 防复发:以后要固定顺序时,遍历前排序,并加不依赖哈希种子的回归。不要在本条未修之前把中文逐字节对比做成不设种子的门禁。
- 相关记录:BUG-1413。issue #89 修复单顺手记下。
- 复发自:无。
- 修复版本:未修。