Commit Graph
3398 Commits
Author SHA1 Message Date
Jesse_ChenandClaude Opus 5.5 ac3dccbac8 fix(yoga): Chinese combination text from a Chinese source, not 未判定 (#91 fix2 F3, BUG-1418)
Removing the English-to-Chinese back-translation left every BVR semantic
note and every yogas_doshas raj/dhana "H*_Lord(...) in H*" sentence as
未判定 in the Chinese yoga table and pages.

- yoga_engine: semantic conditions return BiText(Chinese, old note). The
  Chinese comes from references/yoga_semantic_notes_zh.json, one sentence per
  note, so dedup keeps the same equality classes. English-only custom
  templates get the same lookup. combination_en is unchanged.
- yogas_doshas: raj/dhana rows add combination_zh; combination is unchanged.
- chinese_combination prefers a clean combination_zh.

Which yogas fire, their strength and category are unchanged (fictional
charts 0-19, same rows as staging; only set-iteration order differs).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HwMNZEzdzmrbPhuRNmZe3C
2026-10-22 21:55:02 +08:00
Jesse_ChenandClaude Opus 5.5 00c2b4d498 fix(report): six parity chapters read real packet records and sit at ## (#91 fix2 F1/F2/F4)
Eleven sections printed one-column tables of 未判定 and packet key names
(summary, p5, stats ...). They now read the nested records: KP profile and
ruling planets, Tara/Chandra combined rows, lagna vargottamamsa flags, LL/7L
P5/P8/exchange checks, Yoga Pinda planets and summary, Sodhita BAV totals and
Ekadhipatya audit, friendship method and bodies, multi-reference houses,
double-transit PAC targets, congregation houses, seven/eight karaka tables.
Argala, Birth Calendar, Tithi, Tajika candidates, Goel dignity and yoga
categories no longer print bare lower-case keys or enums either.

The six chapters are now ## and their sections ###, so the reader counts
six more chapters instead of seventy.

Tests: a section passes only with a real value outside the label column; no
table cell may be a raw key; heading counts equal the base report plus six.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HwMNZEzdzmrbPhuRNmZe3C
2026-10-22 21:44:51 +08:00
jesse-uxGrok (agent loop)Cursor
92b4e220f2 新六章有 12 节读错公开包字段,整节只剩未判定,而且六章绕过了口径替换。按资料包改读路径,先拼六章再统一替换措辞,并把中文附录实际丢掉的组合句数出来。
Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 18:51:54 +08:00
jesse-ux 365b1e647e Merge remote-tracking branch 'origin/staging' into codex/full-data-parity-1-20261021 2026-10-22 17:13:13 +08:00
Jesse_ChenandClaude Opus 5.5 42898f6ead docs(tasks): #91 stage A fix brief (agent loop, first rejection)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-22 17:11:01 +08:00
jesse-uxGrok (agent loop)Cursor
aed9de5374 记下完整数据版 A 段的盘点、与任务书不同的行,以及中英生成规模。
Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 16:23:04 +08:00
jesse-uxGrok (agent loop)Cursor
5aaae4690c 中文导出的分盘宫位列表改用中文星座名,英文列表仍用英文星座名。
Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 16:22:54 +08:00
jesse-uxGrok (agent loop)Cursor
4020c3958a 按六章补上已有数据的小附录,并把 Goel 强度与两种 Narayana 口径分开印出。
Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 16:22:45 +08:00
jesse-uxGrok (agent loop)Cursor
8444660f36 中文完整数据附录改为按中文源和结构化字段渲染,不再把英文附录回译成中文。
Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 16:22:25 +08:00
Jesse_ChenandClaude Opus 5.5 c30387e50a docs(tasks): mark #89 English han-leak merged into staging
Independent Staging Quality Gate / validate (push) Successful in 16m42s
Independent Staging Quality Gate / publish (push) Successful in 4m30s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-22 14:21:08 +08:00
jesse-uxGrok (agent loop)Cursor
03c2c6a290 写下英文漏译打回后再修的进度和验证数字。
Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 11:01:28 +08:00
jesse-uxGrok (agent loop)Cursor
e006d30df0 合并推进后的 origin/staging,带上 #85、#88、#94。
开工时 staging 是 9a0d5e11。合并期间远端又快进到 0034333b。不带上这三次合入,后面无法快进推送。

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 09:59:47 +08:00
jesse-uxGrok (agent loop)Cursor
184880e8d5 记下王者格遍历集合导致顺序随哈希种子变化。
这是改英文之前就有的现象。本轮只记录,不改排序。

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 09:58:20 +08:00
jesse-uxGrok (agent loop)Cursor
adfa98bf97 英文漏译改在渲染侧查表,测试不再放行 PyJHora 子进程。
冻结的 jaimini.py 恢复成 staging 原样。缺译单元格写成固定标记,不再留空。

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 09:58:09 +08:00
Jesse_Chen 0034333b87 Merge codex/chart-dasha-yogini-20261021 (#88) into staging
Independent Staging Quality Gate / validate (push) Successful in 14m47s
Independent Staging Quality Gate / publish (push) Successful in 4m43s
2026-10-22 09:18:42 +08:00
Jesse_Chen 61462e7e48 Merge codex/synastry-staging-fix-20261021 (#85 T7-T11) into staging
Independent Staging Quality Gate / publish (push) Canceled after 0s
Independent Staging Quality Gate / validate (push) Canceled after 1m3s
# Conflicts:
#	CHANGELOG.md
#	docs/BUG_HISTORY.md
#	docs/tasks/README.md
2026-10-22 09:17:02 +08:00
Jesse_Chen a2ebb28244 Merge codex/goel-jaimini-strength-20261022 (#94) into staging
Independent Staging Quality Gate / validate (push) Successful in 15m44s
Independent Staging Quality Gate / publish (push) Successful in 4m27s
# Conflicts:
#	CHANGELOG.md
#	docs/tasks/README.md
2026-10-22 08:53:17 +08:00
jesse-uxGrok (agent loop)Cursor
7876c0b4ac 合并 origin/staging,英文漏译记录改号避开 #86。
staging 已占用 BUG-1410 到 BUG-1412。本分支的英文版记录改为 BUG-1413、BUG-1414。CHANGELOG 与任务索引两边的追加都留下。

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 08:24:09 +08:00
Jesse_ChenandClaude Opus 5.5 9a0d5e11f3 docs(tasks): English han-leak fix brief (agent loop, issue #89 round 1)
The branch edits scripts/jaimini.py, a frozen rectification scoring file;
the sweep's jhora block does not reach the replay subprocesses, so the
tests render a packet production never sees; missing English is blanked
instead of exposed.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-22 08:05:18 +08:00
jesse-uxGrok (agent loop)Cursor
a06598c8a6 feat(chart): Yogini 切换条留在栏内,并补上口径
两个选项分掉右栏宽度,点选区域至少 44px。同一提交写上设计、文案、更新日志和真人步骤。

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 03:57:22 +08:00
jesse-uxGrok (agent loop)Cursor
7b1070f86d feat(chart): 大运右栏在 Chara 与 Yogini 之间切换
点开大运只取 Chara。切到 Yogini 才去取那一轨。失败留在右栏,再点一次会再请求。

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 03:55:47 +08:00
jesse-uxGrok (agent loop)Cursor
5ebbd57b04 feat(dasha): 大运按轨道合并,刷新保留已到的轨
Chara 和 Yogini 各换各的一段。空的小运列表只让这一层失败,已经在页上的另一轨不动。

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 03:55:42 +08:00
jesse-uxGrok (agent loop)Cursor
7a296c7348 feat(dasha): 星盘按需取 Yogini,缓存按体系分开
同一人的 Chara、Yogini 和以后的大运键各走各的缓存。页面日期直接用引擎返回的日子。

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 03:55:35 +08:00
jesse-uxGrok (agent loop)Cursor
85567071c7 test(dasha): Yogini 大运对照 PyJHora,小运做内部核对
Presley、Spears、Einstein 走接口。大运主星顺序一致,起止日误差在一天内。小运按比例自洽,不跟 PyJHora 等分比。

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 03:37:17 +08:00
jesse-uxGrok (agent loop)Cursor
3490e89403 feat(dasha): 接口 Yogini 副本挂上小运,完整解读不变
大运行深拷贝后再挂 antardasha。虚构盘对照改成去掉小运后与完整解读逐字段相等。

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 03:36:59 +08:00
jesse-uxGrok (agent loop)Cursor
6eeb98c774 feat(dasha): Yogini 小运按比例单列,大运输出不变
完整解读仍只看大运。小运从该大运自己的 Yogini 起按年数比例排,出生前的段丢掉。

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 03:33:19 +08:00
Jesse_Chen 28dd8df333 Merge codex/chart-subject-table-20261021 (#86) into staging
Independent Staging Quality Gate / validate (push) Successful in 15m56s
Independent Staging Quality Gate / publish (push) Successful in 3m36s
# Conflicts:
#	CHANGELOG.md
#	docs/BUG_HISTORY.md
2026-10-22 03:23:59 +08:00
jesse-uxGrok (agent loop)Cursor
ba1ffeb35f fix(report): keep the English edition when one phrase was untranslated
The English personal report was discarded whenever a Chinese fragment survived the trailing glossary. English sections now render the English fields that were already calculated.

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 02:56:00 +08:00
jesse-uxGrok (agent loop)Cursor
52e5d6dc02 docs: publish the Goel note and the strength boundary
Issue #94 T6. Keep the upstream calculation note, replace the local manuscript path with a book citation, and add our one-line pointer. Record ERR-116 and a changelog line. Skill version is unchanged.

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 01:29:22 +08:00
jesse-uxGrok (agent loop)Cursor
489ae2fb35 docs: record the Goel Jaimini strength regression
Issue #94 T5. Two hundred fixed-seed fictional charts on mean and true nodes all execute, and the Atmakaraka matches chara_karaka_7. Chinese and English full-data markdown for the three fixed fictional charts is unchanged. The frozen-file intersection is empty.

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 01:28:51 +08:00
Jesse_Chen 680159bab3 Merge codex/chart-ascendant-slash-20261021 (#87) into staging
Independent Staging Quality Gate / validate (push) Successful in 14m14s
Independent Staging Quality Gate / publish (push) Successful in 4m9s
# Conflicts:
#	CHANGELOG.md
#	docs/tasks/README.md
2026-10-22 01:21:22 +08:00
jesse-uxGrok (agent loop)Cursor
413140b40c fix(synastry): 补上 issue #85 第 1 次验收打回的三处
G1 路由清单在 synastry 与 terms 之间加入 synastry/[reportId]。G2 把「同一对已经有报告时,仍打开原来那份」改成「同一对正在生成时,仍打开那份」。G3 删掉永远成立的侧栏断言,改为渲染 /synastry/<id> 并核对当前项是婚恋合盘。

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 01:19:45 +08:00
Jesse_Chen 24ed3032fb Merge codex/report-export-dialog-polish-20261021 (#90) into staging
Independent Staging Quality Gate / publish (push) Canceled after 0s
Independent Staging Quality Gate / validate (push) Canceled after 3m38s
2026-10-22 01:17:50 +08:00
jesse-uxGrok (agent loop)Cursor
3cbd0cbd33 fix(chart): 报告数值表才单行,保存他人共用一处,点内边距不关编辑框
F1 只有表头含速度、度数或黄经的表保持单行,其余表和打印都换行。
F2 保存他人收成 saveOtherProfile,档案页保存后也清星盘和星历缓存(BUG-1405)。
F3 编辑框只在点到框外时关闭,内边距不再丢掉未保存内容(BUG-1406)。

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 01:13:42 +08:00
jesse-uxGrok (agent loop)Cursor
a769533032 test: lock Goel node policy, tied degrees, and raw longitudes
Issue #94 T4. Wired jaimini output keeps both node policies, blocks equal seven-planet degrees without an Atmakaraka or a rank, and full-reading passes chart degree_raw into Goel within 1e-6 degrees.

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 00:57:58 +08:00
jesse-uxGrok (agent loop)Cursor
a1c7f6ce67 feat: attach Goel Jaimini strength to jaimini and full-reading
Issue #94 T3. Add _goel_jaimini_evidence and merge it for jaimini modes all/special and before modules.jaimini is stored. Goel failures are logged and returned as blocked so they cannot drop the jaimini module. cmd_jaimini passes degree_raw, falling back to degree.

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 00:56:10 +08:00
jesse-uxGrok (agent loop)Cursor
eb67962d70 test: port Goel Jaimini strength checks onto our Niryaana selector
Issue #94 T2. Keep the upstream test and retarget select_niryaana_shoola_start_sign to scripts.rashi_dashas_native. Add test_full_reading_exposes_goel_jaimini_strength using the existing fictional BASE_BIRTH_ARGS.

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 00:54:02 +08:00
jesse-uxGrok (agent loop)Cursor
424f03a4d5 feat: vendor four upstream Goel Jaimini strength modules
Issue #94 T1. Place goel_jaimini_strength, trikona_raman, sthira_brahma_goel_short_method, and trikona_dasha from upstream 5fb8379c under scripts/. The only local edit is the SOURCE book citation. Raise ROOT_PY_BUDGET from 448 to 452.

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 00:52:52 +08:00
jesse-ux 2579fa14e5 Merge remote-tracking branch 'origin/staging' into codex/synastry-staging-fix-20261021 2026-10-22 00:50:34 +08:00
Jesse_ChenandClaude Opus 5.5 7fbdcab113 docs(tasks): synastry T7-T11 fix brief (agent loop, issue #85 round 1)
The new /synastry/[reportId] route is missing from the capability audit's
app_routes list (quick gate red), the changelog still promises reuse of a
ready report, and the sidebar highlight test asserts a constant.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-22 00:48:08 +08:00
jesse-ux 8652ccf9ac merge origin/staging into codex/chart-subject-table-20261021 2026-10-22 00:41:58 +08:00
Jesse_ChenandClaude Opus 5.5 2806bd5b75 docs(tasks): full data parity part 3 brief (agent loop, issue #93)
PyJHora runs in a subprocess worker for the annual method reference only;
installing it must leave every other output byte-identical (seven switch
points pinned, parent process never imports jhora). Inputs default to
local birth time and the requested year (D6, awaiting product confirm).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-22 00:37:54 +08:00
Jesse_ChenandClaude Opus 5.5 b662bf59fc docs(tasks): chart subject/table fix brief (agent loop, issue #86 round 1)
nowrap and max-content hit every report table and break print; the other-
person save is a drifted copy of the archive page; a click on the dialog
padding closes the editor and drops edits.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-22 00:34:24 +08:00
Jesse_ChenandClaude Opus 5.5 a9bf16816b docs(tasks): Goel Jaimini strength port brief (agent loop, issue #94)
Four upstream files from 5fb8379c (the issue missed trikona_dasha.py),
root budget 448 -> 452 per the #81 decision A precedent, wiring into the
jaimini and full-reading outputs only. The source string becomes a plain
book citation; frozen rectification identity must not move.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-22 00:32:53 +08:00
jesse-uxGrok (agent loop)Cursor
d2edf8b7a8 fix(chart): 上升的状态格改成「/」
上升不是行星,本命、月亮盘和分盘的状态格不再写「不适用」。悬停或点一下说明原因。报告同一格写「/」,并在表下加中英文说明。

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-22 00:03:19 +08:00
Jesse_ChenandClaude Opus 5.5 f90020efda docs(tasks): full data parity part 1 brief (agent loop, issue #91)
Stage A renders what the engine already computes (71 appendix sections in
6 chapters, zh appendix from its own renderer, export sign names); stage B
ports the missing annual, dasha sub-period and Yogi point calculations on
our sidereal frame. No size cap per product; overturns fix2 F5.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-21 23:42:05 +08:00
Jesse_ChenandClaude Opus 5.5 8c63f31f12 docs(tasks): chart dasha Yogini switch brief (agent loop, issue #88)
Product decided 1A 2A: Yogini sub-periods proportional with internal
checks (majors still matched against PyJHora); Ashtottari leaves this
ticket because its start table disagrees with PyJHora on 8 of 12
nakshatras and will get its own issue.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-21 23:26:55 +08:00
jesse-uxGrok (agent loop)Cursor
a2f65842e6 fix(report): toast a missing English edition and tint export selection
Opening the export sheet now says once, at the top, why English is unavailable. Selected borders, radios and checks use the theme color while fills stay neutral.

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-21 23:13:15 +08:00
jesse-uxGrok (agent loop)Cursor
57ee79cc5f fix(synastry): let the same pair start another report
A finished match used to reopen the old report. Starting again now writes a new one and charges again; a report still being written is reused.

Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-21 23:08:21 +08:00
Jesse_ChenandClaude Opus 5.5 9812f31737 docs(tasks): English edition han-leak brief (agent loop, issue #89)
140 fixed-seed fictional charts reproduce 40% han_leak. Fix at the source
with English twin fields, no tail glossary entries; Chinese output must stay
byte-identical; 200-chart sweep in full pytest plus a smoke file in the
quick gate. Recurrence of BUG-1272.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-21 22:39:37 +08:00