# 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-"` 这类本地名,注释说明来源是本任务书),保证 `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)。本单不跑模型;效果由第三单的名人回测验收。