Skip to content

[面板] 冲突裁决窗看不到全文、无判读依据:用户只能整对删除或乱选 #400

Closed

Description

@modusensus

报障来源

社区反馈,由维护者转述原文:

记忆冲突等用户裁决的窗口太小了,又不能拖大,完全对比不了记忆内容,只好两个都删了,或者胡乱选一个,望改进。

报障者的运行环境未在本机复现;下面列的是对 main(v0.8.15)代码逐项核对的结果——反馈的每一点都能对上实现,因此不是使用姿势问题。

代码核对

  1. 折叠态正文只取前 140 个字符,再叠 -webkit-line-clamp: 3(lib/client.js 的 mneme-conflict-snippet 样式与 side() 渲染);词级 diff 视图同样被钳在 4 行(mneme-conflict-diff)。
  2. 标题 white-space: nowrap + text-overflow: ellipsis,长标题看不全。
  3. 两侧只有「A 方 / B 方」两个标签,没有类型、重要度、字数、新旧时间——用户没有任何客观依据判断该保留哪一条。
  4. 后端 GET /api/dsh-mneme/conflicts 的 side 对象(src/service.js 的 listConflictQueue)本来就不返回 created_at / updated_at,所以「哪条更新」这个最关键的判据面板拿不到。
  5. 并排布局固定 grid-template-columns: 1fr 1fr,面板窄时每侧只剩几百像素,长文本无法对照。
  6. 没有任何展开/放大控件,也没有单侧全文复制——想拿出去对比都做不到。

后果

冻结队列里的冲突对要么被整对处理掉,要么随机保留一条。前者丢约束、后者留矛盾——两条路径都在损伤记忆质量,而 #177 设计这套冻结-裁决机制的前提正是「人来判断」。

建议范围

  • 面板:每条冲突一个「展开全文 / 收起」切换(展开态不截断、diff 去掉行数钳制、各自内部滚动,不撑破面板);窄面板下并排自动降级为单列;每侧一行判读信息(类型 · 重要度 · 字数 · 相对时间);每侧全文复制按钮。
  • 后端:listConflictQueue 的 side 补 created_at / updated_at(只读字段,无 schema 变更、无新配置键)。
  • 默认仍折叠,既有布局与行为不变。

Activity

  1. added
    bug功能异常、崩溃、数据错误(agent 诊断 → 人工确认)
    on Oct 11, 2026
  2. modusensus commented on Oct 11, 2026

    @modusensus
    MemberAuthor

    认领:按上述范围实现。动 lib/client.js(展开/收起切换、每侧判读信息行、单侧全文复制、窄容器降级单列)与 src/service.js(listConflictQueue 的 side 补 created_at/updated_at,跑 npm run sync);断言加在 test/api.test.js(两侧时间戳)与 test/client.test.js(折叠仍截断 / 展开不截断、diff 去钳制、判读行、复制、窄容器单列、i18n 中英成对)。默认仍折叠,不加配置键、不动 schema、不改既有行为。

  3. added a commit that references this issue on Oct 11, 2026
  4. moved this from 🔨 In Progress to ✅ Done in dsh-mneme 任务看板on Oct 11, 2026
  5. modusensus commented on Oct 11, 2026

    @modusensus
    MemberAuthor

    已修复合并(#401)。冲突卡片现在支持单侧展开全文、复制单侧原文,并在判读行给出「类型 · 重要度 · 字数 · 更新时间」,超过 7 天回落绝对日期;窄容器(≤560px)改单列,不用左右挤。随下一个版本发布,届时麻烦再试一次。另外「两个都删了」这条我们记下了——归档前至少让你看清内容。

  6. added a commit that references this issue on Oct 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bug功能异常、崩溃、数据错误(agent 诊断 → 人工确认)

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions