Files
deepseek-harness/docs/core-data-structures/scope.zh.md
T
ZiyaZhang e38955b2fa docs(i18n): re-translate cds/postmortem batch with the prompt-v4 pipeline
22 篇(core-data-structures 18、postmortem 3、rfc/README)译文按
v4 基线重出;机械核对零异常;rfc/README.zh 页内锚点按门禁规则改回
英文侧锚名。
2026-07-22 03:06:01 -07:00

1.6 KiB
Raw Blame History

作用域注册

English | 中文

scope 包(package提供身份标识与载体词汇,使一个注册上下文同时表达逐 agent(智能体)的可见性与共享的生命周期归属。它是一个库级原语,而非 Cordis 服务;agent-scope 运行时设计 RFC 阐述了实现原理,包的 README 说明了可调用 API 与过滤语义。

源码:packages/core/scope/src/index.ts

身份标识与分发载体

ScopeKey 是一个不透明的对象身份标识。已交付的 agent loop(智能体循环)使用活跃的 Agent 对象作为自身的 key,但该原语从不检视该对象。

type ScopeKey = object

Scoped<T> 是编译期品牌标记,标注在 scopeTarget(base, key) 返回的不透明路由接收器上。作用域过滤的事件声明要求以此载体作为 this 类型,而真正的事件主体仍作为显式参数传入。

type Scoped<T extends object> = object & { readonly [ScopedBrand]: T }

拥有所有权的注册上下文

Scope 将带标签的注册上下文与两个拆卸接口配对。rawDispose 保留有序复合 effect 所需的精确 Cordis disposer 身份;dispose() 是面向直接调用方和竞争调用方的公共静默边界,用于 dispose(资源释放)。

interface Scope {
  ctx: Context
  rawDispose: () => Promise<void> | void
  dispose(): Promise<void>
}