docs(adr): 修订 ADR-009 收编 E7 云优先 + kill-switch 语义 (#492) - #512
Merged
Conversation
把 ADR-009 从「桌面默认对所有 provider 放开 keyless websearch」的单一决策, 改写为两态决策:登出/BYOK 保留 keyless 放开(决策 A,降级为兜底),登录/平台 付费走 cloud_web_search 云优先权威、本地 keyless 主权 force-off 抑制(决策 B)。 登记已交付实现(#488 选路 / #490 kill-switch+云收敛 / #491 caps)与四条裁决: (a) 远端逐工具禁用——引擎 remote MCP 只整 server 开关,改用 permission 层按 工具 ID deny cloud_web_search,保留兄弟工具,catalog 仍列为 loud 残留; (b) OPENCODE_EXPERIMENTAL umbrella 不盲目 force-0(会误伤兄弟实验能力),只 force-0 四个 keyless 专用 flag,umbrella 复活面为已知残留(上游闸不可 patch); (c) providerID==="opencode" Zen 分支打包端不可达,禁用 provider 棘轮守死; (d) host-tool 无 402/余额门为现状,per-call 余额门归 alpha-platform#37。 失败诚实(#489)须改上游 packages/opencode,依赖 alpha-patch 机制,已暂缓, 其不变量记录在案但机械化强制待 #489。 Fixes #492 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
jinjunnn
force-pushed
the
adr009-e7-revision
branch
from
July 22, 2026 14:30
08005b1 to
9aec006
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
父票 #223(E7)· DECIDE 子票 #492。把 ADR-009 从单一「keyless 放开」决策改写为两态决策,并登记 E7 已交付实现的裁决与残留。全部对照已合入 alpha 的 shipped 代码勘破(非计划措辞)。
决策收窄
cloud_web_search云优先权威,forceOffKeylessWebSearch()覆盖写 4 个 keyless flag 为"0"(压过 shell export)抑制本地;权威判据全在本地(alpha-auth §③),零 platform 回声。登记的四条裁决(对照 shipped 代码)
ConfigMCPV1.Remote只支持整 server 开关 → 改用引擎 permission 层permission["cloud_web_search"]="deny"(cloud-web-search.ts),保留 cloud server + 兄弟工具。残留(loud+TODO):cataloglistTools仍列该工具,仅模型工具集不含。OPENCODE_EXPERIMENTAL是全部实验能力总开关,不碰。残留(open):export OPENCODE_EXPERIMENTAL=1经上游webSearchEnabledOR 项复活本地 web_search,registry.ts在 UPSTREAM_PATHS 不可直接 patch;收口择 (i) 本地 permission-deny 或 (ii) alpha-patch(与 [E7][CODE] web_search 失败映射诚实化(替换 orDie,禁伪成功;意外状态 LOUD) #489 共用依赖)。当前接受为已知项。providerID==="opencode"Zen 分支:打包端不可达死码,禁用 provider 棘轮守死,不 patch 上游。/v1/tools/web_search无 preauth、事后 settle,per-call 余额门归alpha-platform#37(AC1/AC5);E7 侧仅在 docs(ci): local-first CI standard + local gate runner #37 落地后消费 insufficient-funds LOUD 状态。未竟
packages/opencode/src/tool/websearch.ts的Effect.orDie+ 禁伪成功须改上游,依赖 alpha-patch 机制,PR#506 草稿;不变量记录在案但机械化强制待 [E7][CODE] web_search 失败映射诚实化(替换 orDie,禁伪成功;意外状态 LOUD) #489。交付实现引用
cloud-first 选路 #488(PR#504)· kill-switch + 云收敛 #490(PR#507)· caps 事实 #491(PR#510)。
Fixes #492
🤖 Generated with Claude Code