@aalis/plugin-trigger-policy 0.11.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.
@@ -1,5 +1,8 @@
1
- import type { Context } from '@aalis/core';
1
+ import type { PersonaService } from '@aalis/api-persona';
2
+ import type { ServiceRef } from '@aalis/core';
2
3
  import type { TriggerPolicyConfig } from './config.js';
4
+ /** 名字检测只在调用的那一刻读当前 persona 提供者,不建立跟随状态,因此只需要这一面 */
5
+ export type PersonaRef = Pick<ServiceRef<PersonaService>, 'current'>;
3
6
  /**
4
7
  * @ 检测:只认 `<at self>` 标记。
5
8
  *
@@ -8,8 +11,8 @@ import type { TriggerPolicyConfig } from './config.js';
8
11
  * @ 判定,须同样把提及渲染成 `<at self …>`——本函数只认这一种文法。
9
12
  */
10
13
  export declare function checkImmediateMention(content: string): boolean;
11
- export declare function getBotNames(ctx: Context, cfg: TriggerPolicyConfig): string[];
14
+ export declare function getBotNames(persona: PersonaRef, cfg: TriggerPolicyConfig): string[];
12
15
  export declare function checkNameMention(content: string, names: string[]): boolean;
13
- export declare function checkImmediateTrigger(ctx: Context, cfg: TriggerPolicyConfig, content: string): boolean;
14
- export declare function checkMuteKeyword(_ctx: Context, cfg: TriggerPolicyConfig, content: string): boolean;
16
+ export declare function checkImmediateTrigger(persona: PersonaRef, cfg: TriggerPolicyConfig, content: string): boolean;
17
+ export declare function checkMuteKeyword(cfg: TriggerPolicyConfig, content: string): boolean;
15
18
  //# sourceMappingURL=detector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"detector.d.ts","sourceRoot":"","sources":["../src/detector.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAKvD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,mBAAmB,GAAG,MAAM,EAAE,CAY5E;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAK1E;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAItG;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAKlG"}
