Skip to content

refactor(extensions): separate plugin capability projection and publication - #2629

Merged
limityan merged 2 commits into
GCWing:1.0.0-explorefrom
limityan:yanzhn/sync-plugin-capabilities-to-1.0.0
Aug 29, 2026
Merged

refactor(extensions): separate plugin capability projection and publication#2629
limityan merged 2 commits into
GCWing:1.0.0-explorefrom
limityan:yanzhn/sync-plugin-capabilities-to-1.0.0

Conversation

@limityan

Copy link
Copy Markdown
Collaborator

背景

将 GitCode #87#90 的扩展边界收敛同步到 1.0.0-explore。保留两个来源提交,便于分别追溯 Config 投影迁移和 provider-neutral 能力发布边界。

变更

  • 将 OpenCode Config Hook 的 Agent、权限、Tool、Skill 投影移入 opencode-adapter;Core 只保留 owner 校验、runtime key 绑定和 generation 原子发布。
  • product-domains 增加最小的 provider-neutral 插件能力贡献 DTO,避免 Core 依赖 OpenCode 投影类型。
  • publication generation 同时按 workspace 与 publication owner 隔离,防止未来不同生态发布方互相撤下贡献。
  • 明确 DeepSeek Harness 当前仍是静态 projection;未来可复用中立贡献合同,但不共享 OpenCode 配置解析、Plugin Host 协议、执行句柄或生命周期。
  • 更新 boundary checks、模块文档和 focused contract tests。

1.0.0 适配

  • 保留目标分支的 CoworkMode 本地 Agent baseline,不恢复已移除的 PlanMode 代码。
  • 保留目标分支统一后的 bounded reparse-point helper。
  • 保留 ExternalSourceControlPlane 的准确 owner 命名,并补充 feat: unified image analysis pipeline, bot image support, and mobile-web enhancements #90 的多生态边界。
  • 不恢复目标分支已删除的 CLI 渲染测试;该来源提交在对应文件中只涉及已不存在测试代码的 import 迁移。

风险

  • OpenCode 配置解析顺序、插件执行、Remote 不回退控制机等现有行为不变;本次调整的是投影与发布职责边界。
  • DSH 没有新增执行能力。
  • 安全与极端生命周期场景继续按现有 OpenCode 兼容文档中的后续事项推进,本 PR 不扩展该范围。

验证

  • cargo test --locked -p bitfun-product-domains --no-default-features --features external-sources --test external_source_contracts(67 passed)
  • cargo test --locked -p bitfun-opencode-adapter --lib plugin_config_projection(14 passed)
  • cargo test --locked -p bitfun-core --features product-full --lib plugin_capability_publication::tests(4 passed)
  • cargo test --locked -p bitfun-core --features product-full --lib plugin_host::tests(9 passed)
  • cargo check --locked -p bitfun-core --no-default-features --features opencode-plugin-host
  • node scripts/check-core-boundaries.mjs
  • pnpm run check:repo-hygiene
  • git diff --check

@limityan
limityan force-pushed the yanzhn/sync-plugin-capabilities-to-1.0.0 branch 3 times, most recently from a8296e0 to 2cbd3b4 Compare August 29, 2026 06:28
Move provider-neutral Agent, Tool, and Skill contribution contracts into product domains while keeping OpenCode parsing and lifecycle in its adapter and composition path. Scope publication generations by owner so future sibling adapters cannot overwrite each other.
@limityan
limityan force-pushed the yanzhn/sync-plugin-capabilities-to-1.0.0 branch from 2cbd3b4 to 6ed677e Compare August 29, 2026 06:54
@limityan
limityan merged commit 3cd882b into GCWing:1.0.0-explore Aug 29, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant