@zaofan/dsh-qqbot 1.10.6 → 1.10.8

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 +1 @@
1
- {"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["../../src/gateway/debounce.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,OAAO,KAAK,EAAE,UAAU,EAAqB,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAEjG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAyB1C,wCAAwC;AACxC,UAAU,aAAa;IACrB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7B,YAAY,EAAE,OAAO,CAAC;IACtB,mDAAmD;IACnD,EAAE,EAAE,MAAM,CAAC;IACX,kDAAkD;IAClD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAgDD,4DAA4D;AAC5D,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,gBAAgB,EAAE,CAoC5G;AAiDD,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAEvD;AAgHD,wBAAgB,eAAe,CAC7B,KAAK,EAAE,OAAO,GAAG,KAAK,EACtB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,EACzE,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAOT;AACD,wBAAgB,aAAa,CAC3B,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,UAAU,CAmZZ"}
1
+ {"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["../../src/gateway/debounce.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,OAAO,KAAK,EAAE,UAAU,EAAqB,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAEjG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAyB1C,wCAAwC;AACxC,UAAU,aAAa;IACrB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7B,YAAY,EAAE,OAAO,CAAC;IACtB,mDAAmD;IACnD,EAAE,EAAE,MAAM,CAAC;IACX,kDAAkD;IAClD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAgDD,4DAA4D;AAC5D,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,gBAAgB,EAAE,CAoC5G;AAiDD,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAEvD;AAiID,wBAAgB,eAAe,CAC7B,KAAK,EAAE,OAAO,GAAG,KAAK,EACtB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,EACzE,KAAK,CAAC,EAAE,OAAO,GACd,OAAO,CAOT;AACD,wBAAgB,aAAa,CAC3B,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,UAAU,CAmZZ"}
@@ -171,21 +171,35 @@ function attachmentNote(atts, processed) {
171
171
  return '';
172
172
  const out = [];
173
173
  for (const raw of atts) {
174
+ // ★★ 2026-10-15 修:**真实字段是 `content_type`(snake_case)** ★★
175
+ // 证据:`src/types.ts` 的 `RawAttachment`(注释明写"snake_case 字段,来自 QQ 网关
176
+ // C2C_MESSAGE_CREATE")字段为 `content_type` / `filename` / `url` / `asr_refer_text`。
177
+ // 这里原来只读 `a.type` ⇒ 恒为空串 ⇒ 所有分支都进不去 ⇒ 插话正文只剩 "(无文字内容)",
178
+ // 群里发的图/文件在插话模式下**完全看不到链接**(主人实测踩到)。
179
+ // 三种命名都读(content_type / contentType / type),向后兼容。
174
180
  const a = raw;
175
- const t = String(a?.type ?? '');
181
+ const t = String(a?.content_type ?? a?.contentType ?? a?.type ?? '');
176
182
  const url = String(a?.url ?? '');
177
183
  if (t.includes('image')) {
178
184
  const local = url ? lookupImagePath(url) : undefined;
179
- out.push(`[图片: ${local ?? url}]`);
185
+ out.push(`[图片: ${local ?? (url || '(无链接)')}]`);
180
186
  }
181
- else if (t === 'voice' || t === 'audio') {
187
+ else if (t === 'voice' || t.includes('audio')) {
182
188
  const vt = voiceTextOf(processed);
183
189
  out.push(vt ? `[语音] ${vt}` : '[语音]');
184
190
  }
185
- else if (t === 'video')
186
- out.push('[视频]');
187
- else if (t === 'file')
188
- out.push(`[文件: ${String(a?.filename ?? '') || '未知'}]`);
191
+ else if (t.includes('video')) {
192
+ // ★ 原来只有 "[视频]"、丢了链接 ⇒ 补上
193
+ out.push(url ? `[视频: ${url}]` : '[视频]');
194
+ }
195
+ else if (t.includes('file') || t.includes('application') || t.includes('zip') || t.includes('octet')) {
196
+ // ★ 原来只有文件名、丢了链接 ⇒ 补上(群友发压缩包时最关键)
197
+ out.push(`[文件: ${String(a?.filename ?? '') || '未知'}${url ? ' ' + url : ''}]`);
198
+ }
199
+ else if (t) {
200
+ // 兜底:认不出的类型也把原始类型 + 链接带出去,别再静默丢
201
+ out.push(`[附件(${t}): ${String(a?.filename ?? '') || ''}${url ? ' ' + url : ''}]`.replace(/\s+/g, ' '));
202
+ }
189
203
  }
190
204
  return out.join(' ');
191
205
  }
@@ -1 +1 @@
1
- {"version":3,"file":"debounce.js","sourceRoot":"","sources":["../../src/gateway/debounce.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"debounce.js","sourceRoot":"","sources":["../../src/gateway/debounce.ts"],"names":[],"mappings":"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"}
@@ -91,6 +91,27 @@ export function isChildSessionForwardQuote(quotedText) {
91
91
  */
92
92
  const ANNIHILATE_EMPTY_CHILD_FORWARD = false;
93
93
 
94
+ /**
95
+ * ★★ 2026-10-15 主人定:**只要引用了子会话转发消息,整条消灭** ★★
96
+ *
97
+ * 为什么比上面那个开关更强:二档的语义是"主人**完全独立地**跟子会话对话" ——
98
+ * 子会话的内容**一个字都不该进父会话上下文**。而 QQ 的引用会把**被引原文**
99
+ * 一起带进上下文(`buildQuotePart` 会把它拼成引用块),等于**绕过二档**。
100
+ * 更要紧的是:QQ 引用**自带 @ 机器人**,所以这种消息还必然触发一次 @ 判定 ——
101
+ * 与其"剥掉原文/压掉 @"两头补,不如**整条吃掉**(主人原话:懒得删了)。
102
+ *
103
+ * ⚠️ 代价(有意接受):主人在这条消息里**自己写的正文也一起消失** ——
104
+ * 想跟本尊说话就别引用子会话转发的消息,直接说即可。
105
+ * ⚠️ 对**所有人**生效(群友引用子会话转发也会被吃);若只想管主人,
106
+ * 把 ownerOnly 改成 true(下面消灭分支里已留好位置)。
107
+ * ⚠️ 消灭 = 不进群历史、不进上下文、不占群冷却(`annihilate` 的语义)。
108
+ * ⚠️ 主人消息要被吃必须带 `ownerAck: true`(默认白名单保护主人消息,不给就拒绝执行)。
109
+ */
110
+ const ANNIHILATE_ANY_CHILD_QUOTE = true;
111
+
112
+ /** 上面那个开关是否只对主人(owner)生效。false = 群里任何人引用都吃 */
113
+ const ANNIHILATE_ANY_CHILD_QUOTE_OWNER_ONLY = false;
114
+
94
115
  /**
95
116
  * true = 把正文开头的转发头 `【子会话 xxx】` **改写**掉(群历史里存的就是改后文本)。
96
117
  * ⚠️ 默认 **false**:转发头有时是用户自己想要的线索,先看清楚再开。
@@ -108,6 +129,71 @@ function contentWithoutMentions(ctx) {
108
129
  .replace(/\s+/g, '');
109
130
  }
110
131
 
132
+ /**
133
+ * ★ 2026-10-15 新增:与 route-isolate 共用同一个会话库。
134
+ *
135
+ * 用途只有一个 —— **识别"这条消息带不带路由标记"**(`lib.parseRouteKey`)。
136
+ * 带路由标记的消息归 `route-isolate.mjs` 管(它负责"先消灭、再自己投递给子会话"),
137
+ * 本扩展必须**让路**;否则按文件名排序本文件跑在前面,抢先吃掉又 return,
138
+ * route-isolate 永远不会执行 ⇒ 消息既没进父上下文、也没路由到子会话。
139
+ *
140
+ * 引法与 route-isolate 完全一致(带 `?v=mtime` 做 cache-bust,防 ESM 注册表缓存旧模块)。
141
+ */
142
+ let _lib = null;
143
+ async function loadLib() {
144
+ if (_lib) return _lib;
145
+ try {
146
+ _lib = await import(new URL('../tools/lib/session_watch_lib.mjs?v=' + Date.now(), import.meta.url).href);
147
+ } catch {
148
+ _lib = null;
149
+ }
150
+ return _lib;
151
+ }
152
+
153
+ /**
154
+ * ★★ 2026-10-15:诊断必须**落盘** ★★
155
+ * route-isolate 文件头留的教训:"一开始只往 logger 写,而**从来没人注入过 logger**
156
+ * ⇒ 真机上完全静默、无法定位。" 本扩展此前一直用 `ctx.logger.debug` ⇒ 等于瞎的,
157
+ * 导致"引用回流没投递"排查了三轮全靠猜。此后所有关键判定一律 `appendDiag` 落盘。
158
+ */
159
+ const DIAG_FILE = 'D:/newwenjianjia/aiwork/鲸鱼娘/dshqqbot/.qqbot-extensions/data/no-wake-diag.log';
160
+
161
+ async function appendDiag(line) {
162
+ try {
163
+ const { appendFile, mkdir } = await import('node:fs/promises');
164
+ const { dirname } = await import('node:path');
165
+ await mkdir(dirname(DIAG_FILE), { recursive: true });
166
+ await appendFile(DIAG_FILE, new Date().toISOString() + ' ' + line + '\n');
167
+ } catch { /* 诊断失败绝不影响主链 */ }
168
+ }
169
+
170
+ /**
171
+ * ★★ 2026-10-15:稳妥读"被引原文" ★★
172
+ * 契约(`ext-inbound-context.ts` 注释)写的是 `ctx.quoted({ text, fromSelf })`,
173
+ * 而 316 行又说它是"**可调用 + 带属性的对象**(两种读法都支持)"。
174
+ * 之前只按 `.text` 读 ⇒ 若它是函数就读到空串 ⇒ 正则永远不命中 ⇒ 整条分支静默跳过。
175
+ * 这里两种读法都试,并兜到 `ctx.state.quote.text`(晚挂点用的那个)。
176
+ */
177
+ function readQuotedText(ctx) {
178
+ const out = { text: '', via: 'none', type: typeof ctx?.quoted };
179
+ try {
180
+ const q = ctx?.quoted;
181
+ if (typeof q === 'function') {
182
+ const v = q();
183
+ out.via = 'call';
184
+ out.text = String(v?.text ?? '');
185
+ }
186
+ if (!out.text) {
187
+ const t = q?.text ?? ctx?.state?.quote?.text ?? '';
188
+ if (t) out.via = out.via === 'call' ? 'call+prop' : 'prop';
189
+ out.text = String(t ?? '');
190
+ }
191
+ } catch (e) {
192
+ out.via = 'throw:' + (e?.message ?? e);
193
+ }
194
+ return out;
195
+ }
196
+
111
197
  /**
112
198
  * ★ 早挂点 `onInbound`(2026-10-12 新增)★
113
199
  *
@@ -124,9 +210,83 @@ export async function onInbound(ctx, next) {
124
210
  // 这里读不到 ctx.state.mention —— 想看"平台认为这条 @ 了她吗",用 ctx.platform.mentioned
125
211
  // (判据与 SDK 的 mentionGate 完全一致:rawEventType / mentions[].is_you / 正文里的 <@appId>)
126
212
  const mentioned = ctx?.platform?.mentioned === true;
127
- const quoted = ctx?.quoted?.text ?? '';
213
+ // ★ 2026-10-15:改用 readQuotedText(两种读法都试),并把读到的东西**落盘**
214
+ const q = readQuotedText(ctx);
215
+ const quoted = q.text ?? '';
216
+ const hit = isChildSessionForwardQuote(quoted);
217
+ void appendDiag('[enter] text=' + JSON.stringify(String(ctx?.text ?? '').slice(0, 40))
218
+ + ' quotedType=' + q.type + ' via=' + q.via
219
+ + ' quoted=' + JSON.stringify(quoted.slice(0, 60))
220
+ + ' hit=' + hit + ' scope=' + String(ctx?.scope ?? '-'));
128
221
 
129
222
  if (ctx?.scope === 'group' && isChildSessionForwardQuote(quoted)) {
223
+ // ── ★ 2026-10-15 主人定:只要引用了子会话转发 ⇒ **整条消灭**(不再区分有没有正文)★ ──
224
+ // 理由:二档 = 主人完全独立地跟子会话对话,子会话内容一个字都不该进父上下文;
225
+ // 而 QQ 引用会把被引原文带进上下文(绕过二档),且引用自带 @ 机器人 ⇒ 干脆整条吃掉。
226
+ if (ANNIHILATE_ANY_CHILD_QUOTE) {
227
+ // ★★ 2026-10-15 重写(第三版):语义 = 「引用子会话转发消息」等价于「发给那个子会话」★★
228
+ // 要做三件事,缺一不可 —— 照 route-isolate.mjs 的姿势抄:
229
+ // ① 从**被引原文**里解析出子会话 key(`【子会话 bee798c0】`);
230
+ // ② `annihilate({ ownerAck: true })` 登记消灭;
231
+ // ③ **自己投递**(lib.routeToSession)—— 消息被消灭后,原路径的
232
+ // `user/message` 钩子永远不会发生,没人投递就等于消息凭空消失;
233
+ // ④ 末尾 **`return next()`**(★不是"消灭完就 return"★)。
234
+ // 引擎兜底只在"没调 next"时替扩展放行;调了 next,annihilate 的置位
235
+ // 会**直接吃掉那记 next**(链停在这里 + 跳过兜底)⇒ 主人生效且真被消灭。
236
+ // 上一版写成"消灭后直接 return",反而触发了兜底放行、还把投递漏了。
237
+ let routeKey = null;
238
+ try {
239
+ const lib0 = await loadLib();
240
+ routeKey = lib0?.parseRouteKey?.(String(ctx?.text ?? '')) ?? null;
241
+ } catch { routeKey = null; }
242
+
243
+ if (!routeKey) {
244
+ // 从被引原文解析子会话短 id(宽松:不要求右括号,平台可能按 60 字截断)
245
+ const m = /【子会话[\s\u3000]*([0-9a-fA-F]{1,32})/.exec(String(quoted));
246
+ const childKey = m ? m[1] : null;
247
+ const kernel = ctx?.kernel ?? null;
248
+ void appendDiag('[branch] routeKey=- childKey=' + (childKey || '-')
249
+ + ' kernel=' + typeof ctx?.kernel + ' annihilate=' + typeof ctx?.annihilate);
250
+
251
+ if (!childKey) {
252
+ void appendDiag('[skip] 引用的是子会话转发但解析不出 id ⇒ 放行');
253
+ } else {
254
+ const acked = ctx?.annihilate?.({
255
+ reason: '引用子会话转发消息:对父上下文消灭(二档语义),并投递给子会话 ' + childKey,
256
+ ownerAck: true, // 主人消息默认受白名单保护,必须显式解除;只解除这一条
257
+ });
258
+ void appendDiag('[annihilate] key=' + childKey + ' acked=' + acked);
259
+
260
+ if (!acked) {
261
+ // 消灭被拒(熔断/挂点不允许)⇒ 不自己投,交回原路径,避免"我投一次 + 原路径再投一次"
262
+ void appendDiag('[skip] annihilate 被拒 key=' + childKey + ' ⇒ 放行');
263
+ } else {
264
+ // 已登记消灭 ⇒ 必须自己投递(原路径的 user/message 钩子不会跑了)
265
+ let r = null;
266
+ try {
267
+ const lib = await loadLib();
268
+ // ★★ 2026-10-15 关键:**必须把 key 补进文本** ★★
269
+ // `routeToSession` 内部自己 `parseRouteKey(text)`;引用这条路**没有** `[s:xxx]`
270
+ // 标记 ⇒ 会直接返回 `no-key` 而不投递(实测 diag:投递=FAIL(no-key))。
271
+ // 补上标记后它就能解析到目标;随后 `stripRouteMark(text)` 会把标记剥掉,
272
+ // 所以**子会话收到的正文里不会留下这个前缀**。
273
+ const textToRoute = '[s:' + childKey + ']' + String(ctx.text ?? '');
274
+ r = await lib?.routeToSession?.(kernel, textToRoute, { message: ctx?.message });
275
+ } catch (e) {
276
+ r = { ok: false, reason: 'throw:' + (e?.message ?? e) };
277
+ }
278
+ void appendDiag('[done] key=' + childKey
279
+ + ' 已从父上下文消灭;投递=' + (r?.ok ? 'ok(' + r.reason + ')' : 'FAIL(' + r?.reason + ')'));
280
+ }
281
+ }
282
+ } else {
283
+ // 带路由标记 ⇒ 让路给 route-isolate(它负责消灭 + 投递),本扩展什么都不做
284
+ void appendDiag('[pass] 带路由标记 key=' + routeKey + ' → 让路给 route-isolate');
285
+ }
286
+ // ★★ 末尾必须调 next():见上面 ④。annihilate 成功时它会吃掉这记 next。★★
287
+ return next();
288
+ }
289
+
130
290
  // 只读观测(debug 级,别刷屏):这一步群历史**还没记** —— 对照晚挂点那条日志的时间序
131
291
  ctx?.logger?.debug?.(
132
292
  `[ext-inbound:${name}] 早挂点:引用的是子会话转发(平台@=${mentioned},正文"${String(ctx.text).slice(0, 20)}")` +
@@ -144,8 +304,10 @@ export async function onInbound(ctx, next) {
144
304
  // ── 可选动作 ②:消灭(纯转发空壳:没正文、没附件,只剩一个 @)──
145
305
  const atts = Array.isArray(ctx?.message?.attachments) ? ctx.message.attachments : [];
146
306
  if (ANNIHILATE_EMPTY_CHILD_FORWARD && atts.length === 0 && contentWithoutMentions(ctx) === '') {
147
- ctx.annihilate({ reason: '子会话转发空壳(无正文无附件)' });
148
- return; // ★ 不调 next() = 这条不进历史、不进上下文、不占冷却
307
+ // ⚠️ 2026-10-15:消灭后必须**继续交给 next()**(不是直接 return)——
308
+ // 引擎兜底只在"没调 next"时替扩展放行;调了 next,annihilate 会吃掉它。
309
+ ctx.annihilate({ reason: '子会话转发空壳(无正文无附件)', ownerAck: true });
310
+ return next();
149
311
  }
150
312
 
151
313
  // ── 可选动作 ③:强制入站(确定要她看到这条时)──
@@ -662,23 +662,132 @@ export function buildSettlementNotice(input = {}) {
662
662
  async function forwardToQq(entry, text) {
663
663
  const fwd = entry?.fwd;
664
664
  const body = String(text ?? '').trim();
665
- if (!fwd?.sender || !fwd?.replyTarget || !body) return '';
665
+ // ★ 2026-10-15:**不再静默**。之前三个条件任一不满足就 `return ''`,日志里一个字都没有,
666
+ // "重启后那段时间子会话内容悄悄没转发"因此无从定位(主人实测踩到)。
667
+ if (!fwd?.sender || !fwd?.replyTarget || !body) {
668
+ void swDiag('forward-skip short=' + String(entry?.shortId ?? '?')
669
+ + ' fwd=' + (fwd ? 'obj' : String(fwd))
670
+ + ' sender=' + !!fwd?.sender + ' replyTarget=' + !!fwd?.replyTarget
671
+ + ' bodyLen=' + body.length);
672
+ return '';
673
+ }
666
674
  const target = fwd.replyTarget;
667
- try {
668
- if (typeof fwd.sender.sendMarkdown === 'function') {
669
- await fwd.sender.sendMarkdown(target, body);
670
- return 'md';
675
+
676
+ /**
677
+ * ★★ 2026-10-15:**摘掉 msgId 的"主动版" target** ★★
678
+ * 实测真凶:`fwd.replyTarget` 里钉着**绑定那一刻的 msgId**(为走"被动回复"),
679
+ * 而 QQ 的被动回复 **msg_id 会过期** ⇒ 老盯梢(如 bee798c0)发送时报
680
+ * `API Error: 回复消息msg_id已过期`,markdown/纯文本两条降级链**都**因此失败,
681
+ * 内容静默丢失。新建的盯梢 msgId 新鲜 ⇒ 正常。
682
+ * ⇒ 发送失败时摘掉 msgId 再发一次 = 转"主动发送"(会耗主动配额,但总比丢消息好)。
683
+ */
684
+ const activeTarget = (() => {
685
+ try {
686
+ if (!target || typeof target !== 'object') return null;
687
+ const t = { ...target };
688
+ let touched = false;
689
+ for (const k of ['msgId', 'msg_id', 'messageId', 'referenceMessageId']) {
690
+ if (k in t) { delete t[k]; touched = true; }
691
+ }
692
+ return touched ? t : null;
693
+ } catch { return null; }
694
+ })();
695
+
696
+ /**
697
+ * ★ 2026-10-15 主人定:**同一 msgId 用满 4 条就直接转主动**(不等它失败)。
698
+ * 被动回复有两条硬限制:①同一 msg_id 最多 ~4-5 条;②msg_id 会过期。
699
+ * 插件的 outbound.ts 对"AI 正文"有 ADAPTIVE_MAX_PASSIVE=5 的同类计数,但**转发这条路没有**,
700
+ * 所以这里自己数:同一 msgId 发到第 4 条起就摘掉它走主动。
701
+ */
702
+ const _midOf = (t) => String(t?.msgId ?? t?.msg_id ?? t?.messageId ?? '');
703
+ const passiveMid = _midOf(target);
704
+ const counts = (entry.__fwdPassiveCounts ??= new Map());
705
+ const used = passiveMid ? (counts.get(passiveMid) ?? 0) : 0;
706
+ const PASSIVE_LIMIT = 4;
707
+ const skipPassive = !passiveMid || used >= PASSIVE_LIMIT;
708
+ if (skipPassive) {
709
+ void swDiag('forward-passive-skip short=' + String(entry?.shortId ?? '?')
710
+ + ' mid=' + (passiveMid ? passiveMid.slice(0, 12) : '-') + ' used=' + used);
711
+ }
712
+
713
+ const trySend = async (tg) => {
714
+ try {
715
+ if (typeof fwd.sender.sendMarkdown === 'function') {
716
+ await fwd.sender.sendMarkdown(tg, body);
717
+ return 'md';
718
+ }
719
+ } catch (e) {
720
+ const em = String(e?.message ?? e);
721
+ try {
722
+ if (typeof fwd.sender.sendText === 'function') {
723
+ await fwd.sender.sendText(tg, body);
724
+ return 'text';
725
+ }
726
+ } catch (e2) { throw new Error(em + ' | text:' + String(e2?.message ?? e2)); }
727
+ throw new Error(em);
671
728
  }
672
- } catch { /* markdown 失败 → 退纯文本 */ }
729
+ try {
730
+ if (typeof fwd.sender.sendText === 'function') {
731
+ await fwd.sender.sendText(tg, body);
732
+ return 'text';
733
+ }
734
+ } catch (e) { throw new Error(String(e?.message ?? e)); }
735
+ return '';
736
+ };
737
+
738
+ // ① 先按原样(被动回复,省主动配额)
673
739
  try {
674
- if (typeof fwd.sender.sendText === 'function') {
675
- await fwd.sender.sendText(target, body);
676
- return 'text';
740
+ // ★ 同一 msgId 用满 4 条 ⇒ 直接跳过被动、走下面的主动分支(不再等它失败)
741
+ if (skipPassive) throw new Error('skip-passive: mid=' + (passiveMid || '-') + ' used=' + used);
742
+ const how = await trySend(target);
743
+ if (how) {
744
+ if (passiveMid) counts.set(passiveMid, used + 1);
745
+ void swDiag('forward-ok(' + how + ') short=' + String(entry?.shortId ?? '?') + ' len=' + body.length
746
+ + ' passive=' + (passiveMid ? passiveMid.slice(0, 12) + '#' + (used + 1) : '-'));
747
+ return how;
677
748
  }
678
- } catch { /* ignore */ }
749
+ } catch (e1) {
750
+ void swDiag('forward-passive-fail short=' + String(entry?.shortId ?? '?')
751
+ + ' err=' + String(e1?.message ?? e1));
752
+ // ② 失败 ⇒ 摘掉 msgId 重发(主动)。这是"msg_id 过期"的正解。
753
+ if (activeTarget) {
754
+ try {
755
+ const how2 = await trySend(activeTarget);
756
+ if (how2) {
757
+ void swDiag('forward-ok-active(' + how2 + ') short=' + String(entry?.shortId ?? '?')
758
+ + ' len=' + body.length + '(被动失败后转主动)');
759
+ return how2 + '-active';
760
+ }
761
+ } catch (e2) {
762
+ void swDiag('forward-active-fail short=' + String(entry?.shortId ?? '?')
763
+ + ' err=' + String(e2?.message ?? e2));
764
+ }
765
+ } else {
766
+ void swDiag('forward-active-skip short=' + String(entry?.shortId ?? '?')
767
+ + '(target 上没有 msgId 可摘,或 target 形状异常)');
768
+ }
769
+ }
770
+ void swDiag('forward-fail short=' + String(entry?.shortId ?? '?') + ' senderKeys='
771
+ + (fwd?.sender ? Object.keys(fwd.sender).slice(0, 10).join(',') : '-'));
679
772
  return '';
680
773
  }
681
774
 
775
+ /**
776
+ * ★ 2026-10-15:诊断**落盘**。route-isolate 文件头留过教训:
777
+ * "一开始只往 logger 写,而**从来没人注入过 logger** ⇒ 真机上完全静默、无法定位。"
778
+ * 本库涉及"转发到 QQ",静默一次就是一条内容永久丢失,必须能事后追。
779
+ */
780
+ const SW_DIAG_FILE = 'D:/newwenjianjia/aiwork/鲸鱼娘/dshqqbot/.qqbot-extensions/data/session-watch-diag.log';
781
+
782
+ async function swDiag(line) {
783
+ try {
784
+ const { appendFile, mkdir } = await import('node:fs/promises');
785
+ const { dirname } = await import('node:path');
786
+ await mkdir(dirname(SW_DIAG_FILE), { recursive: true });
787
+ await appendFile(SW_DIAG_FILE, new Date().toISOString() + ' ' + line + '\n');
788
+ } catch { /* 诊断失败不影响主链 */ }
789
+ }
790
+
682
791
  /**
683
792
  * 转发到 QQ 之前,把「只给插件自己看的标记」洗掉(主人 2026-10-12 要求:"剥掉 @")。
684
793
  *
@@ -975,11 +1084,40 @@ async function handler(root, session, event) {
975
1084
  w.errors = [];
976
1085
  const mode = Number(w.mode) === 2 ? 2 : (Number(w.mode) === 3 ? 3 : 1);
977
1086
 
1087
+ // ★★ 2026-10-15:**每回合无条件落盘一行** ★★
1088
+ // 实测踩到:bee798c0 重启后"不转发",而日志里连 forward-skip 都没有 ⇒ 说明它压根没
1089
+ // 走到 forwardToQq(`toForward` 为空、for 循环没进)。要区分"没收到正文事件"和"收到但被过滤",
1090
+ // 只能在 turn/end 这里把手上有什么如实记下来。
1091
+ void swDiag('turn-end short=' + String(w.shortId ?? '?')
1092
+ + ' mode=' + mode + ' rawMode=' + JSON.stringify(w.mode)
1093
+ + ' texts=' + allTexts.length + ' errs=' + errors.length
1094
+ + ' textLen=' + String(text ?? '').length
1095
+ + ' seen=' + w.seen + ' reason=' + String(rawReason ?? '-'));
1096
+
978
1097
  // ── 转发到 QQ ──────────────────────────────────────────────
979
1098
  // 一档:只转末段;二/三档:所有正文 + 报错
980
1099
  const toForward = mode === 1
981
1100
  ? (text ? [text] : [])
982
1101
  : [...allTexts, ...(errors.length ? ['⚠️ 报错:\n' + errors.join('\n')] : [])];
1102
+ // ★★ 2026-10-15 主人定:转发前**先刷新 target + 数被动条数**,别钉死绑定时的 msgId ★★
1103
+ // 被动回复(带 msg_id)有两条硬限制:①同一 msg_id 最多回 ~4-5 条;②msg_id 会过期。
1104
+ // 踩到的实例:老盯梢 bee798c0 的 replyTarget 里钉着很久以前的 msgId ⇒ 发送报
1105
+ // `回复消息msg_id已过期`,md/文本两条链全挂、内容静默丢失。
1106
+ // 口径(与插件 outbound.ts 的 ADAPTIVE_MAX_PASSIVE=5 对齐):
1107
+ // · 每次转发前,把 fwd.replyTarget 刷新成**最新注入**的那份(带最新 msgId);
1108
+ // · 同一 msgId 数着用,**到 4 条**就主动转主动(摘掉 msgId),不再等它失败;
1109
+ // · 真失败(过期/超限/其它)⇒ forwardToQq 里还有一层"摘 msgId 重发"兜底。
1110
+ if (toForward.length > 0) {
1111
+ const injected = globalThis[FWD_KEY] ?? null;
1112
+ if (injected?.sender && injected?.replyTarget) {
1113
+ w.fwd = { sender: injected.sender, replyTarget: injected.replyTarget };
1114
+ } else if (!w.fwd?.sender || !w.fwd?.replyTarget) {
1115
+ const hadFwd = !!w.fwd;
1116
+ const ok = hydrateFwd(w, root, session);
1117
+ void swDiag('pre-forward hydrate short=' + String(w.shortId ?? '?')
1118
+ + ' hadFwd=' + hadFwd + ' ok=' + ok + ' mode=' + mode);
1119
+ }
1120
+ }
983
1121
  for (const piece of toForward) {
984
1122
  const body = withOwner(w, piece);
985
1123
  // 去重:同一条内容不重复转发
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zaofan/dsh-qqbot",
3
- "version": "1.10.6",
3
+ "version": "1.10.8",
4
4
  "description": "QQ Bot IM channel plugin for deepseek-harness (dsh)",
5
5
  "type": "module",
6
6
  "main": "./entry.js",
package/settings-host.js CHANGED
@@ -363,6 +363,7 @@ export function dedupeYamlKeys(text) {
363
363
  let cur = '';
364
364
  const stack = []; // 打开的父键路径: [{ indent, key }]
365
365
  let blockIndent = -1; // ≥0 = 正在跳过某个块标量的正文
366
+ let listSeq = 0; // ★ 列表项序号(issue #11 修①)—— 必须在循环外,循环内会被逐行重置
366
367
  for (let i = 0; i < lines.length; i++) {
367
368
  const l = lines[i];
368
369
  const blank = l.trim() === '';
@@ -375,7 +376,30 @@ export function dedupeYamlKeys(text) {
375
376
  if (blank || l.trimStart().startsWith('#')) continue;
376
377
  const mId = /^(\s*)-\s*id:\s*(\S+)\s*$/.exec(l);
377
378
  if (mId) { cur = mId[2]; seen.clear(); stack.length = 0; continue; }
378
- const mK = /^(\s*)(?!-)([^\s:][^:]*?):(\s|$)/.exec(l);
379
+
380
+ // ★★ 2026-10-16(issue #11 / tyjianxianyu 报,本机已复现并验证)★★
381
+ // 修①:**列表项必须压栈**。YAML 里 `- provider: buddy` 的每个 item 都是**独立节点**,
382
+ // 原来这里把 `-` 开头的行直接放过去、不压栈 ⇒ 它下面的子键(如 `model: A`)会挂到
383
+ // **上一个 item 的父级**上 ⇒ 两个 item 的同名子键拿到**同一个签名** ⇒ 前一个被当成
384
+ // "重复键"删掉。实测(issue 的最小输入):`allowedModels` 两项的 `model:` 2 个 → 只剩 1 个。
385
+ // 线上真实后果:删掉 `subagent-model-selection-settings` 的 `model:` 行 ⇒
386
+ // "subagent model selection requires non-empty provider and model ids" ⇒ 该 entry 校验失败
387
+ // ⇒ 服务不注册 ⇒ **所有会话 resume 失败**。
388
+ // 用递增序号标识同层不同 item,保证签名互不相同。
389
+ // ⚠️ 序号计数器必须在**循环外**(放循环里每行重置 ⇒ 所有 item 都叫 `-[1]` ⇒ 等于没修)。
390
+ const mItem = /^(\s*)-\s+\S/.exec(l);
391
+ if (mItem) {
392
+ const itemIndent = mItem[1].length;
393
+ while (stack.length && stack[stack.length - 1].indent >= itemIndent) stack.pop();
394
+ stack.push({ indent: itemIndent, key: '-[' + (++listSeq) + ']' });
395
+ continue;
396
+ }
397
+
398
+ // 修②:**键名允许含冒号**。YAML 键名可以带 `:`(如 `include:aaa:`、`include:mnemon-xxx:`),
399
+ // 原正则 `([^\s:][^:]*?)` 明确禁止冒号 ⇒ 这类行不被识别为键、不压栈 ⇒ 它们下面的子键
400
+ // 挂错父级 ⇒ 同样被误删(issue 里的"位置 1",隐蔽、不报错,只是 auto-capture 拿不到数据源)。
401
+ // `(?!-)` 保留:行首 `-` 已由上面的列表项分支处理,这里只认真正的键。
402
+ const mK = /^(\s*)(?!-)(\S.*?):(\s|$)/.exec(l);
379
403
  if (!mK) continue;
380
404
  const keyIndent = mK[1].length;
381
405
  const key = mK[2];