SuperAPI AI 工具集

docs-applies-to-tagging

写作与研究

查看项目

更新于 10-15 12:01

技能介绍

该技能面向 Elastic 文档的 applies_to 标签工作,核心目标是管理累积式文档中的版本与部署范围标注。

用途。它用于核定已有 applies_to 标签是否符合规则,并为新建或修改内容生成正确的标签。当文档需要标明某一页面或小节适用于哪些 Elastic 产品、部署类型和版本时使用。

主要模式。技能有两种运行模式,依据输入区分。校验模式:输入为文件路径、目录或粘贴的 frontmatter/markdown,检查现有标签并报告问题;除输入明确要求修复、应用或更正外,只报告不编辑文件,仅给路径即视为校验请求。意图生成模式:输入为变更的结构化描述(功能、版本、生命周期、维度、产品),没有现成文件,需产出应应用于新页面或修改页面的规范标签语法。当用户描述变更而非提供文件内容时,进入该模式,例如询问某功能在 stack 9.5 上线应如何打标、仅 serverless 的 GA 功能正确标签、从 9.4 preview 到 9.5 GA 应如何书写等。

标签含义与语法。累积式文档用 applies_to 标签说明页面或小节适用哪些 Elastic 产品、部署类型和版本,发布后渲染为徽章。格式为 <key>: <lifecycle> <version>。

标签层级。页面级写在 YAML frontmatter 中,每个页面都必须有。小节级放在标题下方,作用于该标题到下一个同级或更高级标题之间的内容,块需紧贴标题下一行且中间无空行。行内形式只能出现在段落最开头、列表项开头、定义术语末尾或表格单元格内,绝不能出现在段落中间。此外还有 {preview} 角色用于标记技术预览,以及通过 :applies_to: 指令选项作用于提示框和下拉菜单的写法,后两者也支持对象或 JSON 表示多键。

维度与键。页面级只用一个维度:Stack/Serverless 使用 stack、serverless(子键含 security、elasticsearch、observability、vectordb);部署使用 deployment(子键 ech、ece、eck、self)和 serverless;产品使用 product(子键含 APM agents、EDOT SDKs、tools 等)。ech 表示 Elastic Cloud Hosted,ess 为已弃用别名,新标签不应生成,现有内容若使用应标记为弃用并建议改为 ech。

生命周期与版本格式。生命周期状态包括 experimental、preview、beta、ga、deprecated、removed、unavailable。版本格式包括大于等于(x.x+,推荐)、范围(x.x-y.y,含端点)、精确(=x.x 或 =x.x.x)。不带版本的产品如 serverless 只写生命周期。

版本约定。生成新标签时默认按 minor 级别打标,即使功能在补丁版本发布也写 stack: ga 9.4 而非 9.4.2,徽章只显示 Major.Minor。累积式文档将 minor 级标签视为代表该 minor 的最新补丁。开放式可用性用 x.x+,单一 minor 用 =x.x,含端点范围用 x.x-y.y。未版本化产品不添加版本。

版本推断与排序。多个生命周期串联时,连续版本被解析为精确版本,存在间隔则成为范围,最后一个生命周期总为开放式。同一产品多个版本会自动按从高到低排序,无版本项排在最后;单条指令中多个键也会重排为 Stack/Serverless、部署类型、产品键的顺序。

Settings YAML。设置类 YAML(如 advanced-settings-*.yml 与配置参考文件)使用相同键但有不同契约:stack 承载生命周期与版本,新设置应含版本并按 minor 打标;ech、ece、eck、self、serverless 为支持标志,只能为 ga 或 unavailable,且须五个都列出。仅部分 serverless 项目存在时,应在 serverless 下嵌套项目键,不嵌套 workplace_ai,也不混用标量与嵌套写法。子设置省略字段时继承父级。移除设置时保留 YAML 条目并在 stack 上追加 removed;若离开 serverless 但仍存在于 Stack,写 serverless: unavailable。此 YAML 不适用正文 Markdown 的混维度、生命周期对称、缺失页面级 frontmatter 等规则。若任务涉及 kibana.yml 或 Advanced Settings 键,应改用 docs-kibana-settings。

校验规则。包括:页面级标签缺失;页面级混用维度(settings YAML 除外);同一生命周期出现多个版本;同一键出现多个开放式;精确语法需用 =x.x 或 =x.x.x;范围顺序错误;范围格式错误(单连字符无空格,不与 + 组合);范围重叠;使用弃用的 ess 键;标题使用行内标注而非小节级块;正文中书写版本号;补丁级标签;段落中间的行内标签等。

打标准则。在改写在所有版本均有效、父级已有正确标签、小型行内模式足以表达含义(常见于 UI 元素改名)、以及未版本化产品的页面级生命周期已覆盖时,不应打标。当内容真正与版本或部署相关、未被父标签覆盖且不宜行内表达,或功能在特定版本新增、生命周期变化、跨产品或部署可用性不同时,应打标。新增版本范围能力、选项、工作流步骤、可用性变化或行为变化即使目标 minor 未发布也应打标。

放置与清理。句子已点名部署类型时不要重复行内部署徽章;徽章已覆盖的过时提示框应删除;列表项各自起始版本不同时逐项打标;无法并入相邻段落且无列表可加入的版本范围内容应使用带 :applies_to: 元数据的提示或技巧块。

合并原则。添加新标签段落前先检查是否已有覆盖同一 minor 的结构,如有应扩展而非另建。同一 minor 的内容应归入同一位置,例如已有 stack: ga 9.4 列表项时,9.4.2 发布的细节应并入该 9.4 项,而非另建重复徽章。

形式选择。优先选择最轻量的累积形式:带标签的提示、备注或短段落;带标签的列表项;仅当两种上下文内容差异大时才使用 applies-switch 选项卡。版本变体列表应独立成表,先写未打标的共享条件句,按 serverless 加最新 stack 标签、再到较旧 stack 范围的顺序由新到旧排列,且范围端点均需有依据。