Files
Jyotisha/docs/tasks/PROGRESS-rectification-event-dates-20261002.md
T
Jesse_ChenandClaude Opus 5.5 3bbe65a215
Independent Staging Quality Gate / validate (push) Successful in 13m37s
Independent Staging Quality Gate / publish (push) Successful in 3m37s
fix(rectification): out-of-window event dates no longer fail every rescore; future dates refused at intake; corrections revise without a focus (BUG-1178, BUG-1179)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-02 09:03:22 +08:00

34 lines
2.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# PROGRESS:经历日期越界卡死比较 + 更正经历(2026-10-02,BUG-1178~1179)
- 模式:直接执行(产品 10-02「两条修法需要修,改错选 A」)。
- 基线:`origin/staging` `8e978cab`;分支 `codex/rectification-post-adopt-verify-20261001`。
- BUG 编号:staging 任务书已预留 1174~1177(普通对话),本单用 1178~1179。
## 实证
staging 真机测试者:「2028 年借出一笔钱」(年份打错)后每轮「这次没有重新比较」,不出卡。本机真引擎同一请求:
| 追加的经历 | 引擎 |
| --- | --- |
| 2028 年(未来) | 400 `events[7] dates must be between birth_date and today` |
| 今年(年精度,止于 12-31) | 400 |
| 本月(月精度,止于月底) | 400 |
| 去年 | 200 |
## 改动
| 位置 | 改动 |
| --- | --- |
| `engine-client.ts` | `boundEngineEventDates`:发引擎前丢未来 / 出生前事件,裁剪越界日期(上限 UTC 昨天) |
| `rectification-v9-tools.ts` | batch / propose 拒收未来日期(`future_date`,不写库);batch 已写行 `index` 改用原始条目序号,复述按写入行读取;revise 工具 focus 可选、quote 须落本轮原话、修订后立即确认并重算 |
| `agent-run-*` / `host-fallback.ts` / `user-copy.ts` | 未来日期时服务端追加一句 |
| `turn-decision.ts` | 经历摘要带 `evidence_id`,排除 superseded |
| `agentic-rectification.ts` | 提示:用户更正走 revise-evidence |
## 验证
- 新测试 `rectification-event-date-bounds-20261002.test.ts` 5 条;`rectification-v9-evidence` 新增无焦点更正用例;三条合同用例三栏改写。
- 真库 + 真引擎:虚构案例账本加 2028 与今年经历后重算成功;无焦点修订 + 确认后旧记录 superseded。
- 环境缺口:真实模型是否按新提示调用修订工具,本机无模型凭据,见真机清单。
- 未改:`mastra/rectification-tools.ts`(仅旧版 `session.ts` 引用,非当前产品路径)同样直接发事件给引擎。