botmux 3.18.2 → 3.18.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.
- package/dist/.runtime-build-id +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +28 -3
- package/dist/cli.js.map +1 -1
- package/dist/core/fleet-state-store.d.ts.map +1 -1
- package/dist/core/fleet-state-store.js +6 -0
- package/dist/core/fleet-state-store.js.map +1 -1
- package/dist/core/fleet-supervisor-policy.d.ts +38 -6
- package/dist/core/fleet-supervisor-policy.d.ts.map +1 -1
- package/dist/core/fleet-supervisor-policy.js +32 -9
- package/dist/core/fleet-supervisor-policy.js.map +1 -1
- package/dist/core/fleet-supervisor.d.ts +39 -0
- package/dist/core/fleet-supervisor.d.ts.map +1 -1
- package/dist/core/fleet-supervisor.js +61 -9
- package/dist/core/fleet-supervisor.js.map +1 -1
- package/dist/core/reply-target.d.ts +27 -0
- package/dist/core/reply-target.d.ts.map +1 -1
- package/dist/core/reply-target.js +58 -0
- package/dist/core/reply-target.js.map +1 -1
- package/dist/daemon.d.ts +3 -0
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +19 -5
- package/dist/daemon.js.map +1 -1
- package/dist/im/lark/event-dispatcher.d.ts +13 -0
- package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
- package/dist/im/lark/event-dispatcher.js +22 -1
- package/dist/im/lark/event-dispatcher.js.map +1 -1
- package/dist/platform/tunnel-client.d.ts +27 -0
- package/dist/platform/tunnel-client.d.ts.map +1 -1
- package/dist/platform/tunnel-client.js +205 -22
- package/dist/platform/tunnel-client.js.map +1 -1
- package/dist/services/send-policy.d.ts +38 -0
- package/dist/services/send-policy.d.ts.map +1 -1
- package/dist/services/send-policy.js +33 -0
- package/dist/services/send-policy.js.map +1 -1
- package/dist/types.d.ts +16 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/child-env.d.ts +41 -0
- package/dist/utils/child-env.d.ts.map +1 -1
- package/dist/utils/child-env.js +53 -0
- package/dist/utils/child-env.js.map +1 -1
- package/package.json +7 -7
package/dist/.runtime-build-id
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
018d6e16d9a6634e58a2069b431c5c3d9839ceca95cbb9f750cd9afb30cd7e58
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AA8BA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAgLhD,OAAO,EAAE,KAAK,KAAK,EAA0C,MAAM,yBAAyB,CAAC;AAujB7F;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,iBAAiB,CAAC,EAAE,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,GAAG,OAAO,CACpF;IACE,EAAE,EAAE,IAAI,CAAC;IACT,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,KAAK,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,oDAAoD;IACpD,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,GACD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,WAAW,CAAA;CAAE,CACrC,CA6LA;AAmlDD,MAAM,MAAM,kBAAkB,GAC1B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,SAAS,GAAG,gBAAgB,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GACtE;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,WAAW,GAAG,WAAW,GAAG,YAAY,GAAG,SAAS,GAAG,kBAAkB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtH,MAAM,MAAM,iBAAiB,GACzB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,SAAS,GAAG,iBAAiB,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GACvE;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,WAAW,GAAG,YAAY,GAAG,SAAS,GAAG,kBAAkB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AA8BA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAgLhD,OAAO,EAAE,KAAK,KAAK,EAA0C,MAAM,yBAAyB,CAAC;AAujB7F;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,iBAAiB,CAAC,EAAE,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,GAAG,OAAO,CACpF;IACE,EAAE,EAAE,IAAI,CAAC;IACT,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,KAAK,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,oDAAoD;IACpD,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,GACD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,WAAW,CAAA;CAAE,CACrC,CA6LA;AAmlDD,MAAM,MAAM,kBAAkB,GAC1B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,SAAS,GAAG,gBAAgB,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GACtE;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,WAAW,GAAG,WAAW,GAAG,YAAY,GAAG,SAAS,GAAG,kBAAkB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtH,MAAM,MAAM,iBAAiB,GACzB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,SAAS,GAAG,iBAAiB,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GACvE;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,WAAW,GAAG,YAAY,GAAG,SAAS,GAAG,kBAAkB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAooQxG;;;;;;;;;;;GAWG;AACH,wBAAsB,OAAO,CAC3B,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EACvC,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,qBAAqB,EAAE,SAAS,CAAC,EAC9F,KAAK,EAAE,MAAM,EACb,mBAAmB,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,2BAA2B,EAAE,UAAU,GAAG,IAAI,CAAC;AAC1F;qDACqD;AACrD,wBAAwB,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,2BAA2B,EAAE,UAAU,GAAG,IAAI,CAAC,GAClH,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAuL7B"}
|
package/dist/cli.js
CHANGED
|
@@ -6490,7 +6490,7 @@ import { renderBrandTemplate } from './im/lark/brand-template.js';
|
|
|
6490
6490
|
import { effectiveDefaultWorkingDir, loadBotConfigs, resolveBrandLabel, resolveUsageDisplay } from './bot-registry.js';
|
|
6491
6491
|
import { config } from './config.js';
|
|
6492
6492
|
import { getSessionUsageSnapshot } from './core/cost-calculator.js';
|
|
6493
|
-
import { resolveQuoteTarget, validateMentionDecision, mentionBackAmbiguity, mentionBackAmbiguityError, parseAttentionFlag, attentionUsageError, managedVcQuoteError, managedVcCustomCardError, managedVcSendControlError, managedVcSendPayloadError, containsLarkAtTag, } from './services/send-policy.js';
|
|
6493
|
+
import { resolveQuoteTarget, shouldDropAfterTheFactTopicQuote, validateMentionDecision, mentionBackAmbiguity, mentionBackAmbiguityError, parseAttentionFlag, attentionUsageError, managedVcQuoteError, managedVcCustomCardError, managedVcSendControlError, managedVcSendPayloadError, containsLarkAtTag, } from './services/send-policy.js';
|
|
6494
6494
|
/**
|
|
6495
6495
|
* Sandbox relay mode for `botmux send`. Inside a file-sandbox the CLI cannot
|
|
6496
6496
|
* read bots.json or reach Lark directly (creds are deliberately absent), so we
|
|
@@ -8012,7 +8012,7 @@ async function cmdSend(rest) {
|
|
|
8012
8012
|
process.exit(1);
|
|
8013
8013
|
}
|
|
8014
8014
|
}
|
|
8015
|
-
const { sendMessage, replyMessage, uploadImage, uploadFile, MessageWithdrawnError, getChatModeStrict } = await import('./im/lark/client.js');
|
|
8015
|
+
const { sendMessage, replyMessage, uploadImage, uploadFile, MessageWithdrawnError, getChatModeStrict, getMessageThreadId } = await import('./im/lark/client.js');
|
|
8016
8016
|
const appId = s.larkAppId;
|
|
8017
8017
|
// Effective target chat for top-level mode (defaults to session's chat)
|
|
8018
8018
|
const targetChatId = overrideChatId ?? s.chatId;
|
|
@@ -8222,6 +8222,31 @@ async function cmdSend(rest) {
|
|
|
8222
8222
|
?? frozenTurnDispatch?.quoteTargetId
|
|
8223
8223
|
?? s.quoteTargetId,
|
|
8224
8224
|
});
|
|
8225
|
+
// 「顶层 @ 之后那条消息才被开成话题」的发送侧半边。飞书的 reply 接口让回复继承
|
|
8226
|
+
// 被引用消息**此刻**的话题归属(`reply_in_thread:false` 只是不新开话题,逃不出
|
|
8227
|
+
// 已有话题),所以引用一条事后被开成话题的顶层消息,会把回复带进用户根本没在
|
|
8228
|
+
// 其中 @ 过 bot 的话题里 —— dispatcher 侧的 fold 只管住了卡片,正文由这里决定。
|
|
8229
|
+
//
|
|
8230
|
+
// 只在「该轮确证从顶层进来(inThread === false)且本次真要 quote」时才探测一次
|
|
8231
|
+
// 飞书;话题内轮次、`--top-level`、`--no-quote`、`--quote`、thread-scope 全部在
|
|
8232
|
+
// 上面或 `shouldDropAfterTheFactTopicQuote` 里短路,普通热路径不多付这次调用。
|
|
8233
|
+
// 探测失败一律保持 quote(既有默认行为),绝不因为不确定就改变所有正常回复的落点。
|
|
8234
|
+
const quotedTurnInThread = quoteTargetId
|
|
8235
|
+
? (s.turnReplyContexts?.[currentTurnId ?? '']?.inThread
|
|
8236
|
+
?? s.turnReplyContexts?.[quoteTargetId]?.inThread)
|
|
8237
|
+
: undefined;
|
|
8238
|
+
let effectiveQuoteTargetId = quoteTargetId;
|
|
8239
|
+
if (quoteTargetId && !explicitQuote && quotedTurnInThread === false) {
|
|
8240
|
+
const probedThreadId = await getMessageThreadId(appId, quoteTargetId).catch(() => undefined);
|
|
8241
|
+
if (shouldDropAfterTheFactTopicQuote({
|
|
8242
|
+
quoteTargetId,
|
|
8243
|
+
quotedTurnInThread,
|
|
8244
|
+
currentThreadId: probedThreadId,
|
|
8245
|
+
explicitQuote,
|
|
8246
|
+
})) {
|
|
8247
|
+
effectiveQuoteTargetId = undefined;
|
|
8248
|
+
}
|
|
8249
|
+
}
|
|
8225
8250
|
let primaryQuotedId = null;
|
|
8226
8251
|
let vcMeetingListenerReplyReplay = false;
|
|
8227
8252
|
const dispatchPrimary = async (content, msgType, originAlreadyRevalidated = false) => {
|
|
@@ -8230,7 +8255,7 @@ async function cmdSend(rest) {
|
|
|
8230
8255
|
revalidateVcMeetingManagedSend();
|
|
8231
8256
|
const proposedOutput = {
|
|
8232
8257
|
targetChatId,
|
|
8233
|
-
...(
|
|
8258
|
+
...(effectiveQuoteTargetId ? { quoteTargetId: effectiveQuoteTargetId } : {}),
|
|
8234
8259
|
msgType,
|
|
8235
8260
|
content,
|
|
8236
8261
|
};
|