Skip to content

feat: 网站 CJK 友好强调、构建时更新共享查询 Skill、飞书样式导入修复(0.7.86) - #84

Merged
qiansc merged 1 commit into
mainfrom
feat/0.7.86
Oct 26, 2026
Merged

qiansc merged 1 commit into
mainfrom
feat/0.7.86

Conversation

@qiansc

@qiansc qiansc commented Oct 26, 2026

Copy link
Copy Markdown
Contributor

Summary

0.7.86:网站强调改用社区维护的 CJK 友好规则;context build 自动保持共享查询 Skill 为当前版本;修复飞书导入把同一加粗短语拆成多段、表格单元格内段落粘连的问题。

Compatibility

  • 网站:干净内容的渲染与 0.7.85 一致;_ 强调与旁边没有 CJK 字符的 * 按 CommonMark 处理。旧 CLI 构建的网站在下一次 context build 时重新渲染。
  • 包模板:skills/context-knowledge-query/ 由 Context 管理。与随包版本不同的副本(包括手工修改过的)会在构建时被替换,并给出 package-query-skill-refreshed agent hint;包专属的检索说明继续放在 others/context/search-guide.md,不受影响。
  • 飞书采集:只影响之后重新采集的快照;已有快照与已审核知识不变。
  • 新增运行时依赖 markdown-it-cjk-friendly@3.0.0(MIT)。

Verification

见下方「自测情况」。

Checklist

  • bun run verify:full passes.(本地跑了 build、typecheck、lint 与 context-cli 全量 bun test,见自测情况)
  • Lifecycle changes include route and recovery tests.(不涉及)
  • Published package metadata and local pack behavior were checked when affected.
  • English and Simplified Chinese user documentation remain behaviorally equivalent.(更新的是英文 guide/reference 及其 workflow 副本,无中文对应页)
  • Runtime code remains compatible with Node.js 20+.(目录遍历兼容 Node 20.12 之前的 Dirent.path)
  • No generated output, secrets, private sources, or local workspaces are included.

背景

  1. 0.7.85 用自写的约 20 行规则修复了中文标点后的加粗,与社区的 CJK-friendly 修订(markdown-it-cjk-friendly)在干净内容上结果一致,但只把 CJK 字母视为 CJK、也改变了 _,与规范有偏差,且需要自行维护。
  2. 共享查询 Skill 只在旧 knowledge-query 迁移时复制一次,之后从不更新。旧副本在新版本构建时会被打上新版本号(metadata.version 由 CLI 填入),而包管理器按版本选择共享副本、同版本后装覆盖先装,旧内容可能覆盖新内容。
  3. 飞书 XML 中同一加粗短语常被拆成相邻的 <b> 片段(如 <b>oncall</b><b> </b><b>问题数</b>),导出为 **oncall**** ****问题数**;表格单元格内多个 <p> 直接拼接,<p><b>评分</b>: 0.7</p><p><b>总结</b>:</p> 变成 **评分**: 0.7**总结**:。任何渲染器都无法正确显示。

改动

  • packageSiteTheme.ts / packageSite.ts:markdown 配置改为 md.use(contextCjkFriendly),新增 siteMarkdownImports();生成的 VitePress 配置导入该插件,构建目录链接其包。渲染器版本摘要包含导入行。
  • packageQuerySkillMigration.ts / packageBuilder.ts:新增 refreshSharedQuerySkills,在迁移之后比较模板副本与同语言的随包 Skill,不同则整体替换(未改动的 starter 模板同步刷新摘要),并输出 package-query-skill-refreshed hint。
  • larkDocxXml.ts:合并无属性的相邻同类行内样式(b/strong、i/em、s/del/strike);强调标记外置首尾空白,纯空白片段不加标记;inline 上下文中的段落以换行结束(表格内成为 <br>)。
  • 文档:package outputs guide 与 package templates reference(及 workflow 副本)说明共享 Skill 由 Context 管理。
  • 版本 0.7.86;bun.lock 仅新增依赖条目与 workspace 版本行,无下载地址。

风险

  • 有意编辑过 context-knowledge-query 的工作区,编辑会在下一次构建时被替换(hint 会说明);按文档应改名为独立 Skill 或写入 search guide。
  • 飞书采集输出变化只在重新采集时出现;内容等价,仅标记更规范。

向后兼容

现有工作区无需操作。下一次构建:网站重新渲染、过期的共享 Skill 被更新。CLI JSON 新增一种 agent hint reason_code,已有字段不变。

自测情况

  • 新增/更新用例:siteCjkEmphasis(中日韩修复用例、全角标点场景,_ 与英文场景与原生 markdown-it 逐字相同)、projectQuerySkillMigration(中英文过期副本替换、当前副本/搜索说明/无 Skill 模板不变,7 pass)、documentLarkXmlV062(拆分样式合并、空白外置、单元格段落分隔,16 pass)。
  • 构建后运行飞书、网站、包构建相关 34 个测试文件全部通过,含真实站点构建的 packageSiteBuild.integration、repoContentSite.integration。
  • 渲染对照:在三个中文为主的知识库(共 554 个 Markdown 文件)上,markdown-it-cjk-friendly 与 0.7.85 规则在干净内容上结果一致。
  • 飞书导入对照:对一个知识库的 78 份含 **** 的飞书源 XML 重新投影,**** 片段由 823 处降至 26 处(剩余为斜体与加粗交替嵌套)。

🤖 Generated with Claude Code

…rk styles (0.7.86)

Render website emphasis with markdown-it-cjk-friendly instead of the
0.7.85 built-in rule: any East Asian wide or full-width character beside
a * run counts like whitespace, while _ and non-CJK runs keep CommonMark.

context build now replaces a kb template's context-knowledge-query copy
that differs from the shipped Skill in its language and reports a
package-query-skill-refreshed hint, so a package never stamps an older
Skill with the current Context version.

Lark capture merges adjacent runs of the same inline style, keeps
whitespace outside emphasis markers, and ends paragraphs inside table
cells and list items with a line break, so split bold runs no longer
produce **A**** ****B** and cell paragraphs no longer run together.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@qiansc
qiansc merged commit c5c953e into main Oct 26, 2026
2 checks passed
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