docs(tasks): consult affliction-blind readings — audit + three serial briefs
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
2d620fb4ad
commit
9b937c4adf
@@ -0,0 +1,52 @@
|
||||
# 普通对话「盘上有信号、模型没认出」横向排查(2026-10-01)
|
||||
|
||||
- 触发:产品真机反馈(staging,`deepseek-v4-flash`,父母题)。回答把父亲写成「有分量的标尺」,与读者的亲身经历相反(父亲一项)。
|
||||
- 基线:`origin/staging` `2d620fb4`(已含 BUG-1132~1134 新形状、BUG-1148 名词规则)。
|
||||
- 方法:拿上一轮效果验证留下的 13 份样稿(三位公开名人 × 各领域,`deepseek-flash`,新提示词),按 golden 数据卡重建模型当时看到的卡,派三个只读子代理以 Parashari 读法逐领域核对:盘上该看到的强信号、答案是否认出、本命判断是否与公开生平冲突、漏读归因。只评本命承诺,不拿 2026 年的时运判断对照生平。
|
||||
- 结论由 Claude 抽查核对(卡片字段、代码出处);占星判断属于专业读法,个别条目有流派分歧,下表只收各流派都认的受冲信号。
|
||||
|
||||
## 1. 事故盘(读者盘,只引盘面事实)
|
||||
|
||||
双鱼上升。9 宫天蝎空宫,9 宫主火星落 7 宫与罗睺同宫;太阳落 10 宫射手(入友),对双鱼上升是 6 宫主、功能凶星;D12 的 9 宫射手有火星。
|
||||
|
||||
模型写法:「他在你心里是有分量的,更像一个标尺」「他这一头在家族这一层是站得住的,不是缺位」「两个人的宫主都不在自己宫里,各自往外跑」。读了旺弱(入友、不弱),没读受冲(宫主合罗睺、太阳是功能凶星、D12 9 宫有火星)。
|
||||
|
||||
## 2. 横向结果
|
||||
|
||||
13 份样稿里 11 份有关键信号漏读,其中 6 份读反、5 份与公开生平冲突。
|
||||
|
||||
| 盘 · 领域 | 漏掉或读反的关键信号 | 读反 | 与生平冲突 |
|
||||
| --- | --- | --- | --- |
|
||||
| 奥巴马 · 父母 | 9 宫有火星(功能凶星);土星从 1 宫照 7 宫的太阳与 9 宫主水星;9 宫主水星距太阳约 10°(燃烧) | 是:「他对你有要求,也有分量……做给你看」 | 严重:父亲两岁离开;答案预设父亲在场,还建议「去问爸爸的意见」 |
|
||||
| 乔布斯 · 父母 | 9 宫主金星与罗睺同宫,落 9 宫起第 8 宫;太阳是 12 宫主落 6 宫极敌;4 宫、4 宫主、月亮全在双体星座 | 是:「他这条线是跟家里合在一起的」 | 出生即被送养,一字未提 |
|
||||
| 泰勒 · 婚姻 | 7 宫主金星(功能凶星)合罗睺;火星 4 宫照 7 宫;UL 第 2 宫有计都;婚姻点距火星 1.5° | 是:「罗睺更多是噪音」「底子是好的」 | 严重:八次婚姻、一次丧偶 |
|
||||
| 泰勒 · 健康 | 命主兼 6 宫主火星与 8 宫主水星同在 4 宫;月亮在 12 宫受土星照;D6 第 8 宫火星合计都 | 是:「两颗星都处在正常状态,没有受损」 | 严重:终身重病、数十次手术 |
|
||||
| 泰勒 · 事业 | AL 落 10 宫(公众形象即事业);木星在月亮起 10 宫 | 偏反:「不靠曝光」 | 明显:童星、巨星 |
|
||||
| 奥巴马 · 子女 | 5 宫主金星落 6 宫;D7 的 5 宫主落 D7 第 8 宫;入旺月亮在 5 宫 | 是:转嫁成「孩子成长慢」 | 中:孩子写成「他」 |
|
||||
| 奥巴马 · 综合 | 土星入庙坐命宫(Sasa);木星落陷但有取消 | 半:「早年自我评价偏低」 | 中:「起步慢、没有爆发」 |
|
||||
| 乔布斯 · 学业 | 4 宫罗睺(卡上没有 4 宫);D24 木星落 12 宫 | 是:「靠耐着性子按规矩慢慢啃」 | 「能变成学历」 |
|
||||
| 乔布斯 · 婚姻 | 伴侣代表星火星落 8 宫,只读了力量 | 部分 | 无 |
|
||||
| 奥巴马 · 财富 | 8 宫罗睺只读成纠纷 | 半 | 轻 |
|
||||
| 乔布斯 · 年运 | 土星行运压本命月亮(卡上无此字段);罗睺大运未提 | 否 | 不评 |
|
||||
| 奥巴马 · 迁居 | 认出 4 宫主落 9 宫、12 宫主落 1 宫 | 否 | 无(五篇里最好) |
|
||||
| 泰勒 · 时运 | 金星功能凶星合罗睺被读成「往好的走」 | 轻 | 不评 |
|
||||
|
||||
做得对的也有:乔布斯婚姻(婚姻点合土星→晚婚、5 宫主土星→早期关系不稳)、奥巴马母亲(入旺月亮→照顾够)、奥巴马财富(11 宫 SAV 最高)、泰勒事业(10 宫 SAV 32、金星入旺)。有精简清单的领域(婚姻、财富)明显好于没有清单的领域。
|
||||
|
||||
## 3. 归因(按出现次数)
|
||||
|
||||
| 代码 | 根因 | 证据(按符号定位) |
|
||||
| --- | --- | --- |
|
||||
| B | 卡上有数据,没有方法告诉模型怎么读受冲;模型默认「旺 = 好」 | `frontend/src/lib/consultation-methodology.ts` `domainMethodology`:父母、子女、学业、迁居、家庭、年运、综合 7 个领域 `strictRoute: null`,不发任何清单;`consultation-condensed-checklist.ts` 只有事业、婚恋、财富三份,且只讲时间分层,不讲受冲 |
|
||||
| A | 卡上没有「谁照谁」(graha drishti)、没有燃烧、领域段不列同宫 | `consultation-evidence-card.ts` `baseNatal` 的 `PLANET_ROW_KEYS` 无相位与燃烧;`domainSection` 宫位只给 `sign/occupants/lords`。引擎其实有:`scripts/jyotish_engine.py` Step 5 `report['modules']['aspects']`(`aspects.py` `calc_house_aspects`),燃烧在 `planet['combust']`,普通对话的工作流响应都没带 |
|
||||
| D | 模型自造没有区分度的规则 | 「逆行 = 反复、打回来」四份都有;源头之一是 `frontend/src/mastra/product-voice.ts` 是非题 Good 示例「4 宫主水星逆行落 10 宫,她把心力投在你的前途上」(`frontend/docs/VOICE.md` 示例表同句),乔布斯父母答案几乎照抄。另有「宫主不在本宫 = 往外跑」「太阳不在 D12 的 9 宫 = 存在感远」 |
|
||||
| C | 写作形状预设对象在场、套日常场景 | `consultation-thinking-plan.ts` `natalAnswerShapeBody`「每段先用人话讲清楚这个人是什么样、你们怎么相处、事情会怎么走」;婚姻默认有现任伴侣、事业默认上班族、子女默认男孩 |
|
||||
| E1 | 瑜伽清单不按领域分流 | `scripts/jyotish_api_server.py` 普通对话层 `build_raman_support_observations` 后的 `modules['yogas']` 同一份 8 条进所有卡:财富卡、综合卡里是 Matrunasa / Bahu Puthra 等母亲、子女类;父母卡、子女卡 `yogas: false` 反而没有 |
|
||||
| E2 | 健康被框成「身心压力」,卡缺 1 宫、12 宫 | `consultation-domain-registry.ts` health `label: "身心压力"`、默认问题「近期的身心压力模式」;`EVIDENCE_CARD_SPECS.health` `houses: [6, 8]` |
|
||||
| E3 | 学业卡缺 4 宫 | `EVIDENCE_CARD_SPECS.education` `houses: [5, 9]` |
|
||||
|
||||
待核(不在本轮改,交给任务书核对出处):泰勒盘(天蝎上升)功能层把火星(1、6 宫主)标为 yogakaraka、太阳(10 宫主)标为中性,与常见列表不同;分盘行只有星座没有旺弱,模型自己推 D24 水星旺弱推错。月亮在天秤标「入敌」是五重关系(含临时关系)的结果,成立。
|
||||
|
||||
## 4. 我的验收漏洞
|
||||
|
||||
10-01 的效果验证(`docs/testing/consult-plain-answer-20261001-model-runs.md`)只核了格式(格局名、推修、扮演、爸妈分段、英文音译),没有核对判断对不对。以后改普通对话提示词,验收必须包含本命判断与公开生平的回测,见 `TASK-consult-no-presupposition-and-backtest-20261001.md`。
|
||||
@@ -403,3 +403,6 @@
|
||||
| `TASK-consult-answer-clock-20261001.md` | `PROGRESS-consult-answer-clock-20261001.md` | 普通对话答题时钟 70 s 容不下推理模型(v4-pro 77 s),无出生分钟路线只受 110 s 工具钟管;产品定 5 分钟防卡死(BUG-1142) | **已实现,待 Claude 验收**(直接执行) | 分支 `codex/consult-answer-clock-20261001` |
|
||||
| `TASK-consult-timeline-no-plan-20261001.md` | `PROGRESS-consult-timeline-no-plan-20261001.md` | 普通对话进度栏提前打勾:回答提纲在算盘前就作为四行步骤显示并全部打勾(BUG-1145);产品选 B 去掉提纲行,只显示真实步骤 | **实现完成,待 Claude 验收**(直接执行) | 分支 `codex/consult-timeline-no-plan-20261001` |
|
||||
| `TASK-staging-otp-skip-password-20261001.md` | `PROGRESS-staging-otp-skip-password-20261001.md` | staging 新邮箱用固定验证码登录后被强制设置密码,测试者误以为要密码登录;产品选「测试通道验证码登录跳过设置密码」,生产不变(BUG-1152) | **已实现推 staging**(Claude 直接执行),真机清单 `docs/testing/staging-otp-skip-password-20261001.md` | 分支 `codex/staging-otp-skip-password-20261001` |
|
||||
| `TASK-consult-card-affliction-data-20261001.md` | `PROGRESS-consult-card-affliction-data-20261001.md` | 普通对话「盘上有信号、模型没认出」三单之一:数据卡补相位(谁照谁)、同宫、燃烧,父母卡带宫主与代表星完整行,健康卡加 1/12 宫、学业卡加 4 宫,瑜伽按领域分流(预留 BUG-1154~1159);排查记录 `docs/research/consult_affliction_audit_2026_10_01.md` | **待领取**;三单串行第一 | 分支 `codex/consult-card-affliction-data-20261001` |
|
||||
| `TASK-consult-affliction-reading-20261001.md` | `PROGRESS-consult-affliction-reading-20261001.md` | 三单之二:全领域「先看受冲、再看旺弱」通用读法,补齐父母/子女/学业/迁居/家庭/年运/综合/健康中文清单,健康改名「健康」先讲体质底子(预留 BUG-1160~1166) | **待领取**;依赖第一单上 staging | 分支 `codex/consult-affliction-reading-20261001` |
|
||||
| `TASK-consult-no-presupposition-and-backtest-20261001.md` | `PROGRESS-consult-no-presupposition-backtest-20261001.md` | 三单之三:写作形状去掉「对象在场」预设、受冲时请用户确认、删被照抄的「逆行」示例、用户纠正时不辩护;建立名人生平回测作为普通对话提示词改动的固定验收(预留 BUG-1167~1172) | **待领取**;依赖第二单上 staging;回测需模型 key | 分支 `codex/consult-no-presupposition-backtest-20261001` |
|
||||
|
||||
@@ -0,0 +1,136 @@
|
||||
# TASK · 普通对话「先看受冲、再看旺弱」读法,补齐各领域清单,健康改口径(2026-10-01,三单之二)
|
||||
|
||||
- 基线:`TASK-consult-card-affliction-data-20261001` 推上 staging 的提交(开工时写进进度记录);不得早于它开工。
|
||||
- 分支 / worktree:`codex/consult-affliction-reading-20261001` / `.worktrees/consult-affliction-reading-20261001`
|
||||
- 范围:普通对话的方法清单(`frontend/src/lib/consultation-condensed-checklist.ts`、`consultation-methodology.ts`)、健康领域的名称与默认问题(`consultation-domain-registry.ts`、`guided-jyotish-topics.ts`)。写作形状、`product-voice.ts` 不在本单(第三单)。Skill 文件不改。
|
||||
- 串行:第一单 → **本单** → `TASK-consult-no-presupposition-and-backtest-20261001`。
|
||||
- BUG 编号:预留 1160~1166(以第一单实际用到的最大号顺延,开工时核对)。
|
||||
|
||||
## 1. 事故实证
|
||||
|
||||
见 `docs/research/consult_affliction_audit_2026_10_01.md` 第 2、3 节。本单负责 B 类(有数据、没读法)与 E2(健康口径):
|
||||
|
||||
- 模型默认「旺 = 好」:奥巴马父母篇把 9 宫里的火星读成「他对你有要求,也有分量」;泰勒健康篇「两颗星都处在正常状态,没有受损」;泰勒婚姻篇「罗睺更多是噪音」;乔布斯婚姻篇伴侣代表星火星落 8 宫,只读成「对方有劲」。
|
||||
- 有清单的领域(婚姻、财富)明显好于没有清单的领域;现有三份清单只讲时间分层,没讲受冲。
|
||||
- `consultation-methodology.ts` `domainMethodology`:父母、子女、学业、迁居、家庭、年运、综合 7 个领域 `strictRoute: null`,不发任何读法;健康、时运发英文 strict route 模块清单。
|
||||
- 健康:`consultation-domain-registry.ts` health `label: "身心压力"`、默认问题「我近期的身心压力模式和调节重点是什么?」,模型把终身重病的体质写成「作息、睡眠是弱项」。
|
||||
|
||||
## 2. 根因
|
||||
|
||||
数据卡给的是事实,没有一句告诉模型哪些事实算受冲、受冲和旺弱冲突时听谁的。模型只能用常识:入旺 = 好,Shadbala 高 = 没事,于是对同一类信号系统性读反。
|
||||
|
||||
## 3. 决策记录(产品 2026-10-01 授权)
|
||||
|
||||
- **D1 全领域统一「先看受冲、再看旺弱」。** 一段通用读法每轮只下发一次,所有领域共享;各领域清单再写本领域的必看项。
|
||||
- **D2 受冲达到门槛要先说出来。** 同一个人或同一件事有两个及以上独立受冲信号时,结论第一句先写这一面,用「可能」,并说是哪几条盘面;只有一个时作为补充一句。门槛「两个」是产品启发式,不是典籍规则;第三单的名人回测负责校验误报。
|
||||
- **D3 父母修法 A、D 落在本单**:A 父母清单;D 禁写没有区分度的推论(「宫主不在本宫 = 往外跑」「逆行 = 反复」等)。
|
||||
- **D4 健康改口径**:名称「身心压力」改为「健康」,默认问题改为「我的身体底子怎样,哪些方面要多留意?」;先讲体质底子,再讲近期压力。非医疗边界不变:不诊断、不给治疗建议、置信度封顶 low 不变。
|
||||
- **D5 补齐清单**:父母、子女、学业、迁居、家庭、年运、综合、健康各一份中文精简清单(第 5 节给出定稿文本,执行方不得改意思,只可改错字与格式);时运保留英文 strict route,前面加通用读法。事业、婚姻、财富三份各补一行受冲读法。
|
||||
- **D6 推翻**:`consultation-methodology.ts` 注释「A checklist the router does not declare is reported as absent instead of substituted」对普通对话失效。本单之后 `domains_without_strict_checklist` 在普通对话里应为空。Skill 路由文件本身不改,报告等其他面不受影响。
|
||||
|
||||
## 4. 硬红线
|
||||
|
||||
1. 不改 Skill 文件(`skills/**`),不 bump Skill 版本。
|
||||
2. 不放宽置信度上限(`confidenceCap`),不删非医疗边界。
|
||||
3. 清单只能引用卡上真实存在的字段名(含第一单新增的 `aspected_by`、`conjunct_with`、`combust`、`lord_rows`、`significator_rows`、`saturn_from_moon_house`);引用不存在的字段视为未通过。
|
||||
4. 不得用正则判断问题领域或意图(沿用 BUG-976/977 口径)。
|
||||
5. 改既有断言写三栏。
|
||||
|
||||
## 5. 任务分解
|
||||
|
||||
### T1 通用读法(BUG-1160)
|
||||
|
||||
在 `consultation-condensed-checklist.ts` 新增 `CONDENSED_SHARED_READING_LINES`,由 `consultationMethodologyForDomains` 在每轮的 `sections` 最前面推入一次(标题「通用读法 · 先看受冲」)。定稿文本:
|
||||
|
||||
1. 先看受冲,再看旺弱。旺弱和力量(入旺、入庙、Shadbala、SAV)只说明这颗星自己有没有力气,不说明它管的那件事顺不顺、那个人在不在你身边。
|
||||
2. 受冲信号,每条算一个:①宫、宫主或代表星与罗睺、计都、土星、火星同宫(`conjunct_with`),或被土星、火星照(`aspected_by`);②宫主落 6、8、12 宫,或落在从该宫数起的第 6、8、12 宫;③宫主或代表星是本上升的功能凶星;④落陷或燃烧(`combust`);⑤对应分盘里同号宫有凶星,或宫主落分盘的 6、8、12 宫。
|
||||
3. 同一个人或同一件事有两个及以上受冲信号:这一段第一句先写这一面,用「可能」,括号里写是哪几条;只有一个:补充一句;没有:不写。吉的一面同样要有依据,吉凶都有时两面都说。
|
||||
4. 力量大的星如果本身是 6、8、12 宫主,它带来的麻烦也有力量,不得因为「强」就说「没事」。
|
||||
5. 不写没有区分度的推论:逆行不等于「反复、打回来」;宫主不在本宫不等于「往外跑」;某星不在某宫不等于「离得远」;空宫不单独下结论。
|
||||
6. 不断言死亡、离婚、疾病诊断、流产、不孕。
|
||||
|
||||
**验收**:`consultationMethodologyForDomains(["parents"])` 等任一领域,`sections[0].title` 为通用读法,且每轮只出现一次(两个领域同轮也只一次)。
|
||||
|
||||
### T2 新增 7 份领域清单 + 健康中文清单(BUG-1161)
|
||||
|
||||
写入 `CONSULTATION_CONDENSED_CHECKLISTS`,并在 `domainMethodology` 给对应领域填 `strictRoute` 名(父母、子女等可用 `"consult-<domain>"` 这类本地名,注释说明来源是本任务书),保证 `domains_without_strict_checklist` 为空。定稿文本:
|
||||
|
||||
**parents**
|
||||
1. 父亲:9 宫、9 宫主、太阳、PiK(卡上有才看);母亲:4 宫、4 宫主、月亮、MK;D12 同号宫及其宫主。看 `roles.father/mother` 的 `lord_rows`、`significator_rows`。父亲、母亲各自判断,依据不混用。
|
||||
2. 先判断「在不在身边、近不近」,再谈性格:受冲信号两个及以上,这一段第一句写「爸爸(妈妈)可能不常在你身边 / 很早就有距离 / 关系断断续续」,不得写成「有分量」「站得住」。
|
||||
3. 4 宫、4 宫主、月亮都落双体星座(双子、处女、射手、双鱼),且有受冲信号:可以提「照顾你长大的可能不止一位」,只作可能。
|
||||
4. 不拿太阳、月亮的旺弱代替关系好坏。
|
||||
5. 禁写:凭单一信号断定父母离婚、去世、生病。
|
||||
6. 时间:9 宫主、4 宫主、太阳、月亮的大运子运,配 Narayana 当前段。
|
||||
|
||||
**children**
|
||||
1. 必看:5 宫、5 宫主、木星、PK;D7 上升、D7 的 5 宫与 5 宫主落 D7 第几宫。
|
||||
2. 先分清问的是「有没有、来得顺不顺」还是「和孩子怎么相处」。前者看受冲信号(5 宫主落 6、8、12;D7 的 5 宫主落 D7 的 6、8、12;木星落陷、燃烧、受冲),只能说「可能晚、可能要费些周折」。
|
||||
3. 孩子性别不写,统一写「孩子」。
|
||||
4. 禁写:断言不孕、流产、孩子性别、孩子的健康诊断。
|
||||
|
||||
**education**
|
||||
1. 必看:4 宫(正规学业)、5 宫(理解力、考试)、9 宫(高等教育)及宫主;水星、木星;D24 上升与 4、5、9 宫。
|
||||
2. 学历路和真本事分开说:4、9 宫受冲而 5 宫、水星有力,常见「学历这条路不顺,本事不靠学历」。
|
||||
3. 分盘行只有星座:旺弱以卡上 `d9` 段和本命 `status` 为准,不自己推分盘旺弱。
|
||||
4. 禁写:断言考不上、拿不到学位。
|
||||
|
||||
**migration**
|
||||
1. 必看:4 宫(家乡、住处)、12 宫(远方、异地居住)、9 宫(远行)及宫主;罗睺;D4。
|
||||
2. 先说这张盘一生迁动多不多(包括早年),再说现在的时间。
|
||||
3. 禁写:只凭一次行运断言搬家、出国。
|
||||
|
||||
**family**
|
||||
1. 先分清问的是谁(父母、兄弟姐妹、伴侣家人、孩子),按人分开,各自取宫:父母见父母清单,兄弟姐妹 3 宫、3 宫主、火星,家里整体 2 宫、4 宫。
|
||||
2. 受冲读法同通用读法。
|
||||
|
||||
**annual**
|
||||
1. 年盘(年主、Muntha、年运)只作当年层;一生的底子仍以本命为准。
|
||||
2. 必看:当前大运、子运的星主管哪几宫、和谁同宫、被谁照;Narayana 当前段所在宫;土星、木星行运所在宫;`saturn_from_moon_house` 为 12、1、2 时是土星压月亮那几年,只说压力大、节奏慢,不说灾。
|
||||
3. 罗睺、计都主事的大运要点出来:落哪宫、和谁同宫。
|
||||
4. 禁写:凭一次行运断言具体事件或日期。
|
||||
|
||||
**general**
|
||||
1. 命宫、命主、月亮、太阳的强弱与受冲是底子,先讲。
|
||||
2. 入旺或入庙的星坐 1、4、7、10 宫是大力量,要说出来;落陷的星,卡上瑜伽有取消才说取消。没上卡的格局不得自造名字。
|
||||
3. 起步与后劲分开说;不得因一颗星落陷就说「起步慢、没天赋」。
|
||||
|
||||
**health**(取代普通对话里的英文 health route;报告面不变)
|
||||
1. 先讲体质底子:命宫、命主、月亮、太阳的强弱与受冲。命主兼 6、8 宫主,或与 6、8 宫主同宫,底子偏弱、需要长期照顾。
|
||||
2. 必看:6 宫(疾病)、8 宫(慢性、手术)、12 宫(住院)及宫主;土星、火星;D6、D8、D30 上命主、6 宫主、8 宫主落第几宫、和谁同宫。
|
||||
3. 宫位对应的身体部位只作提示(如 4 宫胸、心、肺),不写成诊断。
|
||||
4. 分三层:一生底子;压力窗(当前大运子运激活 1、6、8、12 宫主);恢复窗。
|
||||
5. 禁写:诊断、病名、治疗建议、手术或死亡的断言;保留「这不是医疗意见」。
|
||||
|
||||
**验收**:每份清单只引用卡上字段(硬红线 3),合同测试列出每领域 `sections` 标题;`domains_without_strict_checklist` 对全部 12 个领域为空。
|
||||
|
||||
### T3 事业、婚姻、财富补受冲行(BUG-1162)
|
||||
|
||||
- career 加一行:「AL 落第几宫要说出来(落 10 宫 = 公众形象就是事业);10 宫主、AmK 的受冲按通用读法。」
|
||||
- marriage 加一行:「7 宫主或金星与罗睺、计都同宫,火星照 7 宫,UL 第 2 宫有凶星,伴侣代表星落 6、8、12:受冲两个及以上就写「感情可能不止一段 / 可能有断续」,只作可能;不预设用户现在有伴侣或单身。」
|
||||
- wealth 加一行:「8 宫也管版税、继承、意外之财,不只读成纠纷;2、11 宫主与 9 宫主同宫或互照是财富组合。」
|
||||
|
||||
### T4 健康改口径(BUG-1163)
|
||||
|
||||
- `consultation-domain-registry.ts` health:`label: "健康"`,`aliases` 保留 `身心压力`,`prompt: "我的身体底子怎样,哪些方面要多留意?"`;`claimBoundary`、`confidenceCap` 不变。
|
||||
- `guided-jyotish-topics.ts` 与所有展示「身心压力」的入口同步(`git grep -n "身心压力" frontend/src` 只剩 alias 一处)。
|
||||
- `frontend/docs/VOICE.md` 健康口径更新;改 UI 文案的同一提交更新 `frontend/DESIGN.md`(若无视觉变化,进度记录写明)。
|
||||
|
||||
### T5 文档与记录
|
||||
|
||||
`docs/BUG_HISTORY.md` 登记 1160~1163,关联 BUG-1070、BUG-1132、BUG-1134;`CHANGELOG.md` 一条(Skill 不 bump);进度记录与索引。
|
||||
|
||||
## 6. 让步顺序
|
||||
|
||||
T1、T2 的父母与健康清单、T4 不可让步;其余领域清单可以分两次提交,但同一单内完成。不能为了字符预算删清单行:先确认 12,000 字符断言是否只算「契约 + 卡」(清单不在内,见 `consult-evidence-card-20260927.test.ts` 的 `methodHeavy`),再决定。
|
||||
|
||||
## 7. 开工前置命令
|
||||
|
||||
```bash
|
||||
git fetch origin --prune
|
||||
git log origin/staging --oneline | grep -m1 "BUG-115[4-9]" # 确认第一单已上 staging
|
||||
git worktree add -b codex/consult-affliction-reading-20261001 .worktrees/consult-affliction-reading-20261001 origin/staging
|
||||
grep -o "BUG-1[0-9]\{3\}" .worktrees/consult-affliction-reading-20261001/docs/BUG_HISTORY.md | sort -u | tail -1
|
||||
```
|
||||
|
||||
验收口径同第一单(前端四件套 + build Static)。本单不跑模型;效果由第三单的名人回测验收。
|
||||
@@ -0,0 +1,102 @@
|
||||
# TASK · 数据卡补「谁照谁、谁和谁同宫、燃烧」,瑜伽按领域分流(2026-10-01,三单之一)
|
||||
|
||||
- 基线:`origin/staging` `2d620fb4`
|
||||
- 分支 / worktree:`codex/consult-card-affliction-data-20261001` / `.worktrees/consult-card-affliction-data-20261001`
|
||||
- 范围:普通对话的引擎附加层(`scripts/consultation_native_layers.py`)+ 数据卡(`frontend/src/lib/consultation-evidence-card.ts`)+ golden 刷新。**提示词、清单、写作形状不在本单**(第二、三单)。生时校正面、报告面不动。
|
||||
- 串行:本单 → `TASK-consult-affliction-reading-20261001`(读法与清单,依赖本单的新字段)→ `TASK-consult-no-presupposition-and-backtest-20261001`(写作形状与名人回测)。三单都改 `consultation-evidence-card.ts` 或其测试,必须按顺序,后一单以前一单推上 staging 的提交为基线。
|
||||
- BUG 编号起点:`BUG-1154`,本单预留 1154~1159(开工时 `grep -o "BUG-1[0-9]\{3\}" docs/BUG_HISTORY.md | sort -u | tail -1` 核对,当前最大 1153;被占用就顺延,并通知后两单顺延)。
|
||||
|
||||
## 1. 事故实证
|
||||
|
||||
见 `docs/research/consult_affliction_audit_2026_10_01.md`。摘要:
|
||||
|
||||
- 读者盘(双鱼上升):9 宫主火星合罗睺、太阳是 6 宫主(功能凶星)、D12 的 9 宫有火星。模型写「父亲是有分量的标尺」「站得住,不是缺位」,与读者经历相反。
|
||||
- 三位公开名人 13 份样稿里,11 份漏读关键信号,6 份读反,5 份与生平冲突(奥巴马父亲缺席、泰勒八次婚姻、泰勒终身重病)。
|
||||
- 本单负责其中的 A 类与 E1/E2/E3 类根因:模型看不到的数据。
|
||||
|
||||
## 2. 根因(本单部分)
|
||||
|
||||
1. **卡上没有相位。** `baseNatal` 的 `PLANET_ROW_KEYS = sign/house/degree_in_sign/nakshatra/retrograde/status`;`domainSection` 的宫位只有 `sign/occupants/lords`。引擎在 `scripts/jyotish_engine.py` Step 5 算了 `report['modules']['aspects']`(`scripts/aspects.py` `calc_house_aspects`),但普通对话工作流响应里没有(golden `frontend/tests/fixtures/consult-evidence-card-golden.json` 中搜不到 `house_aspects` / `aspects_to`)。土星照太阳、火星照 7 宫这类最经典的受冲信号,模型无从得知。
|
||||
2. **卡上没有燃烧。** 引擎 `jyotish_engine.py` 按度数写了 `planet['combust']`,投影没带。奥巴马 9 宫主水星距太阳约 10°,模型看不出。
|
||||
3. **领域段只列被选中宫位的星。** 宫主或代表星和谁同宫,要模型自己从 base 里对,四份乔布斯答案都没对出「木星与计都同宫」。
|
||||
4. **瑜伽不分领域。** `scripts/jyotish_api_server.py` 普通对话层 `build_raman_support_observations` 之后的 `modules['yogas']` 是同一份(奥巴马 8 条:Matrunasa、Bahu Puthra、Eka Puthra……),`EVIDENCE_CARD_SPECS` 里 career/wealth/general `yogas: true` 原样整份放进去;parents/children `yogas: false`。结果母亲、子女类瑜伽出现在财富卡,父母卡、子女卡反而没有;Sasa、落陷取消这类大格局也不在 8 条里。
|
||||
5. **宫位选择缺口。** health `houses: [6, 8]` 缺命宫与 12 宫(住院);education `houses: [5, 9]` 缺 4 宫(正规学业);annual 卡看不到「土星行运压本命月亮」。
|
||||
|
||||
## 3. 决策记录(产品 2026-10-01 授权)
|
||||
|
||||
- **D1 三单串行、全领域一起修。** 产品选定,不只修父母。
|
||||
- **D2 相位按 Parashari 整宫制。** 所有行星照第 7 宫;火星另照 4、8;木星另照 5、9;土星另照 3、10。罗睺、计都**不**给特殊相位(流派分歧大),它们的影响通过同宫体现。这与 `scripts/aspects.py` `SPECIAL_ASPECTS` 一致,不改引擎规则。
|
||||
- **D3 卡仍然只抄不算。** 相位、燃烧、同宫的值必须由引擎给出或由已有字段做「选择」(同宫 = 同一 `house` 的行星集合,属于选择);卡里不得新写判断文字(不写「受冲」「凶」)。是否算受冲由第二单的清单教模型判断。
|
||||
- **D4 父母卡带宫主与代表星的完整行。** 产品已同意父母修法 A~D;其中 B(相位)落在本单。
|
||||
- **D5 健康卡加命宫、12 宫,学业卡加 4 宫。** 健康改名「健康」属于第二单(D 那边的口径),本单只改卡的取材。
|
||||
- **D6 字符上限不放宽。** 单领域「契约 + 卡」≤ 12,000 字符的既有断言(`consult-evidence-card-20260927.test.ts`、`consult-evidence-card-v2-20260927.test.ts`)保持。超了先压缩格式(短数组),不得删已有字段,不得改断言。
|
||||
|
||||
## 4. 硬红线
|
||||
|
||||
1. `scripts/jyotish_api_server.py` 不得增长超过 4 行(只做薄注册,逻辑进 `consultation_native_layers.py`,每层用 `_guard`)。冻结测试 `tests/test_api_server_growth_contract.py` 必须过。
|
||||
2. golden 必须由真实引擎重新生成(AGENTS §7.4),不得手改 JSON。
|
||||
3. 不改相位、燃烧的引擎规则与容许度;不改功能吉凶分类(见 T5,只核对)。
|
||||
4. 不改提示词、清单、`natalAnswerShapeBody`、`product-voice.ts`(属后两单)。
|
||||
5. 任何既有断言改动写「原值 / 新值 / 原因」三栏。
|
||||
|
||||
## 5. 任务分解
|
||||
|
||||
### T1 引擎层:普通对话响应带上相位与燃烧(BUG-1154)
|
||||
|
||||
在 `scripts/consultation_native_layers.py` 新增 `build_graha_drishti(chart)`,由 `attach_native_consultation_layers` 挂到 `modules`(`_guard` 包裹,失败写 `blocked`,不影响其他层):
|
||||
|
||||
- `planets`: `{行星: {"aspects_houses": [被它照的宫号], "aspected_by": [照到它所在宫的行星]}}`,含罗睺、计都作为被照对象,不作为施照者(D2)。
|
||||
- `houses`: `{"1": {"aspected_by": [...]}, ... "12": {...}}`。
|
||||
- 行星燃烧:沿用引擎已有的 `combust` 字段,透传到普通对话的行星行(不重算)。
|
||||
|
||||
**验收**:Python 定向测试覆盖三位 golden 名人:奥巴马土星(1 宫)的 `aspects_houses` 含 3、7、10;太阳(7 宫)`aspected_by` 含 Saturn;水星 `combust = true`。`run_quality_gate.py --profile quick` 通过。
|
||||
|
||||
### T2 卡片 base:行星与宫位带相位、同宫、燃烧(BUG-1155)
|
||||
|
||||
- `base.natal.planets[行星]` 增加 `aspected_by`、`conjunct_with`(同 `house` 的其他行星,选择所得)、`combust`(只在 true 时出现,省字符)。
|
||||
- `base.natal.houses[宫号]` 从字符串改为 `{sign, aspected_by}`,或另设 `base.natal.house_aspects`,二选一,以字符预算为准;改结构的话,所有读 `base.natal.houses` 的地方同步(`domainSection` 的 `sign` 读取)。
|
||||
- 引擎没给相位层时,`meta.gaps` 记 `base.aspects`,不得补算。
|
||||
|
||||
**验收**:卡片合同测试新增断言:奥巴马卡太阳 `aspected_by` 含 Saturn、水星 `combust: true`;读者盘同构的 golden 场景(任一盘中宫主与罗睺同宫)`conjunct_with` 含 Rahu。12,000 字符断言全部通过。
|
||||
|
||||
### T3 父母、健康、学业、年运的取材(BUG-1156)
|
||||
|
||||
- 父母 `roles.mother/father` 每个条目增加 `lord_rows` 与 `significator_rows`:`{planet: {house, sign, status, functional, conjunct_with, aspected_by, combust?}}`。`functional` 从 base 的功能吉凶列表**选择**所得(benefic / malefic / neutral)。D12 同号宫再给该宫宫主在 D12 的星座(引擎已有 D12 行,选择所得)。
|
||||
- health `houses` 改为 `[1, 6, 8, 12]`;education `houses` 改为 `[4, 5, 9]`。
|
||||
- annual 卡带上「土星行运所在星座与本命月亮星座的宫距」:由 T1 在引擎侧给出 `saturn_from_moon_house`(1~12),卡只抄。
|
||||
|
||||
**验收**:三位名人 × 父母、健康、学业、年运卡快照更新(真实引擎 golden);乔布斯父母卡 `father.lord_rows.Venus.conjunct_with` 含 Rahu、`significator_rows.Sun.functional = malefic`;泰勒健康卡含 1 宫、12 宫;乔布斯年运卡 `saturn_from_moon_house = 1`(土星行运双鱼、本命月亮双鱼)。
|
||||
|
||||
### T4 瑜伽按领域分流(BUG-1157)
|
||||
|
||||
- 给瑜伽条目带上领域标签:先查引擎 / Raman 筛选是否已有类别字段;没有就在 `consultation_native_layers.py` 用**名称对照表**(固定表,不用正则猜)映射到 parents / children / siblings / wealth / career / general 等,表放 Python 一处,前端只按标签选择。
|
||||
- 卡片:parents、children 打开 `yogas`,只收本领域标签;career / wealth / general 只收本领域与 general 标签。
|
||||
- 查清 Sasa、Neecha Bhanga、Gajakesari 为什么不在 8 条里(Raman 筛选上限?规则引擎没跑?)。**只诊断并写进进度记录**;若是有意的置信度筛选,不得放宽(AGENTS §8.4),交产品决定。
|
||||
|
||||
**验收**:奥巴马财富卡、综合卡里不再有 Matrunasa / Puthra 类;父母卡含 Matru 类、子女卡含 Puthra 类。诊断结论写入进度记录。
|
||||
|
||||
### T5 功能吉凶核对(只核不改,BUG-1158 视结论决定是否占用)
|
||||
|
||||
泰勒盘(天蝎上升)引擎把火星(1、6 宫主)标 yogakaraka、太阳(10 宫主)标中性,与常见 BPHS 列表不同。查清引擎规则出处(文件、函数、引用的典籍或流派),写进进度记录。**不得改分类**;若确认是缺陷,登记 BUG-1158 为 `investigating`,交产品与占星顾问决定。
|
||||
|
||||
### T6 文档与记录
|
||||
|
||||
- `docs/BUG_HISTORY.md` 登记 BUG-1154~1157(以及视 T5 结论的 1158),关联 BUG-1133、BUG-1054。
|
||||
- `CHANGELOG.md` 一条;Skill 无改动,写明不 bump。
|
||||
- `docs/tasks/PROGRESS-consult-card-affliction-data-20261001.md`、`docs/tasks/README.md` 索引。
|
||||
|
||||
## 6. 让步顺序
|
||||
|
||||
T1、T2 不可让步。T3 的年运字段、T4 的大格局诊断可以挂 `blocked` 先交付,写进 `BLOCKED.md`。字符预算紧时,先压缩格式,再去掉 `combust: false`,绝不删已有字段。
|
||||
|
||||
## 7. 开工前置命令
|
||||
|
||||
```bash
|
||||
git fetch origin --prune
|
||||
git worktree add -b codex/consult-card-affliction-data-20261001 .worktrees/consult-card-affliction-data-20261001 origin/staging
|
||||
cd .worktrees/consult-card-affliction-data-20261001
|
||||
grep -o "BUG-1[0-9]\{3\}" docs/BUG_HISTORY.md | sort -u | tail -1
|
||||
python3 scripts/pre_work_check.py --remote-timeout 8 --command-timeout 45 # 涉及引擎层
|
||||
```
|
||||
|
||||
验收口径:Python 定向 + quick 门;前端 `tsc --noEmit` 0、`npm run lint` 0 error、相关测试 fail=0、测试总数不低于基线、`next build` 后 `/` 仍 Static。
|
||||
@@ -0,0 +1,86 @@
|
||||
# TASK · 普通对话写作去掉预设、删掉被照抄的读法示例,建立名人生平回测(2026-10-01,三单之三)
|
||||
|
||||
- 基线:`TASK-consult-affliction-reading-20261001` 推上 staging 的提交(开工时写进进度记录)。
|
||||
- 分支 / worktree:`codex/consult-no-presupposition-backtest-20261001` / `.worktrees/consult-no-presupposition-backtest-20261001`
|
||||
- 范围:`frontend/src/lib/consultation-thinking-plan.ts`(`natalAnswerShapeBody`、`followUpAnswerShapeInstruction`)、`frontend/src/mastra/product-voice.ts` 示例、`frontend/docs/VOICE.md`;新增名人回测脚本、回测 golden 与评分表。生时校正面不动。
|
||||
- 串行:第一单 → 第二单 → **本单**。
|
||||
- BUG 编号:预留 1167~1172(以第二单实际最大号顺延,开工时核对)。
|
||||
|
||||
## 1. 事故实证
|
||||
|
||||
见 `docs/research/consult_affliction_audit_2026_10_01.md`。本单负责 C 类(形状预设)、D 类的示例源头和验收漏洞:
|
||||
|
||||
- `natalAnswerShapeBody`:「每段先用人话讲清楚这个人是什么样、你们怎么相处、事情会怎么走」。父亲缺席时也只能写「相处」,于是出现「他对你有要求,也有分量」「去问爸爸的意见」(奥巴马样稿);婚姻题默认有现任伴侣(泰勒样稿「伴侣稳、能扛」),事业题默认上班族(「投简历、涨薪」),子女题把两个女儿写成「他」。
|
||||
- `product-voice.ts` 是非题 Good 示例「4 宫主水星逆行落 10 宫,她把心力投在你的前途上」(`VOICE.md` 示例表同句)。乔布斯父母样稿几乎照抄:「宫主木星落在 10 宫、还是逆行……注意力落在你的前途上」;四份乔布斯样稿都把逆行写成「反复、打回来」。另一条 Good 示例「你这段婚姻更像先把已经在一起的关系过稳」预设了用户已婚。
|
||||
- 10-01 效果验证只核格式,没有核对判断对不对(排查记录第 4 节)。
|
||||
|
||||
## 2. 根因
|
||||
|
||||
写作形状在规定「每段写什么」时,把对象的存在和日常互动当成了前提;示例里的盘面数据本来是示意,模型却当成读法规则抄。验收没有「对不对」的标尺,所以这类问题两轮都没被拦住。
|
||||
|
||||
## 3. 决策记录(产品 2026-10-01 授权)
|
||||
|
||||
- **D1 父母修法 C**:信号成立时允许直说「爸爸可能不常在你身边」,并在该段末用一句话请用户确认;不再强制写「相处」。推广到所有对象:伴侣、孩子、上司同理。
|
||||
- **D2 不预设处境**:不预设有没有伴侣、是否已婚、是否在上班、孩子性别、父母是否在世或在身边。卡上 `gender` 为「性别未知」时伴侣、孩子都不用「他 / 她」。
|
||||
- **D3 示例不得携带读法规则**:示例只演示口气与结构,盘面依据用不含规则含义的占位(例:「(4 宫主落 10 宫)」可以,「逆行 → 反复」不可以);删除或改写两条问题示例。
|
||||
- **D4 用户纠正盘上判断时**(例:「我爸其实没怎么管过我」):追问轮先认下这件事,再说盘上哪几条和它对得上;不为原判断辩护,不说「盘上显示你们关系不错」。
|
||||
- **D5 名人生平回测成为普通对话提示词改动的固定验收**(产品选定)。现有 3 位 golden 名人加 5~7 位,覆盖:父亲缺席、多次婚姻、终身重病、早年被收养或由祖辈抚养,以及父母关系良好、婚姻稳定、健康良好的对照组。每次改普通对话提示词或清单都要跑。
|
||||
- **D6 推翻**:`TASK-consult-plain-answer-20261001` D2 第 2 点「每段先用人话讲清楚这个人是什么样、你们怎么相处、事情会怎么走」由本单 T1 的写法取代;其「按对象分段、括号依据、只说一遍、不限字数」继续有效。
|
||||
|
||||
## 4. 硬红线
|
||||
|
||||
1. 形状仍只定义在 `natalAnswerShapeBody` 一处(BUG-1132 D7),其他位置只引用。
|
||||
2. 回测 golden 必须由真实引擎生成(`scripts/research/capture_consult_evidence_card_golden.py` 同一路径);出生资料只用 Rodden AA / A 级的公开名人,来源写进评分表;不得使用任何真实用户的盘。
|
||||
3. 模型 key 只从环境变量读(`DS_KEY` 或执行方约定名),不得写入仓库、日志、进度记录。没有 key 就把回测记为环境缺口,交产品提供临时 key,不得宣称通过。
|
||||
4. 回测脚本放研究目录,不进产品运行时,不进 CI 门禁(需要外网与 key)。
|
||||
5. 改既有断言写三栏;`consultation-voice-contract.test.ts` 等口气合同测试同步。
|
||||
|
||||
## 5. 任务分解
|
||||
|
||||
### T1 去掉预设(BUG-1167)
|
||||
|
||||
`natalAnswerShapeBody` 中「每段先用人话讲清楚这个人是什么样、你们怎么相处、事情会怎么走」改为(定稿,执行方不得改意思):
|
||||
|
||||
> 每段先说盘上最强的一两个信号说明了什么,包括这个人在不在你身边、近不近;盘上没有依据的方面不写,不用日常场景凑段落。受冲信号两个及以上时,这一段第一句就写这一面,用「可能」,段末用一句话请用户确认(例:「如果实际情况不是这样,告诉我,我按真实情况重看。」),全篇这类确认最多一处。不预设有没有伴侣、是否已婚、是否在上班、孩子性别、父母是否在身边;性别未知时不用「他」「她」称伴侣和孩子。
|
||||
|
||||
**验收**:合同测试锁住新句(含「在不在你身边」「请用户确认」「不预设」三个要点),并断言旧句已不存在。
|
||||
|
||||
### T2 示例清理(BUG-1168)
|
||||
|
||||
- `product-voice.ts` 与 `VOICE.md`:是非题 Good 示例去掉「逆行」,改成不携带规则的依据(例:「不是。(4 宫主落 10 宫)她把心力放在你的前途上……」);「你这段婚姻更像先把已经在一起的关系过稳」改成不预设已婚的示例,或删除。
|
||||
- 全量检查示例与提示词中的「逆行」:`git grep -n "逆行" frontend/src/mastra frontend/src/lib/consultation-*.ts` 除行运展示文案外为 0 行,结果写进进度记录。
|
||||
|
||||
### T3 用户纠正时的追问轮(BUG-1169)
|
||||
|
||||
`followUpAnswerShapeInstruction` 加一句(定稿):「用户纠正了前面的判断(比如说父亲其实不常在身边):先认下这件事,再说盘上哪几条和它对得上、原来哪句读偏了;不为原判断辩护。」
|
||||
|
||||
**验收**:合同测试锁句;回测里每位「父亲缺席」名人追加一轮纠正追问,人工核对回答没有辩护。
|
||||
|
||||
### T4 名人生平回测(BUG-1170)
|
||||
|
||||
1. **名单**:现有 Jobs、Obama、Taylor,加 5~7 位 Rodden AA / A 公开名人,执行方从仓库已有案例库(`docs/research/` 下 v5 案例集等)优先挑选,生平来源写明。至少覆盖:父亲缺席或早逝(如 Bill Clinton,生前父亲已故)、早年由祖辈或养父母抚养、多次婚姻、终身重病;对照组至少 2 位父母关系良好、婚姻稳定。
|
||||
2. **golden**:用 `capture_consult_evidence_card_golden.py` 同路径生成,新文件 `frontend/tests/fixtures/consult-biography-backtest-golden.json`(不并入现有合同 golden,避免改动既有快照)。
|
||||
3. **评分表** `docs/research/consult_biography_backtest_rubric.json`:每位名人 × 领域(至少父母、婚姻、健康、事业)写:公开生平事实(带来源)、`must_not`(与生平冲突的说法,如「父亲有分量、常在身边」)、`expected_signals`(卡上该被认出的受冲信号,引用卡字段)。
|
||||
4. **脚本** `frontend/scripts/research/consult-biography-backtest.mts`:按产品真实系统提示与用户回合指令(直接 import 现有模块,不抄文字)、卡片生成器调用模型,输出每份答案的 markdown 与一份汇总;自动检查只做确定性项(「逆行……反复」等禁句、性别未知时用「他 / 她」、`must_not` 原文命中),判断类核对由 Claude 验收时逐份阅读。
|
||||
5. **通过线**:排查记录里 5 份严重冲突(奥巴马父母、乔布斯父母、泰勒婚姻、泰勒健康、泰勒事业)全部不再冲突;新增名人严重冲突 ≤ 1 份;对照组不得出现「父亲 / 母亲可能不在身边」「感情可能不止一段」这类误报;禁句 0 处。每份跑 2 次,两次都过才算过。
|
||||
|
||||
### T5 文档与记录
|
||||
|
||||
- `docs/testing/consult-affliction-backtest-20261001.md`:回测结果表(名人 × 领域 × 两次结果)+ 给产品的真机清单(父母题、婚姻题、健康题各一条,看「先说受冲、请确认、不预设」)。
|
||||
- `docs/BUG_HISTORY.md` 登记 1167~1170,关联 BUG-1132、BUG-1071;`CHANGELOG.md`;进度记录与索引。
|
||||
- `AGENTS.md` §10 测试分层表加一行「普通对话提示词 / 清单改动 → 名人生平回测(需模型 key)」——该文件改动只加这一行。
|
||||
|
||||
## 6. 让步顺序
|
||||
|
||||
T1、T2、T4 不可让步。没有模型 key 时:T1~T3 照常交付,T4 脚本、golden、评分表交付,运行结果记为环境缺口写进 `BLOCKED.md`,staging 部署后由 Claude 拿临时 key 补跑。
|
||||
|
||||
## 7. 开工前置命令
|
||||
|
||||
```bash
|
||||
git fetch origin --prune
|
||||
git log origin/staging --oneline | grep -m1 "BUG-116[0-6]" # 确认第二单已上 staging
|
||||
git worktree add -b codex/consult-no-presupposition-backtest-20261001 .worktrees/consult-no-presupposition-backtest-20261001 origin/staging
|
||||
grep -o "BUG-1[0-9]\{3\}" .worktrees/consult-no-presupposition-backtest-20261001/docs/BUG_HISTORY.md | sort -u | tail -1
|
||||
```
|
||||
|
||||
验收口径:前端四件套 + build Static;回测按 T4 通过线,由 Claude 独立重跑一遍。
|
||||
Reference in New Issue
Block a user