DAG总览 / 组目录 / G29 运行时诊断

dsh-invariants · @deepseek-ai/dsh-invariants

Layer 0G29L3 其余
目录:ACP 协议API 网关与控制器附件启动与插件管理客户端运行时客户端 UI 包上下文压缩上下文注入核心运行时凭据与授权交付物文档处理实验特性宿主扩展反馈通道文件系统目标与计划工具守卫Hooks 扩展宿主服务交互命令作业调度LLM 适配LSP 集成MCP 协议规划模式Agent 预设代码执行运行时运行时诊断沙箱定时调度SDK 与协议会话核心会话检索设置Shell 执行技能溢出存储SSH 远程执行存储子代理子进程终端待办类型契约框架 vendorWeb 访问Webhook工作流工作区
依赖链 · 上游(该插件依赖的前驱):
无依赖(基础插件)
依赖链 · 下游(依赖该插件的节点):
同一拓扑层(Layer 0,层次遍历层序):
Layer 0↓ Layer 1(13 插件)

插件信息

包名@deepseek-ai/dsh-invariants
分组G29 · 运行时诊断
拓扑层Layer 0(层次遍历:被依赖方先于依赖方)
源码路径packages/runtime-diagnostics/invariants
来源层L3 其余插件(独立于 bundle 装配的扩展/变体/示例)

① 实现逻辑

以 InvariantRegistry(Service)实现包级运行时不变式注册表,注册为 ctx.invariants(src/index.ts:94-118);register(packageName, installer) 校验包名合法性与唯一性,并在子 fiber(ctx.effect + ctx.plugin)中运行每个包自带的检查安装器,违规时抛出带包名的 InvariantError(src/index.ts:136-197)。Config 提供全局开关与 package_allowlist/package_blocklist 正则过滤(src/index.ts:95-99,121-126)。该包无本仓内部依赖。

内部结构动态 DAG(深色主题:橙色=上游依赖 · 绿色=下游依赖 · 棕色=外部seam · 蓝=本插件)
本插件 上游依赖 下游依赖 外部 seam

② 注册/提供(provides)

③ 依赖(depends_on · 上游前驱)

无依赖(基础插件)

④ 被依赖(dependents · 下游消费者)

