fix(consult): BUG-945~949 领域截断、思考分片、Pass 4 按模式分流
schema 上限与执行上限解耦;校正思考改分片门;日期观察不删字,保证句与无分钟个人盘退回重写。
This commit is contained in:
@@ -12365,3 +12365,83 @@
|
||||
- 相关记录:BUG-942、BUG-943
|
||||
- 复发自:无
|
||||
- 修复版本:`94c1e81f`
|
||||
|
||||
## BUG-945 | 三领域问题被 schema 整次拒绝,一个领域都不算
|
||||
|
||||
- 状态:resolved
|
||||
- 首次发现:2026-09-18
|
||||
- 最近更新:2026-09-18
|
||||
- 影响面:`consultation-tools.ts` 工具入参 `domains.max`、`executableDomainPlan`
|
||||
- 用户现象:一次问事业+财富+家庭时整轮没有排盘,回答空或只剩道歉。
|
||||
- 触发条件:模型列出 ≥3 个领域。`MAX_CONSULTATION_DOMAINS` 因 31s/领域降到 2,schema `.max(2)` 在 execute 前拒绝整次调用。
|
||||
- 根因:执行上限与计划上限绑在同一个常数上。工具描述承诺截断进 `omitted_domains`,zod 却整次拒绝,截断逻辑成死代码。
|
||||
- 修复:schema 上限改为 `MAX_CONSULTATION_DOMAIN_PLAN_VALUES = 6`;真正执行仍按墙钟上限 2 截断,其余进 `omitted_domains`。描述与 mastra 指令对齐。
|
||||
- 验证:`consultation-agentic-runtime.test.ts` 超限计划 `runWorkflow` ≥1、`omitted_domains` 非空、schema 接受 3–6 条拒绝 7 条。
|
||||
- 防复发:计划长度与执行长度必须是两个常数;超限合同必须走到 execute。
|
||||
- 相关记录:BUG-944、BUG-946
|
||||
- 复发自:BUG-944
|
||||
- 修复版本:见本批合入 SHA
|
||||
|
||||
## BUG-946 | 领域时长改 31s 后 6 条预算断言仍按 21s / cap=3
|
||||
|
||||
- 状态:resolved
|
||||
- 首次发现:2026-09-18
|
||||
- 最近更新:2026-09-18
|
||||
- 影响面:`consultation-agentic-runtime.test.ts`
|
||||
- 用户现象:无(测试红)。门禁 `npm test` 过不了,镜像不发布。
|
||||
- 触发条件:`94c1e81f` 把领域时长改成 31s 后跑全量测试。
|
||||
- 根因:实现改了常数,断言没跟。三领域调用被 BUG-945 的 schema 拒绝后,合并合同读 `undefined`。
|
||||
- 修复:按 MAX=2 / 31s 重写 6 条断言,写原值/新值/原因。不得弱化成 `cap >= 1`。
|
||||
- 验证:同文件预算与超限截断用例。
|
||||
- 防复发:改 `CONSULTATION_DOMAIN_DURATION_MS` 必须同步预算合同。
|
||||
- 相关记录:BUG-944、BUG-945
|
||||
- 复发自:BUG-944
|
||||
- 修复版本:见本批合入 SHA
|
||||
|
||||
## BUG-947 | 校正流思考分片被条目门整条丢掉
|
||||
|
||||
- 状态:resolved
|
||||
- 首次发现:2026-09-18
|
||||
- 最近更新:2026-09-18
|
||||
- 影响面:`rectification-agentic/v9/stream-mapping.ts`、`think-step-gate.ts`
|
||||
- 用户现象:生时校正计算期思考行大面积空白。
|
||||
- 触发条件:provider `reasoning-delta` 分片短于 8 字或没有句末标点。`先核对经历。`(7 字)被 `acceptThinkStepText` 判空。
|
||||
- 根因:本命 Pass 2 的整条门被误用到校正分片通道。
|
||||
- 修复:选任务书方案 (b)。校正流保留分片通道,改走 `acceptThinkingFragment`(只判 CJK / 工具名,不改写、不设 8 字下限)。另提供 assembler 给连续分片测可见行。
|
||||
- 验证:`rectification-step-answer.test.ts`,含「连续中文分片最终能产出一条可见思考行」。
|
||||
- 防复发:条目门不得接到分片通道。新增正则必须能回答「门还是刀」。
|
||||
- 相关记录:BUG-942
|
||||
- 复发自:BUG-942
|
||||
- 修复版本:见本批合入 SHA
|
||||
|
||||
## BUG-948 | 三类检测器没人调用,范围用户应期被旧口径挖空
|
||||
|
||||
- 状态:resolved
|
||||
- 首次发现:2026-09-18
|
||||
- 最近更新:2026-09-18
|
||||
- 影响面:`timing-output-guard.ts`、`stream-agent-response.ts`、`consult/route.ts`、出生时间模式
|
||||
- 用户现象:只知道出生范围、或已校正后问应期,日期被挖成「[具体时间已省略]」;同时保证句和个人盘断言在恒等壳下什么都不拦。
|
||||
- 触发条件:`94c1e81f` 把守卫改成恒等,Pass 4 只接了方法学记账检测。产品 2026-09-18 授权按模式分开处置。
|
||||
- 根因:检测器保留了,生产路径没接线。身份壳看起来在保护。旧红线把分钟敏感主题一律挖日期,范围用户不能用。
|
||||
- 修复:删除恒等壳。Pass 4 按模式:`exact-timing` 在有盘/窗口模式只记 `pass4-observe` 不改写;`guarantee` 全模式 `pass4-reject`,退回 Pass 3 一次,二次丢句;`personal-chart` 仅 `general_no_birth_time` 退回,二次整段换成拒绝句。正文先 hold 再一次发出,避免闪两次。
|
||||
- 验证:timing-output-guard / birth-time-mode / range-reading / birth-accuracy / agentic-runtime Pass 4 合同。范围用户含日期正文原样通过。
|
||||
- 防复发:全仓不得再出现 `guardPreciseTimingOutput` / `guardGeneralNoBirthTimeOutput` / `createBirthTimeModeOutputGuard`。回执步骤名带 `pass4-observe:<kind>` / `pass4-reject:<kind>`。
|
||||
- 相关记录:BUG-298、BUG-943
|
||||
- 复发自:BUG-298
|
||||
- 修复版本:见本批合入 SHA
|
||||
|
||||
## BUG-949 | 思考计划变小后容量算术两条红
|
||||
|
||||
- 状态:resolved
|
||||
- 首次发现:2026-09-18
|
||||
- 最近更新:2026-09-18
|
||||
- 影响面:`consultation-session-capacity.test.ts`
|
||||
- 用户现象:无(测试红)。门禁过不了。
|
||||
- 触发条件:本命思考计划改成四标题后,1 域 JSON 1053 < 旧下限 1200;19 轮旧口径不再 > 200,000。
|
||||
- 根因:断言按旧计划形状写死上下界。
|
||||
- 修复:按 2026-09-18 实测重算:分节 1053/1267/1267;19 轮详情 533,113 B、旧口径 177,973;50 轮 1,402,384 B。三栏说明。19→50 轮产品口径不变。
|
||||
- 验证:同文件两条容量合同。
|
||||
- 防复发:改 thinking plan 形状必须重测这两条,不得放宽成「大于 0」。
|
||||
- 相关记录:BUG-732、BUG-943
|
||||
- 复发自:无
|
||||
- 修复版本:见本批合入 SHA
|
||||
|
||||
Reference in New Issue
Block a user