1
+ {"version":3,"file":"detector.d.ts","sourceRoot":"","sources":["../src/detector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAKvD,mDAAmD;AACnD,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,SAAS,CAAC,CAAC;AAErE;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,mBAAmB,GAAG,MAAM,EAAE,CAYnF;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAK1E;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAI7G;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAKnF"}
package/dist/detector.js CHANGED
@@ -1,5 +1,3 @@
1
- // PersonaService 仅用于 getBotNames(读取昵称/名字)。mute 关键词统一由 trigger-policy 下发配置,
2
- // 不再从 persona 读取(避免单例 PersonaService 跨平台泄漏)。
3
1
  /**
4
2
  * @ 检测:只认 `<at self>` 标记。
5
3
  *
@@ -10,14 +8,14 @@
10
8
  export function checkImmediateMention(content) {
11
9
  return /<at self[\s>][\s\S]*?<\/at>/.test(content);
12
10
  }
13
- export function getBotNames(ctx, cfg) {
11
+ export function getBotNames(persona, cfg) {
14
12
  const names = [...cfg.triggerNames];
15
- const persona = ctx.getService('persona');
16
- if (persona) {
17
- const personaName = persona.getPersonaName?.();
13
+ const service = persona.current;
14
+ if (service) {
15
+ const personaName = service.getPersonaName?.();
18
16
  if (personaName && !names.includes(personaName))
19
17
  names.push(personaName);
20
- const nicks = persona.getNickNames?.() ?? [];
18
+ const nicks = service.getNickNames?.() ?? [];
21
19
  for (const n of nicks) {
22
20
  if (n && !names.includes(n))
23
21
  names.push(n);
@@ -32,14 +30,14 @@ export function checkNameMention(content, names) {
32
30
  }
33
31
  return false;
34
32
  }
35
- export function checkImmediateTrigger(ctx, cfg, content) {
33
+ export function checkImmediateTrigger(persona, cfg, content) {
36
34
  if (cfg.triggerOnAt && checkImmediateMention(content))
37
35
  return true;
38
- if (checkNameMention(content, getBotNames(ctx, cfg)))
36
+ if (checkNameMention(content, getBotNames(persona, cfg)))
39
37
  return true;
40
38
  return false;
41
39
  }
42
- export function checkMuteKeyword(_ctx, cfg, content) {
40
+ export function checkMuteKeyword(cfg, content) {
43
41
  for (const kw of cfg.muteKeywords) {
44
42
  if (content.includes(kw))
45
43
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"detector.js","sourceRoot":"","sources":["../src/detector.ts"],"names":[],"mappings":"AAIA,2EAA2E;AAC3E,6CAA6C;AAE7C;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,OAAO,6BAA6B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAY,EAAE,GAAwB;IAChE,MAAM,KAAK,GAAG,CAAC,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAiB,SAAS,CAAC,CAAC;IAC1D,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;QAC/C,IAAI,WAAW,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzE,MAAM,KAAK,GAAG,OAAO,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC;QAC7C,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,KAAe;IAC/D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;IAClD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAAY,EAAE,GAAwB,EAAE,OAAe;IAC3F,IAAI,GAAG,CAAC,WAAW,IAAI,qBAAqB,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IACnE,IAAI,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAClE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAa,EAAE,GAAwB,EAAE,OAAe;IACvF,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;QAClC,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAAE,OAAO,IAAI,CAAC;IACxC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"detector.js","sourceRoot":"","sources":["../src/detector.ts"],"names":[],"mappings":"AAUA;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,OAAO,6BAA6B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAmB,EAAE,GAAwB;IACvE,MAAM,KAAK,GAAG,CAAC,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAChC,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;QAC/C,IAAI,WAAW,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzE,MAAM,KAAK,GAAG,OAAO,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC;QAC7C,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,KAAe;IAC/D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;IAClD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAAmB,EAAE,GAAwB,EAAE,OAAe;IAClG,IAAI,GAAG,CAAC,WAAW,IAAI,qBAAqB,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IACnE,IAAI,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACtE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAwB,EAAE,OAAe;IACxE,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;QAClC,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAAE,OAAO,IAAI,CAAC;IACxC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,21 +1,17 @@
1
- import type { Context } from '@aalis/core';
2
- import type { ConfigSchema } from '@aalis/schema-config';
1
+ import type { TriggerPolicyService } from './types.js';
3
2
  export type { TriggerDecision, TriggerKind, TriggerPolicyService } from './types.js';
4
3
  import { type TriggerPolicyConfig } from './config.js';
5
- export declare const name = "@aalis/plugin-trigger-policy";
6
- export declare const displayName = "\u89E6\u53D1\u7B56\u7565";
7
- export declare const subsystem = "scheduler";
8
- export declare const provides: string[];
9
- export declare const inject: {
10
- required: string[];
11
- optional: string[];
12
- };
13
- export declare const configSchema: ConfigSchema;
14
- export declare function apply(ctx: Context, raw: Record<string, unknown>): void;
4
+ export declare const triggerPolicy: import("@aalis/core").ServiceDescriptor<TriggerPolicyService, import("@aalis/core").ServiceRef<TriggerPolicyService>>;
5
+ declare const _default: import("@aalis/core").PluginDefinition<{
6
+ logger: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Logger, import("@aalis/core").Logger>;
7
+ hooks: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Hooks, import("@aalis/core").Hooks>;
8
+ config: import("@aalis/core").ServiceDescriptor<(identity: symbol) => Readonly<Record<string, unknown>>, Readonly<Record<string, unknown>>>;
9
+ provide: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Provide, import("@aalis/core").Provide>;
10
+ gateway: import("@aalis/core").ServiceDescriptor<import("@aalis/api-gateway").GatewayService, import("@aalis/core").ServiceRef<import("@aalis/api-gateway").GatewayService>>;
11
+ flowControl: import("@aalis/core/dist/composition/descriptors.js").OptionalUse<import("@aalis/api-flow-control").FlowControlService, import("@aalis/core").ServiceRef<import("@aalis/api-flow-control").FlowControlService>>;
12
+ persona: import("@aalis/core/dist/composition/descriptors.js").OptionalUse<import("@aalis/api-persona").PersonaService, import("@aalis/core").ServiceRef<import("@aalis/api-persona").PersonaService>>;
13
+ messageArchive: import("@aalis/core/dist/composition/descriptors.js").OptionalUse<import("@aalis/api-message-archive").MessageArchiveService, import("@aalis/core").ServiceRef<import("@aalis/api-message-archive").MessageArchiveService>>;
14
+ }>;
15
+ export default _default;
15
16
  export type { TriggerPolicyConfig };
16
- declare module '@aalis/core' {
17
- interface ServiceTypeMap {
18
- 'trigger-policy': import('./types.js').TriggerPolicyService;
19
- }
20
- }
21
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAIzD,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGrF,OAAO,EAKL,KAAK,mBAAmB,EACzB,MAAM,aAAa,CAAC;AAKrB,eAAO,MAAM,IAAI,iCAAiC,CAAC;AACnD,eAAO,MAAM,WAAW,6BAAS,CAAC;AAClC,eAAO,MAAM,SAAS,cAAc,CAAC;AACrC,eAAO,MAAM,QAAQ,UAAqB,CAAC;AAC3C,eAAO,MAAM,MAAM;;;CAGlB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,YA8D1B,CAAC;AAIF,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAqJtE;AAED,YAAY,EAAE,mBAAmB,EAAE,CAAC;AAGpC,OAAO,QAAQ,aAAa,CAAC;IAC3B,UAAU,cAAc;QACtB,gBAAgB,EAAE,OAAO,YAAY,EAAE,oBAAoB,CAAC;KAC7D;CACF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAmB,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAExE,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAErF,OAAO,EAKL,KAAK,mBAAmB,EACzB,MAAM,aAAa,CAAC;AAsErB,eAAO,MAAM,aAAa,uHAAwD,CAAC;;;;;;;;;;;AAiBnF,wBAQG;AA0JH,YAAY,EAAE,mBAAmB,EAAE,CAAC"}
package/dist/index.js CHANGED
@@ -1,17 +1,13 @@
1
+ import { flowControl } from '@aalis/api-flow-control';
2
+ import { gateway, INBOUND_PHASE } from '@aalis/api-gateway';
3
+ import { messageArchive } from '@aalis/api-message-archive';
4
+ import { persona } from '@aalis/api-persona';
5
+ import { config, definePlugin, defineService, hooks, logger, optional, provide } from '@aalis/core';
1
6
  import { selfInitiatedActor, WellKnownNoticeTypes } from '@aalis/schema-message';
2
- import { INBOUND_PHASE } from '@aalis/api-gateway';
3
7
  import { defaultTriggerPolicyConfig, isScopeEnabled, resolveEffectiveConfig, resolveTriggerPolicyConfig, } from './config.js';
4
8
  import { checkImmediateTrigger, checkMuteKeyword, getBotNames } from './detector.js';
5
9
  // ----- 元数据 -----
6
- export const name = '@aalis/plugin-trigger-policy';
7
- export const displayName = '触发策略';
8
- export const subsystem = 'scheduler';
9
- export const provides = ['trigger-policy'];
10
- export const inject = {
11
- required: ['gateway'],
12
- optional: ['flow-control', 'persona', 'message-archive'],
13
- };
14
- export const configSchema = {
10
+ const configSchema = {
15
11
  scopes: {
16
12
  type: 'multiselect',
17
13
  label: '生效作用域',
@@ -73,9 +69,32 @@ export const configSchema = {
73
69
  },
74
70
  },
75
71
  };
72
+ // ----- 服务描述符(按激活绑定;调用型:绑定接口是 ServiceRef)-----
73
+ export const triggerPolicy = defineService('trigger-policy');
76
74
  // ----- 入口 -----
77
- export function apply(ctx, raw) {
78
- const cfg = resolveTriggerPolicyConfig(raw);
75
+ const uses = {
76
+ logger,
77
+ hooks,
78
+ config,
79
+ provide,
80
+ gateway,
81
+ // 缺席时按"无状态即放行"评估;归档缺席则被吞掉的消息不进档,判定照常
82
+ flowControl: optional(flowControl),
83
+ persona: optional(persona),
84
+ messageArchive: optional(messageArchive),
85
+ };
86
+ export default definePlugin({
87
+ name: '@aalis/plugin-trigger-policy',
88
+ displayName: '触发策略',
89
+ subsystem: 'scheduler',
90
+ configSchema,
91
+ provides: [triggerPolicy],
92
+ uses,
93
+ apply: run,
94
+ });
95
+ function run(caps) {
96
+ const { logger, hooks, provide, persona, flowControl, messageArchive } = caps;
97
+ const cfg = resolveTriggerPolicyConfig(caps.config);
79
98
  /** 从 IncomingMessage 派生 per-scope override 用的 targetId(群=groupId / 私=userId / 其他=空) */
80
99
  function extractTargetId(message) {
81
100
  if (message.sessionType === 'group')
@@ -86,14 +105,14 @@ export function apply(ctx, raw) {
86
105
  }
87
106
  /** 把"被策略吞掉"的入站消息归档(与 flow-control 的 shadow 归档对齐) */
88
107
  async function shadowArchive(message) {
89
- const archive = ctx.getService('message-archive');
108
+ const archive = messageArchive.current;
90
109
  if (!archive)
91
110
  return;
92
111
  try {
93
112
  await archive.archiveIncoming(message);
94
113
  }
95
114
  catch (err) {
96
- ctx.logger.warn(`[trigger] shadow 归档失败: ${err}`);
115
+ logger.warn(`[trigger] shadow 归档失败: ${err}`);
97
116
  }
98
117
  }
99
118
  const service = {
@@ -116,10 +135,10 @@ export function apply(ctx, raw) {
116
135
  return { kind: 'immediate', reason: 'poke notice' };
117
136
  }
118
137
  }
119
- else if (checkImmediateTrigger(ctx, eff, message.content)) {
138
+ else if (checkImmediateTrigger(persona, eff, message.content)) {
120
139
  return { kind: 'immediate', reason: '@/name match' };
121
140
  }
122
- const flow = ctx.getService('flow-control');
141
+ const flow = flowControl.current;
123
142
  const snap = flow?.getStateSnapshot(message.sessionId);
124
143
  if (!snap) {
125
144
  return { kind: 'interval', reason: 'no flow state, default-pass' };
@@ -143,25 +162,25 @@ export function apply(ctx, raw) {
143
162
  : { kind: 'swallow', reason: 'below threshold' };
144
163
  },
145
164
  getBotNames() {
146
- return getBotNames(ctx, cfg);
165
+ return getBotNames(persona, cfg);
147
166
  },
148
167
  detectMuteKeyword(content) {
149
- return checkMuteKeyword(ctx, cfg, content);
168
+ return checkMuteKeyword(cfg, content);
150
169
  },
151
170
  };
152
- ctx.provide('trigger-policy', service);
153
- ctx.logger.info(`[trigger] 已启用 (模式=${cfg.intervalMode}, @提及=${cfg.triggerOnAt}, ` +
171
+ provide(triggerPolicy, service);
172
+ logger.info(`[trigger] 已启用 (模式=${cfg.intervalMode}, @提及=${cfg.triggerOnAt}, ` +
154
173
  `别名=${cfg.triggerNames.length}, mute关键词=${cfg.muteKeywords.length}, ` +
155
174
  `mute时长=${cfg.muteTimeSeconds}s, scopes=${cfg.scopes.join('|') || '<空>'}, ` +
156
175
  `overrides=${cfg.overrides.length})`);
157
176
  // ===== inbound:trigger 相位:触发判定 =====
158
177
  // 由 plugin-gateway 在 inbound:flow 之后、inbound:dispatch 之前触发。
159
178
  // 进入本相位意味着已通过冷却/限速闸门。
160
- ctx.middleware(INBOUND_PHASE.TRIGGER, async (data, next) => {
179
+ hooks.middleware(INBOUND_PHASE.TRIGGER, async (data, next) => {
161
180
  const { message } = data;
162
181
  if (message.source === 'idle-trigger')
163
182
  return next(); // 内部注入跳过策略
164
- const flow = ctx.getService('flow-control');
183
+ const flow = flowControl.current;
165
184
  const tid = extractTargetId(message);
166
185
  // 不在触发策略作用域内(默认 *:group):直接放行。
167
186
  // 必须在 mute 检查之前进行,否则 QQ 群的 mute 关键词会泄漏到 WebUI/私聊等不在 scope 内的会话。
@@ -170,8 +189,8 @@ export function apply(ctx, raw) {
170
189
  }
171
190
  const eff = resolveEffectiveConfig(cfg, message.platform, message.sessionType, tid);
172
191
  // mute 关键词命中:设置自禁言并 swallow
173
- if (checkMuteKeyword(ctx, eff, message.content)) {
174
- ctx.logger.info(`[trigger] mute 关键词命中 → swallow + setMuted(${eff.muteTimeSeconds}s): ${message.sessionId}`);
192
+ if (checkMuteKeyword(eff, message.content)) {
193
+ logger.info(`[trigger] mute 关键词命中 → swallow + setMuted(${eff.muteTimeSeconds}s): ${message.sessionId}`);
175
194
  flow?.setMuted(message.sessionId, eff.muteTimeSeconds);
176
195
  // 与 dev OneBot ChatFlow 一致:设置自禁言后调度一次 idle,
177
196
  // 让禁言结束附近能正常进入「长期静默→主动招呼」路径。
@@ -184,7 +203,7 @@ export function apply(ctx, raw) {
184
203
  decision = service.decide(message);
185
204
  }
186
205
  catch (err) {
187
- ctx.logger.warn(`[trigger] decide() 异常,默认放行: ${err}`);
206
+ logger.warn(`[trigger] decide() 异常,默认放行: ${err}`);
188
207
  await next();
189
208
  return;
190
209
  }
@@ -196,7 +215,7 @@ export function apply(ctx, raw) {
196
215
  ? `计数=${snap.messageCount}/${snap.fixedInterval} | 指数=${snap.activityScore.toFixed(3)} (阈值=${(threshold ?? 0).toFixed(3)})`
197
216
  : '无 flow 状态';
198
217
  if (decision.kind === 'immediate' || decision.kind === 'interval') {
199
- ctx.logger.debug(`[trigger] ${decision.kind} → 触发 | session=${message.sessionId} | ${stateStr} | ${decision.reason}`);
218
+ logger.debug(`[trigger] ${decision.kind} → 触发 | session=${message.sessionId} | ${stateStr} | ${decision.reason}`);
200
219
  flow?.recordTriggered(message.sessionId);
201
220
  message.triggerType = decision.kind;
202
221
  // interval 回合无主发言者:授权身份回填为无主体,不让「恰好撞阈值的那个人」
@@ -210,7 +229,7 @@ export function apply(ctx, raw) {
210
229
  return;
211
230
  }
212
231
  // swallow
213
- ctx.logger.debug(`[trigger] 未触发 → 吞噬 | session=${message.sessionId} | ${stateStr} | ${decision.reason}`);
232
+ logger.debug(`[trigger] 未触发 → 吞噬 | session=${message.sessionId} | ${stateStr} | ${decision.reason}`);
214
233
  await shadowArchive(message);
215
234
  // flow-control 已在前置中调度 idle,无需重复
216
235
  });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
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/plugin-trigger-policy",
3
- "version": "0.11.0",
3
+ "version": "0.12.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -24,26 +24,30 @@
24
24
  "dist"
25
25
  ],
26
26
  "dependencies": {
27
- "@aalis/schema-config": ">=0.9.0 <1.0.0",
28
- "@aalis/api-gateway": ">=0.5.0 <1.0.0",
27
+ "@aalis/schema-config": ">=0.12.0 <1.0.0",
28
+ "@aalis/api-flow-control": ">=0.6.0 <1.0.0",
29
+ "@aalis/api-gateway": ">=0.6.0 <1.0.0",
30
+ "@aalis/api-message-archive": ">=0.6.0 <1.0.0",
31
+ "@aalis/api-persona": ">=0.7.0 <1.0.0",
29
32
  "@aalis/schema-message": ">=0.8.0 <1.0.0"
30
33
  },
31
34
  "devDependencies": {
32
35
  "@types/node": "^22.0.0",
33
36
  "typescript": "^5.7.0",
34
- "@aalis/core": "0.12.1",
35
- "@aalis/api-flow-control": "0.5.0",
36
- "@aalis/api-message-archive": "0.5.0",
37
- "@aalis/api-persona": "0.6.0",
38
- "@aalis/api-webui": "0.9.2"
37
+ "@aalis/core": "0.17.0",
38
+ "@aalis/api-webui": "0.10.0"
39
39
  },
40
40
  "peerDependencies": {
41
- "@aalis/core": ">=0.11.0 <1.0.0"
41
+ "@aalis/core": ">=0.17.0 <1.0.0"
42
42
  },
43
43
  "aalis": {
44
44
  "service": {
45
45
  "required": [
46
- "gateway"
46
+ "config",
47
+ "gateway",
48
+ "hooks",
49
+ "logger",
50
+ "provide"
47
51
  ],
48
52
  "optional": [
49
53
  "flow-control",