dsh-agent
作为 invariant companion 注册 agent 生命周期不变量
src/invariant.ts:4 import + src/invariant.ts:12 inject(['invariants']) + src/invariant.ts:32 register
dsh-agent-loop
注册 loop 请求可重建性不变量
src/invariant.ts:8 import + src/invariant.ts:16 inject(['invariants']) + src/invariant.ts:65 register
dsh-agent-preset-registry
注册预设隔离与 Agent 绑定不变式
src/invariant.ts:7 type InvariantInstaller + src/invariant.ts:68 ctx.invariants.register
dsh-authorization
注册 single-flight 释放不变式,检测 settled 后 key 残留 in-flight
src/invariant.ts:7 import InvariantInstaller + src/invariant.ts:14 inject ['invariants'] + src/invariant.ts:45 register
dsh-client-hmr
注册包级不变量,检查 bundle 监视器不被泄漏
src/invariant.ts:7 + src/invariant.ts:14 inject 'invariants' + src/invariant.ts:59 ctx.invariants.register
dsh-client-modules
注册包级不变量,校验模块注册表随 fiber 释放而清理
src/invariant.ts:8 + src/invariant.ts:15 inject 'invariants' + src/invariant.ts:44 ctx.invariants.register
dsh-client-ui-renderer
注册渲染器拥有的运行时不变式检查
src/invariant.ts:12 import + src/invariant.ts:19 inject ['invariants']
dsh-commands
注册命令生命周期配对不变量
package.json:59 peerDep + src/invariant.ts:9 import; src/invariant.ts:67 ctx.invariants.register
dsh-goal
注册目标流不变量校验伴随件
src/invariant.ts:4 import InvariantInstaller + src/invariant.ts:14 inject ['invariants'] + src/invariant.ts:80 ctx.invariants.register
dsh-goal-round-driver
注册续轮提示词不变量伴随件
src/invariant.ts:6 import InvariantInstaller + src/invariant.ts:15 inject ['invariants'] + src/invariant.ts:85 ctx.invariants.register
dsh-hook-protocol
注册 hook 事件配对不变量伴随件
src/invariant.ts:5 import InvariantInstaller + src/invariant.ts:13 inject ['invariants'] + src/invariant.ts:122 ctx.invariants.register
dsh-llm
注册 llm 包拥有的流协议与注册表不变量 companion
src/invariant.ts:4 import type InvariantInstaller + src/invariant.ts:112 ctx.invariants.register
dsh-llm-retry
注册包拥有的重试持久事件不变量 companion
src/invariant.ts:7 import type InvariantInstaller + src/invariant.ts:178 ctx.invariants.register
dsh-permission-presets
注册 preset 事件可解析性不变量
package.json:58 peerDep + src/invariant.ts:5 import; src/invariant.ts:43 ctx.invariants.register
dsh-plan-mode
注册 plan/mode 载荷校验不变式
src/invariant.ts:5 type InvariantInstaller + src/invariant.ts:49 ctx.invariants.register
dsh-sandbox-policy
注册本包事件字段的运行时不变式检查
src/invariant.ts:5 import + src/invariant.ts:13 inject + src/invariant.ts:43 ctx.invariants.register
dsh-schedule
注册 schedule/change 事件流的运行时不变式
src/invariant.ts:8 import + src/invariant.ts:63 ctx.invariants.register
dsh-scope
注册作用域派发关系的运行时不变量
package.json:35 peerDep + src/invariant.ts:4 import + src/invariant.ts:13 inject(['invariants']) + src/invariant.ts:41 register
dsh-session
注册会话日志关系不变量
session/package.json:52 devDep + src/invariant.ts:10 import + src/invariant.ts:20 inject(['invariants']) + src/invariant.ts:258 register
dsh-session-log-deepseek
注册水位字段的运行时不变式
src/invariant.ts:6 import + src/invariant.ts:75 ctx.invariants.register
dsh-session-title
注册 session/title 事件来源与 messageSeqs 关系的运行时不变式
src/invariant.ts:8 import + src/invariant.ts:81 ctx.invariants.register
dsh-storage-domain
注册 domain/changed 与内存状态一致性不变量
src/invariant.ts:13 (import type InvariantFailure, InvariantInstaller) + src/invariant.ts:21 (inject ['invariants']) + src/invariant.ts:67 (ctx.invariants.register)
dsh-subagent
注册 provider 注册表与 start/end 配对不变量
src/invariant.ts:4 (import type InvariantFailure, InvariantInstaller) + src/invariant.ts:12 (inject ['invariants']) + src/invariant.ts:92 (ctx.invariants.register)
dsh-system-prompt
注册提示装配结果合法性不变量
src/invariant.ts:4 import + src/invariant.ts:13 inject(['invariants']) + src/invariant.ts:60 register
dsh-time-context
注册包级不变量,校验时间读数格式、位置与时间戳在加载与派发时可重放一致
src/invariant.ts:5 import type InvariantFailure/InvariantInstaller + src/invariant.ts:25 inject ['invariants'] + src/invariant.ts:194 ctx.invariants.register
dsh-tool-subagent
注册可选路由定义完整性不变量
src/invariant.ts:8 (import type InvariantFailure, InvariantInstaller) + src/invariant.ts:16 (inject ['invariants']) + src/invariant.ts:49 (ctx.invariants.register)
dsh-tool-todo
注册 todo 快照不变量校验
package.json:45 peerDep + src/invariant.ts:5 import InvariantInstaller + src/invariant.ts:104 ctx.invariants.register
dsh-tool-workflow
注册 tool-workflow 记录的伴生不变量校验器
package.json:42 peerDep + src/invariant.ts:5 import type { InvariantFailure, InvariantInstaller } + src/invariant.ts:13 static inject ['invariants'] + src/invariant.ts:168 ctx.invariants.register
dsh-tools
注册会话内工具调用关系不变量
src/invariant.ts:5 import + src/invariant.ts:13 inject(['invariants']) + src/invariant.ts:129 register
dsh-user-approval
注册审批审计流不变量
package.json:42 peerDep + src/invariant.ts:5 import; src/invariant.ts:112 ctx.invariants.register
dsh-workspace
./invariant 伴生插件需向 runtime 不变量服务注册『实体缓存 ↔ 持久表』一致性断言
src/invariant.ts:7 import;src/invariant.ts:16 export const inject=['invariants'] + src/invariant.ts:57 ctx.invariants.register(PACKAGE_NAME, install)