@aalis/api-authority 0.10.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,3 +1,6 @@
1
+ import type { OriginKind } from '@aalis/api-approval';
2
+ import type { TextRef } from '@aalis/schema-i18n';
3
+ import { type FromTurn, type IncomingMessage } from '@aalis/schema-message';
1
4
  /** 细粒度能力标识,如 tool:file.write、command:shutdown */
2
5
  export type CapabilityId = string;
3
6
  /**
@@ -9,8 +12,12 @@ export type CapabilityVisibility = 'public' | 'restricted';
9
12
  /**
10
13
  * 能力确认要求(轴 B · 确认:是否需「人确认」这一步,与 visibility 正交、owner 也生效):
11
14
  * - 缺省/undefined:无需确认(不提醒)。
12
- * - 'session':执行前需人确认;可「本会话」记住(回复 YS),会话内同能力不再追问。
13
- * - 'always':每次都需确认,不接受会话记忆(最危险操作)。
15
+ * - 'session':执行前需人确认;系统源(ExecutionGuardContext.skipConfirm)与 restrictedPolicy 白名单可免。
16
+ * - 'always':每次都需确认(最危险操作),只有确认覆盖设为 'off' 能免。
17
+ * 免确认只对参与者都是 owner 的回合生效,有别人的照旧要确认。
18
+ *
19
+ * 怎么确认看操作是谁发起的:工具由模型调用,确认是只有 owner 能批的审批(@aalis/api-approval);指令由人亲手输入,
20
+ * 确认是向发出者本人核对意图(ExecutionGuardContext.confirmIntent)。
14
21
  *
15
22
  * 与 visibility 正交:visibility 管「授权(能不能)」,confirm 管「意图确认(是不是你本人此刻要)/防注入减速带」。
16
23
  * 即便 owner=`*`,命中 confirm 的能力仍须确认 —— 抵御 owner 会话内提示注入借权静默调高危。
@@ -69,6 +76,18 @@ export declare function resolveCapabilityPolicy(decl: CapabilityPolicyDecl, defa
69
76
  visibility: CapabilityVisibility;
70
77
  confirm?: CapabilityConfirm;
71
78
  };
79
+ /**
80
+ * 调用所在的入站回合(只由 agent 工具循环填写,指令与其他调用方没有)。守卫据它判发起回合的类别,
81
+ * 类别决定这次工具调用能不能产生审批。
82
+ */
83
+ export interface InboundTurn {
84
+ /** 同 IncomingMessage.source:真人消息为 undefined,内部注入为注入方标识 */
85
+ source?: string;
86
+ /** 同 IncomingMessage.fromTurn:续做与子任务都带着起它的那一轮,这一轮与它同一类别,主体按同一条判 */
87
+ fromTurn?: FromTurn;
88
+ /** 这一轮最近一条输入的平台消息 id(IncomingMessage.messageId)。转到后台的工具调用结束时,结束通知的回复据它引用这条消息 */
89
+ messageId?: string;
90
+ }
72
91
  /** 执行守卫上下文 —— 操作执行前权限检查的最小信息 */
