开发日志工具与开发

开发日志:批注锚点的改稿迁移

这周把批注的定位从“只认字符偏移”改成了“块标识 + 原文 + 前后文”的三段式查找,并补上了原文已变化时的展示。

窗边的书桌上放着一台电脑、一叠纸和一盆小植物(示意插图)
窗边的书桌上放着一台电脑、一叠纸和一盆小植物(示意插图)

这周把批注的定位从“只认字符偏移”改成了“块标识 + 原文 + 前后文”的三段式查找。起因是修订一篇文章开头的一个错别字后,同一段落里后面的几条测试批注都向前错了一位。

  • 构建时为每篇文章计算内容哈希,批注提交时记录版本;版本一致时直接使用偏移量。
  • 版本不一致时,先在原段落内校验,再在全文搜索原文,并用前后文消除重复匹配。
  • 零个或多个候选时不再猜测,标记为“原文已变化”,在文末单独列出并保留原始引用。
  • 服务端提交接口拒绝引用了不存在原文的批注,返回 409,前端提示刷新后重试。

新增的测试覆盖了前置插入、段落改写、块标识变更和重复短句四种情况。代码块里的选区暂时不允许跨块,下周再处理。

读到这里,
感谢你留下这一小段时间。

开发日志批注测试

发表评论…

公开讨论尚未连接

关于整篇文章,也关于让你停下来的那句话。
公开评论基于 GitHub Discussions;接入完成后才可发表。

正在加载评论…
发表评论
支持代码块与表情 · 评论公开可见0 / 6000

正在确认你的身份…

放大图片
搜索

输入关键词搜索标题、正文和标签。