Skip to content

test(plugin): 锁定 Observe 与 status_commands 迁移组合 - #419

Closed
kachofugetsu09 wants to merge 1 commit into
codex/plugin-turn-committed-eventfrom
codex/plugin-observe-status-combination
Closed

test(plugin): 锁定 Observe 与 status_commands 迁移组合#419
kachofugetsu09 wants to merge 1 commit into
codex/plugin-turn-committed-eventfrom
codex/plugin-observe-status-combination

Conversation

@kachofugetsu09

Copy link
Copy Markdown
Owner

依赖:Core #418;Observe https://github.com/akashic-plugins/observe/pull/3;status_commands https://github.com/akashic-plugins/status_commands/pull/5。

问题与结果

  • 解决的问题:Observe 与 status_commands 按能力 owner 拆分后,缺少一个绑定真实外部源码、混合 v2/v3 generation、数据库写集和清理行为的跨仓回归基线。
  • 用户可见结果:新增 exact-commit 组合 Gate;证明 /kvcache 只由 Observe 实现,/memory_status 与 drawer UI 只由 status_commands 实现。
  • 本 PR 不处理:不安装、reload、晋升或发布插件;不把 Observe 全量迁移到 v3;不改变正式 workspace、plugin-data 或 SessionDB。

Change intent

  • change_type:feature
  • semantic_delta:none
  • capability_owner:core
  • consumer_scope:Observe PR fix(reasoner): 重试仅有 thinking 的空回复 #3 与 status_commands PR Feature/deepseek support #5 的迁移候选组合
  • runtime_patch:none
  • runtime_patch_reason:只增加测试 Gate 与 CI 证据,不改变运行时实现
  • authoritative_state_owner:Core 拥有 composition;插件各自拥有命令实现、UI 投影和派生数据
  • client_only_alternative:不适用
  • 关联不变量:exact commit;命令与 UI slot owner 唯一;只读命令不写 SessionDB;terminate 后 generation/snapshot 清零
  • protected_state:正式 workspace、plugin-data、manifest、stable/latest 指针、晋升结论和既有 v2/v3 行为
  • 允许的副作用:CI 临时目录中的 Git checkout、SessionDB、Observe row 和 JSON artifact
  • 禁止的副作用:正式安装、reload、晋升、channel 发送、外部 API 调用、修改插件 cache/canonical source

改动范围

  • 主要文件:docker/debug/plugin_composition_migration_gate.py、迁移锁、plugin-api-v2.yml、回归测试与任务合同
  • 配置或迁移影响:无
  • 已知 schema lineage 与最终 schema identity:只使用临时 Core SessionDB 与锁定 Observe commit 自己创建的临时 schema;不执行生产迁移
  • 协议 source、runtime、provider 与 scenario 的不可变 revision:
    • Core 8e7b160a5aaf164707c836035f2112a21972a9cd
    • Observe 9d53df0e1fef0c34f9b0a026d77ba943c08a5ace,tree 0db3ec9d52000313177c44fb98c9b153597936a3plugin.py SHA-256 2300dc1badf31a5be8565c6600eaf87f3b9b3a61e5e976c338a046bf59f1ba38
    • status_commands 7de1d1385691d9891a814c62d1fd9650e2387640,tree 01de67373f83597be4ddd737633e8551ca47af90plugin.py SHA-256 e259c9c7c3059b6a5da9e343f0db3a3426d351225e879f1d20bb9bdd27d0bc62
    • scenario observe-status-ownership-v1,lock SHA-256 0dbee48716f26df441565fb0d041ec5fdd118646d98f7214157ea9ddb60a5e34
  • 回滚方式:revert 本 PR,或回到 backup/plugin-observe-status-combination-before-20260815@92bd39e

验证

  • 相关 targeted tests 已通过:38 passed。
  • Python 类型检查已通过:Core pyright 0 errors;新增探针与测试 basedpyright 0 errors / 0 warnings。
  • python docker/debug/gate.py run --base 92bd39e16b8b4d1b19fdde2a9dc6eb735495ec91 已运行:24 checks passed,cleanup 0 failures。
  • sourceDigeste3c1ca0ba0ab28c586b93f2de77eff8f405a2fc68aedeeab844e43a2ad0bad53
  • planDigest2ab177d7564b2dfd553e289a35d0bb6e0d006fdefcc80ff2b5cc01003e586e2c
  • 真实组合 Gate:clean commit 模式通过;目录为 kvcache + memorystatus,Observe row 为 telegram:combo / 300 / 260,SessionDB write set 不变,terminate 后无 generation/snapshot。
  • 真实设备证据:不适用。
  • 未运行项与原因:全量 tests pyright 在栈内既有 tests/test_plugin_composition_executor.py:127 发现 parallel_sync 异构返回类型错误;该文件不属于本 PR,后续独立小 PR 修复,避免污染本层。

工作手册

  • 已核对 projectneed.md、相关决策和 NOW.md
  • 本次没有长期运行语义变化。
  • 已按 MOB-001 固定跨仓 capability owner、源码与场景身份。
  • NOW 当前没有对应可删除事项。

@kachofugetsu09

Copy link
Copy Markdown
Owner Author

已由 pure-v3 总迁移 PR #462 及其后续收口提交完整吸收;关闭旧 stacked 审计入口,保留 main 作为唯一事实。

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