docs(tasks): 补 BUG-964 思考条与正文间距 56px 的实测根因
Chrome 实测 gapPx=56:.consultation-thinking-report 的 grid gap 24px 加首个 h2 的 margin-top 32px。后者源于 globals.css:415 的「首元素清零」 被 2353 行会话作用域规则按特指度压掉(0,2,0 对 0,4,1),在真实会话里 从未生效。另一条路径 message-stage-and-answer 只有 8px。 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
This commit is contained in:
co-authored by
Claude Opus 5
parent
0a1a87b06e
commit
fa21cf46a8
@@ -140,7 +140,7 @@
|
||||
| `TASK-consult-pass4-streaming-20260918.md` | `PROGRESS-consult-pass4-streaming-20260918.md` | 验收 review 三轮:Pass 4 一 hold 正文就整段蹦出、逐字流式消失(BUG-950 产品拍板按句放行);无出生分钟模式整段被一句拒绝顶掉、一般知识句一起丢(951 改按句丢弃);该模式下日期不留痕(952);校正流 token 级 thinking 是死链,按 P2 删除并把测试翻转成否定合同(953)。基线 `1e553976` | 待验收 | `cd4775ae` |
|
||||
| `TASK-window-consult-contract-20260918.md` | `PROGRESS-window-consult-contract-20260918.md` | **P0 线上**:申报时段模式**自 2026-08-21 起每轮秒败**(69ms、0 token、模型从未被调用)。服务端日志实证根因:窗口 Agent attach 了 `jyotishSkillBinding()`,但 `windowJyotishInstructions` 从来不含方法块 marker,输入处理器直接 abort(BUG-954)。abort 与「模型没调工具」同码,是它藏四周的原因(955);另含合同未绿不得丢正文(956)、计算不该由模型触发(957,须等 954 上线后另轮)、窗口指令应期冲突(958)。基线 `9cdcf96b` | 已验收通过(Claude:tsc 0 / lint 0 error / npm test 3501 条 31 红同基线 / `/` Static / gzip 无变化;实跑确认窗口 Agent 指令已含 marker);review 另出 BUG-959~961 见下一行 | `5b6abc23` |
|
||||
| `TASK-contract-degraded-pass4-20260918.md` | — | 验收 review:BUG-956 新增的降级交付路径绕过 Pass 4,保证句原样送达(BUG-959);`uncontractedText` 跨 attempt 不清零,同一轮正文说两遍(960);降级后还空跑一轮 compose(961)。基线 `877128ce` | 待领取 | — |
|
||||
| `TASK-chat-markdown-list-20260918.md` | — | 真机排版反馈:聊天正文列表**没有项目符号**(Tailwind v4 preflight 清了 `list-style`,`.markdown-list` 没恢复,BUG-962);`promoteDefinitionLists` 把四标题口语体的散文误判成并列项,三段正文被改写成列表(BUG-963,判据太松,收紧而非删除——BUG-356 的场景要留)。基线 `ea0280c1` | 待领取 | — |
|
||||
| `TASK-chat-markdown-list-20260918.md` | — | 真机排版反馈:聊天正文列表**没有项目符号**(Tailwind v4 preflight 清了 `list-style`,`.markdown-list` 没恢复,BUG-962);`promoteDefinitionLists` 把四标题口语体的散文误判成并列项,三段正文被改写成列表(BUG-963,判据太松,收紧而非删除——BUG-356 的场景要留);思考条与正文之间实测 56px=报告 grid gap 24 + 首标题 margin-top 32,后者是被特指度压掉的「首元素清零」规则(BUG-964)。基线 `ea0280c1` | 待领取 | — |
|
||||
| `TASK-first-paint-dead-screen-fallback-20260917.md` | — | 真机:首页永远停在「正在载入账户」,兜底全在没跑起来的 bundle 里(BUG-936 investigating)。根 layout 加与 bundle 无关的内联兜底 + 去掉本仓正则后行断言 | 待领取 | — |
|
||||
| `TASK-consultation-answer-start-anchor-20260917.md` | `PROGRESS-consultation-answer-start-anchor-20260917.md` | 主会话回答落在结尾:`useConversationScrollAnchor` 是贴底跟随,流式期间视口钉在最后一个字,回答开头滚出视口;改为发送后问题钉顶、回答向下长、长出视口显示「跳到最新」、末尾动态留白;产品追加拍板:校正面同一语义(推翻 BUG-041/048 贴底),本轮开头 = 用户行或新助手行。BUG 段 930 起 | 已验收(经修复单) | `worktree/green-harbor-5be3` |
|
||||
| `TASK-consultation-answer-start-anchor-fix-20260917.md` | `PROGRESS-consultation-answer-start-anchor-fix-20260917.md` | 验收修复单:F1 头就是留白行时留白按整视口算(BUG-931);F2 留白只在钉住期间存在(BUG-932);前置:先修 e4e73f56 的两处 TS 错否则门禁不过 | 已验收 | `cc1a8980`(Claude 验收:tsc 0 / lint 0 error / npm test 3457 条 39 红与 11c0028d 逐条一致、新增 2 条绿 / `next build --webpack` 通过、`/` Static、首屏 gzip 591,242(较 09-16 基线 582,800 +1.45%,含会话列表单)/ Chrome 真实布局 S1–S6 全部通过,S6 新助手行距顶 16px 且增高不动,S5 不再写留白);真机六条欠 |
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
> 基线:`origin/staging` @ `ea0280c1`(代码部分 = 已部署的 `877128ce`)。
|
||||
> 触发:产品在 staging 真机看申报时段回答,反馈「排版没对齐、看起来很难受」。
|
||||
> BUG 编号起点:`docs/BUG_HISTORY.md` 当前最大号 **BUG-958**;`TASK-contract-degraded-pass4-20260918.md` 已占 959~961,本单占 **BUG-962 ~ BUG-963**。
|
||||
> BUG 编号起点:`docs/BUG_HISTORY.md` 当前最大号 **BUG-958**;`TASK-contract-degraded-pass4-20260918.md` 已占 959~961,本单占 **BUG-962 ~ BUG-964**。
|
||||
|
||||
## 0. 复现方式(已在本机用真实构建复现)
|
||||
|
||||
@@ -60,14 +60,40 @@
|
||||
- 回归 fixture 用**两份真实正文**:BUG-356 的并列短项(仍然提升)与本轮申报时段回答(**不再提升**,保持三个 `<p>`);
|
||||
- `chat-definition-lists.test.ts` 既有断言若需改动,写「原值 / 新值 / 原因」三栏。
|
||||
|
||||
## 3. 硬红线
|
||||
## 3. BUG-964(P1)思考条与正文之间空 56px
|
||||
|
||||
产品第二条反馈:「思维链和正文中间间隔好大」。用同一套 harness 量了(Chrome `getBoundingClientRect`):
|
||||
|
||||
```
|
||||
{"gapPx":56,"h2MarginTop":"32px","reportGap":"24px","listStyle":"none"}
|
||||
```
|
||||
|
||||
56px 由两段叠成:
|
||||
|
||||
| 来源 | 值 |
|
||||
| --- | --- |
|
||||
| `.consultation-thinking-report { gap: var(--space-6) }`(`globals.css:1197-1200`) | 24px |
|
||||
| 正文首个 `<h2>` 的 `margin-top` | 32px |
|
||||
|
||||
第二段是个**被静默覆盖的规则**:`globals.css:415` 写着 `.message-markdown > *:first-child { margin-top: 0 }`,本意就是让首元素不带外边距;但 `globals.css:2353` 的 `.conversation:not(.is-empty):not(.is-rectification) .message-markdown h2 { margin: var(--space-8) 0 var(--space-3) }` 特指度更高(0,4,1 对 0,2,0),**在真实会话里首元素清零从来没生效过**。任何以标题开头的助手回答都多出 32px。
|
||||
|
||||
对照:另一条不带 timeline 的路径 `.message-stage-and-answer { gap: var(--space-2) }` 只有 8px,两条路径差 48px。
|
||||
|
||||
**要求**:
|
||||
|
||||
1. 让首元素清零在会话作用域里也生效(加一条同作用域的 `> *:first-child { margin-top: 0 }`,或把 2353 那条改成 `* + h2` 形态)——不要靠 `!important`。
|
||||
2. `.consultation-thinking-report` 的 `gap` 从 24px 降到 12px 量级,与另一条路径同一口径(两条路径的间距必须由同一个 token 决定,不得再各写各的)。
|
||||
3. 顺带:会话里 `.markdown-list` 的 `gap: var(--space-4)`(16px)比正文行距还大,三条行动看起来像三个段落;降到 8px 量级。
|
||||
4. 验收标准:同一 harness 复测,思考条底与正文首标题之间 ≤ 16px;进度记录附改前改后截图与实测数字。
|
||||
|
||||
## 4. 硬红线
|
||||
|
||||
1. `tsc --noEmit` 0 错、`npm run lint` 0 error、`npm test` 失败数不超过基线 `877128ce` 实测的 31 条且清单一致;测试总数不低于 3501。
|
||||
2. 同一提交更新 `frontend/DESIGN.md`:写明聊天正文里「列表有符号」「散文不自动变列表」两条口径,以及判据阈值。
|
||||
2. 同一提交更新 `frontend/DESIGN.md`:写明聊天正文里「列表有符号」「散文不自动变列表」「思考条与正文的间距由同一 token 决定」三条口径,以及判据阈值。
|
||||
3. 不改 `next build` 后 `/` 的 `○ Static`;首屏 gzip 变化在 ±2% 内(本轮只动 CSS 与一个 lib,预期接近 0)。
|
||||
4. 不得顺手改个人报告页的 Markdown 样式(那是另一套,未收到反馈)。
|
||||
|
||||
## 4. 开工前置
|
||||
## 5. 开工前置
|
||||
|
||||
```bash
|
||||
git fetch origin --prune
|
||||
@@ -79,4 +105,4 @@ npm test 2>&1 | grep -E "^# (tests|pass|fail)" # 开工基线:tests 3501 / p
|
||||
|
||||
截图复现法(本单验收要用同一套):把真实回答喂给 `renderChatMarkdown`,套 `next build` 产物里的 CSS chunk,用 headless Chrome 截 `.message-markdown`。
|
||||
|
||||
收工:`docs/tasks/PROGRESS-chat-markdown-list-20260918.md`(附改前改后截图)+ `docs/BUG_HISTORY.md`(BUG-962/963)+ `frontend/DESIGN.md`,与代码同一批推 `staging`。
|
||||
收工:`docs/tasks/PROGRESS-chat-markdown-list-20260918.md`(附改前改后截图与 gap 实测值)+ `docs/BUG_HISTORY.md`(BUG-962~964)+ `frontend/DESIGN.md`,与代码同一批推 `staging`。
|
||||
|
||||
Reference in New Issue
Block a user