Skip to content

[ac#1318][ac#1325] 空回合行 —— 把「模型一个字都没回」说在它发生的地方,而不是顶部横幅 - #1340

Merged
jinjunnn merged 1 commit into
alphafrom
feat/1318-empty-turn-row
Sep 11, 2026
Merged

[ac#1318][ac#1325] 空回合行 —— 把「模型一个字都没回」说在它发生的地方,而不是顶部横幅#1340
jinjunnn merged 1 commit into
alphafrom
feat/1318-empty-turn-row

Conversation

@jinjunnn

Copy link
Copy Markdown
Owner

owner 指出票面指定的前端元素类型不对。查证后同意,并给出四条理由(详见 commit 正文与设计稿):事件是一个回合的而横幅是整会话的;票面为此发明的「按 messageId 记住已关闭」正是挂错地方的症状;顶栏已被 REQ-159 的沙箱/只读占着;本仓早有这一族的既定形态(中断行)。

票面 §Scope 指的 packages/app/... 是上游叶子,alpha 已自持时间线,北极星会拦 —— 该句一并作废。

文案:安全审核放在明面上,但不断言

owner 2026-09-11 裁决。事实句只说确知的「模型没有返回内容」,次级说明给可能性且内容安全审核排第一。理由:存储里没有 error、也没有任何内容安全枚举,这是启发式推断;断言「你没通过安全审核」在猜错时是在指责用户。与 REQ-159「不许宣称比实际更大的保护面」同源。

判据四条同时成立

回合结束 + finish=unknown + 零可见正文 + tokens.output=0每一条都有一个只差它一条的反例(有正文 / stop / output≠0 / 被中止 / tokens 形状不对),外加恒答 true 的控制臂。7 pass / 0 fail。

读数
typecheck rc=0
ui-mac 全量 4990 tests,2 fail
north-star rc=0
docs 链接 rc=0

那 2 fail 是新建 worktree 缺 electron 二进制——今天刚写进 governance/local-verification-traps.md 的陷阱,按该条修法软链后两个文件 15/0 全绿,与本改动无关。

Refs #1318
Refs #1325
Refs jinjunnn/alpha-work#101

🤖 Generated with Claude Code

https://claude.ai/code/session_01HE3Jmp5ZDzEvnCNhgCDreN

owner 2026-09-10 指出票面指定的前端元素类型不对。查证后四条理由:
① 事件是**一个回合**的,而票面要的常驻顶部横幅是整个会话的 —— 滚到别处它还在,它说的那条
   却已不在视野;② 票面为此不得不发明「按 messageId 记住已关闭」,那正是元素挂错地方的症状;
③ 会话顶栏已被 REQ-159 的沙箱 / 只读这类**会话级持续状态**占着,再塞一条「这次回复是空的」
   会让那个位置什么都说于是什么都不说;④ 本仓早有这一族的既定形态 —— 中断行,源码注释明写
   「左对齐安静行,不是居中告警 pill」且 fail-closed。
另:票面 §Scope 写的 `packages/app/src/pages/session/timeline/` 是**上游**叶子,alpha 早在
REQ-125 C5/C6 自持时间线,北极星会拦下对它的改动 —— 该句一并作废。

设计稿 docs/design/2026-09-11-req160-empty-turn-row(owner 2026-09-11 批准形态与文案)。

- 判据 `isEmptyUnknownTurn`(纯函数,可单测):回合结束 + finish=unknown + 零可见正文
  (投影层 emitted===0)+ tokens.output===0,**四条同时成立**才算;被中止的归中断行。
- 投影层紧挨中断行同处决定;视图 `EmptyTurnRow` 复用中断行骨架,**一个元素两层文字**
  (票面原本是横幅 + 气泡提示两个说同一件事)。无关闭按钮 —— 它不是通知,是那一回合的事实。
- 文案(owner 2026-09-11 裁):**把内容安全审核放在明面上但不断言**。事实句只说确知的
  「模型没有返回内容」,次级说明给可能性且安全审核排第一。存储里没有 error、也没有任何内容
  安全枚举(票面 §Context),断言「你没通过安全审核」在猜错时是在指责用户 —— 与 REQ-159
  「不许宣称比实际更大的保护面」同源。
- 动作 fail-closed:新增 focusPrompt intent,缺席即只剩事实句,不给点不动的按钮(同中断行)。

门:typecheck rc=0 · ui-mac 全量 4990 tests / 2 fail → 两条均为**新建 worktree 缺 electron
二进制**(今日刚写进 governance/local-verification-traps.md 的陷阱),按该条修法软链后
process-fence-apply + network-egress-fence 15/0 全绿,与本改动无关 · north-star rc=0 ·
docs 链接 rc=0 · 新判据 7/0(每条判据各有只差一条的反例 + 恒答 true 的控制臂)。

Refs #1318
Refs #1325
Refs jinjunnn/alpha-work#101

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HE3Jmp5ZDzEvnCNhgCDreN
@jinjunnn
jinjunnn merged commit 9fe3bd9 into alpha Sep 11, 2026
1 check passed
jinjunnn added a commit that referenced this pull request Sep 11, 2026
owner 2026-09-11 批准形态与文案。按 design-loop:帧并入 current/conversation-timeline
的 #struct 区(retry 行之前),铸锚 #empty-turn;台账加一行并同批填「设计定稿 / 落地 /
代码入口」—— 实现已随 #1340 合入,不留一行「设计中」的漂移。增量目录就地冻结。

门:锚 grep = 1;docs 相对链接 5/5 rc=0。

Refs #1318


Claude-Session: https://claude.ai/code/session_01HE3Jmp5ZDzEvnCNhgCDreN

Co-authored-by: jinjunnn <slmbaovanetti99@gmail.com>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant