jesse-ux and Grok (agent loop)
c7350bcafb
把星盘接口的计算和 HTTP 拆成两个类,离线入口不再伪造请求对象。
...
方法体未改。定向测试 383 通过;1 条校正回归在基线上同样失败,断言未改。快速门和全量 pytest 未跑。
Co-Authored-By: Grok (agent loop)
2026-10-16 10:24:42 +08:00
jesse-ux and Grok (agent loop)
fbf04f0b5f
把被逐字锁定的年运函数改回原样,历史清单不再要求已删除的占位文件。
...
Independent Staging Quality Gate / validate (push) Successful in 14m11s
Independent Staging Quality Gate / publish (push) Successful in 3m43s
年数表字面量留在 calc_mudda_with_dasha_balance 里。调用矩阵测试改为确认这两个路径已删并由现行模块接替。pytest 三条文件 187 通过、1 跳过、0 失败。
Co-Authored-By: Grok (agent loop)
2026-10-16 09:02:20 +08:00
jesse-ux
e96de24721
merge origin/staging into dasha unify (issue #69 )
2026-10-16 08:56:34 +08:00
Jesse_Chen and Claude Opus 5.5
ef9ee62a6b
docs(tasks): dasha unify fix brief (agent loop, issue #69 , bounce 1)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-16 08:35:02 +08:00
jesse-ux and Grok (agent loop)
5ac88e58f5
让大运接口走完整解读的同一套算法,不再返回编出来的周期。
...
Ashtottari 在适用时把出生前已经走过的部分算进时间线。
Co-Authored-By: Grok (agent loop)
2026-10-16 00:52:29 +08:00
Claude
b9cbe9aa76
merge origin/staging into python hygiene (issue #68 )
...
Independent Staging Quality Gate / validate (push) Successful in 14m1s
Independent Staging Quality Gate / publish (push) Successful in 5m22s
Docs-only catch-up; agent-loop rule A.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-15 23:30:28 +08:00
jesse-ux and Grok (agent loop)
a7162db271
让免费层限流的报告跟真实限流一致,并给少一块结果的静默失败留下函数名和错误类型。
...
Co-Authored-By: Grok (agent loop)
2026-10-15 23:12:56 +08:00
Claude
5d452a4ff1
merge origin/staging into contracts helpers dedupe (issue #72 )
...
Independent Staging Quality Gate / validate (push) Successful in 17m49s
Independent Staging Quality Gate / publish (push) Successful in 4m18s
Docs-only catch-up; agent-loop rule A.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-15 22:44:45 +08:00
jesse-ux and Grok (agent loop)
d2296c2654
把前后端共用的请求契约和小工具收成一份,避免再各抄一份。
...
报告创建请求、校正入口和同名类型改从 contracts 推导;同义的对象判断与 sha256 改走共享函数。调用处用 import 别名保留原名,使 diff 低于 1500 行。行为、哈希和状态字符串不变。
Co-Authored-By: Grok (agent loop)
2026-10-15 22:22:44 +08:00
Claude
e4ff62c738
merge origin/staging into pl9 render split (issue #67 )
...
Independent Staging Quality Gate / validate (push) Successful in 14m16s
Independent Staging Quality Gate / publish (push) Successful in 4m9s
Docs-only catch-up; agent-loop rule A.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-15 21:23:23 +08:00
jesse-ux and Grok (agent loop)
dbba127e71
拆分报告渲染函数的第一阶段,把 34 个无外层依赖的辅助函数搬到 report_render。
...
同一份真实盘包在屏蔽与不屏蔽 PyJHora 下新旧渲染 sha 都一致,各 24 项且退出码 0。指定 pytest 233 通过、3 跳过。
Co-Authored-By: Grok (agent loop)
2026-10-15 20:59:11 +08:00
jesse-ux and Grok (agent loop)
cd7e0a3493
把普通对话的预留、取消、追加、寒暄结算和用量计算收进结算工厂。
...
Independent Staging Quality Gate / validate (push) Successful in 13m51s
Independent Staging Quality Gate / publish (push) Successful in 4m6s
完成回答、直达校正、输出审核和开流前加载仍留在路由里,使 diff 停在 1500 行以内。
Co-Authored-By: Grok (agent loop)
2026-10-15 19:12:44 +08:00
Jesse_Chen and Claude Opus 5.5
32b238cf86
docs(tasks): beta safety net fix brief 2 (agent loop, issue #75 )
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-15 16:48:54 +08:00
Claude
168e4dde19
merge origin/staging into beta capacity (issue #76 )
...
Independent Staging Quality Gate / validate (push) Successful in 14m45s
Independent Staging Quality Gate / publish (push) Successful in 4m13s
Docs-only catch-up; agent-loop rule A.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-15 15:45:46 +08:00
Jesse_Chen and Claude Opus 5.5
2d41338897
docs(tasks): beta safety net fix brief, daily backup leaves the recovery point alone (agent loop, issue #75 )
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-15 15:44:49 +08:00
jesse-ux and Grok (agent loop)
360a667e4f
fix(capacity): align two stale checks with the rate-limit edit.
...
The consultation contract still required await directly before runConsultationWorkflow(toolInput), and a new report test shifted three privacy allowlist lines. Keep the toolInput lock and move that test to the end. No product code change.
Co-Authored-By: Grok (agent loop)
2026-10-15 15:31:35 +08:00
jesse-ux and Grok (agent loop)
904dfe9f79
merge origin/staging into beta capacity (issue #76 ).
...
Bring in the bounce-1 fix brief without rewriting the pushed capacity commit.
Co-Authored-By: Grok (agent loop)
2026-10-15 15:24:52 +08:00
Jesse_Chen and Claude Opus 5.5
9fae294532
docs(tasks): beta capacity fix brief (agent loop, issue #76 , bounce 1)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-15 15:10:37 +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
Claude
ef49257b73
merge origin/staging into answer effort ab (issue #65 )
...
Independent Staging Quality Gate / validate (push) Successful in 14m3s
Independent Staging Quality Gate / publish (push) Successful in 3m47s
Docs-only catch-up; agent-loop rule A.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-15 11:15:23 +08:00
jesse-ux and Grok (agent loop)
9324253408
fix(consult): move the answer-effort probe out of the image build
...
The dry-run script lived under frontend/scripts and read a test fixture, so the web image build would type-check a file the image does not copy. Move it to frontend/tests with a non-test filename. The switch default is unchanged.
Checked: guard plus answer-effort tests 5 pass, 0 fail, 0 cancelled; probe --dry-run exit 0; tsc exit 0; lint 0 errors and 123 warnings.
Co-Authored-By: Grok (agent loop)
2026-10-15 10:56:22 +08:00
Claude
7175548531
merge origin/staging into api chart subprocess gate (issue #64 )
...
Independent Staging Quality Gate / validate (push) Successful in 13m47s
Independent Staging Quality Gate / publish (push) Successful in 4m5s
Docs-only catch-up; agent-loop rule A.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-15 10:44:32 +08:00
jesse-ux and Grok (agent loop)
0d73cd332b
merge origin/staging into the answer-effort branch (issue #65 )
...
Keep the pushed switch commit and take the newer staging history, including the bounce brief.
Co-Authored-By: Grok (agent loop)
2026-10-15 10:42:03 +08:00
jesse-ux and Grok (agent loop)
e21e167a73
fix(chart): lock synastry chart calls and stop overwriting the A/B note
...
The bounced contract still looked for the old chart calls. The research script now writes to a temp directory unless --out is set. Quota splits stay unimplemented.
Co-Authored-By: Grok (agent loop)
2026-10-15 10:19:41 +08:00
Claude
71f7fac3a1
merge origin/staging into chart ascendant row (issue #53 )
...
Independent Staging Quality Gate / validate (push) Successful in 13m39s
Independent Staging Quality Gate / publish (push) Successful in 3m47s
Docs-only catch-up; agent-loop rule A.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-15 10:14:36 +08:00
jesse-ux and Grok (agent loop)
18fdce6006
merge origin/staging into the chart subprocess gate branch
...
Keep the pushed fix commit and bring in the bounce brief plus the data-layer fix.
Co-Authored-By: Grok (agent loop)
2026-10-15 10:11:38 +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
Claude
1de3cc307b
merge origin/staging into data layer types (issue #71 )
...
Independent Staging Quality Gate / validate (push) Successful in 14m20s
Independent Staging Quality Gate / publish (push) Canceled after 15m27s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-15 09:44:41 +08:00
jesse-ux and Grok (agent loop)
b184448871
fix(db): check callers against the adapter that actually runs
...
The self-hosted client was typed as a full Supabase client, so an old scoring poll called .single() on a plain promise and failed. The new DataClient only lists methods the adapter implements.
Co-Authored-By: Grok (agent loop)
2026-10-15 09:21:14 +08:00
Jesse_Chen and Claude Opus 5.5
2b7112a601
docs(tasks): chart page ascendant row brief (agent loop, issue #53 round 2)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-15 09:19:35 +08:00
Jesse_Chen and Claude Opus 5.5
10d0c4bba6
docs(tasks): answer effort switch fix brief (agent loop, issue #65 , bounce 1)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-15 09:03:35 +08:00
Jesse_Chen and Claude Opus 5.5
9308382ef8
docs(tasks): api chart subprocess gate fix brief (agent loop, issue #64 , bounce 1)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-15 08:45:34 +08:00
ab7f66be14
feat(consult): add an answer-step reasoning effort switch
...
The switch is off unless CONSULT_ANSWER_REASONING_EFFORT is set, so today's request body stays the same. A set value is sent as top-level reasoning_effort only on the answer step. The real A/B did not run: there is no model key.
Request-body probe, the named frontend tests (114 pass, 0 fail), tsc, and lint (0 errors) were run.
Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-15 08:31:19 +08:00
336286e428
fix(chart): skip unused synastry overview and doomed report subprocesses
...
Synastry charts now skip the unused external overview and run together. Reports skip PyJHora subprocesses when that library is missing, and a full heavy-compute slot logs which paths hold it. Splitting quotas stays a simulation.
Gate, growth, and report pytest passed, as did the frontend route tests, tsc, lint, and the A/B script.
Co-Authored-By: Grok (agent loop)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-15 08:02:39 +08:00
Jesse_Chen and Claude Opus 5.5
9274491681
docs(ops): prove the recovery backup decrypts before dropping production (issue #74 )
...
The rollback restore dropped jyotisha before decrypting the backup; a bad
key or damaged file would leave the site on an empty database. Load the
host env file, check sha256, decrypt into pg_restore --list first.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-14 21:28:47 +08:00
jesse-ux and Grok (agent loop)
40bc565a49
docs(testing): keep the host rehearsal sheet and record the local PostgreSQL 17 drill
...
Independent Staging Quality Gate / validate (push) Successful in 18m13s
Independent Staging Quality Gate / publish (push) Successful in 4m37s
Co-Authored-By: Grok (agent loop)
2026-10-14 21:02:19 +08:00
jesse-ux and Grok (agent loop)
09906cdccc
fix(release): keep owners and grants in production recovery points
...
Co-Authored-By: Grok (agent loop)
2026-10-14 21:01:52 +08:00
jesse-ux and Grok (agent loop)
d13250f40a
merge origin/staging into the release-path branch
...
Bring in the second review brief for issue 74. Keep the existing progress links and add the fix2 task row.
Co-Authored-By: Grok (agent loop)
2026-10-14 20:28:40 +08:00
Jesse_Chen and Claude Opus 5.5
6b12e09436
docs(tasks): release path fix brief 2, recovery points keep owners and grants (agent loop, issue #74 )
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-14 20:08:16 +08:00
jesse-ux and Grok (agent loop)
32aa46b573
fix(release): close the first review of the production release path
...
Host rehearsal no longer needs Node on the production machine, and a failed cleanup now stops with the rehearsal database name. Docs-only staging heads no longer block rollback. Tests no longer hardcode Windows paths, and a trailing slash on the production site still refuses the test code.
pytest 12 passed; tsc exit 0; lint 0 errors; identity tests 9 passed, 0 cancelled. test:db was not run.
Co-Authored-By: Grok (agent loop)
2026-10-14 16:37:58 +08:00
jesse-ux and Grok (agent loop)
0dc1d8fa52
merge origin/staging into the release-path fix branch
...
Co-Authored-By: Grok (agent loop)
2026-10-14 15:54:45 +08:00
Jesse_Chen and Claude Opus 5.5
53b2f0008d
docs(tasks): release path production fix brief (agent loop, issue #74 , bounce 1)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-14 15:39:22 +08:00
Claude
3e20c125b8
test(api): capability audit no longer counts the deleted dead panel as app-visible (BUG-1342)
...
Independent Staging Quality Gate / validate (push) Successful in 18m9s
Independent Staging Quality Gate / publish (push) Successful in 3m56s
The audit scans frontend app/components source. Its only Case Validation
hit was evidence-audit-panel.tsx, never mounted and deleted in #63 , so the
topic is truthfully gone and case_validator's UX level is thin. Product
owner chose option A on issue #63 (Claude fixes directly). Staging gate
run 1824 was red on this test.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-14 15:27:53 +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_Chen and Claude Opus 5.5
7290477ead
docs(tasks): beta main path fix brief (agent loop, issue #73 , bounce 1)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-14 12:15:10 +08:00
Claude
400af57e86
merge origin/staging into frontend dead code (issue #63 )
...
Independent Staging Quality Gate / validate (push) Failing after 7m39s
Independent Staging Quality Gate / publish (push) Skipped
Docs-only catch-up; agent-loop rule A.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-14 11:20:59 +08:00
Claude
4130d1dba9
merge origin/staging into consult prep parallel (issue #62 )
...
Independent Staging Quality Gate / publish (push) Canceled after 0s
Independent Staging Quality Gate / validate (push) Canceled after 9m43s
Docs-only catch-up; agent-loop rule A.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-14 11:14:51 +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_Chen and Claude Opus 5.5
f122f8b7d7
docs(tasks): frontend dead code fix brief (agent loop, issue #63 , bounce 1)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01LutgzyJqNhPpZy1nFsJtN3
2026-10-14 11:02:37 +08:00
jesse-ux and Grok (agent loop)
9e29310941
合并 staging,并让发问准备的检查跟上新位置
...
两条按源码原文查找的检查改认搬走后的写法,意思没有放宽。对照脚本挪到测试目录,镜像构建不再去找测试文件。业务代码和三个开关的默认值没改。
自测:相关前端测试 40 通过,失败 0,取消 0。假时钟仍是并行 160、串行 210。tsc 0 错,lint 0 error。
Co-Authored-By: Grok (agent loop)
2026-10-14 10:56:17 +08:00