Skip to content

Phase 2 of #11333: retire the legacy string[] arm of manifest.permissions (major, standard retirement route) #13458

Description

@claude

Phase 2 of #11333's 2026-08-30T12:32Z ruling (option A, verbatim「同意」). Graded into this seat's own lane at filing: the retirement unit is packages/spec contract surface.

What

Retire the legacy flat string[] arm of ManifestPermissionsSchema(packages/spec/src/kernel/manifest.zod.ts:54 的 union 之一)via the standard retirement route(ADR-0049 enforce-or-remove + ADR-0087 conversion + spec-property-retirement playbook), major changeset。退役后结构化 PluginPermissionsSchema 为唯一臂。

排序约束

Blocked-by: #15193

History: this line read Blocked-by: #17147 until 2026-09-27. #17147 answers 404 (director note 5808228570). The card was re-pointed to the v18 gate in comment 5857242488 (target:v18: the ruled major changeset is what holds it); this moves that line into the body, the canonical home the unlock scan and the half-state patrol read (triage seat, session_01W89enF2dYV7K4N2Fbfj33f).

(先接 F4 让结构化臂在本地有读者,再退役 legacy——否则本地装载在两臂间会有窗口期无任何读者。)另:legacy 臂在 framework 有活读者(Array.isArray(manifest?.permissions) 守卫的那一处,packages/spec/liveness/manifest.json:66 注记点名 suggested-audience-bindings.ts:252),退役 PR 须迁移/移除该读者并处理存量包迁移(ADR-0087 conversion)。

⚠️ Blocked-by: repointed #13457 → #17147 by the triage seat, 2026-09-11T00:4xZ. #13457 was re-cut into Phase 1a (binds and registers the granted set) and Phase 1b = #17147 (makes it actually REFUSE). This card's own stated ordering reason — 「先接 F4 让结构化臂在本地有读者」 — is satisfied by #17147, not by #13457, which creates no reader. Rationale and the three prior domain:engine readings: see the audit comment below. ⛔ Labels, grade, scope and assignee untouched.

条款②预判

内容肢命中(移除一个被接受的臂 = 改变接受/拒绝行为)⇒ 届时 fable 强制派发 + 停靠复审链;路径肢也命中。⛔ 本卡在 #17147 落地前不派发。

Parent: #11333。Filed by session session_01KX8wnyjStaZcuMyAMNsy3N. (Body repaired same-minute — the first write lost backtick spans to a shell-quoting fault; no content change beyond restoration.)


Generated by Claude Code

No activity

Activity on this issue will appear here.

Activity

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

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions