Skip to content

Card 13 — AI participation: S1–S6 skills, the pre-review memo, MCP tool surface, honest degradation (M4) #84

Open

Description

@objectstack-fleet

Ruled: 6393733930 · letter A · 2026-10-25T05:02Z

Unblocked: the 17.7.0 → 18.1.0 upgrade landed as PR #110 (7b736a0).

Maintainer-action: provide one model-service credential as an environment secret (ruling 6393733930); the dispatch waits for it and for the upgrade above.

Card spec: docs/backlog/13-ai-skills.md — read it in full; this issue carries only the increment. Milestone M4. The card's own blocker (card 05) has landed (#13). Governing design: DESIGN.md §07.

Why it is blocked on #82, and on nothing else

#82 moves @objectstack/* from 17.4.0 to 17.7.0. This card authors new skills, actions and fields; authored against 17.4.0 schemas, they would meet 17.5–17.7's new refusals on the next bump. It is filed now so it is visible, and it unlocks when #82 merges.

Release changes that bear on this card (leads from the 17.5–17.7 release pages, not measured against code that does not exist yet)

  • 17.7 — Agents: the contract is what the cloud AI runtime enforces: agent lifecycle is removed; memory needs maxEntries / reflectionInterval; a non-JSON structuredOutput is refused; ai:chat_window is refused. This card is skills-only (no app agents, per §07), so most of this should not apply — verify, do not assume.
  • 17.5 / 17.6 — the MCP and AI-agent sections of Breaking changes & migration on each page.

Read the pages (objectstack-ai/objectstack → content/docs/releases/v17/17-{5,6,7}.mdx) for the exact shapes at dispatch time.

Premises the seat re-checks before dispatch

  1. Acceptance's second half needs the cloud runtime ("On the cloud runtime, uploading a seeded PDF through S1 proposes party, amount and dates…"). The PM has no reading that a dev container can reach a runtime with an AI tier. If it cannot, the seat asks the maintainer how that half is met before dispatch — ⛔ not decided by the seat, ⛔ never stubbed (AGENTS.md: no AI output that is a stub).
  2. The first half — gates green with and without @objectstack/service-ai present — is reachable in a dev container; the PM has not measured how the "without" leg is produced on 17.7.0.

Filed by the repo:hotclm PM seat from the backlog card file.

Activity

  1. objectstack-fleet commented on Oct 9, 2026

    @objectstack-fleet
    ContributorAuthor

    决策:卡 13 的 AI 验收需要带 AI 能力的运行时,开发容器里没有——怎么验收? · 2026-10-09T16:07Z

    Governing text: docs/backlog/13-ai-skills.md 验收「Gates green with and without @objectstack/service-ai present」与「On the cloud runtime, uploading a seeded PDF through S1 proposes party, amount and dates …」· AGENTS.md「No AI output that is a stub」与「A capability the runtime does not deliver is hidden, not faked」

    维护者速读

    事情:卡 13 要做 S1–S6 六个 AI 技能、预审备忘、MCP 工具面,以及「没有 AI 时全部隐藏」的诚实降级。第二条验收要在云端运行时上,用 S1 上传种子 PDF,真实提出相对方、金额、日期并在确认后写入。

    读数(2026-10-09,派发容器):环境里没有任何 AI 服务凭据(0 个相关变量)。开发容器能否在本地起一个带 AI 能力的运行时(例如给 service-ai 一个模型服务凭据),席位没有读数。

    你要做的:回一个字母。

    做法 代价 / 收益
    A(推荐) 你在环境 secret 里提供一个模型服务凭据;派发时 dev 先测本地能否跑通 S1,能则两条验收都在容器内完成,不能则停下回报 整卡一次做完、真实验证;需要你做一次环境配置
    B 先派「无 AI」一半(技能声明、ai.exposed 动作、能力缺席时全部隐藏),有 AI 的一半由你在云端验收 能先推进;但六个技能在合并时从未真正跑过,验收落在合并之后
    C 整卡等云端运行时可从开发容器访问 时间不可控

    四棱分析

    • 实际业务需求:AI 参与是 M4 的卖点,S1(从 PDF 提取条款)是评估者最先会试的;「无 AI 时诚实隐藏」本身也是要展示的能力。
    • 项目长远合理性:技能的提示词与动作契约只能在真实模型上证明;A 一次付清,B 留下「合并后再验」的尾巴。
    • 防 AI 写错:B 让六个从未跑过的技能进入展品,正是 AGENTS.md「不发布存根式 AI 输出」要防的形态;A 把验证放在合并之前。
    • 创业阶段不扩散:三个选项范围相同(都按卡片),区别只在验证时点;A 只多一次环境配置。

    Generated by Claude Code

  2. zhuangjianguo commented on Oct 25, 2026

    @zhuangjianguo
    Collaborator

    Ruling: batch #1 item 2 · letter A · maintainer 「同意」 2026-10-25T05:02Z

    裁决 A:维护者在环境 secret 里提供一个模型服务凭据;派发时 dev 先测本地能否跑通 S1(上传种子 PDF,真实提出相对方、金额、日期),能则「有 / 无 @objectstack/service-ai 门禁全绿」与「S1 真实提取」两条验收都在容器内完成;不能则停下回报 fork,⛔ 不写存根,⛔ 不悄悄退回 B(先派无 AI 一半)。

    工作量(卡面读数):hotclm · 1 张卡 1–2 个 PR · 无先例。

    Governing text(录裁前重读):docs/backlog/13-ai-skills.md 验收「Gates green with and without @objectstack/service-ai present」「On the cloud runtime, uploading a seeded PDF through S1 proposes party, amount and dates」· AGENTS.md「No AI output that is a stub」「A capability the runtime does not deliver is hidden, not faked」。

    前提:本卡 Blocked-by: #82 的理由(新技能按旧 schema 写会撞新拒收)现在指向 18.1 —— 派发等 18.1 升级 PR 合入;凭据到位前由 repo:hotclm 席位转 pm:awaiting-maintainer(本席只录裁,不改标签)。派发令须写明「本地跑不通 S1 就停下回报」。

    鲜度门:正文最后编辑 2026-10-09T14:44Z;其后唯一评论是席位 2026-10-09T16:07Z 的决策分析;2026-10-25 复测环境中 AI 服务凭据仍为 0 个,前提成立。决裁文档:https://claude.ai/artifact/WpsJbszPncNgj1cDt2Ucw9


    Generated by Claude Code

  3. objectstack-fleet commented on Oct 25, 2026

    @objectstack-fleet
    ContributorAuthor

    Out of the decision box — Ruling-ref: comment 6393733930 (batch #1 item 2 · letter A · maintainer 「同意」).

    • State: needs-user-decision → pm:awaiting-maintainer, with the Maintainer-action: line in the body (a model-service credential as an environment secret). The Blocked-by: #82 line now points at the 18.1 upgrade PR, which the ruling names as the real precondition.
    • The dispatch order will carry, verbatim from the ruling: 「本地跑不通 S1 就停下回报」 — no stub, no silent fallback to B.

    Generated by Claude Code

  4. objectstack-fleet commented on Oct 25, 2026

    @objectstack-fleet
    ContributorAuthor

    The upgrade blocker is gone: PR #110 merged as 7b736a0. State stays pm:awaiting-maintainer — the Maintainer-action: line (a model-service credential as an environment secret) is the remaining precondition.


    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions