dsh-evolution
Self-evolution orchestrator, durable experiment memory, and promotion lifecycle for DSH, shipped as an independent bundle 适合需要管理DSH自我演化生命周期、实验内存及领域数据迁移的开发者。
同名パッケージの別リポジトリ
インストール
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:ryukeilee/dsh-evolutionドキュメント
README 全文を読む ↗也可使用 GitHub CLI;公开仓库无需先运行 gh auth login
gh release download v0.2.0-rc.2 --repo ryukeilee/dsh-evolution
--pattern 'dsh-evolution-*.tgz' --pattern 'SHA256SUMS' --pattern 'manifest.json'
2. 数据边界与配置
- 默认数据根:
$DSH_HOME/storages/evolution,可用 profile patch 的dataRoot覆盖。 - 事件签名密钥
event-bridge.key仅在该目录首次创建,不会被禁用/卸载删除。 - 官方
ctx.storageDomain(backend: json,root$DSH_HOME/storages)承载领域聚合元数据;领域名evolution_domain(官方UNIT_NAME_RE不允许连字符)。冷档案/轮转文件仍由插件文件后端写入/dockyard。 - 领域 schema 在模块加载时按官方
defineDomain规则 fail-loud 校验(名称、表名、禁止 nullable global)。原始错误内容只经脱敏 DTO 进入领域存储。 domainSeed(默认false):显式授权把已迁移的/dockyard/state.json种子载入领域聚合。默认关闭,避免误读旧环境。
7. 已知限制(必须显式记录,不使用隐藏 patch 绕过)
- Promotion 的领域 evaluator 仍是 advisory:
promotionGates是生产权威;领域 evaluator 提供记录在案的决策与“识别到 regression 即否决”的硬性 veto。它要求 goal/test/regression/已识别指标全部通过才会给promote,但本插件尚未接入宿主提供的独立生产 baseline/test 指标,因此只有自定义指标时 evaluator 会返回reject(不阻塞),真实独立指标接入待补。 - continuous / governance 领域模块已提取并单测通过,但未接入 orchestrator 实时循环:
lib/dockyard-domain/continuous/、governance/是无旧运行时副作用的纯领域实现,当前未启动第二套 Engine/scheduler。旧dockyard数据以文件形式完整保留,可用domainSeed载入。 - Host-only:Client half 一律拒绝。持久化源码使用合作式
Function(hostCode)()兼容 gate,只接受同步、独立返回 Cordis Plugin 的函数体;任何harnesstoken 保守拒绝。这不是安全沙箱。 - 内部 API 依赖:introspection 仍依赖
ctx.registry.values()、ctx.reflect.props/_getImpl()、ctx.events._hooks、Fiber effect 元数据;Include adapter 使用源码中公开的root.data/store/Entry.fiber/Fiber.state/ctx.get()。这些不是稳定跨版本公共契约,升级 DSH 前必须重新验证——runtime.internal-api会逐个探针报告可用性,缺失时降级为degraded而不是假装健康。 - 直接 dispose 底层 bundle Fiber 的手工 probe 仍无法自我断言(dispose 会使 probe 自身注入的
tools失活);官方pluginManager禁用/启用与 CLI 卸载/重装路径已独立验证。该底层路径不作为用户关闭流程。