73
92
  export interface ExecutionGuardContext {
74
93
  /** 操作名称(指令名 / 工具名) */
@@ -83,104 +102,92 @@ export interface ExecutionGuardContext {
83
102
  confirm?: CapabilityConfirm;
84
103
  /** 会话 ID */
85
104
  sessionId: string;
86
- /** 来源平台(会话语义:confirm 通道按它选路;等级判定见 actor) */
105
+ /** 来源平台(会话语义;等级判定见 participants) */
87
106
  platform: string;
88
- /** 用户 ID(物理发言者;等级判定见 actor) */
107
+ /** 用户 ID(物理发言者;等级判定见 participants) */
89
108
  userId?: string;
90
109
  /**
91
- * 授权身份(缺省 = platform/userId 本身):等级裁决(authorize)与 owner 的
92
- * 自动确认跳过按它评估;confirm 通道选路仍按会话身份。未授权后的救援闸
93
- * (restrictedPolicy 白名单 / 会话临时授予,均按会话身份登记)只在授权身份就是
94
- * 会话身份时适用——actor 覆盖了会话身份(委派 / 定时 / 自发回合的无主体)时整体
95
- * 不适用:物理发言者的放行不能替另一个身份解围(fail-safe,宁缺勿错)。
110
+ * 这一轮的参与者(授权身份,入站回合里由 {@link originTurnOf} 算出;指令一路是发出者,不在入站回合里的调用方填它自己的
111
+ * 身份,没有身份的是一个无主体):等级裁决(authorize)、免确认与审批都按它们,对每个参与者各裁决一次
96
112
  */
97
- actor?: {
98
- platform: string;
99
- userId: string;
100
- };
113
+ participants: readonly UserIdentity[];
114
+ /** 工具所属的工具分组(工具一路由执行器填,指令没有):原样转给 authorize,权限组的 `tool-group:` 条目按它覆盖 */
115
+ toolGroups?: readonly string[];
101
116
  /** 操作参数 */
102
117
  args?: Record<string, unknown>;
103
118
  /**
104
119
  * 系统/受信源(如 scheduler,无人能点交互确认):仍走 authorize 评估调用者能力,**不**绕过它(防提权)。
105
- * 被拒时不走救援闸(isPreApproved);已授权时跳过非 always 的确认,always 照常确认。
120
+ * 已授权时跳过非 always 的确认,always 照常确认;只对参与者都是 owner 的回合生效。
106
121
  */
107
122
  skipConfirm?: boolean;
108
- /** 调用方回合的中止信号:守卫把它透传给 requestAccess,中止后不再等确认(见 AccessRequest.signal)。 */
123
+ /** 调用所在回合的 id(工具调用由 agent 工具循环填写);审批随回合结束撤销 */
124
+ turnId?: string;
125
+ /** 这次工具调用的 id(同 ToolCallContext.callId);审批卡据它挂到工具卡上 */
126
+ callId?: string;
127
+ /** 调用所在的入站回合;缺省 = 调用不在由入站消息驱动的回合里(编排的节点、mcp-server 等) */
128
+ inbound?: InboundTurn;
129
+ /**
130
+ * 向发出者本人核对意图(指令用):调用方能在同一会话里当面问到发出者时提供,resolve true 为发出者确认。
131
+ * 需要确认的指令没有它(定时任务、编排注入的指令)就无从确认,按拒绝处理
132
+ */
133
+ confirmIntent?: () => Promise<boolean>;
134
+ /** 调用方回合的中止信号:守卫等审批期间回合中止,审批即撤销 */
109
135
  signal?: AbortSignal;
136
+ /**
137
+ * 取用判定(工具执行中经工具调用上下文的 approveFor 交来):给了即按它对每个参与者判、代替等级裁决,三分同等级裁决;
138
+ * 确认在这次调用开始时已经判过,不再判
139
+ */
140
+ check?: (who: UserIdentity) => Verdict;
110
141
  }
111
142
  /**
112
- * 执行守卫函数。返回 null 放行;返回 string 拦截(值为原因/提示)。
113
- * 由 plugin-authority 通过 setExecutionGuard() 注入。
143
+ * 一次判定:放行,或带一句原因拒绝(原因可以是文字对象,指令一路作为回复交给发出者、由出口按读者语言渲染,工具一路交给模型、
144
+ * 取 toSource)。执行守卫经审批放行的带回批的人 by
145
+ */
146
+ export type Verdict = {
147
+ ok: true;
148
+ by?: UserIdentity;
149
+ } | {
150
+ ok: false;
151
+ reason: string | TextRef;
152
+ };
153
+ /** 判发起回合的类别与主体要的信息:执行守卫上下文的这几项,调用方按同样的口径填(由入站消息拼时用 {@link originTurnOf}) */
154
+ export type OriginTurn = Pick<ExecutionGuardContext, 'sessionId' | 'platform' | 'userId' | 'participants' | 'inbound'>;
155
+ /** 是不是同一个参与者:身份相同,或两边都是 owner(owner 的各个身份算一个参与者;isOwner 不给时只按字面身份) */
156
+ export declare function sameParticipant(a: UserIdentity, b: UserIdentity, isOwner?: (platform: string, userId: string) => boolean): boolean;
157
+ /**
158
+ * 由一轮的输入拼这一轮,拼一轮的唯一函数:agent 据它填工具调用上下文,调用方不各自拼。
159
+ * - 参与者:各条输入的授权身份(actor,没有时是发言者,没有发言者的是无主体;插话不带 actor,就是发言者),带起它的那一轮的
160
+ * 注入取那一轮的参与者;按进入先后排、按身份去重,owner 的各个身份算一个参与者、取最先进来的那一个(isOwner 不给时按字面
161
+ * 身份)。历史里别人的话、引用与转发进某条输入的内容都不另算
162
+ * - 发言者:各条输入的物理发言者相同时是他,不同时没有;缺省时取起它的那一轮的(续做的通知不带发言者,工具眼里是起它的人在调)
163
+ * - 入站回合:来源与起它的那一轮取第一条(同一轮的输入来源相同,带来源的注入各自成一轮),平台消息 id 取最近一条
164
+ */
165
+ export declare function originTurnOf(inputs: readonly [IncomingMessage, ...IncomingMessage[]], isOwner?: (platform: string, userId: string) => boolean): OriginTurn;
166
+ /**
167
+ * 执行守卫函数。经审批放行的带回批的人 by:工具一路这次调用按他执行(指令一路的参与者只有发出者,不会有)。
168
+ * 由 plugin-authority 通过 setExecutionGuard() 注入,停用时摘掉。
114
169
  */
115
- export type ExecutionGuard = (ctx: ExecutionGuardContext) => Promise<string | null>;
170
+ export type ExecutionGuard = (ctx: ExecutionGuardContext) => Promise<Verdict>;
116
171
  /**
117
172
  * 能力统一闸请求:一次敏感操作在边界处声明它触达的能力。
118
173
  *
119
174
  * tools / commands 的执行守卫在操作边界调用 authorize 过这道闸。
120
175
  */
121
176
  export interface AuthorizeRequest {
122
- /** 操作主能力(tool:<name> / command:<name>) */
177
+ /** 操作主能力(tool:<name> / command:<name> / setting:<实例 id>/<键>) */
123
178
  capability: CapabilityId;
124
179
  /** 主能力的默认可见性(操作声明;无 risk 时据它兜底 minLevel) */
125
180
  visibility: CapabilityVisibility;
126
181
  /** 操作原始风险(透传,供 minLevel 派生;缺省回退 visibility) */
127
182
  risk?: CapabilityRisk;
128
- }
129
- /**
130
- * 访问请求:操作已过授权、但声明了 confirm 时,经 requestAccess 发起意图确认;
131
- * 守卫的救援闸 isPreApproved 也用它描述被 authorize 拒绝的操作。
132
- */
133
- export interface AccessRequest {
134
- /** 操作名称 */
135
- name: string;
136
- /** 操作类型 */
137
- type: 'command' | 'tool';
138
- /** 触达的(受限)能力 */
139
- capability: CapabilityId;
140
- args?: Record<string, unknown>;
141
- sessionId: string;
142
- platform: string;
143
- userId?: string;
144
- /**
145
- * 操作的生效确认要求(见 CapabilityConfirm):
146
- * - 'session':可按会话记住,白名单与本会话已有的授予可免问。
147
- * - 'always':每次都问,不接受白名单与会话记忆。
148
- */
149
- confirm?: CapabilityConfirm;
150
183
  /**
151
- * 发起回合的中止信号(可选)。已中止即不问直接拒;等待应答期间中止则立即拒,
152
- * 确认通道应据此撤回未决提示。第三方 authority / 通道实现可忽略该字段(退化为等应答)。
184
+ * 操作自己声明的最低等级(如会话设置项按字段声明的门槛),压过 risk 与 visibility 的派生、让位于 config.authorityOverrides;
185
+ * Number.POSITIVE_INFINITY 即只有 owner
153
186
  */
154
- signal?: AbortSignal;
155
- }
156
- /** 批准后授予的临时委托范围:once 不持久;session 为当前会话短时授予 */
157
- export interface TemporaryGrantSpec {
158
- scope: 'once' | 'session';
159
- /** 授予秒数,仅 scope=session 时有效 */
160
- durationSeconds?: number;
161
- /** 最大使用次数,仅 scope=session 时有效 */
162
- maxUses?: number;
187
+ minLevel?: number;
188
+ /** 被裁决的工具所属的工具分组(工具一路由执行器填,指令没有):权限组的 `tool-group:` 条目按它覆盖,权限服务不反查工具表 */
189
+ toolGroups?: readonly string[];
163
190
  }
164
- export interface AccessDecision {
165
- allowed: boolean;
166
- grant?: TemporaryGrantSpec;
167
- }
168
- /** 一条生效中的临时能力委托 */
169
- export interface TemporaryGrant {
170
- id: string;
171
- capability: CapabilityId;
172
- name: string;
173
- type: 'command' | 'tool';
174
- sessionId: string;
175
- platform: string;
176
- userId?: string;
177
- expiresAt: number;
178
- maxUses?: number;
179
- used: number;
180
- createdAt: number;
181
- }
182
- /** 确认回调:boolean 为最简允许/拒绝;对象可附带临时委托范围 */
183
- export type AccessConfirmHandler = (request: AccessRequest) => Promise<boolean | AccessDecision>;
184
191
  /** 跨平台用户身份标识 */
185
192
  export interface UserIdentity {
186
193
  platform: string;
@@ -200,39 +207,47 @@ export interface AuthorityUserEntry {
200
207
  export interface AuthorityService {
201
208
  /** 是否为 owner(owners 配置命中 → 拥有 `*`) */
202
209
  isOwner(platform: string, userId?: string): boolean;
210
+ /**
211
+ * owner 在这个平台登记的账号:配置 owners 里这个平台的第一个,没有时为 undefined。本机控制台(webui、cli 的 console)
212
+ * 恒为 owner,但不是登记的账号,不算
213
+ */
214
+ ownerOn(platform: string): UserIdentity | undefined;
215
+ /**
216
+ * 这一轮从哪里来(契约见 api-approval 的 OriginKind):只看消息事实(来源、起它的那一轮、授权身份有没有账号),
217
+ * 不看会话类型与受众,不判是不是 owner,不按授权身份判。能不能产生审批由审批服务按类别与参与者判
218
+ */
219
+ originOf(turn: OriginTurn): OriginKind;
220
+ /**
221
+ * 这一轮的主体,定本地效果:类别为 hand 且参与者(授权身份)都是 owner 的为 owner;续做与子任务的类别沿 fromTurn 随起它的
222
+ * 那一轮,参与者是那一轮交来的(批过的调用是批的人);其余为 other(owner 与别人同在的一轮也是)。消费方不自己读受众
223
+ */
224
+ principalOf(turn: OriginTurn): 'owner' | 'other';
203
225
  /**
204
226
  * 统一权限闸 —— tools / commands 的执行守卫在操作边界调用本方法。
205
- * 数字等级裁决:deniedCapabilities(全局硬禁) > owner(∞) > 用户 level >= 操作 minLevel;
206
- * minLevel 由 request.risk/visibility/config.authorityOverrides 派生。
207
- * @returns null 放行;string 为拒绝原因(可直接展示)
227
+ * 裁决:deniedCapabilities(全局硬禁) > owner(∞) > 封禁(level < 0)> 用户 level >= 操作 minLevel > 所属权限组覆盖;
228
+ * minLevel 取 config.authorityOverrides,没有时取 request.minLevel,再没有时由 request.risk/visibility 派生,组的放行条目取自
229
+ * config.authorityGroups。门槛为只有 owner 时拒绝语写「只有 owner 能改」,不写 Infinity。
230
+ * @returns null 放行;否则为拒绝原因,可以是文字对象(读法同 {@link ExecutionGuard} 的返回值)
208
231
  */
209
232
  authorize(identity: UserIdentity | {
210
233
  platform: string;
211
234
  userId?: string;
212
- }, request: AuthorizeRequest): string | null;
235
+ }, request: AuthorizeRequest): string | TextRef | null;
213
236
  /**
214
- * 设置 target 外部身份的等级(覆盖式整数;level=0 默认值且无备注则清记录)。
237
+ * 这个身份的等级够不够 minLevel:owner 恒过,封禁(等级为负数)恒不过,其余登记等级不低于 minLevel 才过;minLevel 为
238
+ * Number.POSITIVE_INFINITY 即只有 owner。不看能力、权限组与硬禁(那些归 authorize),给按层固定的门槛用
239
+ */
240
+ meetsLevel(identity: UserIdentity | {
241
+ platform: string;
242
+ userId?: string;
243
+ }, minLevel: number): boolean;
244
+ /**
245
+ * 设置 target 外部身份的等级(覆盖式整数;level=0 默认值且记录里没有备注等别的内容则清记录)。
215
246
  * 单 owner 终态:权限只由 owner 管理。调用方(WebUI action / CLI 指令)自行确保仅 owner 可达(防自授)。
216
247
  */
217
248
  setUserLevel(target: UserIdentity, level: number): void;
218
249
  /** 删除用户记录(等级一并清除,回退默认 0) */
219
250
  removeUser(platform: string, userId: string): void;
220
- /**
221
- * 「未授权」分支专用闸:请求是否被 owner 预先放行(restrictedPolicy 白名单 / 该用户在本会话已有授予),
222
- * 且不触犯硬禁 / 资源保护。**绝不询问发起者本人**(杜绝自我确认提权)。守卫 authorize 拒绝后调本方法。
223
- */
224
- isPreApproved(request: AccessRequest): boolean;
225
- /** 意图确认:操作已过授权、但声明了 confirm 时调用(白名单策略 → 会话临时授予 → 确认回调;confirm='always' 只走确认回调) */
226
- requestAccess(request: AccessRequest): Promise<boolean>;
227
- listTemporaryGrants(): TemporaryGrant[];
228
- /** 撤销某能力上所有未过期的会话授予(操作门槛变更时调用),返回撤销条数 */
229
- revokeGrantsOfCapability(capability: string): number;
230
- revokeTemporaryGrant(id: string): boolean;
231
- /**
232
- * 注册平台确认通道('*' 为兜底)。返回注销函数——注册方 dispose 时必须调用,
233
- * 否则插件卸载后 authority 仍会把确认请求投给已死的 handler,等到超时才拒。
234
- */
235
- setConfirmHandler(platform: string, handler: AccessConfirmHandler): () => void;
236
251
  save(): void;
237
252
  listUsers(): AuthorityUserEntry[];
238
253
  }
@@ -243,18 +258,19 @@ declare module '@aalis/api-host-config' {
243
258
  /** 全局能力封禁(glob):命中即拒,连 owner 都压过(系统级硬禁用,慎用)。 */
244
259
  deniedCapabilities?: string[];
245
260
  /**
246
- * 管理员对单条操作的最低等级覆盖(能力键 `type:name`,如 `tool:weather` → 任意整数)。
261
+ * 管理员对单条操作的最低等级覆盖(能力键 `type:name`,如 `tool:weather`、`setting:<实例 id>/<键>` → 任意整数)。
247
262
  * 让 owner 调某操作的门槛等级,无需改插件声明;优先于 risk/visibility 派生。
248
263
  */
249
264
  authorityOverrides?: Record<string, number>;
250
265
  /**
251
266
  * 管理员对单条操作的确认要求覆盖(能力键 `type:name` → session/always/off)。
252
- * 'off' 强制关闭确认(即便插件声明了 confirm,便于自动化);与等级正交,owner 也吃。
267
+ * 'off' 关闭确认(即便插件声明了 confirm,便于自动化),只对参与者都是 owner 的回合生效,有别人的回落到插件声明;
268
+ * 与等级正交。
253
269
  */
254
270
  confirmOverrides?: Record<string, CapabilityConfirm | 'off'>;
255
271
  /**
256
- * 受限能力的临时放行策略(替代旧 dangerousPolicy):
257
- * allow 列出自动放行的 restricted 能力/操作名 glob(['*'] 全放);duration 放行时长(秒,0=永久)。
272
+ * 免确认白名单:allow 列出不必确认的能力 glob(['*'] 全放);duration 生效时长(秒,0=永久)。
273
+ * 只免 confirm 为 session 的确认,always 照常确认;只对参与者都是 owner 的回合生效;不放宽授权,等级不够、所属组也不覆盖的照样拒。
258
274
  * 运行时启用时点(enabledAt)不持久化,是 plugin-authority 运行时状态。
259
275
  */
260
276
  restrictedPolicy?: {
@@ -262,23 +278,29 @@ declare module '@aalis/api-host-config' {
262
278
  duration?: number;
263
279
  };
264
280
  /**
265
- * auto 确认模式(owner 临时免 dangerous 二次确认,便于批处理;类 Claude Code auto):
266
- * epoch ms 截止时间;-1=一直;0/缺省=关。仅跳过 owner 自己的 session 确认,不动等级/deny,always 不跳。
281
+ * 权限组:组名 → 放行条目。条目写成 `tool:<名或通配>`、`command:<名或通配>`(通配同 deniedCapabilities)或
282
+ * `tool-group:<工具分组名>`(工具的分组里有它即覆盖);裸 `*` 与别的前缀不命中任何操作。组只加放行:等级不够的操作,
283
+ * 所属组里有一条覆盖它即放行;硬禁与封禁照旧先拒,确认照旧。成员记在实现的用户数据里,指向没定义的组不放行。
267
284
  */
268
- autoConfirmUntil?: number;
285
+ authorityGroups?: Record<string, string[]>;
269
286
  /**
270
- * 网络出口闸(SSRF 防护,粗粒度高效):限制由 LLM/用户 URL 触发的 safeFetch 能连到哪。
287
+ * 网络出口闸(SSRF 防护,粗粒度高效):限制由 LLM/用户 URL 触发的出口能连到哪,即 safeFetch,
288
+ * 以及 tool-browser 开启 blockPrivate 时的浏览器网络闸(三项都遵循)。
271
289
  * 不影响你自己配置的固定本地服务(ollama/onebot daemon 走裸 fetch,不过 safeFetch)。
290
+ * 改了即时生效;写错一处时经出网闸的请求一律拒绝,直到改对。
272
291
  */
273
292
  network?: {
274
293
  /** 拦私网/回环/链路本地/元数据段(默认 true)。 */
275
294
  blockPrivate?: boolean;
276
- /** 额外拒绝的 IPv4 CIDR,如 ["100.64.0.0/10"]。 */
295
+ /**
296
+ * 额外拒绝的网段:IPv4 或 IPv6,写成「地址/前缀长度」或单个地址,如 ["100.64.0.0/10", "fd00::/8"];
297
+ * IPv4 网段同样管 IPv4 映射与 NAT64 写法。
298
+ */
277
299
  denyCidrs?: string[];
278
- /** 仅允许这些目标端口(非空生效),如 [80, 443]。 */
300
+ /** 仅允许这些目标端口(1 到 65535 的整数,非空生效),如 [80, 443]。 */
279
301
  allowedPorts?: number[];
280
302
  };
281
303
  }
282
304
  }
283
- export declare const authority: import("@aalis/core").ServiceDescriptor<AuthorityService, import("@aalis/core").ServiceRef<AuthorityService>>;
305
+ export declare const authority: import("@aalis/core").ServiceDescriptor<AuthorityService, AuthorityService>;
284
306
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { defineService } from '@aalis/core';
2
+ import { oneSpeaker } from '@aalis/schema-message';
2
3
  const RISK_DEFAULTS = {
3
4
  safe: { visibility: 'public' },
4
5
  sensitive: { visibility: 'restricted' },
@@ -49,6 +50,41 @@ export function resolveCapabilityPolicy(decl, defaultVisibility = 'public') {
49
50
  confirm: decl.confirm ?? base.confirm,
50
51
  };
51
52
  }
52
- // ----- 服务描述符(按激活绑定;调用型:绑定接口是 ServiceRef)-----
53
+ /** 是不是同一个参与者:身份相同,或两边都是 owner(owner 的各个身份算一个参与者;isOwner 不给时只按字面身份) */
54
+ export function sameParticipant(a, b, isOwner) {
55
+ if (a.platform === b.platform && a.userId === b.userId)
56
+ return true;
57
+ return Boolean(isOwner?.(a.platform, a.userId) && isOwner(b.platform, b.userId));
58
+ }
59
+ /**
60
+ * 由一轮的输入拼这一轮,拼一轮的唯一函数:agent 据它填工具调用上下文,调用方不各自拼。
61
+ * - 参与者:各条输入的授权身份(actor,没有时是发言者,没有发言者的是无主体;插话不带 actor,就是发言者),带起它的那一轮的
62
+ * 注入取那一轮的参与者;按进入先后排、按身份去重,owner 的各个身份算一个参与者、取最先进来的那一个(isOwner 不给时按字面
63
+ * 身份)。历史里别人的话、引用与转发进某条输入的内容都不另算
64
+ * - 发言者:各条输入的物理发言者相同时是他,不同时没有;缺省时取起它的那一轮的(续做的通知不带发言者,工具眼里是起它的人在调)
65
+ * - 入站回合:来源与起它的那一轮取第一条(同一轮的输入来源相同,带来源的注入各自成一轮),平台消息 id 取最近一条
66
+ */
67
+ export function originTurnOf(inputs, isOwner) {
68
+ const [first] = inputs;
69
+ const { sessionId, platform, source, fromTurn } = first;
70
+ const participants = [];
71
+ for (const message of inputs) {
72
+ const identities = message.fromTurn?.participants ?? [
73
+ message.actor ?? { platform: message.platform, userId: message.userId ?? '' },
74
+ ];
75
+ for (const who of identities) {
76
+ if (!participants.some(seen => sameParticipant(seen, who, isOwner)))
77
+ participants.push(who);
78
+ }
79
+ }
80
+ return {
81
+ sessionId,
82
+ platform,
83
+ userId: oneSpeaker(inputs) ? (first.userId ?? fromTurn?.userId) : undefined,
84
+ participants,
85
+ inbound: { source, fromTurn, messageId: inputs[inputs.length - 1].messageId },
86
+ };
87
+ }
88
+ // ----- 服务描述符(调用型:业务层就是提供者的形状)-----
53
89
  export const authority = defineService('authority');
54
90
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAqD5C,MAAM,aAAa,GAA8F;IAC/G,IAAI,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE;IAC9B,SAAS,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE;IACvC,SAAS,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE;CAC5D,CAAC;AAEF,oBAAoB;AACpB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC;AACnC,yDAAyD;AACzD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAElC;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAkE;IACnG,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO,CAAC,CAAC;IACxC,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO,CAAC,CAAC;IACxC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,iBAAiB,CAAC;IACnD,OAAO,IAAI,CAAC,UAAU,KAAK,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,iBAAiB,CAAC;AACjF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,IAAqB;IAIhD,OAAO,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACzC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CACrC,IAA0B,EAC1B,oBAA0C,QAAQ;IAKlD,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,OAAO;QACL,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,IAAI,iBAAiB;QACnE,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;KACtC,CAAC;AACJ,CAAC;AA2PD,+CAA+C;AAC/C,MAAM,CAAC,MAAM,SAAS,GAAG,aAAa,CAAmB,WAAW,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aalis/api-authority",
3
- "version": "0.10.0",
3
+ "version": "0.12.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -19,15 +19,18 @@
19
19
  "dist"
20
20
  ],
21
21
  "dependencies": {
22
- "@aalis/api-host-config": ">=0.1.0 <1.0.0"
22
+ "@aalis/api-approval": ">=0.2.0 <1.0.0",
23
+ "@aalis/api-host-config": ">=0.3.0 <1.0.0",
24
+ "@aalis/schema-i18n": ">=0.1.0 <1.0.0",
25
+ "@aalis/schema-message": ">=0.11.0 <1.0.0"
23
26
  },
24
27
  "devDependencies": {
25
28
  "@types/node": "^22.0.0",
26
29
  "typescript": "^5.7.0",
27
- "@aalis/core": "0.18.0"
30
+ "@aalis/core": "0.21.0"
28
31
  },
29
32
  "peerDependencies": {
30
- "@aalis/core": ">=0.18.0 <1.0.0"
33
+ "@aalis/core": ">=0.21.0 <1.0.0"
31
34
  },
32
35
  "keywords": [
33
36
  "aalis",