jesse-ux and Grok (agent loop)
eee8564b7f
星盘档案可以拖动排序,合盘开始前先确认扣点。
...
Independent Staging Quality Gate / validate (push) Failing after 9m16s
Independent Staging Quality Gate / publish (push) Skipped
人物卡、菜单、编辑和删除换成组件库。chart_profiles 增加可空的 archive_order,本人始终排在第一。合盘选人页两个名字并排,开始按钮居中,点了先说出点数和余额。
自测:tsc 0;lint 0 error(122 警告,与上一张相同);定向测试通过;next build 后 / 仍是 Static;首页 JS gzip-9 639609,相对 640131 少 0.08%。test:db 79 通过、13 失败,失败名单与 windows-known-failures.txt 一致,排序列断言在通过的那一组。没有浏览器登录态。
Co-Authored-By: Grok (agent loop)
2026-10-25 05:05:00 +08:00
jesse-ux and Grok (agent loop)
b7ec8e78ed
星盘页换成组件库:页签、盘型条、可拖分栏和换盘动效(#107)。
...
Independent Staging Quality Gate / validate (push) Failing after 9m20s
Independent Staging Quality Gate / publish (push) Skipped
四个页签用下划线,盘型条用分段并可以横滑,全部盘型从底部打开。桌面上盘和参数可以拖宽,窄屏上下排。行星表仍跨满整行。换盘型时星体移到新位置;减少动态效果只淡入。第一次进场不重播。
自测:tsc 退出码 0;frontend 下 npm run lint 0 error(122 警告);定向测试 188 通过、0 失败、0 取消;npm run build 后 / 仍是 Static;首屏 JS gzip-9 为 640131,相对 d25dfdbe 记下的 639127 多 0.16%。没有跑全量 npm test、Python 快速门和 test:db。
Co-Authored-By: Grok (agent loop)
2026-10-25 04:02:14 +08:00
jesse-ux and Grok (agent loop)
d25dfdbe1a
对话页换成组件库,桌面旁边可以打开本命盘(#106)。
...
Independent Staging Quality Gate / validate (push) Failing after 9m13s
Independent Staging Quality Gate / publish (push) Skipped
输入框里左边选模型、右边发送。回答下的赞、踩、复制、重新生成和追问改用组件库按钮。不满意原因和兑换窗改用对话框,句子不变。桌面顶栏可以打开当前人物的本命盘,能拖宽,刷新后还在;手机没有这个入口。当前会话和流式状态从 Home() 移进已有会话 store,useState 从 33 减到 25。流式、停止、排队、撤回、退点和寒暄免费没有改。
自测:tsc 退出码 0;lint 0 error、122 条警告;定向测试 275 通过、失败 0、取消 0;npm run build 退出码 0,/ 仍是 Static。首屏 gzip-9 639127,相对基线 634528 多 0.72%。隐私标记测试退出码 0。
Co-Authored-By: Grok (agent loop)
2026-10-25 03:15:13 +08:00
jesse-ux and Grok (agent loop)
e4e240bf86
启程第一次出现时会动一下(#99)。
...
Independent Staging Quality Gate / validate (push) Failing after 9m8s
Independent Staging Quality Gate / publish (push) Skipped
建档、起步问题、清单打勾、天空过场和合盘按 T7 播放一次。减少动态效果时只剩淡入,没有星点和闪烁。Motion 仍按需加载,首屏 gzip 631199,相对 627046 约 +0.66%。
自测:tsc --noEmit、npm run lint(0 error)、定向测试 58 项 fail 0、npm run build(/ 仍 Static)。
Co-Authored-By: Grok (agent loop)
2026-10-25 02:17:32 +08:00
jesse-ux and Grok (agent loop)
352d45b2ef
外壳换成组件库:侧栏可拖宽,会话可排序(#105)。
...
Independent Staging Quality Gate / validate (push) Failing after 9m12s
Independent Staging Quality Gate / publish (push) Skipped
桌面侧栏可在 200 到 360 像素之间拖宽,拖到最左收起,宽度记在本机。手机从左边滑出。会话在同一组里拖动排序,顺序写入可空的 sidebar_order,收藏仍置顶。账户菜单、设置、反馈和退出确认改用组件库。顶栏点数只显示图标和数字。启程清单还在。菜单、拖宽、拖动排序和翻页在首屏之后再载入。
自测:tsc 退出码 0;npm run lint 0 error、121 warning;改到的前端测试 205 项全过;npm run build 后首页仍是 static;首屏 gzip 630350,相对 8f7c0f7d 的 621226 为 +1.47%。test:db 92 项里 79 过、13 败,失败名与 Windows 已知清单一致,排序列在通过的 ok 37。没有跑全量 npm test,没有跑 Python 快速门。没有登录态,没有在浏览器里拖侧栏。
Co-Authored-By: Grok (agent loop)
2026-10-25 01:41:19 +08:00
jesse-ux and Grok (agent loop)
8f7c0f7db4
首页加上启程清单和一次性提示(#97)。
...
Independent Staging Quality Gate / validate (push) Failing after 9m6s
Independent Staging Quality Gate / publish (push) Skipped
右上角「启程 n/N」按真实使用打勾,收费项读计价表。八条提示一次一条,看过写入已有的 onboarding_state。没有新表、新接口,也没有增加 Home 的状态。
自测:tsc --noEmit 通过;frontend 下 npm run lint 是 0 error、121 warning;定向测试 94 项全过,清单测试在最后一次改动后再跑 12 项全过;npm run build 后 / 仍是 Static。首屏 JS gzip-9 是 617860 字节,相对 592895 增加 4.21%,原因写在进度里。没有跑全量 npm test,没有跑 Python 快速门,没有宣称 test:db。
Co-Authored-By: Grok (agent loop)
2026-10-24 23:48:15 +08:00
jesse-ux and Grok (agent loop)
4d63475caf
建档先问看谁的盘,空白首页给出起步三问(#96)。
...
Independent Staging Quality Gate / validate (push) Failing after 10m31s
Independent Staging Quality Gate / publish (push) Skipped
建档改为四步。帮别人看写入已有人物档案,不新增数据库列。本人没有出生资料时不显示今日星语,「和我合盘」改成一句说明。起步三问只读已有上升和月亮:前两问直接发送,第三问只聚焦输入框。
自测:tsc 退出码 0;lint 0 error、121 warning;定向测试 142 项,pass 142,fail 0,cancelled 0;build 成功,/ 仍是 Static。首屏 gzip 592895,相对基线 578435 为 +2.50%。未跑全量 npm test、Python 快速门和 test:db。
Co-Authored-By: Grok (agent loop)
2026-10-24 22:51:06 +08:00
jesse-ux and Grok (agent loop)
d3be9491ee
组件库 K0:换上 Motion 底座和 shadcn 零件,页面还没换(#104)。
...
Independent Staging Quality Gate / validate (push) Successful in 20m4s
Independent Staging Quality Gate / publish (push) Failing after 7m48s
去掉 GSAP。对话入场改为按需加载的 Motion,仍是 160 毫秒,仍尊重减少动态效果。
用 shadcn@4.21 .4 补上任务书列出的组件,不覆盖已有的 8 个。设计令牌映射到 shadcn 变量。
手写控件检查和只减不增的白名单。Motion 预设与四个 store 只是骨架,没有接到页面上。
自测:tsc --noEmit 退出码 0;npm run lint 0 error(122 条原有 warning);
定向测试 37 项、fail 0、cancelled 0;next build 后 / 仍是 Static;
首屏 JS gzip 578349 → 578435(+86 字节,+0.01%)。
Co-Authored-By: Grok (agent loop)
2026-10-24 15:37:29 +08:00
Jesse_Chen and Claude Opus 5.5
31d99e8716
merge chart table span fix into staging (issue #102 , BUG-1421 renumbered to BUG-1422)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-23 11:29:51 +08:00
jesse-ux and Grok (agent loop)
fc2283693d
fix(chart): span natal and moon planet tables across the row
...
VedicLayout now owns the third grid item, so a wrapper around the table cannot drop the natal or Moon table into the left column. Desktop grid-column targets that row. BUG-1421.
Self-test: tsc exit 0, lint 0 errors, 49 targeted tests, next build with / static.
Co-Authored-By: Grok (agent loop)
2026-10-23 01:22:46 +08:00
jesse-ux and Grok (agent loop)
fdd592d3f3
feat: 新账户首问免费,档案可标明关系
...
只做启程(一):同一笔预扣覆盖已公布的标准档,更贵的只扣差价;引导状态与人物关系只加列。tsc 与 lint 通过。test:db 91 项,失败 14,其中 13 条为 Windows 已知失败;校正遥测单独重跑通过。
Co-Authored-By: Grok (agent loop)
2026-10-23 00:34:28 +08:00
5aaae4690c
中文导出的分盘宫位列表改用中文星座名,英文列表仍用英文星座名。
...
Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-22 16:22:54 +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
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_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_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
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
d2edf8b7a8
fix(chart): 上升的状态格改成「/」
...
上升不是行星,本命、月亮盘和分盘的状态格不再写「不适用」。悬停或点一下说明原因。报告同一格写「/」,并在表下加中英文说明。
Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-22 00:03:19 +08:00
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
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
885bd5665f
fix(chart): 星盘页可以改出生资料,人名看得出能点,报告行星表不再挤断
...
报告行星表按内容定列宽,速度显示到 4 位小数,星宿英文名不再从中间拆开。星盘页出生行就地编辑;别人已保存的出生时间仍锁住。
Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-21 20:38:23 +08:00
jesse-ux and Cursor
dc80a43aae
fix(synastry): open the report on its own address
...
The shared report URL lit the personal-report item in the sidebar. The new address keeps the synastry item current and replaces the old link.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-21 18:07:51 +08:00
jesse-ux and Cursor
229df727c9
fix(synastry): scroll the report from the full-width outer container
...
The narrow column was the only scrollport, so the wheel did nothing on the side blanks.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-21 17:53:08 +08:00
jesse-ux and Cursor
6a761bc51e
fix(synastry): show timeline spans and keep old chats on the default model
...
English reports hid the analysis fold, timeline titles left out the month span, and deleting a pinned model stopped the next consultation turn.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-21 16:28:04 +08:00
jesse-ux and Cursor
67c1e68815
feat(synastry): lay out the match screens from the confirmed prototype
...
Independent Staging Quality Gate / validate (push) Failing after 18m11s
Independent Staging Quality Gate / publish (push) Skipped
The add-person card, the generating wait, and the report header follow the prototype the product owner pointed at.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-20 17:22:17 +08:00
jesse-ux and Cursor
0a5d93ab75
fix(admin): save published models as a new draft and allow deleting them
...
Independent Staging Quality Gate / validate (push) Successful in 14m0s
Independent Staging Quality Gate / publish (push) Successful in 4m5s
Editing a published model tried to update a non-draft row, so the save collapsed into a generic constraint error.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-20 15:02:42 +08:00
jesse-ux and Cursor
3956519f33
feat(synastry): open a follow-up chat from one stored report section
...
The chat stays bound to that section's saved calculation, checks each chart fact before answering, and bills like an ordinary turn.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-19 21:44:25 +08:00
e8793bb0d2
fix(synastry): fill section evidence and stop the English job from sticking
...
The review found empty sections and an English job that stayed running. Take evidence from reader briefs, retry one section, and settle before marking the report ready.
Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-19 12:55:17 +08:00
jesse-ux
d4ed45d891
Merge remote-tracking branch 'origin/staging' into codex/synastry-full-report-20261018
2026-10-19 12:01:06 +08:00
9ea5b3b0c0
feat(synastry): write the full relationship report on demand
...
The pair page and reader replace the leftover chat draft, and the same pair is not charged again.
Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-19 10:03:55 +08:00
Jesse_Chen and Claude Opus 5.5
e7cab24c1a
merge origin/staging into narrower delivery (只碰文档;显示漏段 BUG-1375 顺延为 BUG-1392, issue #77 )
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-19 09:15:55 +08:00
jesse-ux and Cursor
a0e84845e9
feat(people): raise the chart archive cap to 20 people
...
Independent Staging Quality Gate / validate (push) Successful in 17m28s
Independent Staging Quality Gate / publish (push) Successful in 23m1s
The trigger, the shared constants, and the limit sentence now agree, and the archive and person menus scroll instead of growing past the screen.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-18 16:33:06 +08:00
jesse-ux and Grok (agent loop)
1ba473970f
避免四舍五入和缺区间把还可能的时间从目前范围里藏掉。
...
Co-Authored-By: Grok (agent loop)
2026-10-17 21:16:32 +08:00
jesse-ux and Grok (agent loop)
56a3c08145
显示生时校正里还活着的时间段,不再把空档涂进目前范围。
...
交付卡、旁白和遥测在有簇区间时按段书写。打分、出题和进区间门槛未改;对半出题和门槛 6 因为没有真值保留回放而没有交付。
Co-Authored-By: Grok (agent loop)
2026-10-17 03:07:25 +08:00
jesse-ux and Grok (agent loop)
a54f75e5e3
fix(capacity): limit each user and queue heavy compute briefly.
...
Consult, rectification turns, and report generation stop before a credit reservation when the product caps are hit. A full heavy-compute gate waits up to 8 seconds, and one consultation retries that 429 inside the same request.
Co-Authored-By: Grok (agent loop)
2026-10-15 13:33:06 +08:00
454951de27
fix(chart): keep the ascendant nakshatra the page already renders
...
The chart API rebuilt the ascendant without nakshatra, lord, and pada, so those cells stayed blank. Cache schema is now 7. Centered column headers line up with their cells, and the current dasha card keeps its tint without the left accent.
pytest 34 passed. tsc 0 errors. lint 0 errors and 123 existing warnings.
Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-15 09:46:37 +08:00
jesse-ux and Grok (agent loop)
29949e0a29
接受删除旧报告页,并跟上最新 staging
...
Independent Staging Quality Gate / validate (push) Failing after 8m31s
Independent Staging Quality Gate / publish (push) Skipped
旧的结构化报告页已由另一单删除,标识留在现在用的阅读页。测试不再读取那个文件。更新日志和 Bug 历史两边都保留。
自测:tsc 退出码 0;lint 0 error、123 warning;修复单点名的 3 个测试 7 通过、0 失败、0 取消。
Co-Authored-By: Grok (agent loop)
2026-10-14 12:27:33 +08:00
jesse-ux and Grok (agent loop)
392c1f7218
合并 staging,并去掉已删组件留下的样式名单条目
...
knownUnstyled 不再保留 personal-report-additional-charts。它只被删掉的报告组件用过。其它白名单没有同类残留。业务代码没改。
自测:类名合同和两条否定合同 6 通过,失败 0,取消 0。tsc 0 错,lint 0 error。
Co-Authored-By: Grok (agent loop)
2026-10-14 11:10:17 +08:00
jesse-ux and Grok (agent loop)
fca62fda43
给别人出报告能读到档案,对话和报告标明 AI 生成
...
BUG-1063:后台按列只读档案,授权前数据库拒绝读表,授权后通过。对话输入框下和报告标题下加上 AI 生成说明。状态板按已部署提交改措辞,不标 resolved。下载文件元数据没有做。
自测:tsc 退出码 0;lint 0 error;定向测试 51 通过;test:db 82 项里 13 项为 Windows 已知失败,无新增;隐私标记退出码 0。
Co-Authored-By: Grok (agent loop)
2026-10-14 09:30:51 +08:00
jesse-ux and Grok (agent loop)
1f9947a0d7
删除三个无调用方接口和约 3000 行前端死代码
...
关掉未登录就会触发约 20 秒计算的入口,并记下 BUG-1342。普通导出的逐字节锁保留。自测 tsc 0 错,lint 0 error / 123 warning,改到的前端测试 fail=0,两份 Python 测试通过,test:db 失败 13 条与 Windows 已知清单一致。
Co-Authored-By: Grok (agent loop)
2026-10-14 08:39:32 +08:00
jesse-ux and Grok (agent loop)
6350943152
回答生成时侧栏不再跟着每一帧重画
...
外壳只在会话、当前项或账户这些数据变了才更新。60 帧计数从注册 60 次、提交 60 次降到 0 次,点下去仍是最新一次操作。BUG-1329。
Co-Authored-By: Grok (agent loop)
2026-10-14 04:12:02 +08:00
jesse-ux and Grok (agent loop)
8883f8475f
报告开头改成重点摘要卡
...
新报告用围栏画出大运和事业、财富、婚恋,标题下写名字与日期。旧报告不变。
自测:pytest test_report_full_data_fix.py 10 通过;相关四份报告测试退出码 0;前端相关测试 147 通过、0 失败、0 取消;tsc 退出码 0;lint 0 error。
Co-Authored-By: Grok (agent loop)
2026-10-13 21:45:43 +08:00
Claude
3cc7fe23d1
merge origin/staging into the report translation fix (issue #53 )
...
Independent Staging Quality Gate / validate (push) Successful in 15m24s
Independent Staging Quality Gate / publish (push) Successful in 3m48s
Docs-only conflict in BUG_HISTORY: BUG-1311 (#52 ) and BUG-1312..1315 (#53 )
both appended after BUG-1310; kept both in number order. Product owner
chose option A on #53 : Claude merges a stale branch when only docs conflict.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-13 18:44:38 +08:00
jesse-ux and Grok (agent loop)
6e6fae8d84
fix(ui): stop the composer radius from clipping the first glyph
...
The inner textarea kept a 12px radius after its side padding was cleared, so the first character was cut into an arc. Only .composer textarea is now border-radius 0. The outer frame is unchanged.
Verified: chat-reading-load-mobile.test.ts was 7 pass / 1 fail before the CSS change, then 8 pass / 0 fail / 0 cancelled. tsc --noEmit exit 0. npm run lint 0 errors.
Co-Authored-By: Grok (agent loop)
2026-10-13 14:32:25 +08:00
jesse-ux and Grok (agent loop)
a295afa40f
fix(report): draw charts in the full-data body and clean Chinese residue
...
New reports draw one north-Indian chart for each ready divisional in the body, so the trailing duplicate section drops. Chinese full-data prose no longer glues English onto Han or leaves listed, background, or native. The birth table starts with the ascendant. The D9 same-sign column says yes or no.
Self-test: tsc exit 0; npm run lint exit 0 (0 errors, 125 existing warnings); three frontend test files 39 pass, 0 fail, 0 cancelled; pytest test_report_chart_blank_columns.py 16 passed; seven related report files 88 passed, exit 0; privacy markers 63 passed.
Co-Authored-By: Grok (agent loop)
2026-10-13 14:02:26 +08:00
Jesse_Chen and Claude Opus 5.5
586561eb68
fix(settings): the ayanamsa hint says new rectifications follow the setting (BUG-1310)
...
Independent Staging Quality Gate / validate (push) Successful in 13m43s
Independent Staging Quality Gate / publish (push) Successful in 16m40s
Also records the 10-12 rectification batch as merged in the bug history,
changelog and task index.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01HwMNZEzdzmrbPhuRNmZe3C
2026-10-12 15:43:27 +08:00
jesse-ux and Jesse_Chen
0f05c9e26a
fix(rectification): scan chart boundaries in the user's ayanamsa (BUG-1307, BUG-1309)
2026-10-12 15:36:50 +08:00
jesse-ux and Jesse_Chen
74949d0475
feat(rectification): open on the nearest chart boundary (BUG-1307)
2026-10-12 15:36:43 +08:00
jesse-ux and Jesse_Chen
805932addd
fix(consult): mark rectification opened only after the case opens (BUG-1306)
2026-10-12 15:36:36 +08:00