[Decision] Skills optimization program — batch 1 (4 items): new-file ceilings for splits · planned-eval stubs · react-blocks double rendering · published pm-dispatch scope #14296

Description

@os-litant

Decision batch 1 of the skills catalog optimization program #14292 (maintainer mandate 2026-09-02, verbatim: 「审核所有的 skills,进行全面的优化。」). Filed by the skills lane seat (session session_01LraLgQVGq8egUwfYZpbYt1). Four items, each with a recommendation; a one-line reply (e.g. 1A 2A 3A 4A) executes the whole chain. Everything NOT in this batch — same-file deletions, merges into an existing anchor, rewrites as constructs, falsehood corrections, funded additions — proceeds now under the standing value gate and lands as governed draft PRs for your review; nothing here blocks those flights.

Measured at objectstack origin/maina59f78d (skills/** byte-identical at d63c8a2). Published bundle: 187,854 units (ceil(utf8/4)), 171,406 ratcheted.


1. 拆分大单文件时的新文件棘轮上限

一句话问题:两个发布包把全部内容塞在一个 SKILL.md 里(objectstack-ui 25,441 tokens、objectstack-pm-dispatch 14,549),客户 agent 每次触发都整文件入上下文;拆成「入口 + rules/」能让入口只装最常用的八成,但 token 棘轮规定「无上限的新文件 = 红」,新建上限需维护者裁决引用在 PR 正文。

选项 × 真实代价

  • A 授权本程序内的拆分,条件三条:同一 PR 内整包 token 净减 ≥10%;新文件上限钉在落地计数;拆分 ⛔ 不得作为加字通道。代价:维护者多审 2–3 个结构性 PR(ui、pm-dispatch,可能 data)。
  • B 不拆,只在单文件内瘦身。代价:ui 入口仍约 19k tokens,渐进披露缺失,客户每次触发付全额。
  • C 逐文件逐次单独裁。代价:每包一次往返,与「不要不停弹出来确认」相悖。

业务含义:A = 客户的 agent 建一个列表页只装列表页那一节;B = 客户每建一个视图都把仪表盘、报表、React 页面全装一遍。

四维:① 长远合理性 —— 渐进披露是 skills 目录的既定结构(README「Skill anatomy」已定义 rules/),拆分是收敛到已定结构而不是增生;② 实际拉动 —— 实测 ui 包 defineAction 34 / definePage 29 / defineView 10 次真实用法分散在四个互不相关的节,单文件让每种用法都付全额;③ 防 AI 犯错 —— 入口短、按需装载,agent 更少被无关节的相似例子带偏(实测 ui 仪表盘在两处相距 640 行各写一遍,互相矛盾处已测出);④ 不扩散 —— 条件「整包净减 ≥10%」把拆分钉死为瘦身手段。

推荐 A;回退 B;置信缺口:本分析看不见客户 agent 的实际装载策略(是否真按需读 rules/),只看见文件结构。

裁后执行:ui 与 pm-dispatch 各在同文件瘦身 PR 之后追加一个拆分 PR,正文引用本裁决;棘轮 map 同 PR 加新文件行(钉在落地计数)。

① 长远:收敛到 README 已定义的 rules/ 结构,非增生 · ② 拉动:实测四类用法分散四节、每次触发付全额 · ③ 防错:入口短、相似例子少、矛盾处减少 · ④ 不扩散:条件「整包净减 ≥10%」钉死为瘦身 · 推荐 A · 置信缺口:客户 agent 的按需装载行为未测


2. 「计划中的 evals」存根

一句话问题:5 个包的 evals/README.md 只是模板,列出不存在的文件(ai 315 tok · api 546 · query 558 · automation 414 · i18n 410),随包发布进每个客户会话;formula 根本没有 evals。

选项 × 真实代价

  • A 删除存根(整包约 −2,200 tokens),保留真实 fixture(ui 的 analytics json、automation 的 approvals md);formula 不新建。代价:失去「占位提醒」—— 本就无人读。
  • B 把 evals 建实。代价:每包新 fixture = 新上限 + 客户 token,且 evals 是维护者打分工具、对客户零价值。
  • C 整个 evals/ 移出发布树(不再计入客户 token;需改 skills CLI 安装边界与棘轮 population,结构变更)。

业务含义:A = 客户不再为我们的测试计划书付费;C = 客户永远不为任何测试 fixture 付费,但要动安装边界。

四维:① 长远 —— evals 归维护者工具链,不归客户上下文,C 是终态;但 C 改的是安装边界与棘轮 population,不是本程序的瘦身面;② 拉动 —— 零:没有客户 agent 读 evals;③ 防错 —— 存根列出不存在的文件,本身是一类假陈述;④ 不扩散 —— A 是纯删除。

推荐 A(现在做),C 作为后续单独议题记录在锚卡、不在本批裁;回退 B(不推荐)。置信缺口:未测 skills CLI 是否真把 evals/ 装进客户项目(README 自述「inert but harmless in consumer installs」)。

裁后执行:各飞行内删除存根,棘轮上限随之下调;ui / automation 的真实 fixture 按各自审计意见瘦身。

① 长远:evals 归维护者工具链,C 是终态但不在本程序面 · ② 拉动:零客户读者 · ③ 防错:存根本身是假陈述 · ④ 不扩散:纯删除 · 推荐 A(C 另议)· 置信缺口:CLI 安装边界未测


3. contracts/react-blocks.contract.json 双渲染

一句话问题:objectstack-ui 包里 contracts/react-blocks.contract.json(5,352 tokens)与 references/react-blocks.md(3,153)由同一生成器 gen:react-blocks 写出同一内容两遍(同 4 个 block、同 prop 数、note 字节相同),JSON 渲染在仓内零消费者;占发布包总量 2.8%,每个客户会话都装。

选项 × 真实代价

  • A 生成器停止发出 JSON 渲染并删除该文件。落点是 packages/spec/scripts 的生成器(spec 席工具链)⇒ 立缝卡给 domain:spec。代价:若存在仓外消费者会断 —— 审计仓内零命中,仓外未测。
  • B 保留。代价:5,352 tokens 永久税。
  • C 反过来删 md 保留 json。代价:agent 读 JSON 契约比读 md 表更费、更易错。

业务含义:A = 客户少装一份机器格式的重复表;B = 客户为同一张表付两次。

四维:① 长远 —— 一份渲染一份真相,生成物只留 agent 可读的那份;② 拉动 —— JSON 零消费者;③ 防错 —— 两份渲染是分叉温床;④ 不扩散 —— 删除。

推荐 A;回退 B。置信缺口:仓外消费者(objectui 或客户工具)未测,缝卡执行前先在 objectui 仓 grep。

裁后执行:在 objectstack 立 domain:spec 缝卡(生成器改动 + 删除产物 + 棘轮 self-test 的排除集更新);ui 飞行 ⛔ 不碰生成物。

① 长远:一份渲染一份真相 · ② 拉动:JSON 零消费者 · ③ 防错:双渲染是分叉温床 · ④ 不扩散:删除 · 推荐 A · 置信缺口:仓外消费者未测


4. 发布版 objectstack-pm-dispatch 的范围

一句话问题:该发布包 14,549 tokens(全目录第二大),教客户 app 项目一套 PM 循环;审计实测 30.6% 对客户惰性或重复(monorepo 专有的标签分片、验证锁设计、座位协议;报告 JSON 打印两遍;开发者模板 2,376 tokens 每会话必载),并在四处漂移于内部合同(报告双通道、premise_still_valid、stash 禁令、Session: 行)。

选项 × 真实代价

  • A 保留并瘦身约 30%,模板外置到 rules/dev-template.md(依赖第 1 项),同步四处漂移。代价:仍是一个约 10k 的流程技能。
  • B 从目录移除。代价:失去对客户项目的多 agent 交付循环 —— 该包是维护者明确要「ships the developer-agent operating template」的。
  • C 压缩到 ≤5k 核心(五个决策点各一节,模板外置,上游报告移到 platform)。代价:一次重写、评审量大。

业务含义:A = 客户团队用得上的交付循环、少付三成;B = 客户自己发明流程;C = 最省但要重写。

四维:① 长远 —— 流程技能留在目录内,但只承载客户项目真会做的五个决策;② 拉动 —— 客户项目的多 agent 交付是平台卖点之一,但 monorepo 专有段落在客户项目里按定义惰性(包自己写着「标签不存在时这些析取不得跑」);③ 防错 —— 四处漂移中三处是「教旧形态」(模板不教 stash 禁令、报告单通道),修正是响亮的;④ 不扩散 —— 净减。

推荐 A,目标 ≤10k 且模板外置;回退 C。置信缺口:未测任何客户项目实际安装并运行过这个循环。

裁后执行:pm-dispatch 飞行先做同文件瘦身与漂移同步,拆分随第 1 项裁决追加。

① 长远:目录内保留、只承载五个客户决策点 · ② 拉动:交付循环是卖点,但 monorepo 段落在客户项目惰性 · ③ 防错:漂移修正响亮 · ④ 不扩散:净减 · 推荐 A · 置信缺口:客户实际安装运行未测


Refs: #14292 (program anchor) · #13658 (truth sweep) · #13597 (PM corpus audit).

Activity

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

    documentationImprovements or additions to documentationdomain:skillspriority:p1High: required for production / M2

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
       blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
      }
      } catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
      })();
      (function(){
      try {
      var __m = "github.com";
      var __re = new RegExp('^' + "github\\.com" + '
      
      Skip to content

      [Decision] Skills optimization program — batch 1 (4 items): new-file ceilings for splits · planned-eval stubs · react-blocks double rendering · published pm-dispatch scope #14296

      Description

      @os-litant

      Decision batch 1 of the skills catalog optimization program #14292 (maintainer mandate 2026-09-02, verbatim: 「审核所有的 skills,进行全面的优化。」). Filed by the skills lane seat (session session_01LraLgQVGq8egUwfYZpbYt1). Four items, each with a recommendation; a one-line reply (e.g. 1A 2A 3A 4A) executes the whole chain. Everything NOT in this batch — same-file deletions, merges into an existing anchor, rewrites as constructs, falsehood corrections, funded additions — proceeds now under the standing value gate and lands as governed draft PRs for your review; nothing here blocks those flights.

      Measured at objectstack origin/maina59f78d (skills/** byte-identical at d63c8a2). Published bundle: 187,854 units (ceil(utf8/4)), 171,406 ratcheted.


      1. 拆分大单文件时的新文件棘轮上限

      一句话问题:两个发布包把全部内容塞在一个 SKILL.md 里(objectstack-ui 25,441 tokens、objectstack-pm-dispatch 14,549),客户 agent 每次触发都整文件入上下文;拆成「入口 + rules/」能让入口只装最常用的八成,但 token 棘轮规定「无上限的新文件 = 红」,新建上限需维护者裁决引用在 PR 正文。

      选项 × 真实代价

      • A 授权本程序内的拆分,条件三条:同一 PR 内整包 token 净减 ≥10%;新文件上限钉在落地计数;拆分 ⛔ 不得作为加字通道。代价:维护者多审 2–3 个结构性 PR(ui、pm-dispatch,可能 data)。
      • B 不拆,只在单文件内瘦身。代价:ui 入口仍约 19k tokens,渐进披露缺失,客户每次触发付全额。
      • C 逐文件逐次单独裁。代价:每包一次往返,与「不要不停弹出来确认」相悖。

      业务含义:A = 客户的 agent 建一个列表页只装列表页那一节;B = 客户每建一个视图都把仪表盘、报表、React 页面全装一遍。

      四维:① 长远合理性 —— 渐进披露是 skills 目录的既定结构(README「Skill anatomy」已定义 rules/),拆分是收敛到已定结构而不是增生;② 实际拉动 —— 实测 ui 包 defineAction 34 / definePage 29 / defineView 10 次真实用法分散在四个互不相关的节,单文件让每种用法都付全额;③ 防 AI 犯错 —— 入口短、按需装载,agent 更少被无关节的相似例子带偏(实测 ui 仪表盘在两处相距 640 行各写一遍,互相矛盾处已测出);④ 不扩散 —— 条件「整包净减 ≥10%」把拆分钉死为瘦身手段。

      推荐 A;回退 B;置信缺口:本分析看不见客户 agent 的实际装载策略(是否真按需读 rules/),只看见文件结构。

      裁后执行:ui 与 pm-dispatch 各在同文件瘦身 PR 之后追加一个拆分 PR,正文引用本裁决;棘轮 map 同 PR 加新文件行(钉在落地计数)。

      ① 长远:收敛到 README 已定义的 rules/ 结构,非增生 · ② 拉动:实测四类用法分散四节、每次触发付全额 · ③ 防错:入口短、相似例子少、矛盾处减少 · ④ 不扩散:条件「整包净减 ≥10%」钉死为瘦身 · 推荐 A · 置信缺口:客户 agent 的按需装载行为未测


      2. 「计划中的 evals」存根

      一句话问题:5 个包的 evals/README.md 只是模板,列出不存在的文件(ai 315 tok · api 546 · query 558 · automation 414 · i18n 410),随包发布进每个客户会话;formula 根本没有 evals。

      选项 × 真实代价

      • A 删除存根(整包约 −2,200 tokens),保留真实 fixture(ui 的 analytics json、automation 的 approvals md);formula 不新建。代价:失去「占位提醒」—— 本就无人读。
      • B 把 evals 建实。代价:每包新 fixture = 新上限 + 客户 token,且 evals 是维护者打分工具、对客户零价值。
      • C 整个 evals/ 移出发布树(不再计入客户 token;需改 skills CLI 安装边界与棘轮 population,结构变更)。

      业务含义:A = 客户不再为我们的测试计划书付费;C = 客户永远不为任何测试 fixture 付费,但要动安装边界。

      四维:① 长远 —— evals 归维护者工具链,不归客户上下文,C 是终态;但 C 改的是安装边界与棘轮 population,不是本程序的瘦身面;② 拉动 —— 零:没有客户 agent 读 evals;③ 防错 —— 存根列出不存在的文件,本身是一类假陈述;④ 不扩散 —— A 是纯删除。

      推荐 A(现在做),C 作为后续单独议题记录在锚卡、不在本批裁;回退 B(不推荐)。置信缺口:未测 skills CLI 是否真把 evals/ 装进客户项目(README 自述「inert but harmless in consumer installs」)。

      裁后执行:各飞行内删除存根,棘轮上限随之下调;ui / automation 的真实 fixture 按各自审计意见瘦身。

      ① 长远:evals 归维护者工具链,C 是终态但不在本程序面 · ② 拉动:零客户读者 · ③ 防错:存根本身是假陈述 · ④ 不扩散:纯删除 · 推荐 A(C 另议)· 置信缺口:CLI 安装边界未测


      3. contracts/react-blocks.contract.json 双渲染

      一句话问题:objectstack-ui 包里 contracts/react-blocks.contract.json(5,352 tokens)与 references/react-blocks.md(3,153)由同一生成器 gen:react-blocks 写出同一内容两遍(同 4 个 block、同 prop 数、note 字节相同),JSON 渲染在仓内零消费者;占发布包总量 2.8%,每个客户会话都装。

      选项 × 真实代价

      • A 生成器停止发出 JSON 渲染并删除该文件。落点是 packages/spec/scripts 的生成器(spec 席工具链)⇒ 立缝卡给 domain:spec。代价:若存在仓外消费者会断 —— 审计仓内零命中,仓外未测。
      • B 保留。代价:5,352 tokens 永久税。
      • C 反过来删 md 保留 json。代价:agent 读 JSON 契约比读 md 表更费、更易错。

      业务含义:A = 客户少装一份机器格式的重复表;B = 客户为同一张表付两次。

      四维:① 长远 —— 一份渲染一份真相,生成物只留 agent 可读的那份;② 拉动 —— JSON 零消费者;③ 防错 —— 两份渲染是分叉温床;④ 不扩散 —— 删除。

      推荐 A;回退 B。置信缺口:仓外消费者(objectui 或客户工具)未测,缝卡执行前先在 objectui 仓 grep。

      裁后执行:在 objectstack 立 domain:spec 缝卡(生成器改动 + 删除产物 + 棘轮 self-test 的排除集更新);ui 飞行 ⛔ 不碰生成物。

      ① 长远:一份渲染一份真相 · ② 拉动:JSON 零消费者 · ③ 防错:双渲染是分叉温床 · ④ 不扩散:删除 · 推荐 A · 置信缺口:仓外消费者未测


      4. 发布版 objectstack-pm-dispatch 的范围

      一句话问题:该发布包 14,549 tokens(全目录第二大),教客户 app 项目一套 PM 循环;审计实测 30.6% 对客户惰性或重复(monorepo 专有的标签分片、验证锁设计、座位协议;报告 JSON 打印两遍;开发者模板 2,376 tokens 每会话必载),并在四处漂移于内部合同(报告双通道、premise_still_valid、stash 禁令、Session: 行)。

      选项 × 真实代价

      • A 保留并瘦身约 30%,模板外置到 rules/dev-template.md(依赖第 1 项),同步四处漂移。代价:仍是一个约 10k 的流程技能。
      • B 从目录移除。代价:失去对客户项目的多 agent 交付循环 —— 该包是维护者明确要「ships the developer-agent operating template」的。
      • C 压缩到 ≤5k 核心(五个决策点各一节,模板外置,上游报告移到 platform)。代价:一次重写、评审量大。

      业务含义:A = 客户团队用得上的交付循环、少付三成;B = 客户自己发明流程;C = 最省但要重写。

      四维:① 长远 —— 流程技能留在目录内,但只承载客户项目真会做的五个决策;② 拉动 —— 客户项目的多 agent 交付是平台卖点之一,但 monorepo 专有段落在客户项目里按定义惰性(包自己写着「标签不存在时这些析取不得跑」);③ 防错 —— 四处漂移中三处是「教旧形态」(模板不教 stash 禁令、报告单通道),修正是响亮的;④ 不扩散 —— 净减。

      推荐 A,目标 ≤10k 且模板外置;回退 C。置信缺口:未测任何客户项目实际安装并运行过这个循环。

      裁后执行:pm-dispatch 飞行先做同文件瘦身与漂移同步,拆分随第 1 项裁决追加。

      ① 长远:目录内保留、只承载五个客户决策点 · ② 拉动:交付循环是卖点,但 monorepo 段落在客户项目惰性 · ③ 防错:漂移修正响亮 · ④ 不扩散:净减 · 推荐 A · 置信缺口:客户实际安装运行未测


      Refs: #14292 (program anchor) · #13658 (truth sweep) · #13597 (PM corpus audit).

      Activity

      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

        documentationImprovements or additions to documentationdomain:skillspriority:p1High: required for production / M2

        Type

        No type

        Projects

        No projects

          Milestone

          No milestone

          Relationships

          None yet

          Development

          No branches or pull requests

          Issue actions

          , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
          Skip to content

          [Decision] Skills optimization program — batch 1 (4 items): new-file ceilings for splits · planned-eval stubs · react-blocks double rendering · published pm-dispatch scope #14296

          Description

          @os-litant

          Decision batch 1 of the skills catalog optimization program #14292 (maintainer mandate 2026-09-02, verbatim: 「审核所有的 skills,进行全面的优化。」). Filed by the skills lane seat (session session_01LraLgQVGq8egUwfYZpbYt1). Four items, each with a recommendation; a one-line reply (e.g. 1A 2A 3A 4A) executes the whole chain. Everything NOT in this batch — same-file deletions, merges into an existing anchor, rewrites as constructs, falsehood corrections, funded additions — proceeds now under the standing value gate and lands as governed draft PRs for your review; nothing here blocks those flights.

          Measured at objectstack origin/maina59f78d (skills/** byte-identical at d63c8a2). Published bundle: 187,854 units (ceil(utf8/4)), 171,406 ratcheted.


          1. 拆分大单文件时的新文件棘轮上限

          一句话问题:两个发布包把全部内容塞在一个 SKILL.md 里(objectstack-ui 25,441 tokens、objectstack-pm-dispatch 14,549),客户 agent 每次触发都整文件入上下文;拆成「入口 + rules/」能让入口只装最常用的八成,但 token 棘轮规定「无上限的新文件 = 红」,新建上限需维护者裁决引用在 PR 正文。

          选项 × 真实代价

          • A 授权本程序内的拆分,条件三条:同一 PR 内整包 token 净减 ≥10%;新文件上限钉在落地计数;拆分 ⛔ 不得作为加字通道。代价:维护者多审 2–3 个结构性 PR(ui、pm-dispatch,可能 data)。
          • B 不拆,只在单文件内瘦身。代价:ui 入口仍约 19k tokens,渐进披露缺失,客户每次触发付全额。
          • C 逐文件逐次单独裁。代价:每包一次往返,与「不要不停弹出来确认」相悖。

          业务含义:A = 客户的 agent 建一个列表页只装列表页那一节;B = 客户每建一个视图都把仪表盘、报表、React 页面全装一遍。

          四维:① 长远合理性 —— 渐进披露是 skills 目录的既定结构(README「Skill anatomy」已定义 rules/),拆分是收敛到已定结构而不是增生;② 实际拉动 —— 实测 ui 包 defineAction 34 / definePage 29 / defineView 10 次真实用法分散在四个互不相关的节,单文件让每种用法都付全额;③ 防 AI 犯错 —— 入口短、按需装载,agent 更少被无关节的相似例子带偏(实测 ui 仪表盘在两处相距 640 行各写一遍,互相矛盾处已测出);④ 不扩散 —— 条件「整包净减 ≥10%」把拆分钉死为瘦身手段。

          推荐 A;回退 B;置信缺口:本分析看不见客户 agent 的实际装载策略(是否真按需读 rules/),只看见文件结构。

          裁后执行:ui 与 pm-dispatch 各在同文件瘦身 PR 之后追加一个拆分 PR,正文引用本裁决;棘轮 map 同 PR 加新文件行(钉在落地计数)。

          ① 长远:收敛到 README 已定义的 rules/ 结构,非增生 · ② 拉动:实测四类用法分散四节、每次触发付全额 · ③ 防错:入口短、相似例子少、矛盾处减少 · ④ 不扩散:条件「整包净减 ≥10%」钉死为瘦身 · 推荐 A · 置信缺口:客户 agent 的按需装载行为未测


          2. 「计划中的 evals」存根

          一句话问题:5 个包的 evals/README.md 只是模板,列出不存在的文件(ai 315 tok · api 546 · query 558 · automation 414 · i18n 410),随包发布进每个客户会话;formula 根本没有 evals。

          选项 × 真实代价

          • A 删除存根(整包约 −2,200 tokens),保留真实 fixture(ui 的 analytics json、automation 的 approvals md);formula 不新建。代价:失去「占位提醒」—— 本就无人读。
          • B 把 evals 建实。代价:每包新 fixture = 新上限 + 客户 token,且 evals 是维护者打分工具、对客户零价值。
          • C 整个 evals/ 移出发布树(不再计入客户 token;需改 skills CLI 安装边界与棘轮 population,结构变更)。

          业务含义:A = 客户不再为我们的测试计划书付费;C = 客户永远不为任何测试 fixture 付费,但要动安装边界。

          四维:① 长远 —— evals 归维护者工具链,不归客户上下文,C 是终态;但 C 改的是安装边界与棘轮 population,不是本程序的瘦身面;② 拉动 —— 零:没有客户 agent 读 evals;③ 防错 —— 存根列出不存在的文件,本身是一类假陈述;④ 不扩散 —— A 是纯删除。

          推荐 A(现在做),C 作为后续单独议题记录在锚卡、不在本批裁;回退 B(不推荐)。置信缺口:未测 skills CLI 是否真把 evals/ 装进客户项目(README 自述「inert but harmless in consumer installs」)。

          裁后执行:各飞行内删除存根,棘轮上限随之下调;ui / automation 的真实 fixture 按各自审计意见瘦身。

          ① 长远:evals 归维护者工具链,C 是终态但不在本程序面 · ② 拉动:零客户读者 · ③ 防错:存根本身是假陈述 · ④ 不扩散:纯删除 · 推荐 A(C 另议)· 置信缺口:CLI 安装边界未测


          3. contracts/react-blocks.contract.json 双渲染

          一句话问题:objectstack-ui 包里 contracts/react-blocks.contract.json(5,352 tokens)与 references/react-blocks.md(3,153)由同一生成器 gen:react-blocks 写出同一内容两遍(同 4 个 block、同 prop 数、note 字节相同),JSON 渲染在仓内零消费者;占发布包总量 2.8%,每个客户会话都装。

          选项 × 真实代价

          • A 生成器停止发出 JSON 渲染并删除该文件。落点是 packages/spec/scripts 的生成器(spec 席工具链)⇒ 立缝卡给 domain:spec。代价:若存在仓外消费者会断 —— 审计仓内零命中,仓外未测。
          • B 保留。代价:5,352 tokens 永久税。
          • C 反过来删 md 保留 json。代价:agent 读 JSON 契约比读 md 表更费、更易错。

          业务含义:A = 客户少装一份机器格式的重复表;B = 客户为同一张表付两次。

          四维:① 长远 —— 一份渲染一份真相,生成物只留 agent 可读的那份;② 拉动 —— JSON 零消费者;③ 防错 —— 两份渲染是分叉温床;④ 不扩散 —— 删除。

          推荐 A;回退 B。置信缺口:仓外消费者(objectui 或客户工具)未测,缝卡执行前先在 objectui 仓 grep。

          裁后执行:在 objectstack 立 domain:spec 缝卡(生成器改动 + 删除产物 + 棘轮 self-test 的排除集更新);ui 飞行 ⛔ 不碰生成物。

          ① 长远:一份渲染一份真相 · ② 拉动:JSON 零消费者 · ③ 防错:双渲染是分叉温床 · ④ 不扩散:删除 · 推荐 A · 置信缺口:仓外消费者未测


          4. 发布版 objectstack-pm-dispatch 的范围

          一句话问题:该发布包 14,549 tokens(全目录第二大),教客户 app 项目一套 PM 循环;审计实测 30.6% 对客户惰性或重复(monorepo 专有的标签分片、验证锁设计、座位协议;报告 JSON 打印两遍;开发者模板 2,376 tokens 每会话必载),并在四处漂移于内部合同(报告双通道、premise_still_valid、stash 禁令、Session: 行)。

          选项 × 真实代价

          • A 保留并瘦身约 30%,模板外置到 rules/dev-template.md(依赖第 1 项),同步四处漂移。代价:仍是一个约 10k 的流程技能。
          • B 从目录移除。代价:失去对客户项目的多 agent 交付循环 —— 该包是维护者明确要「ships the developer-agent operating template」的。
          • C 压缩到 ≤5k 核心(五个决策点各一节,模板外置,上游报告移到 platform)。代价:一次重写、评审量大。

          业务含义:A = 客户团队用得上的交付循环、少付三成;B = 客户自己发明流程;C = 最省但要重写。

          四维:① 长远 —— 流程技能留在目录内,但只承载客户项目真会做的五个决策;② 拉动 —— 客户项目的多 agent 交付是平台卖点之一,但 monorepo 专有段落在客户项目里按定义惰性(包自己写着「标签不存在时这些析取不得跑」);③ 防错 —— 四处漂移中三处是「教旧形态」(模板不教 stash 禁令、报告单通道),修正是响亮的;④ 不扩散 —— 净减。

          推荐 A,目标 ≤10k 且模板外置;回退 C。置信缺口:未测任何客户项目实际安装并运行过这个循环。

          裁后执行:pm-dispatch 飞行先做同文件瘦身与漂移同步,拆分随第 1 项裁决追加。

          ① 长远:目录内保留、只承载五个客户决策点 · ② 拉动:交付循环是卖点,但 monorepo 段落在客户项目惰性 · ③ 防错:漂移修正响亮 · ④ 不扩散:净减 · 推荐 A · 置信缺口:客户实际安装运行未测


          Refs: #14292 (program anchor) · #13658 (truth sweep) · #13597 (PM corpus audit).

          Activity

          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

            documentationImprovements or additions to documentationdomain:skillspriority:p1High: required for production / M2

            Type

            No type

            Projects

            No projects

              Milestone

              No milestone

              Relationships

              None yet

              Development

              No branches or pull requests

              Issue actions

              , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
              Skip to content

              [Decision] Skills optimization program — batch 1 (4 items): new-file ceilings for splits · planned-eval stubs · react-blocks double rendering · published pm-dispatch scope #14296

              Description

              @os-litant

              Decision batch 1 of the skills catalog optimization program #14292 (maintainer mandate 2026-09-02, verbatim: 「审核所有的 skills,进行全面的优化。」). Filed by the skills lane seat (session session_01LraLgQVGq8egUwfYZpbYt1). Four items, each with a recommendation; a one-line reply (e.g. 1A 2A 3A 4A) executes the whole chain. Everything NOT in this batch — same-file deletions, merges into an existing anchor, rewrites as constructs, falsehood corrections, funded additions — proceeds now under the standing value gate and lands as governed draft PRs for your review; nothing here blocks those flights.

              Measured at objectstack origin/maina59f78d (skills/** byte-identical at d63c8a2). Published bundle: 187,854 units (ceil(utf8/4)), 171,406 ratcheted.


              1. 拆分大单文件时的新文件棘轮上限

              一句话问题:两个发布包把全部内容塞在一个 SKILL.md 里(objectstack-ui 25,441 tokens、objectstack-pm-dispatch 14,549),客户 agent 每次触发都整文件入上下文;拆成「入口 + rules/」能让入口只装最常用的八成,但 token 棘轮规定「无上限的新文件 = 红」,新建上限需维护者裁决引用在 PR 正文。

              选项 × 真实代价

              • A 授权本程序内的拆分,条件三条:同一 PR 内整包 token 净减 ≥10%;新文件上限钉在落地计数;拆分 ⛔ 不得作为加字通道。代价:维护者多审 2–3 个结构性 PR(ui、pm-dispatch,可能 data)。
              • B 不拆,只在单文件内瘦身。代价:ui 入口仍约 19k tokens,渐进披露缺失,客户每次触发付全额。
              • C 逐文件逐次单独裁。代价:每包一次往返,与「不要不停弹出来确认」相悖。

              业务含义:A = 客户的 agent 建一个列表页只装列表页那一节;B = 客户每建一个视图都把仪表盘、报表、React 页面全装一遍。

              四维:① 长远合理性 —— 渐进披露是 skills 目录的既定结构(README「Skill anatomy」已定义 rules/),拆分是收敛到已定结构而不是增生;② 实际拉动 —— 实测 ui 包 defineAction 34 / definePage 29 / defineView 10 次真实用法分散在四个互不相关的节,单文件让每种用法都付全额;③ 防 AI 犯错 —— 入口短、按需装载,agent 更少被无关节的相似例子带偏(实测 ui 仪表盘在两处相距 640 行各写一遍,互相矛盾处已测出);④ 不扩散 —— 条件「整包净减 ≥10%」把拆分钉死为瘦身手段。

              推荐 A;回退 B;置信缺口:本分析看不见客户 agent 的实际装载策略(是否真按需读 rules/),只看见文件结构。

              裁后执行:ui 与 pm-dispatch 各在同文件瘦身 PR 之后追加一个拆分 PR,正文引用本裁决;棘轮 map 同 PR 加新文件行(钉在落地计数)。

              ① 长远:收敛到 README 已定义的 rules/ 结构,非增生 · ② 拉动:实测四类用法分散四节、每次触发付全额 · ③ 防错:入口短、相似例子少、矛盾处减少 · ④ 不扩散:条件「整包净减 ≥10%」钉死为瘦身 · 推荐 A · 置信缺口:客户 agent 的按需装载行为未测


              2. 「计划中的 evals」存根

              一句话问题:5 个包的 evals/README.md 只是模板,列出不存在的文件(ai 315 tok · api 546 · query 558 · automation 414 · i18n 410),随包发布进每个客户会话;formula 根本没有 evals。

              选项 × 真实代价

              • A 删除存根(整包约 −2,200 tokens),保留真实 fixture(ui 的 analytics json、automation 的 approvals md);formula 不新建。代价:失去「占位提醒」—— 本就无人读。
              • B 把 evals 建实。代价:每包新 fixture = 新上限 + 客户 token,且 evals 是维护者打分工具、对客户零价值。
              • C 整个 evals/ 移出发布树(不再计入客户 token;需改 skills CLI 安装边界与棘轮 population,结构变更)。

              业务含义:A = 客户不再为我们的测试计划书付费;C = 客户永远不为任何测试 fixture 付费,但要动安装边界。

              四维:① 长远 —— evals 归维护者工具链,不归客户上下文,C 是终态;但 C 改的是安装边界与棘轮 population,不是本程序的瘦身面;② 拉动 —— 零:没有客户 agent 读 evals;③ 防错 —— 存根列出不存在的文件,本身是一类假陈述;④ 不扩散 —— A 是纯删除。

              推荐 A(现在做),C 作为后续单独议题记录在锚卡、不在本批裁;回退 B(不推荐)。置信缺口:未测 skills CLI 是否真把 evals/ 装进客户项目(README 自述「inert but harmless in consumer installs」)。

              裁后执行:各飞行内删除存根,棘轮上限随之下调;ui / automation 的真实 fixture 按各自审计意见瘦身。

              ① 长远:evals 归维护者工具链,C 是终态但不在本程序面 · ② 拉动:零客户读者 · ③ 防错:存根本身是假陈述 · ④ 不扩散:纯删除 · 推荐 A(C 另议)· 置信缺口:CLI 安装边界未测


              3. contracts/react-blocks.contract.json 双渲染

              一句话问题:objectstack-ui 包里 contracts/react-blocks.contract.json(5,352 tokens)与 references/react-blocks.md(3,153)由同一生成器 gen:react-blocks 写出同一内容两遍(同 4 个 block、同 prop 数、note 字节相同),JSON 渲染在仓内零消费者;占发布包总量 2.8%,每个客户会话都装。

              选项 × 真实代价

              • A 生成器停止发出 JSON 渲染并删除该文件。落点是 packages/spec/scripts 的生成器(spec 席工具链)⇒ 立缝卡给 domain:spec。代价:若存在仓外消费者会断 —— 审计仓内零命中,仓外未测。
              • B 保留。代价:5,352 tokens 永久税。
              • C 反过来删 md 保留 json。代价:agent 读 JSON 契约比读 md 表更费、更易错。

              业务含义:A = 客户少装一份机器格式的重复表;B = 客户为同一张表付两次。

              四维:① 长远 —— 一份渲染一份真相,生成物只留 agent 可读的那份;② 拉动 —— JSON 零消费者;③ 防错 —— 两份渲染是分叉温床;④ 不扩散 —— 删除。

              推荐 A;回退 B。置信缺口:仓外消费者(objectui 或客户工具)未测,缝卡执行前先在 objectui 仓 grep。

              裁后执行:在 objectstack 立 domain:spec 缝卡(生成器改动 + 删除产物 + 棘轮 self-test 的排除集更新);ui 飞行 ⛔ 不碰生成物。

              ① 长远:一份渲染一份真相 · ② 拉动:JSON 零消费者 · ③ 防错:双渲染是分叉温床 · ④ 不扩散:删除 · 推荐 A · 置信缺口:仓外消费者未测


              4. 发布版 objectstack-pm-dispatch 的范围

              一句话问题:该发布包 14,549 tokens(全目录第二大),教客户 app 项目一套 PM 循环;审计实测 30.6% 对客户惰性或重复(monorepo 专有的标签分片、验证锁设计、座位协议;报告 JSON 打印两遍;开发者模板 2,376 tokens 每会话必载),并在四处漂移于内部合同(报告双通道、premise_still_valid、stash 禁令、Session: 行)。

              选项 × 真实代价

              • A 保留并瘦身约 30%,模板外置到 rules/dev-template.md(依赖第 1 项),同步四处漂移。代价:仍是一个约 10k 的流程技能。
              • B 从目录移除。代价:失去对客户项目的多 agent 交付循环 —— 该包是维护者明确要「ships the developer-agent operating template」的。
              • C 压缩到 ≤5k 核心(五个决策点各一节,模板外置,上游报告移到 platform)。代价:一次重写、评审量大。

              业务含义:A = 客户团队用得上的交付循环、少付三成;B = 客户自己发明流程;C = 最省但要重写。

              四维:① 长远 —— 流程技能留在目录内,但只承载客户项目真会做的五个决策;② 拉动 —— 客户项目的多 agent 交付是平台卖点之一,但 monorepo 专有段落在客户项目里按定义惰性(包自己写着「标签不存在时这些析取不得跑」);③ 防错 —— 四处漂移中三处是「教旧形态」(模板不教 stash 禁令、报告单通道),修正是响亮的;④ 不扩散 —— 净减。

              推荐 A,目标 ≤10k 且模板外置;回退 C。置信缺口:未测任何客户项目实际安装并运行过这个循环。

              裁后执行:pm-dispatch 飞行先做同文件瘦身与漂移同步,拆分随第 1 项裁决追加。

              ① 长远:目录内保留、只承载五个客户决策点 · ② 拉动:交付循环是卖点,但 monorepo 段落在客户项目惰性 · ③ 防错:漂移修正响亮 · ④ 不扩散:净减 · 推荐 A · 置信缺口:客户实际安装运行未测


              Refs: #14292 (program anchor) · #13658 (truth sweep) · #13597 (PM corpus audit).

              Activity

              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

                documentationImprovements or additions to documentationdomain:skillspriority:p1High: required for production / M2

                Type

                No type

                Projects

                No projects

                  Milestone

                  No milestone

                  Relationships

                  None yet

                  Development

                  No branches or pull requests

                  Issue actions

                  , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
                  Skip to content

                  [Decision] Skills optimization program — batch 1 (4 items): new-file ceilings for splits · planned-eval stubs · react-blocks double rendering · published pm-dispatch scope #14296

                  Description

                  @os-litant

                  Decision batch 1 of the skills catalog optimization program #14292 (maintainer mandate 2026-09-02, verbatim: 「审核所有的 skills,进行全面的优化。」). Filed by the skills lane seat (session session_01LraLgQVGq8egUwfYZpbYt1). Four items, each with a recommendation; a one-line reply (e.g. 1A 2A 3A 4A) executes the whole chain. Everything NOT in this batch — same-file deletions, merges into an existing anchor, rewrites as constructs, falsehood corrections, funded additions — proceeds now under the standing value gate and lands as governed draft PRs for your review; nothing here blocks those flights.

                  Measured at objectstack origin/maina59f78d (skills/** byte-identical at d63c8a2). Published bundle: 187,854 units (ceil(utf8/4)), 171,406 ratcheted.


                  1. 拆分大单文件时的新文件棘轮上限

                  一句话问题:两个发布包把全部内容塞在一个 SKILL.md 里(objectstack-ui 25,441 tokens、objectstack-pm-dispatch 14,549),客户 agent 每次触发都整文件入上下文;拆成「入口 + rules/」能让入口只装最常用的八成,但 token 棘轮规定「无上限的新文件 = 红」,新建上限需维护者裁决引用在 PR 正文。

                  选项 × 真实代价

                  • A 授权本程序内的拆分,条件三条:同一 PR 内整包 token 净减 ≥10%;新文件上限钉在落地计数;拆分 ⛔ 不得作为加字通道。代价:维护者多审 2–3 个结构性 PR(ui、pm-dispatch,可能 data)。
                  • B 不拆,只在单文件内瘦身。代价:ui 入口仍约 19k tokens,渐进披露缺失,客户每次触发付全额。
                  • C 逐文件逐次单独裁。代价:每包一次往返,与「不要不停弹出来确认」相悖。

                  业务含义:A = 客户的 agent 建一个列表页只装列表页那一节;B = 客户每建一个视图都把仪表盘、报表、React 页面全装一遍。

                  四维:① 长远合理性 —— 渐进披露是 skills 目录的既定结构(README「Skill anatomy」已定义 rules/),拆分是收敛到已定结构而不是增生;② 实际拉动 —— 实测 ui 包 defineAction 34 / definePage 29 / defineView 10 次真实用法分散在四个互不相关的节,单文件让每种用法都付全额;③ 防 AI 犯错 —— 入口短、按需装载,agent 更少被无关节的相似例子带偏(实测 ui 仪表盘在两处相距 640 行各写一遍,互相矛盾处已测出);④ 不扩散 —— 条件「整包净减 ≥10%」把拆分钉死为瘦身手段。

                  推荐 A;回退 B;置信缺口:本分析看不见客户 agent 的实际装载策略(是否真按需读 rules/),只看见文件结构。

                  裁后执行:ui 与 pm-dispatch 各在同文件瘦身 PR 之后追加一个拆分 PR,正文引用本裁决;棘轮 map 同 PR 加新文件行(钉在落地计数)。

                  ① 长远:收敛到 README 已定义的 rules/ 结构,非增生 · ② 拉动:实测四类用法分散四节、每次触发付全额 · ③ 防错:入口短、相似例子少、矛盾处减少 · ④ 不扩散:条件「整包净减 ≥10%」钉死为瘦身 · 推荐 A · 置信缺口:客户 agent 的按需装载行为未测


                  2. 「计划中的 evals」存根

                  一句话问题:5 个包的 evals/README.md 只是模板,列出不存在的文件(ai 315 tok · api 546 · query 558 · automation 414 · i18n 410),随包发布进每个客户会话;formula 根本没有 evals。

                  选项 × 真实代价

                  • A 删除存根(整包约 −2,200 tokens),保留真实 fixture(ui 的 analytics json、automation 的 approvals md);formula 不新建。代价:失去「占位提醒」—— 本就无人读。
                  • B 把 evals 建实。代价:每包新 fixture = 新上限 + 客户 token,且 evals 是维护者打分工具、对客户零价值。
                  • C 整个 evals/ 移出发布树(不再计入客户 token;需改 skills CLI 安装边界与棘轮 population,结构变更)。

                  业务含义:A = 客户不再为我们的测试计划书付费;C = 客户永远不为任何测试 fixture 付费,但要动安装边界。

                  四维:① 长远 —— evals 归维护者工具链,不归客户上下文,C 是终态;但 C 改的是安装边界与棘轮 population,不是本程序的瘦身面;② 拉动 —— 零:没有客户 agent 读 evals;③ 防错 —— 存根列出不存在的文件,本身是一类假陈述;④ 不扩散 —— A 是纯删除。

                  推荐 A(现在做),C 作为后续单独议题记录在锚卡、不在本批裁;回退 B(不推荐)。置信缺口:未测 skills CLI 是否真把 evals/ 装进客户项目(README 自述「inert but harmless in consumer installs」)。

                  裁后执行:各飞行内删除存根,棘轮上限随之下调;ui / automation 的真实 fixture 按各自审计意见瘦身。

                  ① 长远:evals 归维护者工具链,C 是终态但不在本程序面 · ② 拉动:零客户读者 · ③ 防错:存根本身是假陈述 · ④ 不扩散:纯删除 · 推荐 A(C 另议)· 置信缺口:CLI 安装边界未测


                  3. contracts/react-blocks.contract.json 双渲染

                  一句话问题:objectstack-ui 包里 contracts/react-blocks.contract.json(5,352 tokens)与 references/react-blocks.md(3,153)由同一生成器 gen:react-blocks 写出同一内容两遍(同 4 个 block、同 prop 数、note 字节相同),JSON 渲染在仓内零消费者;占发布包总量 2.8%,每个客户会话都装。

                  选项 × 真实代价

                  • A 生成器停止发出 JSON 渲染并删除该文件。落点是 packages/spec/scripts 的生成器(spec 席工具链)⇒ 立缝卡给 domain:spec。代价:若存在仓外消费者会断 —— 审计仓内零命中,仓外未测。
                  • B 保留。代价:5,352 tokens 永久税。
                  • C 反过来删 md 保留 json。代价:agent 读 JSON 契约比读 md 表更费、更易错。

                  业务含义:A = 客户少装一份机器格式的重复表;B = 客户为同一张表付两次。

                  四维:① 长远 —— 一份渲染一份真相,生成物只留 agent 可读的那份;② 拉动 —— JSON 零消费者;③ 防错 —— 两份渲染是分叉温床;④ 不扩散 —— 删除。

                  推荐 A;回退 B。置信缺口:仓外消费者(objectui 或客户工具)未测,缝卡执行前先在 objectui 仓 grep。

                  裁后执行:在 objectstack 立 domain:spec 缝卡(生成器改动 + 删除产物 + 棘轮 self-test 的排除集更新);ui 飞行 ⛔ 不碰生成物。

                  ① 长远:一份渲染一份真相 · ② 拉动:JSON 零消费者 · ③ 防错:双渲染是分叉温床 · ④ 不扩散:删除 · 推荐 A · 置信缺口:仓外消费者未测


                  4. 发布版 objectstack-pm-dispatch 的范围

                  一句话问题:该发布包 14,549 tokens(全目录第二大),教客户 app 项目一套 PM 循环;审计实测 30.6% 对客户惰性或重复(monorepo 专有的标签分片、验证锁设计、座位协议;报告 JSON 打印两遍;开发者模板 2,376 tokens 每会话必载),并在四处漂移于内部合同(报告双通道、premise_still_valid、stash 禁令、Session: 行)。

                  选项 × 真实代价

                  • A 保留并瘦身约 30%,模板外置到 rules/dev-template.md(依赖第 1 项),同步四处漂移。代价:仍是一个约 10k 的流程技能。
                  • B 从目录移除。代价:失去对客户项目的多 agent 交付循环 —— 该包是维护者明确要「ships the developer-agent operating template」的。
                  • C 压缩到 ≤5k 核心(五个决策点各一节,模板外置,上游报告移到 platform)。代价:一次重写、评审量大。

                  业务含义:A = 客户团队用得上的交付循环、少付三成;B = 客户自己发明流程;C = 最省但要重写。

                  四维:① 长远 —— 流程技能留在目录内,但只承载客户项目真会做的五个决策;② 拉动 —— 客户项目的多 agent 交付是平台卖点之一,但 monorepo 专有段落在客户项目里按定义惰性(包自己写着「标签不存在时这些析取不得跑」);③ 防错 —— 四处漂移中三处是「教旧形态」(模板不教 stash 禁令、报告单通道),修正是响亮的;④ 不扩散 —— 净减。

                  推荐 A,目标 ≤10k 且模板外置;回退 C。置信缺口:未测任何客户项目实际安装并运行过这个循环。

                  裁后执行:pm-dispatch 飞行先做同文件瘦身与漂移同步,拆分随第 1 项裁决追加。

                  ① 长远:目录内保留、只承载五个客户决策点 · ② 拉动:交付循环是卖点,但 monorepo 段落在客户项目惰性 · ③ 防错:漂移修正响亮 · ④ 不扩散:净减 · 推荐 A · 置信缺口:客户实际安装运行未测


                  Refs: #14292 (program anchor) · #13658 (truth sweep) · #13597 (PM corpus audit).

                  Activity

                  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

                    documentationImprovements or additions to documentationdomain:skillspriority:p1High: required for production / M2

                    Type

                    No type

                    Projects

                    No projects

                      Milestone

                      No milestone

                      Relationships

                      None yet

                      Development

                      No branches or pull requests

                      Issue actions

                      , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
                      Skip to content

                      [Decision] Skills optimization program — batch 1 (4 items): new-file ceilings for splits · planned-eval stubs · react-blocks double rendering · published pm-dispatch scope #14296

                      Description

                      @os-litant

                      Decision batch 1 of the skills catalog optimization program #14292 (maintainer mandate 2026-09-02, verbatim: 「审核所有的 skills,进行全面的优化。」). Filed by the skills lane seat (session session_01LraLgQVGq8egUwfYZpbYt1). Four items, each with a recommendation; a one-line reply (e.g. 1A 2A 3A 4A) executes the whole chain. Everything NOT in this batch — same-file deletions, merges into an existing anchor, rewrites as constructs, falsehood corrections, funded additions — proceeds now under the standing value gate and lands as governed draft PRs for your review; nothing here blocks those flights.

                      Measured at objectstack origin/maina59f78d (skills/** byte-identical at d63c8a2). Published bundle: 187,854 units (ceil(utf8/4)), 171,406 ratcheted.


                      1. 拆分大单文件时的新文件棘轮上限

                      一句话问题:两个发布包把全部内容塞在一个 SKILL.md 里(objectstack-ui 25,441 tokens、objectstack-pm-dispatch 14,549),客户 agent 每次触发都整文件入上下文;拆成「入口 + rules/」能让入口只装最常用的八成,但 token 棘轮规定「无上限的新文件 = 红」,新建上限需维护者裁决引用在 PR 正文。

                      选项 × 真实代价

                      • A 授权本程序内的拆分,条件三条:同一 PR 内整包 token 净减 ≥10%;新文件上限钉在落地计数;拆分 ⛔ 不得作为加字通道。代价:维护者多审 2–3 个结构性 PR(ui、pm-dispatch,可能 data)。
                      • B 不拆,只在单文件内瘦身。代价:ui 入口仍约 19k tokens,渐进披露缺失,客户每次触发付全额。
                      • C 逐文件逐次单独裁。代价:每包一次往返,与「不要不停弹出来确认」相悖。

                      业务含义:A = 客户的 agent 建一个列表页只装列表页那一节;B = 客户每建一个视图都把仪表盘、报表、React 页面全装一遍。

                      四维:① 长远合理性 —— 渐进披露是 skills 目录的既定结构(README「Skill anatomy」已定义 rules/),拆分是收敛到已定结构而不是增生;② 实际拉动 —— 实测 ui 包 defineAction 34 / definePage 29 / defineView 10 次真实用法分散在四个互不相关的节,单文件让每种用法都付全额;③ 防 AI 犯错 —— 入口短、按需装载,agent 更少被无关节的相似例子带偏(实测 ui 仪表盘在两处相距 640 行各写一遍,互相矛盾处已测出);④ 不扩散 —— 条件「整包净减 ≥10%」把拆分钉死为瘦身手段。

                      推荐 A;回退 B;置信缺口:本分析看不见客户 agent 的实际装载策略(是否真按需读 rules/),只看见文件结构。

                      裁后执行:ui 与 pm-dispatch 各在同文件瘦身 PR 之后追加一个拆分 PR,正文引用本裁决;棘轮 map 同 PR 加新文件行(钉在落地计数)。

                      ① 长远:收敛到 README 已定义的 rules/ 结构,非增生 · ② 拉动:实测四类用法分散四节、每次触发付全额 · ③ 防错:入口短、相似例子少、矛盾处减少 · ④ 不扩散:条件「整包净减 ≥10%」钉死为瘦身 · 推荐 A · 置信缺口:客户 agent 的按需装载行为未测


                      2. 「计划中的 evals」存根

                      一句话问题:5 个包的 evals/README.md 只是模板,列出不存在的文件(ai 315 tok · api 546 · query 558 · automation 414 · i18n 410),随包发布进每个客户会话;formula 根本没有 evals。

                      选项 × 真实代价

                      • A 删除存根(整包约 −2,200 tokens),保留真实 fixture(ui 的 analytics json、automation 的 approvals md);formula 不新建。代价:失去「占位提醒」—— 本就无人读。
                      • B 把 evals 建实。代价:每包新 fixture = 新上限 + 客户 token,且 evals 是维护者打分工具、对客户零价值。
                      • C 整个 evals/ 移出发布树(不再计入客户 token;需改 skills CLI 安装边界与棘轮 population,结构变更)。

                      业务含义:A = 客户不再为我们的测试计划书付费;C = 客户永远不为任何测试 fixture 付费,但要动安装边界。

                      四维:① 长远 —— evals 归维护者工具链,不归客户上下文,C 是终态;但 C 改的是安装边界与棘轮 population,不是本程序的瘦身面;② 拉动 —— 零:没有客户 agent 读 evals;③ 防错 —— 存根列出不存在的文件,本身是一类假陈述;④ 不扩散 —— A 是纯删除。

                      推荐 A(现在做),C 作为后续单独议题记录在锚卡、不在本批裁;回退 B(不推荐)。置信缺口:未测 skills CLI 是否真把 evals/ 装进客户项目(README 自述「inert but harmless in consumer installs」)。

                      裁后执行:各飞行内删除存根,棘轮上限随之下调;ui / automation 的真实 fixture 按各自审计意见瘦身。

                      ① 长远:evals 归维护者工具链,C 是终态但不在本程序面 · ② 拉动:零客户读者 · ③ 防错:存根本身是假陈述 · ④ 不扩散:纯删除 · 推荐 A(C 另议)· 置信缺口:CLI 安装边界未测


                      3. contracts/react-blocks.contract.json 双渲染

                      一句话问题:objectstack-ui 包里 contracts/react-blocks.contract.json(5,352 tokens)与 references/react-blocks.md(3,153)由同一生成器 gen:react-blocks 写出同一内容两遍(同 4 个 block、同 prop 数、note 字节相同),JSON 渲染在仓内零消费者;占发布包总量 2.8%,每个客户会话都装。

                      选项 × 真实代价

                      • A 生成器停止发出 JSON 渲染并删除该文件。落点是 packages/spec/scripts 的生成器(spec 席工具链)⇒ 立缝卡给 domain:spec。代价:若存在仓外消费者会断 —— 审计仓内零命中,仓外未测。
                      • B 保留。代价:5,352 tokens 永久税。
                      • C 反过来删 md 保留 json。代价:agent 读 JSON 契约比读 md 表更费、更易错。

                      业务含义:A = 客户少装一份机器格式的重复表;B = 客户为同一张表付两次。

                      四维:① 长远 —— 一份渲染一份真相,生成物只留 agent 可读的那份;② 拉动 —— JSON 零消费者;③ 防错 —— 两份渲染是分叉温床;④ 不扩散 —— 删除。

                      推荐 A;回退 B。置信缺口:仓外消费者(objectui 或客户工具)未测,缝卡执行前先在 objectui 仓 grep。

                      裁后执行:在 objectstack 立 domain:spec 缝卡(生成器改动 + 删除产物 + 棘轮 self-test 的排除集更新);ui 飞行 ⛔ 不碰生成物。

                      ① 长远:一份渲染一份真相 · ② 拉动:JSON 零消费者 · ③ 防错:双渲染是分叉温床 · ④ 不扩散:删除 · 推荐 A · 置信缺口:仓外消费者未测


                      4. 发布版 objectstack-pm-dispatch 的范围

                      一句话问题:该发布包 14,549 tokens(全目录第二大),教客户 app 项目一套 PM 循环;审计实测 30.6% 对客户惰性或重复(monorepo 专有的标签分片、验证锁设计、座位协议;报告 JSON 打印两遍;开发者模板 2,376 tokens 每会话必载),并在四处漂移于内部合同(报告双通道、premise_still_valid、stash 禁令、Session: 行)。

                      选项 × 真实代价

                      • A 保留并瘦身约 30%,模板外置到 rules/dev-template.md(依赖第 1 项),同步四处漂移。代价:仍是一个约 10k 的流程技能。
                      • B 从目录移除。代价:失去对客户项目的多 agent 交付循环 —— 该包是维护者明确要「ships the developer-agent operating template」的。
                      • C 压缩到 ≤5k 核心(五个决策点各一节,模板外置,上游报告移到 platform)。代价:一次重写、评审量大。

                      业务含义:A = 客户团队用得上的交付循环、少付三成;B = 客户自己发明流程;C = 最省但要重写。

                      四维:① 长远 —— 流程技能留在目录内,但只承载客户项目真会做的五个决策;② 拉动 —— 客户项目的多 agent 交付是平台卖点之一,但 monorepo 专有段落在客户项目里按定义惰性(包自己写着「标签不存在时这些析取不得跑」);③ 防错 —— 四处漂移中三处是「教旧形态」(模板不教 stash 禁令、报告单通道),修正是响亮的;④ 不扩散 —— 净减。

                      推荐 A,目标 ≤10k 且模板外置;回退 C。置信缺口:未测任何客户项目实际安装并运行过这个循环。

                      裁后执行:pm-dispatch 飞行先做同文件瘦身与漂移同步,拆分随第 1 项裁决追加。

                      ① 长远:目录内保留、只承载五个客户决策点 · ② 拉动:交付循环是卖点,但 monorepo 段落在客户项目惰性 · ③ 防错:漂移修正响亮 · ④ 不扩散:净减 · 推荐 A · 置信缺口:客户实际安装运行未测


                      Refs: #14292 (program anchor) · #13658 (truth sweep) · #13597 (PM corpus audit).

                      Activity

                      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

                        documentationImprovements or additions to documentationdomain:skillspriority:p1High: required for production / M2

                        Type

                        No type

                        Projects

                        No projects

                          Milestone

                          No milestone

                          Relationships

                          None yet

                          Development

                          No branches or pull requests

                          Issue actions

                          , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
                          Skip to content

                          [Decision] Skills optimization program — batch 1 (4 items): new-file ceilings for splits · planned-eval stubs · react-blocks double rendering · published pm-dispatch scope #14296

                          Description

                          @os-litant

                          Decision batch 1 of the skills catalog optimization program #14292 (maintainer mandate 2026-09-02, verbatim: 「审核所有的 skills,进行全面的优化。」). Filed by the skills lane seat (session session_01LraLgQVGq8egUwfYZpbYt1). Four items, each with a recommendation; a one-line reply (e.g. 1A 2A 3A 4A) executes the whole chain. Everything NOT in this batch — same-file deletions, merges into an existing anchor, rewrites as constructs, falsehood corrections, funded additions — proceeds now under the standing value gate and lands as governed draft PRs for your review; nothing here blocks those flights.

                          Measured at objectstack origin/maina59f78d (skills/** byte-identical at d63c8a2). Published bundle: 187,854 units (ceil(utf8/4)), 171,406 ratcheted.


                          1. 拆分大单文件时的新文件棘轮上限

                          一句话问题:两个发布包把全部内容塞在一个 SKILL.md 里(objectstack-ui 25,441 tokens、objectstack-pm-dispatch 14,549),客户 agent 每次触发都整文件入上下文;拆成「入口 + rules/」能让入口只装最常用的八成,但 token 棘轮规定「无上限的新文件 = 红」,新建上限需维护者裁决引用在 PR 正文。

                          选项 × 真实代价

                          • A 授权本程序内的拆分,条件三条:同一 PR 内整包 token 净减 ≥10%;新文件上限钉在落地计数;拆分 ⛔ 不得作为加字通道。代价:维护者多审 2–3 个结构性 PR(ui、pm-dispatch,可能 data)。
                          • B 不拆,只在单文件内瘦身。代价:ui 入口仍约 19k tokens,渐进披露缺失,客户每次触发付全额。
                          • C 逐文件逐次单独裁。代价:每包一次往返,与「不要不停弹出来确认」相悖。

                          业务含义:A = 客户的 agent 建一个列表页只装列表页那一节;B = 客户每建一个视图都把仪表盘、报表、React 页面全装一遍。

                          四维:① 长远合理性 —— 渐进披露是 skills 目录的既定结构(README「Skill anatomy」已定义 rules/),拆分是收敛到已定结构而不是增生;② 实际拉动 —— 实测 ui 包 defineAction 34 / definePage 29 / defineView 10 次真实用法分散在四个互不相关的节,单文件让每种用法都付全额;③ 防 AI 犯错 —— 入口短、按需装载,agent 更少被无关节的相似例子带偏(实测 ui 仪表盘在两处相距 640 行各写一遍,互相矛盾处已测出);④ 不扩散 —— 条件「整包净减 ≥10%」把拆分钉死为瘦身手段。

                          推荐 A;回退 B;置信缺口:本分析看不见客户 agent 的实际装载策略(是否真按需读 rules/),只看见文件结构。

                          裁后执行:ui 与 pm-dispatch 各在同文件瘦身 PR 之后追加一个拆分 PR,正文引用本裁决;棘轮 map 同 PR 加新文件行(钉在落地计数)。

                          ① 长远:收敛到 README 已定义的 rules/ 结构,非增生 · ② 拉动:实测四类用法分散四节、每次触发付全额 · ③ 防错:入口短、相似例子少、矛盾处减少 · ④ 不扩散:条件「整包净减 ≥10%」钉死为瘦身 · 推荐 A · 置信缺口:客户 agent 的按需装载行为未测


                          2. 「计划中的 evals」存根

                          一句话问题:5 个包的 evals/README.md 只是模板,列出不存在的文件(ai 315 tok · api 546 · query 558 · automation 414 · i18n 410),随包发布进每个客户会话;formula 根本没有 evals。

                          选项 × 真实代价

                          • A 删除存根(整包约 −2,200 tokens),保留真实 fixture(ui 的 analytics json、automation 的 approvals md);formula 不新建。代价:失去「占位提醒」—— 本就无人读。
                          • B 把 evals 建实。代价:每包新 fixture = 新上限 + 客户 token,且 evals 是维护者打分工具、对客户零价值。
                          • C 整个 evals/ 移出发布树(不再计入客户 token;需改 skills CLI 安装边界与棘轮 population,结构变更)。

                          业务含义:A = 客户不再为我们的测试计划书付费;C = 客户永远不为任何测试 fixture 付费,但要动安装边界。

                          四维:① 长远 —— evals 归维护者工具链,不归客户上下文,C 是终态;但 C 改的是安装边界与棘轮 population,不是本程序的瘦身面;② 拉动 —— 零:没有客户 agent 读 evals;③ 防错 —— 存根列出不存在的文件,本身是一类假陈述;④ 不扩散 —— A 是纯删除。

                          推荐 A(现在做),C 作为后续单独议题记录在锚卡、不在本批裁;回退 B(不推荐)。置信缺口:未测 skills CLI 是否真把 evals/ 装进客户项目(README 自述「inert but harmless in consumer installs」)。

                          裁后执行:各飞行内删除存根,棘轮上限随之下调;ui / automation 的真实 fixture 按各自审计意见瘦身。

                          ① 长远:evals 归维护者工具链,C 是终态但不在本程序面 · ② 拉动:零客户读者 · ③ 防错:存根本身是假陈述 · ④ 不扩散:纯删除 · 推荐 A(C 另议)· 置信缺口:CLI 安装边界未测


                          3. contracts/react-blocks.contract.json 双渲染

                          一句话问题:objectstack-ui 包里 contracts/react-blocks.contract.json(5,352 tokens)与 references/react-blocks.md(3,153)由同一生成器 gen:react-blocks 写出同一内容两遍(同 4 个 block、同 prop 数、note 字节相同),JSON 渲染在仓内零消费者;占发布包总量 2.8%,每个客户会话都装。

                          选项 × 真实代价

                          • A 生成器停止发出 JSON 渲染并删除该文件。落点是 packages/spec/scripts 的生成器(spec 席工具链)⇒ 立缝卡给 domain:spec。代价:若存在仓外消费者会断 —— 审计仓内零命中,仓外未测。
                          • B 保留。代价:5,352 tokens 永久税。
                          • C 反过来删 md 保留 json。代价:agent 读 JSON 契约比读 md 表更费、更易错。

                          业务含义:A = 客户少装一份机器格式的重复表;B = 客户为同一张表付两次。

                          四维:① 长远 —— 一份渲染一份真相,生成物只留 agent 可读的那份;② 拉动 —— JSON 零消费者;③ 防错 —— 两份渲染是分叉温床;④ 不扩散 —— 删除。

                          推荐 A;回退 B。置信缺口:仓外消费者(objectui 或客户工具)未测,缝卡执行前先在 objectui 仓 grep。

                          裁后执行:在 objectstack 立 domain:spec 缝卡(生成器改动 + 删除产物 + 棘轮 self-test 的排除集更新);ui 飞行 ⛔ 不碰生成物。

                          ① 长远:一份渲染一份真相 · ② 拉动:JSON 零消费者 · ③ 防错:双渲染是分叉温床 · ④ 不扩散:删除 · 推荐 A · 置信缺口:仓外消费者未测


                          4. 发布版 objectstack-pm-dispatch 的范围

                          一句话问题:该发布包 14,549 tokens(全目录第二大),教客户 app 项目一套 PM 循环;审计实测 30.6% 对客户惰性或重复(monorepo 专有的标签分片、验证锁设计、座位协议;报告 JSON 打印两遍;开发者模板 2,376 tokens 每会话必载),并在四处漂移于内部合同(报告双通道、premise_still_valid、stash 禁令、Session: 行)。

                          选项 × 真实代价

                          • A 保留并瘦身约 30%,模板外置到 rules/dev-template.md(依赖第 1 项),同步四处漂移。代价:仍是一个约 10k 的流程技能。
                          • B 从目录移除。代价:失去对客户项目的多 agent 交付循环 —— 该包是维护者明确要「ships the developer-agent operating template」的。
                          • C 压缩到 ≤5k 核心(五个决策点各一节,模板外置,上游报告移到 platform)。代价:一次重写、评审量大。

                          业务含义:A = 客户团队用得上的交付循环、少付三成;B = 客户自己发明流程;C = 最省但要重写。

                          四维:① 长远 —— 流程技能留在目录内,但只承载客户项目真会做的五个决策;② 拉动 —— 客户项目的多 agent 交付是平台卖点之一,但 monorepo 专有段落在客户项目里按定义惰性(包自己写着「标签不存在时这些析取不得跑」);③ 防错 —— 四处漂移中三处是「教旧形态」(模板不教 stash 禁令、报告单通道),修正是响亮的;④ 不扩散 —— 净减。

                          推荐 A,目标 ≤10k 且模板外置;回退 C。置信缺口:未测任何客户项目实际安装并运行过这个循环。

                          裁后执行:pm-dispatch 飞行先做同文件瘦身与漂移同步,拆分随第 1 项裁决追加。

                          ① 长远:目录内保留、只承载五个客户决策点 · ② 拉动:交付循环是卖点,但 monorepo 段落在客户项目惰性 · ③ 防错:漂移修正响亮 · ④ 不扩散:净减 · 推荐 A · 置信缺口:客户实际安装运行未测


                          Refs: #14292 (program anchor) · #13658 (truth sweep) · #13597 (PM corpus audit).

                          Activity

                          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

                            documentationImprovements or additions to documentationdomain:skillspriority:p1High: required for production / M2

                            Type

                            No type

                            Projects

                            No projects

                              Milestone

                              No milestone

                              Relationships

                              None yet

                              Development

                              No branches or pull requests

                              Issue actions

                              , 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
                              Skip to content

                              [Decision] Skills optimization program — batch 1 (4 items): new-file ceilings for splits · planned-eval stubs · react-blocks double rendering · published pm-dispatch scope #14296

                              Description

                              @os-litant

                              Decision batch 1 of the skills catalog optimization program #14292 (maintainer mandate 2026-09-02, verbatim: 「审核所有的 skills,进行全面的优化。」). Filed by the skills lane seat (session session_01LraLgQVGq8egUwfYZpbYt1). Four items, each with a recommendation; a one-line reply (e.g. 1A 2A 3A 4A) executes the whole chain. Everything NOT in this batch — same-file deletions, merges into an existing anchor, rewrites as constructs, falsehood corrections, funded additions — proceeds now under the standing value gate and lands as governed draft PRs for your review; nothing here blocks those flights.

                              Measured at objectstack origin/maina59f78d (skills/** byte-identical at d63c8a2). Published bundle: 187,854 units (ceil(utf8/4)), 171,406 ratcheted.


                              1. 拆分大单文件时的新文件棘轮上限

                              一句话问题:两个发布包把全部内容塞在一个 SKILL.md 里(objectstack-ui 25,441 tokens、objectstack-pm-dispatch 14,549),客户 agent 每次触发都整文件入上下文;拆成「入口 + rules/」能让入口只装最常用的八成,但 token 棘轮规定「无上限的新文件 = 红」,新建上限需维护者裁决引用在 PR 正文。

                              选项 × 真实代价

                              • A 授权本程序内的拆分,条件三条:同一 PR 内整包 token 净减 ≥10%;新文件上限钉在落地计数;拆分 ⛔ 不得作为加字通道。代价:维护者多审 2–3 个结构性 PR(ui、pm-dispatch,可能 data)。
                              • B 不拆,只在单文件内瘦身。代价:ui 入口仍约 19k tokens,渐进披露缺失,客户每次触发付全额。
                              • C 逐文件逐次单独裁。代价:每包一次往返,与「不要不停弹出来确认」相悖。

                              业务含义:A = 客户的 agent 建一个列表页只装列表页那一节;B = 客户每建一个视图都把仪表盘、报表、React 页面全装一遍。

                              四维:① 长远合理性 —— 渐进披露是 skills 目录的既定结构(README「Skill anatomy」已定义 rules/),拆分是收敛到已定结构而不是增生;② 实际拉动 —— 实测 ui 包 defineAction 34 / definePage 29 / defineView 10 次真实用法分散在四个互不相关的节,单文件让每种用法都付全额;③ 防 AI 犯错 —— 入口短、按需装载,agent 更少被无关节的相似例子带偏(实测 ui 仪表盘在两处相距 640 行各写一遍,互相矛盾处已测出);④ 不扩散 —— 条件「整包净减 ≥10%」把拆分钉死为瘦身手段。

                              推荐 A;回退 B;置信缺口:本分析看不见客户 agent 的实际装载策略(是否真按需读 rules/),只看见文件结构。

                              裁后执行:ui 与 pm-dispatch 各在同文件瘦身 PR 之后追加一个拆分 PR,正文引用本裁决;棘轮 map 同 PR 加新文件行(钉在落地计数)。

                              ① 长远:收敛到 README 已定义的 rules/ 结构,非增生 · ② 拉动:实测四类用法分散四节、每次触发付全额 · ③ 防错:入口短、相似例子少、矛盾处减少 · ④ 不扩散:条件「整包净减 ≥10%」钉死为瘦身 · 推荐 A · 置信缺口:客户 agent 的按需装载行为未测


                              2. 「计划中的 evals」存根

                              一句话问题:5 个包的 evals/README.md 只是模板,列出不存在的文件(ai 315 tok · api 546 · query 558 · automation 414 · i18n 410),随包发布进每个客户会话;formula 根本没有 evals。

                              选项 × 真实代价

                              • A 删除存根(整包约 −2,200 tokens),保留真实 fixture(ui 的 analytics json、automation 的 approvals md);formula 不新建。代价:失去「占位提醒」—— 本就无人读。
                              • B 把 evals 建实。代价:每包新 fixture = 新上限 + 客户 token,且 evals 是维护者打分工具、对客户零价值。
                              • C 整个 evals/ 移出发布树(不再计入客户 token;需改 skills CLI 安装边界与棘轮 population,结构变更)。

                              业务含义:A = 客户不再为我们的测试计划书付费;C = 客户永远不为任何测试 fixture 付费,但要动安装边界。

                              四维:① 长远 —— evals 归维护者工具链,不归客户上下文,C 是终态;但 C 改的是安装边界与棘轮 population,不是本程序的瘦身面;② 拉动 —— 零:没有客户 agent 读 evals;③ 防错 —— 存根列出不存在的文件,本身是一类假陈述;④ 不扩散 —— A 是纯删除。

                              推荐 A(现在做),C 作为后续单独议题记录在锚卡、不在本批裁;回退 B(不推荐)。置信缺口:未测 skills CLI 是否真把 evals/ 装进客户项目(README 自述「inert but harmless in consumer installs」)。

                              裁后执行:各飞行内删除存根,棘轮上限随之下调;ui / automation 的真实 fixture 按各自审计意见瘦身。

                              ① 长远:evals 归维护者工具链,C 是终态但不在本程序面 · ② 拉动:零客户读者 · ③ 防错:存根本身是假陈述 · ④ 不扩散:纯删除 · 推荐 A(C 另议)· 置信缺口:CLI 安装边界未测


                              3. contracts/react-blocks.contract.json 双渲染

                              一句话问题:objectstack-ui 包里 contracts/react-blocks.contract.json(5,352 tokens)与 references/react-blocks.md(3,153)由同一生成器 gen:react-blocks 写出同一内容两遍(同 4 个 block、同 prop 数、note 字节相同),JSON 渲染在仓内零消费者;占发布包总量 2.8%,每个客户会话都装。

                              选项 × 真实代价

                              • A 生成器停止发出 JSON 渲染并删除该文件。落点是 packages/spec/scripts 的生成器(spec 席工具链)⇒ 立缝卡给 domain:spec。代价:若存在仓外消费者会断 —— 审计仓内零命中,仓外未测。
                              • B 保留。代价:5,352 tokens 永久税。
                              • C 反过来删 md 保留 json。代价:agent 读 JSON 契约比读 md 表更费、更易错。

                              业务含义:A = 客户少装一份机器格式的重复表;B = 客户为同一张表付两次。

                              四维:① 长远 —— 一份渲染一份真相,生成物只留 agent 可读的那份;② 拉动 —— JSON 零消费者;③ 防错 —— 两份渲染是分叉温床;④ 不扩散 —— 删除。

                              推荐 A;回退 B。置信缺口:仓外消费者(objectui 或客户工具)未测,缝卡执行前先在 objectui 仓 grep。

                              裁后执行:在 objectstack 立 domain:spec 缝卡(生成器改动 + 删除产物 + 棘轮 self-test 的排除集更新);ui 飞行 ⛔ 不碰生成物。

                              ① 长远:一份渲染一份真相 · ② 拉动:JSON 零消费者 · ③ 防错:双渲染是分叉温床 · ④ 不扩散:删除 · 推荐 A · 置信缺口:仓外消费者未测


                              4. 发布版 objectstack-pm-dispatch 的范围

                              一句话问题:该发布包 14,549 tokens(全目录第二大),教客户 app 项目一套 PM 循环;审计实测 30.6% 对客户惰性或重复(monorepo 专有的标签分片、验证锁设计、座位协议;报告 JSON 打印两遍;开发者模板 2,376 tokens 每会话必载),并在四处漂移于内部合同(报告双通道、premise_still_valid、stash 禁令、Session: 行)。

                              选项 × 真实代价

                              • A 保留并瘦身约 30%,模板外置到 rules/dev-template.md(依赖第 1 项),同步四处漂移。代价:仍是一个约 10k 的流程技能。
                              • B 从目录移除。代价:失去对客户项目的多 agent 交付循环 —— 该包是维护者明确要「ships the developer-agent operating template」的。
                              • C 压缩到 ≤5k 核心(五个决策点各一节,模板外置,上游报告移到 platform)。代价:一次重写、评审量大。

                              业务含义:A = 客户团队用得上的交付循环、少付三成;B = 客户自己发明流程;C = 最省但要重写。

                              四维:① 长远 —— 流程技能留在目录内,但只承载客户项目真会做的五个决策;② 拉动 —— 客户项目的多 agent 交付是平台卖点之一,但 monorepo 专有段落在客户项目里按定义惰性(包自己写着「标签不存在时这些析取不得跑」);③ 防错 —— 四处漂移中三处是「教旧形态」(模板不教 stash 禁令、报告单通道),修正是响亮的;④ 不扩散 —— 净减。

                              推荐 A,目标 ≤10k 且模板外置;回退 C。置信缺口:未测任何客户项目实际安装并运行过这个循环。

                              裁后执行:pm-dispatch 飞行先做同文件瘦身与漂移同步,拆分随第 1 项裁决追加。

                              ① 长远:目录内保留、只承载五个客户决策点 · ② 拉动:交付循环是卖点,但 monorepo 段落在客户项目惰性 · ③ 防错:漂移修正响亮 · ④ 不扩散:净减 · 推荐 A · 置信缺口:客户实际安装运行未测


                              Refs: #14292 (program anchor) · #13658 (truth sweep) · #13597 (PM corpus audit).

                              Activity

                              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

                                documentationImprovements or additions to documentationdomain:skillspriority:p1High: required for production / M2

                                Type

                                No type

                                Projects

                                No projects

                                  Milestone

                                  No milestone

                                  Relationships

                                  None yet

                                  Development

                                  No branches or pull requests

                                  Issue actions