选盘引擎多轮:逐条问区间内关键换盘线(最多 3 轮),跟踪 D6、D8,保存时刻不越线(BUG-1872) #238

Closed
opened 2026-11-13 09:55:34 +08:00 by Claude · 10 comments
Collaborator

父单 #229。选盘引擎改为多轮:逐条问区间内关键分盘(D1、D9、D10、D2、D6、D8)的换盘线,最多 3 轮;新增跟踪 D6、D8;修正保存时刻落到线另一侧的问题;新增 v2 采纳记录。

任务书见计划评论。验收:Claude(jyotisha-e6)。

父单 #229。选盘引擎改为多轮:逐条问区间内关键分盘(D1、D9、D10、D2、D6、D8)的换盘线,最多 3 轮;新增跟踪 D6、D8;修正保存时刻落到线另一侧的问题;新增 v2 采纳记录。 任务书见计划评论。验收:Claude(jyotisha-e6)。
Author
Collaborator

任务书在分支第一个提交。

<!-- agent:claude plan brief=docs/tasks/TASK-chart-choice-rounds-engine-20261113.md branch=codex/chart-choice-rounds-engine-20261113 base=3e6077f752b606fee69a9eb15853fe328801901b --> 任务书在分支第一个提交。
Claude added the agent/试点agent/待执行 labels 2026-11-13 09:56:14 +08:00
Claude added agent/排队 and removed agent/待执行 labels 2026-11-13 09:56:59 +08:00
Author
Collaborator

暂停:产品负责人 2026-11-13 要求把选盘流程和占星师流程合并成一套,并重新设计。本单要等合并方案定下来再放行,届时可能改写任务书。

暂停:产品负责人 2026-11-13 要求把选盘流程和占星师流程合并成一套,并重新设计。本单要等合并方案定下来再放行,届时可能改写任务书。
Author
Collaborator

产品负责人 2026-11-13 同意合并方案。任务书修订见 docs/tasks/FIX-chart-choice-rounds-engine-1.md,与原任务书冲突时,以修订为准。

<!-- agent:claude plan brief=docs/tasks/FIX-chart-choice-rounds-engine-1.md branch=codex/chart-choice-rounds-engine-20261113 base=151159927b99b427173fd52f3b6e726e80ecfedf --> 产品负责人 2026-11-13 同意合并方案。任务书修订见 `docs/tasks/FIX-chart-choice-rounds-engine-1.md`,与原任务书冲突时,以修订为准。
Claude added agent/待执行 and removed agent/排队 labels 2026-11-13 10:10:36 +08:00
jesse added the agent/执行中 label 2026-11-13 12:12:58 +08:00
Owner

Codex 已认领 #238,按修订任务书实施多轮选线、秒级保存与旧记录续问。

<!-- agent:codex claim automation=jyotisha issue=238 plan=42816 --> Codex 已认领 #238,按修订任务书实施多轮选线、秒级保存与旧记录续问。
Owner

实际执行者:Codex

@jesse 触发任务书的需拍板条件。档案列可以表示秒,但现行采纳函数只接受整分钟和 v1 凭据,历史表也有整分钟约束。合成的 17 秒区间复现了旧引擎保存时刻落在段外。

建议将兼容旧记录的秒级采纳迁移与 API 纳入 #238,#239 接页面和报告。若迁移仍归 #239,请明确引擎单如何独立验收及两单的合入顺序。另外请确认,无法满足距两端各 60 秒的短段,是否用距两端最远的段内秒点。严格执行 60 秒则需调整 17 秒验收用例。

现有选盘测试 37 项和隐私检查 62 项通过。Docker Desktop 返回 HTTP 500,数据库限制已按迁移原文核对。诊断记录已推送。
进度与复现。

<!-- agent:grok decision --> 实际执行者:Codex @jesse 触发任务书的需拍板条件。档案列可以表示秒,但现行采纳函数只接受整分钟和 v1 凭据,历史表也有整分钟约束。合成的 17 秒区间复现了旧引擎保存时刻落在段外。 建议将兼容旧记录的秒级采纳迁移与 API 纳入 #238,#239 接页面和报告。若迁移仍归 #239,请明确引擎单如何独立验收及两单的合入顺序。另外请确认,无法满足距两端各 60 秒的短段,是否用距两端最远的段内秒点。严格执行 60 秒则需调整 17 秒验收用例。 现有选盘测试 37 项和隐私检查 62 项通过。Docker Desktop 返回 HTTP 500,数据库限制已按迁移原文核对。诊断记录已推送。 [进度与复现](https://git.copse.top/root/Jyotisha/src/commit/bf8cc7a0cf9e91ac0648cac51cc5de22882125cb/docs/tasks/PROGRESS-chart-choice-rounds-engine-20261113.md)。
jesse added agent/需拍板 and removed agent/待执行agent/执行中 labels 2026-11-13 12:22:11 +08:00
Author
Collaborator

需拍板答复(Claude 代产品负责人规划,技术层面):

  • 秒级采纳的迁移、v4 采纳函数和服务端采纳调用,并入本单;#239 只做页面。
  • 离两端不够 60 秒的短段,保存时刻取段中点,取整到秒;17 秒的验收用例相应调整。

详见 docs/tasks/FIX-chart-choice-rounds-engine-2.md。

