@aalis/plugin-flow-control 0.9.2 → 0.9.3

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.
@@ -9,13 +9,18 @@ export declare class PlatformIdleScheduler {
9
9
  private readonly states;
10
10
  private timer;
11
11
  private running;
12
+ /** stop() 之后不再重排——tick 回调可能已在飞行中,回来时要认这面旗,否则留下僵尸定时器 */
13
+ private stopped;
14
+ /** start() 时刻——无任何活动记录时拿它当「最后一次活动」的基准 */
15
+ private startedAt;
12
16
  constructor(ctx: Context, cfg: FlowControlConfig, states: Map<string, MutableFlowSessionState>);
13
17
  start(): void;
14
18
  stop(): void;
15
- /** 距离全部会话静默达标还需多少 ms(返回 0 = 已达标 / 无活跃会话) */
19
+ /** 距离全部会话静默达标还需多少 ms(返回 0 = 已达标) */
16
20
  private timeUntilAllQuiet;
17
- /** 选一个最适合主动开聊的 sessionId */
21
+ /** 选一个最适合主动开聊的 sessionId(带该会话的有效提示词) */
18
22
  private pickTarget;
23
+ /** 跑一次 tick(发没发出去都不影响重排间隔,故无返回值) */
19
24
  private runOnce;
20
25
  private schedule;
21
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"idle-scheduler.d.ts","sourceRoot":"","sources":["../src/idle-scheduler.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,KAAK,iBAAiB,EAA0B,MAAM,aAAa,CAAC;AAC7E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AA0B1D,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,iBAAiB,EACtB,KAAK,EAAE,uBAAuB,EAC9B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,IAAI,GACrB,IAAI,CA8BN;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,uBAAuB,GAAG,IAAI,CAKrE;AAID,qBAAa,qBAAqB;IAK9B,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IANzB,OAAO,CAAC,KAAK,CAA8C;IAC3D,OAAO,CAAC,OAAO,CAAS;gBAGL,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,iBAAiB,EACtB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,uBAAuB,CAAC;IAG/D,KAAK,IAAI,IAAI;IAIb,IAAI,IAAI,IAAI;IAOZ,4CAA4C;IAC5C,OAAO,CAAC,iBAAiB;IAWzB,4BAA4B;IAC5B,OAAO,CAAC,UAAU;YAoBJ,OAAO;IAqBrB,OAAO,CAAC,QAAQ;CA6BjB"}
1
+ {"version":3,"file":"idle-scheduler.d.ts","sourceRoot":"","sources":["../src/idle-scheduler.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,KAAK,iBAAiB,EAA0B,MAAM,aAAa,CAAC;AAC7E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AA0B1D,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,iBAAiB,EACtB,KAAK,EAAE,uBAAuB,EAC9B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,IAAI,GACrB,IAAI,CA8BN;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,uBAAuB,GAAG,IAAI,CAKrE;AAOD,qBAAa,qBAAqB;IAS9B,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAVzB,OAAO,CAAC,KAAK,CAA8C;IAC3D,OAAO,CAAC,OAAO,CAAS;IACxB,uDAAuD;IACvD,OAAO,CAAC,OAAO,CAAS;IACxB,yCAAyC;IACzC,OAAO,CAAC,SAAS,CAAK;gBAGH,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,iBAAiB,EACtB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,uBAAuB,CAAC;IAG/D,KAAK,IAAI,IAAI;IAMb,IAAI,IAAI,IAAI;IAQZ,oCAAoC;IACpC,OAAO,CAAC,iBAAiB;IAczB,wCAAwC;IACxC,OAAO,CAAC,UAAU;IAsBlB,oCAAoC;YACtB,OAAO;IAqBrB,OAAO,CAAC,QAAQ;CAkCjB"}
@@ -62,27 +62,36 @@ export function clearSessionIdle(state) {
62
62
  }
63
63
  }
64
64
  // ===== platform 范围调度 =====
65
+ /** 两轮 tick 之间的最小间隔(阈值更长则按阈值) */
66
+ const IDLE_RETRY_MIN_MS = 60_000;
65
67
  export class PlatformIdleScheduler {
66
68
  ctx;
67
69
  cfg;
68
70
  states;
69
71
  timer = null;
70
72
  running = false;
73
+ /** stop() 之后不再重排——tick 回调可能已在飞行中,回来时要认这面旗,否则留下僵尸定时器 */
74
+ stopped = false;
75
+ /** start() 时刻——无任何活动记录时拿它当「最后一次活动」的基准 */
76
+ startedAt = 0;
71
77
  constructor(ctx, cfg, states) {
72
78
  this.ctx = ctx;
73
79
  this.cfg = cfg;
74
80
  this.states = states;
75
81
  }
76
82
  start() {
83
+ this.stopped = false;
84
+ this.startedAt = Date.now();
77
85
  this.schedule();
78
86
  }
79
87
  stop() {
88
+ this.stopped = true;
80
89
  if (this.timer) {
81
90
  clearTimeout(this.timer);
82
91
  this.timer = null;
83
92
  }
84
93
  }
85
- /** 距离全部会话静默达标还需多少 ms(返回 0 = 已达标 / 无活跃会话) */
94
+ /** 距离全部会话静默达标还需多少 ms(返回 0 = 已达标) */
86
95
  timeUntilAllQuiet(thresholdMs) {
87
96
  let maxLast = 0;
88
97
  for (const s of this.states.values()) {
@@ -90,12 +99,14 @@ export class PlatformIdleScheduler {
90
99
  if (last > maxLast)
91
100
  maxLast = last;
92
101
  }
93
- if (maxLast === 0)
94
- return 0;
95
- const elapsed = Date.now() - maxLast;
102
+ // 没有任何活动记录(states 为空 / 全是恢复出来的空状态)≠「已达标」:直接返回 0 会让
103
+ // schedule 退化成每秒一 tick 的死转。改用 start() 时刻当基准——从启动起静默满一个阈值
104
+ // 才算达标。
105
+ const since = maxLast || this.startedAt || Date.now();
106
+ const elapsed = Date.now() - since;
96
107
  return Math.max(0, thresholdMs - elapsed);
97
108
  }
98
- /** 选一个最适合主动开聊的 sessionId */
109
+ /** 选一个最适合主动开聊的 sessionId(带该会话的有效提示词) */
99
110
  pickTarget() {
100
111
  const now = Date.now();
101
112
  let best = null;
@@ -105,6 +116,9 @@ export class PlatformIdleScheduler {
105
116
  if (s.cooldownUntil > now)
106
117
  continue;
107
118
  const e = resolveEffectiveConfig(this.cfg, s.platform, s.sessionType, s.targetId);
119
+ // per-scope 覆盖单独关掉('off')或改成 session 档的会话不能被 platform 档抓来开聊
120
+ if (e.idleTriggerScope !== 'platform')
121
+ continue;
108
122
  if (e.rateLimitWindow > 0 && e.rateLimitMaxReplies > 0) {
109
123
  const windowStart = now - e.rateLimitWindow * 1000;
110
124
  const used = s.replyTimestamps.filter(t => t > windowStart).length;
@@ -113,11 +127,12 @@ export class PlatformIdleScheduler {
113
127
  }
114
128
  const lastActivity = Math.max(s.lastMessageTime, s.lastReplyTime);
115
129
  if (!best || lastActivity < best.lastActivity) {
116
- best = { sessionId: sid, lastActivity, platform: s.platform };
130
+ best = { sessionId: sid, lastActivity, platform: s.platform, prompt: e.idleTriggerPrompt };
117
131
  }
118
132
  }
119
133
  return best;
120
134
  }
135
+ /** 跑一次 tick(发没发出去都不影响重排间隔,故无返回值) */
121
136
  async runOnce() {
122
137
  if (this.running)
123
138
  return;
@@ -130,7 +145,7 @@ export class PlatformIdleScheduler {
130
145
  }
131
146
  this.ctx.logger.info(`[flow] platform idle tick: 主动开聊 → ${target.sessionId} ` +
132
147
  `(idle=${Math.round((Date.now() - target.lastActivity) / 60_000)}min)`);
133
- await injectIdle(this.ctx, buildIdleMessage(target.sessionId, target.platform, this.cfg.idleTriggerPrompt));
148
+ await injectIdle(this.ctx, buildIdleMessage(target.sessionId, target.platform, target.prompt));
134
149
  }
135
150
  catch (err) {
136
151
  this.ctx.logger.warn(`[flow] platform idle tick 失败: ${err}`);
@@ -139,7 +154,9 @@ export class PlatformIdleScheduler {
139
154
  this.running = false;
140
155
  }
141
156
  }
142
- schedule() {
157
+ schedule(minDelayMs = 0) {
158
+ if (this.stopped)
159
+ return;
143
160
  if (this.timer) {
144
161
  clearTimeout(this.timer);
145
162
  this.timer = null;
@@ -158,6 +175,8 @@ export class PlatformIdleScheduler {
158
175
  if (delay === 0)
159
176
  delay = 1000;
160
177
  }
178
+ if (delay < minDelayMs)
179
+ delay = minDelayMs;
161
180
  this.timer = setTimeout(async () => {
162
181
  if (this.cfg.idleTriggerStrategy === 'all-quiet') {
163
182
  const remaining = this.timeUntilAllQuiet(baseMs);
@@ -167,7 +186,10 @@ export class PlatformIdleScheduler {
167
186
  }
168
187
  }
169
188
  await this.runOnce();
170
- this.schedule();
189
+ // 每轮之后**无条件**退避一个阈值量级:静默达标条件在 tick 之后仍然成立(发出去的那条
190
+ // 消息要等被处理才会刷新活动时间,无候选时更是压根没变),照 delay===0→1s 重排就是
191
+ // 1 Hz 死转。发没发出去都一样等,语义是「每轮之间至少隔一个阈值量级」。
192
+ this.schedule(Math.max(baseMs, IDLE_RETRY_MIN_MS));
171
193
  }, delay);
172
194
  }
173
195
  }
@@ -1 +1 @@
1
- {"version":3,"file":"idle-scheduler.js","sourceRoot":"","sources":["../src/idle-scheduler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"idle-scheduler.js","sourceRoot":"","sources":["../src/idle-scheduler.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aalis/plugin-flow-control",
3
- "version": "0.9.2",
3
+ "version": "0.9.3",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -32,10 +32,10 @@
32
32
  "devDependencies": {
33
33
  "@types/node": "^22.0.0",
34
34
  "typescript": "^5.7.0",
35
- "@aalis/core": "0.11.0",
36
- "@aalis/api-message-archive": "0.5.0",
37
- "@aalis/schema-message": "0.5.2",
38
- "@aalis/api-webui": "0.9.0"
35
+ "@aalis/schema-message": "0.8.1",
36
+ "@aalis/core": "0.12.1",
37
+ "@aalis/api-webui": "0.9.2",
38
+ "@aalis/api-message-archive": "0.5.0"
39
39
  },
40
40
  "peerDependencies": {
41
41
  "@aalis/core": ">=0.11.0 <1.0.0"