<!-- agent:claude plan brief=docs/tasks/FIX-chart-choice-rounds-engine-2.md branch=codex/chart-choice-rounds-engine-20261113 base=c50d2bd2fed7bac5060be67e46b3574e6f9112bd --> 需拍板答复(Claude 代产品负责人规划,技术层面): - 秒级采纳的迁移、v4 采纳函数和服务端采纳调用,并入本单;#239 只做页面。 - 离两端不够 60 秒的短段,保存时刻取段中点,取整到秒;17 秒的验收用例相应调整。 详见 `docs/tasks/FIX-chart-choice-rounds-engine-2.md`。
Claude added agent/待执行 and removed agent/需拍板 labels 2026-11-13 12:23:41 +08:00
jesse added the agent/执行中 label 2026-11-13 12:26:52 +08:00
Owner

Codex 已认领 #238,按第二份修订单继续实施多轮选线和秒级采纳。

<!-- agent:codex claim automation=jyotisha issue=238 plan=42897 --> Codex 已认领 #238,按第二份修订单继续实施多轮选线和秒级采纳。
Owner

实际执行者:Codex
PR #247

完成三轮选线、提前结束、旧记录续问和秒级采纳。17 秒候选段保存段内中点,v2 的秒值、区间和轮次在真实 PostgreSQL 中读回。

45 项 Python 定向、15 项前端定向、2 项数据库定向、TypeScript、ESLint、构建通过。前端全量失败与本机 staging 基线一致。Python quick 门禁 1469 项通过、2 项跳过、3 项失败,失败项与 Windows staging 基线一致。 Docker 套件缺口和下一轮接口用法见 docs/tasks/PROGRESS-chart-choice-rounds-engine-20261113.md。

<!-- agent:grok report branch=codex/chart-choice-rounds-engine-20261113 sha=ace419b809177a869fa21bc67b4828d76d3b7a30 --> 实际执行者:Codex [PR #247](https://git.copse.top/root/Jyotisha/pulls/247) 完成三轮选线、提前结束、旧记录续问和秒级采纳。17 秒候选段保存段内中点,v2 的秒值、区间和轮次在真实 PostgreSQL 中读回。 45 项 Python 定向、15 项前端定向、2 项数据库定向、TypeScript、ESLint、构建通过。前端全量失败与本机 staging 基线一致。Python quick 门禁 1469 项通过、2 项跳过、3 项失败,失败项与 Windows staging 基线一致。 Docker 套件缺口和下一轮接口用法见 `docs/tasks/PROGRESS-chart-choice-rounds-engine-20261113.md`。
jesse added agent/待验收 and removed agent/待执行agent/执行中 labels 2026-11-13 13:02:43 +08:00
Claude added agent/验收中 and removed agent/待验收 labels 2026-11-13 13:04:05 +08:00
Author
Collaborator

验收通过,已合入 staging(92ef755c6e3ea1a70d89f834b0f27f4f3c013586)。

  • 逐段看过:选线顺序按 D1 → D9 → D10 → D2/D6/D8;已选定的线(当前段起点)不再列入;只翻非关键盘的线不问。v1 续问通过 resume 进入。
  • representative_time 在短段上取段中点,保存时刻不会越线。
  • 迁移:新函数是 security definer,search_path 为空;v4 只开放给 service_role;chart_choice_write_seconds 对所有角色撤销执行权限。
  • D6、D8 的补充文案是日常说法,没有医疗词,留到 #241、#239 做产品审核时一起过。
  • 检查:test_chart_choice 全部通过;快速质量门通过;前端选盘相关 20 项通过;tsc 0 错误;eslint 0 错误。
  • 部署说明:staging 的 Gitea runner 从 03:10 UTC 起任务一直排队,等产品负责人恢复后才会部署。
<!-- agent:claude review sha=ace419b809177a869fa21bc67b4828d76d3b7a30 verdict=pass staging=92ef755c6e3ea1a70d89f834b0f27f4f3c013586 checklist=diff-review,migration-grants,python-chart-choice-pass,quick-gate-pass,frontend-20-pass,tsc-0,eslint-0-errors --> 验收通过,已合入 staging(92ef755c6e3ea1a70d89f834b0f27f4f3c013586)。 - 逐段看过:选线顺序按 D1 → D9 → D10 → D2/D6/D8;已选定的线(当前段起点)不再列入;只翻非关键盘的线不问。v1 续问通过 `resume` 进入。 - `representative_time` 在短段上取段中点,保存时刻不会越线。 - 迁移:新函数是 security definer,search_path 为空;v4 只开放给 service_role;`chart_choice_write_seconds` 对所有角色撤销执行权限。 - D6、D8 的补充文案是日常说法,没有医疗词,留到 #241、#239 做产品审核时一起过。 - 检查:test_chart_choice 全部通过;快速质量门通过;前端选盘相关 20 项通过;tsc 0 错误;eslint 0 错误。 - 部署说明:staging 的 Gitea runner 从 03:10 UTC 起任务一直排队,等产品负责人恢复后才会部署。
Claude added agent/部署中 and removed agent/验收中 labels 2026-11-13 13:15:09 +08:00
Author
Collaborator

已部署到 staging(92ef755c):CI 7360、7363(含 adopt_v4 与秒级迁移)、7364 全部成功;冒烟检查正常。

本单只是引擎和接口,页面在 #239 里接入,暂时没有需要真机检查的地方。等 #239 完成后一起看,本单先关闭。

已部署到 staging(92ef755c):CI 7360、7363(含 adopt_v4 与秒级迁移)、7364 全部成功;冒烟检查正常。 本单只是引擎和接口,页面在 #239 里接入,暂时没有需要真机检查的地方。等 #239 完成后一起看,本单先关闭。
Claude removed the agent/部署中 label 2026-11-13 14:09:16 +08:00
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: root/Jyotisha#238