@ai-setting/roy-agent-core 1.7.85 → 1.7.88
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/config/index.js +7 -7
- package/dist/env/agent/agent-component.d.ts +1 -1
- package/dist/env/agent/agent-component.js +13 -12
- package/dist/env/agent/index.js +13 -12
- package/dist/env/agent/types.d.ts +14 -0
- package/dist/env/commands/index.js +7 -7
- package/dist/env/context/index.js +3 -3
- package/dist/env/debug/index.js +7 -7
- package/dist/env/error-reply.js +1 -1
- package/dist/env/event-source/event-source-handlers.d.ts +18 -2
- package/dist/env/event-source/event-source-handlers.js +26 -21
- package/dist/env/event-source/event-store.js +2 -2
- package/dist/env/event-source/index.js +25 -22
- package/dist/env/event-source/timer-handler.d.ts +98 -0
- package/dist/env/event-source/types.d.ts +53 -1
- package/dist/env/event-source/wecom-card-action-handler.d.ts +235 -3
- package/dist/env/event-source/wecom-card-builder.d.ts +207 -1
- package/dist/env/event-source/wecom-cli-handler.d.ts +25 -0
- package/dist/{shared/@ai-setting/roy-agent-core-vyr6svt6.js → env/event-source/wecom-respond-registry.js} +8 -6
- package/dist/env/event-source/wecom-session-card-sender.d.ts +135 -0
- package/dist/env/event-source/wecom-session-card-sender.js +153 -0
- package/dist/env/hook/index.js +5 -5
- package/dist/env/index.js +49 -45
- package/dist/env/llm/index.js +9 -8
- package/dist/env/log-trace/index.js +7 -7
- package/dist/env/log-trace/trace-filters.d.ts +6 -1
- package/dist/env/mcp/index.js +7 -7
- package/dist/env/memory/index.js +7 -7
- package/dist/env/plugin/index.js +7 -7
- package/dist/env/prompt/index.js +8 -8
- package/dist/env/prompt/prompts-index.d.ts +1 -1
- package/dist/env/session/group-session-link.d.ts +99 -0
- package/dist/env/session/index.js +11 -10
- package/dist/env/session/session-component.d.ts +89 -0
- package/dist/env/session/storage/index.js +5 -4
- package/dist/env/session/types.d.ts +10 -0
- package/dist/env/skill/index.js +7 -7
- package/dist/env/task/delegate/delegate-channel-hint.d.ts +39 -0
- package/dist/env/task/delegate/delegate-tool.d.ts +71 -6
- package/dist/env/task/delegate/delegate-tool.js +11 -9
- package/dist/env/task/delegate/index.js +8 -8
- package/dist/env/task/index.js +18 -18
- package/dist/env/task/mcp/index.js +4 -4
- package/dist/env/task/plugins/card-subject.d.ts +117 -0
- package/dist/env/task/plugins/index.js +19 -17
- package/dist/env/task/plugins/lark-card-action-handler.d.ts +261 -6
- package/dist/env/task/plugins/lark-card-patch-notifier.d.ts +501 -0
- package/dist/env/task/plugins/lark-card-patch-notifier.js +12 -2
- package/dist/env/task/plugins/lark-card-state-store.d.ts +60 -0
- package/dist/env/task/plugins/lark-cli-task-notify-plugin.d.ts +45 -0
- package/dist/env/task/plugins/sub-session-activity.d.ts +415 -0
- package/dist/env/task/plugins/wecom-session-card-store.d.ts +134 -0
- package/dist/env/task/plugins/wecom-session-card-store.js +23 -0
- package/dist/env/task/plugins/wecom-task-notify-plugin.d.ts +40 -0
- package/dist/env/task/storage/index.js +3 -3
- package/dist/env/task/tools/index.js +4 -4
- package/dist/env/tool/built-in/index.js +6 -4
- package/dist/env/tool/index.js +14 -10
- package/dist/env/tool/types.d.ts +25 -0
- package/dist/env/tool/validator.d.ts +8 -0
- package/dist/env/workflow/engine/index.js +12 -12
- package/dist/env/workflow/hooks/index.js +7 -7
- package/dist/env/workflow/index.js +24 -23
- package/dist/env/workflow/nodes/index.js +2 -2
- package/dist/env/workflow/plugins/index.js +10 -8
- package/dist/env/workflow/service/index.js +2 -2
- package/dist/env/workflow/storage/index.js +3 -3
- package/dist/env/workflow/tools/index.js +16 -15
- package/dist/env/workflow/utils/index.js +4 -4
- package/dist/index.js +65 -60
- package/dist/shared/@ai-setting/{roy-agent-core-dc9zq75z.js → roy-agent-core-0crmsc12.js} +3 -3
- package/dist/shared/@ai-setting/{roy-agent-core-cha0jc7n.js → roy-agent-core-0sbmdz8d.js} +137 -16
- package/dist/shared/@ai-setting/{roy-agent-core-87942bw4.js → roy-agent-core-1mhyh4c5.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-v6vr6za7.js → roy-agent-core-1vv4fx15.js} +4 -4
- package/dist/shared/@ai-setting/{roy-agent-core-nwbfepba.js → roy-agent-core-3e040tc5.js} +1 -1
- package/dist/shared/@ai-setting/roy-agent-core-418zc9ha.js +288 -0
- package/dist/shared/@ai-setting/{roy-agent-core-r5wt1h3c.js → roy-agent-core-4fkxy2gv.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-na18zwj0.js → roy-agent-core-4t3yskp8.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-5pr4zp88.js → roy-agent-core-5kzhaap1.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-qq96p0tj.js → roy-agent-core-5s2t8z00.js} +22 -1
- package/dist/shared/@ai-setting/{roy-agent-core-6rh8k6ba.js → roy-agent-core-6gj1hc5z.js} +7 -7
- package/dist/shared/@ai-setting/{roy-agent-core-ezvpreqz.js → roy-agent-core-6k8mb7zx.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-g8htfwxj.js → roy-agent-core-7f10p7m2.js} +1 -1
- package/dist/shared/@ai-setting/roy-agent-core-7kvpc0w5.js +177 -0
- package/dist/shared/@ai-setting/{roy-agent-core-h21gngxf.js → roy-agent-core-7yh5wps0.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-efkjyh69.js → roy-agent-core-9710zwwz.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-rykf7c04.js → roy-agent-core-9c565frx.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-fghc2m8z.js → roy-agent-core-aa8kv18f.js} +34 -2
- package/dist/shared/@ai-setting/{roy-agent-core-p6ks90tb.js → roy-agent-core-an35dzbf.js} +6 -6
- package/dist/shared/@ai-setting/{roy-agent-core-7bpj859q.js → roy-agent-core-azyz78ky.js} +7 -7
- package/dist/shared/@ai-setting/{roy-agent-core-264qexac.js → roy-agent-core-b7h39vrc.js} +4 -4
- package/dist/shared/@ai-setting/{roy-agent-core-dqxec05w.js → roy-agent-core-bjtc9d35.js} +2 -2
- package/dist/shared/@ai-setting/roy-agent-core-c4ec7k0p.js +426 -0
- package/dist/shared/@ai-setting/{roy-agent-core-ddyk1rc0.js → roy-agent-core-cre2y2ct.js} +160 -4
- package/dist/shared/@ai-setting/{roy-agent-core-tr3ep81v.js → roy-agent-core-d6zdbgtc.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-0qyrk5k0.js → roy-agent-core-ds6qzmf8.js} +14 -5
- package/dist/shared/@ai-setting/{roy-agent-core-cgtq6427.js → roy-agent-core-e08bvpaq.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-12n08pg5.js → roy-agent-core-e69qxdyy.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-qk9hd89p.js → roy-agent-core-fan8g0z1.js} +10 -10
- package/dist/shared/@ai-setting/{roy-agent-core-xcp8vwax.js → roy-agent-core-fepm835e.js} +2 -2
- package/dist/shared/@ai-setting/{roy-agent-core-6j02sbee.js → roy-agent-core-fhg03v43.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-dvtg4sn0.js → roy-agent-core-g8yr733d.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-xf6z96qy.js → roy-agent-core-gr5h1dyr.js} +818 -346
- package/dist/shared/@ai-setting/{roy-agent-core-m3vjepzz.js → roy-agent-core-h1e1fm9b.js} +38 -202
- package/dist/shared/@ai-setting/{roy-agent-core-c2gbt68e.js → roy-agent-core-h83zdsrq.js} +2 -2
- package/dist/shared/@ai-setting/{roy-agent-core-tk98f92b.js → roy-agent-core-k3gcvybs.js} +2 -2
- package/dist/shared/@ai-setting/{roy-agent-core-pgvcf91v.js → roy-agent-core-m39v7qpx.js} +2 -2
- package/dist/shared/@ai-setting/{roy-agent-core-tm1mxttk.js → roy-agent-core-mf5p38yf.js} +2 -2
- package/dist/shared/@ai-setting/{roy-agent-core-83bewqx8.js → roy-agent-core-mvh0td7p.js} +2 -2
- package/dist/shared/@ai-setting/{roy-agent-core-ze5cqpf2.js → roy-agent-core-mx855td4.js} +17 -38
- package/dist/shared/@ai-setting/{roy-agent-core-0dh8npnz.js → roy-agent-core-n197medr.js} +13 -13
- package/dist/shared/@ai-setting/{roy-agent-core-cmprygrp.js → roy-agent-core-nqkfkpf4.js} +4 -4
- package/dist/shared/@ai-setting/{roy-agent-core-7cbpmk4q.js → roy-agent-core-p31ftgq9.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-vffccgf6.js → roy-agent-core-qwd2dq5q.js} +10 -3
- package/dist/shared/@ai-setting/{roy-agent-core-b31v3qpv.js → roy-agent-core-ra66sf50.js} +990 -211
- package/dist/shared/@ai-setting/{roy-agent-core-1v4g0d4x.js → roy-agent-core-rm7seqwb.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-7dd0s3xb.js → roy-agent-core-shb1qsyg.js} +1027 -14
- package/dist/shared/@ai-setting/{roy-agent-core-ax9e9szb.js → roy-agent-core-smf94h73.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-acj8ag08.js → roy-agent-core-tjnabyvq.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-qqaak24r.js → roy-agent-core-tkpp1ba0.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-dkrvmjsh.js → roy-agent-core-tpm1dd1g.js} +23 -15
- package/dist/shared/@ai-setting/{roy-agent-core-ed233k5z.js → roy-agent-core-v1n0106v.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-zxz5fkwj.js → roy-agent-core-v6yshv0z.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-mcy5apay.js → roy-agent-core-vf9sp6s3.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-q813vafd.js → roy-agent-core-vpcxv1ty.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-xvt7kf7p.js → roy-agent-core-w9ryeg2p.js} +3 -3
- package/dist/shared/@ai-setting/{roy-agent-core-es203w7p.js → roy-agent-core-wqs6yypq.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-d1n4jbza.js → roy-agent-core-wr1qexzq.js} +5 -5
- package/dist/shared/@ai-setting/roy-agent-core-wxrkcb17.js +56 -0
- package/dist/shared/@ai-setting/{roy-agent-core-0snm5hc5.js → roy-agent-core-y6shd91r.js} +1 -1
- package/dist/shared/@ai-setting/{roy-agent-core-9vxh6f8h.js → roy-agent-core-y7fqtzk2.js} +7 -7
- package/dist/shared/@ai-setting/{roy-agent-core-cpcd24n2.js → roy-agent-core-yet36q5k.js} +2 -2
- package/dist/shared/@ai-setting/{roy-agent-core-3fh1f7s7.js → roy-agent-core-yfpnkc4z.js} +5 -5
- package/dist/shared/@ai-setting/{roy-agent-core-begm7ytz.js → roy-agent-core-yh68z1bg.js} +3 -3
- package/package.json +9 -1
package/dist/config/index.js
CHANGED
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
ConfigSourceNotFoundError,
|
|
5
5
|
FileSource,
|
|
6
6
|
MemorySource
|
|
7
|
-
} from "../shared/@ai-setting/roy-agent-core-
|
|
7
|
+
} from "../shared/@ai-setting/roy-agent-core-v6yshv0z.js";
|
|
8
8
|
import {
|
|
9
9
|
EnvSource,
|
|
10
10
|
parseJSONC,
|
|
@@ -24,12 +24,12 @@ import {
|
|
|
24
24
|
} from "../shared/@ai-setting/roy-agent-core-2stt4rp5.js";
|
|
25
25
|
import"../shared/@ai-setting/roy-agent-core-qxnbvgwe.js";
|
|
26
26
|
import"../shared/@ai-setting/roy-agent-core-7hh0brvs.js";
|
|
27
|
-
import"../shared/@ai-setting/roy-agent-core-
|
|
28
|
-
import"../shared/@ai-setting/roy-agent-core-
|
|
29
|
-
import"../shared/@ai-setting/roy-agent-core-
|
|
30
|
-
import"../shared/@ai-setting/roy-agent-core-
|
|
31
|
-
import"../shared/@ai-setting/roy-agent-core-
|
|
32
|
-
import"../shared/@ai-setting/roy-agent-core-
|
|
27
|
+
import"../shared/@ai-setting/roy-agent-core-m39v7qpx.js";
|
|
28
|
+
import"../shared/@ai-setting/roy-agent-core-smf94h73.js";
|
|
29
|
+
import"../shared/@ai-setting/roy-agent-core-yet36q5k.js";
|
|
30
|
+
import"../shared/@ai-setting/roy-agent-core-tkpp1ba0.js";
|
|
31
|
+
import"../shared/@ai-setting/roy-agent-core-p31ftgq9.js";
|
|
32
|
+
import"../shared/@ai-setting/roy-agent-core-5s2t8z00.js";
|
|
33
33
|
import"../shared/@ai-setting/roy-agent-core-7f7t9wwp.js";
|
|
34
34
|
import"../shared/@ai-setting/roy-agent-core-85xyctnb.js";
|
|
35
35
|
import"../shared/@ai-setting/roy-agent-core-fs0mn2jk.js";
|
|
@@ -202,7 +202,7 @@ export interface AgentComponentOptions {
|
|
|
202
202
|
* @param agent 当前请求工具列表的 agent
|
|
203
203
|
* @returns 过滤后的新数组(保留原数组的相对顺序)
|
|
204
204
|
*/
|
|
205
|
-
export declare function filterToolsByAgent(tools: Tool[], agent: AgentInstance): Tool[];
|
|
205
|
+
export declare function filterToolsByAgent(tools: Tool[], agent: AgentInstance, extendTools?: string[]): Tool[];
|
|
206
206
|
/**
|
|
207
207
|
* 构建一次 Agent run 的 EnvContext(effectiveContext + 父级 ALS 继承)。
|
|
208
208
|
*
|
|
@@ -7,26 +7,27 @@ import {
|
|
|
7
7
|
filterToolsByAgent,
|
|
8
8
|
parseToolList,
|
|
9
9
|
toLLMMessage
|
|
10
|
-
} from "../../shared/@ai-setting/roy-agent-core-
|
|
11
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
10
|
+
} from "../../shared/@ai-setting/roy-agent-core-tpm1dd1g.js";
|
|
11
|
+
import"../../shared/@ai-setting/roy-agent-core-mx855td4.js";
|
|
12
12
|
import"../../shared/@ai-setting/roy-agent-core-jvv2h3d6.js";
|
|
13
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
13
|
+
import"../../shared/@ai-setting/roy-agent-core-v1n0106v.js";
|
|
14
14
|
import"../../shared/@ai-setting/roy-agent-core-qxnbvgwe.js";
|
|
15
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
16
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
17
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
15
|
+
import"../../shared/@ai-setting/roy-agent-core-7yh5wps0.js";
|
|
16
|
+
import"../../shared/@ai-setting/roy-agent-core-y6shd91r.js";
|
|
17
|
+
import"../../shared/@ai-setting/roy-agent-core-aa8kv18f.js";
|
|
18
|
+
import"../../shared/@ai-setting/roy-agent-core-wxrkcb17.js";
|
|
18
19
|
import"../../shared/@ai-setting/roy-agent-core-zjdzk1gg.js";
|
|
19
20
|
import"../../shared/@ai-setting/roy-agent-core-c1v263jn.js";
|
|
20
21
|
import"../../shared/@ai-setting/roy-agent-core-ntn32q7j.js";
|
|
21
22
|
import"../../shared/@ai-setting/roy-agent-core-mkc3zshb.js";
|
|
22
23
|
import"../../shared/@ai-setting/roy-agent-core-ctdhjv68.js";
|
|
23
24
|
import"../../shared/@ai-setting/roy-agent-core-7hh0brvs.js";
|
|
24
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
25
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
26
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
27
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
28
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
29
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
25
|
+
import"../../shared/@ai-setting/roy-agent-core-m39v7qpx.js";
|
|
26
|
+
import"../../shared/@ai-setting/roy-agent-core-smf94h73.js";
|
|
27
|
+
import"../../shared/@ai-setting/roy-agent-core-yet36q5k.js";
|
|
28
|
+
import"../../shared/@ai-setting/roy-agent-core-tkpp1ba0.js";
|
|
29
|
+
import"../../shared/@ai-setting/roy-agent-core-p31ftgq9.js";
|
|
30
|
+
import"../../shared/@ai-setting/roy-agent-core-5s2t8z00.js";
|
|
30
31
|
import"../../shared/@ai-setting/roy-agent-core-7f7t9wwp.js";
|
|
31
32
|
import"../../shared/@ai-setting/roy-agent-core-85xyctnb.js";
|
|
32
33
|
import"../../shared/@ai-setting/roy-agent-core-fs0mn2jk.js";
|
package/dist/env/agent/index.js
CHANGED
|
@@ -4,26 +4,27 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
AgentComponent,
|
|
6
6
|
AgentComponentConfigSchema
|
|
7
|
-
} from "../../shared/@ai-setting/roy-agent-core-
|
|
8
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
7
|
+
} from "../../shared/@ai-setting/roy-agent-core-tpm1dd1g.js";
|
|
8
|
+
import"../../shared/@ai-setting/roy-agent-core-mx855td4.js";
|
|
9
9
|
import"../../shared/@ai-setting/roy-agent-core-jvv2h3d6.js";
|
|
10
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
10
|
+
import"../../shared/@ai-setting/roy-agent-core-v1n0106v.js";
|
|
11
11
|
import"../../shared/@ai-setting/roy-agent-core-qxnbvgwe.js";
|
|
12
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
13
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
14
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
12
|
+
import"../../shared/@ai-setting/roy-agent-core-7yh5wps0.js";
|
|
13
|
+
import"../../shared/@ai-setting/roy-agent-core-y6shd91r.js";
|
|
14
|
+
import"../../shared/@ai-setting/roy-agent-core-aa8kv18f.js";
|
|
15
|
+
import"../../shared/@ai-setting/roy-agent-core-wxrkcb17.js";
|
|
15
16
|
import"../../shared/@ai-setting/roy-agent-core-zjdzk1gg.js";
|
|
16
17
|
import"../../shared/@ai-setting/roy-agent-core-c1v263jn.js";
|
|
17
18
|
import"../../shared/@ai-setting/roy-agent-core-ntn32q7j.js";
|
|
18
19
|
import"../../shared/@ai-setting/roy-agent-core-mkc3zshb.js";
|
|
19
20
|
import"../../shared/@ai-setting/roy-agent-core-ctdhjv68.js";
|
|
20
21
|
import"../../shared/@ai-setting/roy-agent-core-7hh0brvs.js";
|
|
21
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
22
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
23
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
24
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
25
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
26
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
22
|
+
import"../../shared/@ai-setting/roy-agent-core-m39v7qpx.js";
|
|
23
|
+
import"../../shared/@ai-setting/roy-agent-core-smf94h73.js";
|
|
24
|
+
import"../../shared/@ai-setting/roy-agent-core-yet36q5k.js";
|
|
25
|
+
import"../../shared/@ai-setting/roy-agent-core-tkpp1ba0.js";
|
|
26
|
+
import"../../shared/@ai-setting/roy-agent-core-p31ftgq9.js";
|
|
27
|
+
import"../../shared/@ai-setting/roy-agent-core-5s2t8z00.js";
|
|
27
28
|
import"../../shared/@ai-setting/roy-agent-core-7f7t9wwp.js";
|
|
28
29
|
import"../../shared/@ai-setting/roy-agent-core-85xyctnb.js";
|
|
29
30
|
import"../../shared/@ai-setting/roy-agent-core-fs0mn2jk.js";
|
|
@@ -145,6 +145,20 @@ export interface AgentContext {
|
|
|
145
145
|
pluginEnabled?: Record<string, boolean>;
|
|
146
146
|
/** 额外工具列表(上下文级别,会追加到可用工具列表末尾) */
|
|
147
147
|
extraTools?: import("../tool/types").Tool[];
|
|
148
|
+
/**
|
|
149
|
+
* ★ Task #5333 — 放行的 channel-only 工具名单(会话渠道上下文)。
|
|
150
|
+
*
|
|
151
|
+
* 由事件源驱动的一轮对话注入(EventSourceConfig.extendTools →
|
|
152
|
+
* evt.metadata.extendTools → agentContext.extendTools)。
|
|
153
|
+
*
|
|
154
|
+
* `tool.metadata.channelOnly === true` 的工具只有名字出现在这里时才可见;
|
|
155
|
+
* 未标记 channelOnly 的工具完全不受影响。
|
|
156
|
+
*
|
|
157
|
+
* 典型:企微 ES 注入 `["wecom_respond"]`,于是处理企微事件的 agent
|
|
158
|
+
* (可能是 default)能看到 wecom_respond;而同名 default agent
|
|
159
|
+
* 在交互式 CLI / 飞书会话里看不到它。
|
|
160
|
+
*/
|
|
161
|
+
extendTools?: string[];
|
|
148
162
|
/** 是否将 ReAct 消息持久化到 session DB(默认 true)。
|
|
149
163
|
* 设为 false 时,agent run 仍会读取 session history,但不会写入新消息。
|
|
150
164
|
* 用于子 agent 复用父 session 的 history 但不污染 session DB。 */
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
CommandsComponent
|
|
3
|
-
} from "../../shared/@ai-setting/roy-agent-core-
|
|
3
|
+
} from "../../shared/@ai-setting/roy-agent-core-7f10p7m2.js";
|
|
4
4
|
import"../../shared/@ai-setting/roy-agent-core-7hh0brvs.js";
|
|
5
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
6
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
7
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
8
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
9
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
10
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
5
|
+
import"../../shared/@ai-setting/roy-agent-core-m39v7qpx.js";
|
|
6
|
+
import"../../shared/@ai-setting/roy-agent-core-smf94h73.js";
|
|
7
|
+
import"../../shared/@ai-setting/roy-agent-core-yet36q5k.js";
|
|
8
|
+
import"../../shared/@ai-setting/roy-agent-core-tkpp1ba0.js";
|
|
9
|
+
import"../../shared/@ai-setting/roy-agent-core-p31ftgq9.js";
|
|
10
|
+
import"../../shared/@ai-setting/roy-agent-core-5s2t8z00.js";
|
|
11
11
|
import"../../shared/@ai-setting/roy-agent-core-7f7t9wwp.js";
|
|
12
12
|
import"../../shared/@ai-setting/roy-agent-core-85xyctnb.js";
|
|
13
13
|
import"../../shared/@ai-setting/roy-agent-core-fs0mn2jk.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
init_context
|
|
3
|
-
} from "../../shared/@ai-setting/roy-agent-core-
|
|
3
|
+
} from "../../shared/@ai-setting/roy-agent-core-tkpp1ba0.js";
|
|
4
4
|
import {
|
|
5
5
|
EVENT_ENV_PREFIX,
|
|
6
6
|
createEnvContext,
|
|
@@ -24,8 +24,8 @@ import {
|
|
|
24
24
|
runWithEnvContextAsync,
|
|
25
25
|
serializeEventToEnv,
|
|
26
26
|
setCurrentTaskId
|
|
27
|
-
} from "../../shared/@ai-setting/roy-agent-core-
|
|
28
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
27
|
+
} from "../../shared/@ai-setting/roy-agent-core-p31ftgq9.js";
|
|
28
|
+
import"../../shared/@ai-setting/roy-agent-core-5s2t8z00.js";
|
|
29
29
|
import"../../shared/@ai-setting/roy-agent-core-7f7t9wwp.js";
|
|
30
30
|
import"../../shared/@ai-setting/roy-agent-core-85xyctnb.js";
|
|
31
31
|
import"../../shared/@ai-setting/roy-agent-core-fs0mn2jk.js";
|
package/dist/env/debug/index.js
CHANGED
|
@@ -4,18 +4,18 @@ import {
|
|
|
4
4
|
RegexParser,
|
|
5
5
|
SpanBuilder,
|
|
6
6
|
SpanDbReader
|
|
7
|
-
} from "../../shared/@ai-setting/roy-agent-core-
|
|
7
|
+
} from "../../shared/@ai-setting/roy-agent-core-1mhyh4c5.js";
|
|
8
8
|
import {
|
|
9
9
|
ReplFormatter,
|
|
10
10
|
TraceFormatter,
|
|
11
11
|
TreeFormatter
|
|
12
12
|
} from "../../shared/@ai-setting/roy-agent-core-rvv6ydff.js";
|
|
13
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
14
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
15
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
16
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
17
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
18
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
13
|
+
import"../../shared/@ai-setting/roy-agent-core-m39v7qpx.js";
|
|
14
|
+
import"../../shared/@ai-setting/roy-agent-core-smf94h73.js";
|
|
15
|
+
import"../../shared/@ai-setting/roy-agent-core-yet36q5k.js";
|
|
16
|
+
import"../../shared/@ai-setting/roy-agent-core-tkpp1ba0.js";
|
|
17
|
+
import"../../shared/@ai-setting/roy-agent-core-p31ftgq9.js";
|
|
18
|
+
import"../../shared/@ai-setting/roy-agent-core-5s2t8z00.js";
|
|
19
19
|
import"../../shared/@ai-setting/roy-agent-core-7f7t9wwp.js";
|
|
20
20
|
import"../../shared/@ai-setting/roy-agent-core-85xyctnb.js";
|
|
21
21
|
import"../../shared/@ai-setting/roy-agent-core-fs0mn2jk.js";
|
package/dist/env/error-reply.js
CHANGED
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
getFailureRuleIds,
|
|
9
9
|
humanizeRetryAfter,
|
|
10
10
|
notifyReactFailure
|
|
11
|
-
} from "../shared/@ai-setting/roy-agent-core-
|
|
11
|
+
} from "../shared/@ai-setting/roy-agent-core-9c565frx.js";
|
|
12
12
|
import"../shared/@ai-setting/roy-agent-core-ntn32q7j.js";
|
|
13
13
|
import"../shared/@ai-setting/roy-agent-core-m880qz3y.js";
|
|
14
14
|
import"../shared/@ai-setting/roy-agent-core-7f7t9wwp.js";
|
|
@@ -9,6 +9,20 @@ import type { EventSourceConfig, EventSourceHandler, EventSourceInstance, EventS
|
|
|
9
9
|
import { timerHandler } from "./timer-handler";
|
|
10
10
|
import { bountyIMHandler } from "./bounty-im-handler";
|
|
11
11
|
import { bountyCliHandler } from "./bounty-cli-handler";
|
|
12
|
+
/**
|
|
13
|
+
* ★ Task #5473:从原始 event 提取 agent 回复必需的精简字段。
|
|
14
|
+
*
|
|
15
|
+
* 保留:chat_id / message_id / sender_id / chat_type / content / mentions
|
|
16
|
+
* 删除:createTime / updateTime / type / event_id / timestamp / id /
|
|
17
|
+
* message_type / sender_type(及其他所有冗余栏位)
|
|
18
|
+
*
|
|
19
|
+
* 支持两种格式:
|
|
20
|
+
* - 简化格式(lark-cli consume):顶层 chat_id / message_id / sender_id
|
|
21
|
+
* - 嵌套格式(webhook):event.message.* / event.sender.sender_id.*
|
|
22
|
+
*
|
|
23
|
+
* 纯函数:不修改 rawEvent 本身(payload.rawEvent 仍持有完整原始 event)。
|
|
24
|
+
*/
|
|
25
|
+
export declare function buildSlimRawData(rawEvent: unknown): Record<string, unknown>;
|
|
12
26
|
/**
|
|
13
27
|
* 构建 Lark `im.message.receive_v1` 事件推荐动作 prompt (Task #2185 / #4137 / #4242)
|
|
14
28
|
*
|
|
@@ -55,6 +69,7 @@ export declare function buildLarkRecommendedAction(opts: {
|
|
|
55
69
|
appId?: string;
|
|
56
70
|
chatId?: string;
|
|
57
71
|
messageId?: string;
|
|
72
|
+
senderId?: string;
|
|
58
73
|
}): RecommendedAction;
|
|
59
74
|
/**
|
|
60
75
|
* 渠道静态规则章节标题(system prompt 与 lean 卡片互相指认的锚点)
|
|
@@ -71,9 +86,10 @@ export declare const LARK_CHANNEL_PROMPT_SECTION_TITLE = "\u2B50 \u98DE\u4E66\u5
|
|
|
71
86
|
* 但「各加一节」式回归会立刻超。改动相关章节前先量长度,
|
|
72
87
|
* 改完必须跑 lark-channel-system-prompt.test.ts (G) 组守护测试。
|
|
73
88
|
* (历史:旧 action 模板 ~4486 → profile=tongzhuli 时 4745 → #5164 追加
|
|
74
|
-
* 文档交付规范段后 4991 → #5212 追加引用上下文段后 5287
|
|
89
|
+
* 文档交付规范段后 4991 → #5212 追加引用上下文段后 5287 →
|
|
90
|
+
* #5472 关键 1 追加群聊 @ sender 可跑示例后 5808,预算 5300→5900。)
|
|
75
91
|
*/
|
|
76
|
-
export declare const LARK_PROMPT_LENGTH_BUDGET =
|
|
92
|
+
export declare const LARK_PROMPT_LENGTH_BUDGET = 5900;
|
|
77
93
|
/**
|
|
78
94
|
* 构建飞书渠道级 system prompt(ES-M1 lean 模式核心)。
|
|
79
95
|
*
|
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
bountyIMHandler,
|
|
7
7
|
buildLarkChannelSystemPrompt,
|
|
8
8
|
buildLarkRecommendedAction,
|
|
9
|
+
buildSlimRawData,
|
|
9
10
|
builtInHandlers,
|
|
10
11
|
extractCommandText,
|
|
11
12
|
extractMetadata,
|
|
@@ -16,41 +17,44 @@ import {
|
|
|
16
17
|
resolveLarkChannelSystemPrompt,
|
|
17
18
|
timerHandler,
|
|
18
19
|
wecomCliHandler
|
|
19
|
-
} from "../../shared/@ai-setting/roy-agent-core-
|
|
20
|
+
} from "../../shared/@ai-setting/roy-agent-core-gr5h1dyr.js";
|
|
20
21
|
import"../../shared/@ai-setting/roy-agent-core-vx8zc847.js";
|
|
21
22
|
import {
|
|
22
23
|
cliCommandHandler
|
|
23
24
|
} from "../../shared/@ai-setting/roy-agent-core-v0hf14bj.js";
|
|
24
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
25
|
+
import"../../shared/@ai-setting/roy-agent-core-7kvpc0w5.js";
|
|
26
|
+
import"../../shared/@ai-setting/roy-agent-core-mf5p38yf.js";
|
|
25
27
|
import"../../shared/@ai-setting/roy-agent-core-2stt4rp5.js";
|
|
26
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
27
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
28
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
29
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
30
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
28
|
+
import"../../shared/@ai-setting/roy-agent-core-ra66sf50.js";
|
|
29
|
+
import"../../shared/@ai-setting/roy-agent-core-h1e1fm9b.js";
|
|
30
|
+
import"../../shared/@ai-setting/roy-agent-core-c4ec7k0p.js";
|
|
31
|
+
import"../../shared/@ai-setting/roy-agent-core-4t3yskp8.js";
|
|
32
|
+
import"../../shared/@ai-setting/roy-agent-core-y7fqtzk2.js";
|
|
31
33
|
import"../../shared/@ai-setting/roy-agent-core-1pg0fepg.js";
|
|
32
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
34
|
+
import"../../shared/@ai-setting/roy-agent-core-d6zdbgtc.js";
|
|
33
35
|
import"../../shared/@ai-setting/roy-agent-core-m46fe3x4.js";
|
|
34
36
|
import"../../shared/@ai-setting/roy-agent-core-4rtg69cn.js";
|
|
35
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
36
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
37
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
38
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
39
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
40
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
37
|
+
import"../../shared/@ai-setting/roy-agent-core-wr1qexzq.js";
|
|
38
|
+
import"../../shared/@ai-setting/roy-agent-core-shb1qsyg.js";
|
|
39
|
+
import"../../shared/@ai-setting/roy-agent-core-418zc9ha.js";
|
|
40
|
+
import"../../shared/@ai-setting/roy-agent-core-6k8mb7zx.js";
|
|
41
|
+
import"../../shared/@ai-setting/roy-agent-core-9c565frx.js";
|
|
42
|
+
import"../../shared/@ai-setting/roy-agent-core-h83zdsrq.js";
|
|
43
|
+
import"../../shared/@ai-setting/roy-agent-core-rm7seqwb.js";
|
|
44
|
+
import"../../shared/@ai-setting/roy-agent-core-e08bvpaq.js";
|
|
41
45
|
import"../../shared/@ai-setting/roy-agent-core-er070zjq.js";
|
|
42
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
46
|
+
import"../../shared/@ai-setting/roy-agent-core-7yh5wps0.js";
|
|
43
47
|
import"../../shared/@ai-setting/roy-agent-core-ntn32q7j.js";
|
|
44
48
|
import"../../shared/@ai-setting/roy-agent-core-mkc3zshb.js";
|
|
45
49
|
import"../../shared/@ai-setting/roy-agent-core-az13yzmc.js";
|
|
46
50
|
import"../../shared/@ai-setting/roy-agent-core-m880qz3y.js";
|
|
47
51
|
import"../../shared/@ai-setting/roy-agent-core-7hh0brvs.js";
|
|
48
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
49
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
50
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
51
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
52
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
53
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
52
|
+
import"../../shared/@ai-setting/roy-agent-core-m39v7qpx.js";
|
|
53
|
+
import"../../shared/@ai-setting/roy-agent-core-smf94h73.js";
|
|
54
|
+
import"../../shared/@ai-setting/roy-agent-core-yet36q5k.js";
|
|
55
|
+
import"../../shared/@ai-setting/roy-agent-core-tkpp1ba0.js";
|
|
56
|
+
import"../../shared/@ai-setting/roy-agent-core-p31ftgq9.js";
|
|
57
|
+
import"../../shared/@ai-setting/roy-agent-core-5s2t8z00.js";
|
|
54
58
|
import"../../shared/@ai-setting/roy-agent-core-7f7t9wwp.js";
|
|
55
59
|
import"../../shared/@ai-setting/roy-agent-core-85xyctnb.js";
|
|
56
60
|
import"../../shared/@ai-setting/roy-agent-core-fs0mn2jk.js";
|
|
@@ -66,6 +70,7 @@ export {
|
|
|
66
70
|
extractCommandText,
|
|
67
71
|
cliCommandHandler,
|
|
68
72
|
builtInHandlers,
|
|
73
|
+
buildSlimRawData,
|
|
69
74
|
buildLarkRecommendedAction,
|
|
70
75
|
buildLarkChannelSystemPrompt,
|
|
71
76
|
bountyIMHandler,
|
|
@@ -4,8 +4,8 @@ import {
|
|
|
4
4
|
getSharedEventStore,
|
|
5
5
|
resetSharedEventStore,
|
|
6
6
|
setSharedEventStore
|
|
7
|
-
} from "../../shared/@ai-setting/roy-agent-core-
|
|
8
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
7
|
+
} from "../../shared/@ai-setting/roy-agent-core-4t3yskp8.js";
|
|
8
|
+
import"../../shared/@ai-setting/roy-agent-core-5s2t8z00.js";
|
|
9
9
|
import"../../shared/@ai-setting/roy-agent-core-7f7t9wwp.js";
|
|
10
10
|
import"../../shared/@ai-setting/roy-agent-core-85xyctnb.js";
|
|
11
11
|
import"../../shared/@ai-setting/roy-agent-core-fs0mn2jk.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import"../../shared/@ai-setting/roy-agent-core-m1fgtnrc.js";
|
|
2
2
|
import {
|
|
3
3
|
EventSourceComponent
|
|
4
|
-
} from "../../shared/@ai-setting/roy-agent-core-
|
|
4
|
+
} from "../../shared/@ai-setting/roy-agent-core-yh68z1bg.js";
|
|
5
5
|
import {
|
|
6
6
|
BountyIMInstance,
|
|
7
7
|
COMMAND_PREFIX,
|
|
@@ -56,7 +56,7 @@ import {
|
|
|
56
56
|
translateCardActionToCommand,
|
|
57
57
|
wecomCliHandler,
|
|
58
58
|
writeFallbackModelList
|
|
59
|
-
} from "../../shared/@ai-setting/roy-agent-core-
|
|
59
|
+
} from "../../shared/@ai-setting/roy-agent-core-gr5h1dyr.js";
|
|
60
60
|
import {
|
|
61
61
|
BUILT_IN_EVENT_SOURCE_TYPES,
|
|
62
62
|
BUILT_IN_EVENT_SOURCE_TYPE_LIST,
|
|
@@ -73,41 +73,44 @@ import {
|
|
|
73
73
|
cliCommandHandler,
|
|
74
74
|
parseCliSessionChatId
|
|
75
75
|
} from "../../shared/@ai-setting/roy-agent-core-v0hf14bj.js";
|
|
76
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
76
|
+
import"../../shared/@ai-setting/roy-agent-core-7kvpc0w5.js";
|
|
77
|
+
import"../../shared/@ai-setting/roy-agent-core-mf5p38yf.js";
|
|
77
78
|
import"../../shared/@ai-setting/roy-agent-core-2stt4rp5.js";
|
|
78
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
79
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
79
|
+
import"../../shared/@ai-setting/roy-agent-core-ra66sf50.js";
|
|
80
|
+
import"../../shared/@ai-setting/roy-agent-core-h1e1fm9b.js";
|
|
81
|
+
import"../../shared/@ai-setting/roy-agent-core-c4ec7k0p.js";
|
|
80
82
|
import {
|
|
81
83
|
EventStoreImpl,
|
|
82
84
|
getSharedEventStore,
|
|
83
85
|
resetSharedEventStore,
|
|
84
86
|
setSharedEventStore
|
|
85
|
-
} from "../../shared/@ai-setting/roy-agent-core-
|
|
86
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
87
|
-
import"../../shared/@ai-setting/roy-agent-core-ezvpreqz.js";
|
|
87
|
+
} from "../../shared/@ai-setting/roy-agent-core-4t3yskp8.js";
|
|
88
|
+
import"../../shared/@ai-setting/roy-agent-core-y7fqtzk2.js";
|
|
88
89
|
import"../../shared/@ai-setting/roy-agent-core-1pg0fepg.js";
|
|
89
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
90
|
+
import"../../shared/@ai-setting/roy-agent-core-d6zdbgtc.js";
|
|
90
91
|
import"../../shared/@ai-setting/roy-agent-core-m46fe3x4.js";
|
|
91
92
|
import"../../shared/@ai-setting/roy-agent-core-4rtg69cn.js";
|
|
92
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
93
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
94
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
95
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
96
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
97
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
93
|
+
import"../../shared/@ai-setting/roy-agent-core-wr1qexzq.js";
|
|
94
|
+
import"../../shared/@ai-setting/roy-agent-core-shb1qsyg.js";
|
|
95
|
+
import"../../shared/@ai-setting/roy-agent-core-418zc9ha.js";
|
|
96
|
+
import"../../shared/@ai-setting/roy-agent-core-6k8mb7zx.js";
|
|
97
|
+
import"../../shared/@ai-setting/roy-agent-core-9c565frx.js";
|
|
98
|
+
import"../../shared/@ai-setting/roy-agent-core-h83zdsrq.js";
|
|
99
|
+
import"../../shared/@ai-setting/roy-agent-core-rm7seqwb.js";
|
|
100
|
+
import"../../shared/@ai-setting/roy-agent-core-e08bvpaq.js";
|
|
98
101
|
import"../../shared/@ai-setting/roy-agent-core-er070zjq.js";
|
|
99
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
102
|
+
import"../../shared/@ai-setting/roy-agent-core-7yh5wps0.js";
|
|
100
103
|
import"../../shared/@ai-setting/roy-agent-core-ntn32q7j.js";
|
|
101
104
|
import"../../shared/@ai-setting/roy-agent-core-mkc3zshb.js";
|
|
102
105
|
import"../../shared/@ai-setting/roy-agent-core-az13yzmc.js";
|
|
103
106
|
import"../../shared/@ai-setting/roy-agent-core-m880qz3y.js";
|
|
104
107
|
import"../../shared/@ai-setting/roy-agent-core-7hh0brvs.js";
|
|
105
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
106
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
107
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
108
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
109
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
110
|
-
import"../../shared/@ai-setting/roy-agent-core-
|
|
108
|
+
import"../../shared/@ai-setting/roy-agent-core-m39v7qpx.js";
|
|
109
|
+
import"../../shared/@ai-setting/roy-agent-core-smf94h73.js";
|
|
110
|
+
import"../../shared/@ai-setting/roy-agent-core-yet36q5k.js";
|
|
111
|
+
import"../../shared/@ai-setting/roy-agent-core-tkpp1ba0.js";
|
|
112
|
+
import"../../shared/@ai-setting/roy-agent-core-p31ftgq9.js";
|
|
113
|
+
import"../../shared/@ai-setting/roy-agent-core-5s2t8z00.js";
|
|
111
114
|
import"../../shared/@ai-setting/roy-agent-core-7f7t9wwp.js";
|
|
112
115
|
import"../../shared/@ai-setting/roy-agent-core-85xyctnb.js";
|
|
113
116
|
import"../../shared/@ai-setting/roy-agent-core-fs0mn2jk.js";
|
|
@@ -25,6 +25,29 @@ export declare const DEFAULT_TIMER_INTERVAL_MS: number;
|
|
|
25
25
|
* 2. 便于测试时注入 mock
|
|
26
26
|
*/
|
|
27
27
|
export type GetRunningTasksFn = () => BackgroundTask[];
|
|
28
|
+
/**
|
|
29
|
+
* ★ Task #5409:tick 的两种触发模式(写进 `timer.tick.fire` span 的 mode 属性)
|
|
30
|
+
*/
|
|
31
|
+
export type TimerFireMode = "interval" | "schedule";
|
|
32
|
+
/**
|
|
33
|
+
* ★ Task #5409:tick 统计(跳过 / 触发计数)
|
|
34
|
+
*
|
|
35
|
+
* 为什么需要:修复后**空转 tick 不再留 trace**(原来每 30 秒一条 `timer.tick`,
|
|
36
|
+
* 每天约 2880 条无价值 span,全部 0ms)。代价是「被跳过的 tick」在 trace 里
|
|
37
|
+
* 不可见,无法再靠 `debug trace --list` 判断 timer 是否活着。
|
|
38
|
+
*
|
|
39
|
+
* 因此把可观测性改到**进程内计数器**:`getTickStats()` 可随时读取,
|
|
40
|
+
* 另外每次真正 fire 的 span 上会带 `skippedSinceLastFire` —— 一眼看出
|
|
41
|
+
* 「这个 timer 一直在跑,只是长期被 running 任务挡住」。
|
|
42
|
+
*/
|
|
43
|
+
export interface TimerTickStats {
|
|
44
|
+
/** 累计真正 fire(构建并投递 SelfReminder 事件)的次数 */
|
|
45
|
+
firedTicks: number;
|
|
46
|
+
/** 累计被跳过的 tick 次数(有 running 任务 / 抛错 / 时刻不命中 / 当日去重) */
|
|
47
|
+
skippedTicks: number;
|
|
48
|
+
/** 距离上次 fire 之间被跳过的 tick 次数(fire 后归零) */
|
|
49
|
+
skippedSinceLastFire: number;
|
|
50
|
+
}
|
|
28
51
|
/**
|
|
29
52
|
* 用于注入 BackgroundTaskManager 的 options key
|
|
30
53
|
*/
|
|
@@ -51,6 +74,29 @@ export interface TimerScheduleEntry {
|
|
|
51
74
|
label?: string;
|
|
52
75
|
sessionId?: string;
|
|
53
76
|
}
|
|
77
|
+
/**
|
|
78
|
+
* ★ Task #5409:`fireTick()` 的入参(object 形式,便于 paramFilter 取出全部字段)
|
|
79
|
+
*/
|
|
80
|
+
export interface TimerFireContext {
|
|
81
|
+
/** 触发模式 */
|
|
82
|
+
mode: TimerFireMode;
|
|
83
|
+
/** timer 事件源 id(`this.config.id`)—— paramFilter 拿不到 this,故显式传入 */
|
|
84
|
+
sourceId: string;
|
|
85
|
+
/** 距上次 fire 被跳过的 tick 次数 */
|
|
86
|
+
skippedSinceLastFire: number;
|
|
87
|
+
/** schedule 模式的命中项 */
|
|
88
|
+
entry?: TimerScheduleEntry;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* ★ Task #5409:构造 `timer.tick.fire` span 的属性(供 paramFilter 摊平到顶层)
|
|
92
|
+
*
|
|
93
|
+
* 出参键名就是 `debug trace` / `debug span` 里能直接看到的字段:
|
|
94
|
+
* - `mode`:interval / schedule
|
|
95
|
+
* - `sourceId`:timer 事件源 id(哪个 timer 触发的)
|
|
96
|
+
* - `skippedSinceLastFire`:距上次 fire 被跳过的 tick 次数
|
|
97
|
+
* - `scheduleTime` / `scheduleLabel`:schedule 模式的命中项
|
|
98
|
+
*/
|
|
99
|
+
export declare function buildFireSpanAttributes(ctx: TimerFireContext): Record<string, unknown>;
|
|
54
100
|
/**
|
|
55
101
|
* 校验 `HH:MM` 格式
|
|
56
102
|
*
|
|
@@ -100,6 +146,10 @@ export declare class TimerInstance implements EventSourceInstance {
|
|
|
100
146
|
private readonly skipWhenRunning;
|
|
101
147
|
/** 已触发标记:`YYYY-MM-DD#HH:MM` → true(当日去重) */
|
|
102
148
|
private readonly firedKeys;
|
|
149
|
+
/** ★ Task #5409:tick 统计(跳过/触发计数),替代原「每次都留 trace」的可观测性 */
|
|
150
|
+
private firedTicks;
|
|
151
|
+
private skippedTicks;
|
|
152
|
+
private skippedSinceLastFire;
|
|
103
153
|
/** 可注入时钟(测试用) */
|
|
104
154
|
private readonly now;
|
|
105
155
|
private status;
|
|
@@ -117,14 +167,54 @@ export declare class TimerInstance implements EventSourceInstance {
|
|
|
117
167
|
start(): Promise<void>;
|
|
118
168
|
stop(): Promise<void>;
|
|
119
169
|
getStatus(): EventSourceStatus;
|
|
170
|
+
/**
|
|
171
|
+
* ★ Task #5409:读取 tick 统计(跳过 / 触发计数)
|
|
172
|
+
*
|
|
173
|
+
* 修复后空转 tick 不再落 trace,用这个计数器保留「timer 还活着」的可观测性:
|
|
174
|
+
* - `firedTicks` 一直为 0 且 `skippedTicks` 持续增长 → 一直被 running 任务挡住
|
|
175
|
+
* - 两者都不再增长 → tick 本身可能没在跑(`getStatus()` 应为 running)
|
|
176
|
+
*/
|
|
177
|
+
getTickStats(): TimerTickStats;
|
|
120
178
|
onEvent(handler: EventSourceEventHandler): void;
|
|
121
179
|
offEvent(): void;
|
|
122
180
|
/**
|
|
123
181
|
* 定时器 tick 回调
|
|
124
182
|
*
|
|
125
183
|
* Rule-based 检查:有 status === "running" 的后台任务时跳过本次触发
|
|
184
|
+
*
|
|
185
|
+
* ★ Task #5409:**入口不再挂 `@TracedAs`**。
|
|
186
|
+
*
|
|
187
|
+
* 原来 `@TracedAs("timer.tick")` 在入口就建 span,于是「有 running 任务 →
|
|
188
|
+
* return」这种什么都没做的空转 tick 也会落一条 trace。生产实测每 30 秒一条、
|
|
189
|
+
* 全部 0ms/ok,每天约 2880 条,是 traces.db 膨胀的增量来源之一。
|
|
190
|
+
*
|
|
191
|
+
* 现在只有**真正 fire 了 SelfReminder 事件**才记一条 `timer.tick.fire`
|
|
192
|
+
* (见 `fireTick()`),跳过路径零 trace;跳过次数改由 `getTickStats()` 暴露。
|
|
126
193
|
*/
|
|
127
194
|
private tick;
|
|
195
|
+
/**
|
|
196
|
+
* ★ Task #5409:记录一次「被跳过」的 tick(零 trace)
|
|
197
|
+
*
|
|
198
|
+
* 可观测性走两条路:
|
|
199
|
+
* 1. 进程内计数器(`getTickStats()`)—— 供 `/status` 类排查直接读
|
|
200
|
+
* 2. 每累计 `SKIPPED_TICK_LOG_EVERY` 次打一条 debug 汇总日志 —— 供 app.log
|
|
201
|
+
* 确认 timer 仍在跑(`log_trace.logging.level=debug` 时可见)
|
|
202
|
+
*/
|
|
203
|
+
private recordSkip;
|
|
204
|
+
/**
|
|
205
|
+
* ★ Task #5409:真正 fire 一次的**唯一入口** —— 事件构建 + 投递 + 1 条 trace
|
|
206
|
+
*
|
|
207
|
+
* 命名 `timer.tick.fire`(而不是保留 `timer.tick`):trace 列表里一眼能看出
|
|
208
|
+
* 「这条 span 代表 timer 真的触发了」,不再是「tick 发生了但可能什么都没做」。
|
|
209
|
+
*
|
|
210
|
+
* span 属性(经 paramFilter 摊平到顶层):
|
|
211
|
+
* - `mode`:interval / schedule
|
|
212
|
+
* - `sourceId`:timer 事件源 id
|
|
213
|
+
* - `skippedSinceLastFire`:距上次 fire 被跳过的次数 —— 长期被 running 任务
|
|
214
|
+
* 挡住时这个数字会很大,是「空转但不留 trace」的可观测证据
|
|
215
|
+
* - `scheduleTime` / `scheduleLabel`:schedule 模式下的命中项
|
|
216
|
+
*/
|
|
217
|
+
private fireTick;
|
|
128
218
|
/**
|
|
129
219
|
* ★ Task #4815:schedule 模式 tick
|
|
130
220
|
*
|
|
@@ -135,6 +225,10 @@ export declare class TimerInstance implements EventSourceInstance {
|
|
|
135
225
|
* 4. schedule 模式默认**不**做 rule-based 跳过;
|
|
136
226
|
* 仅当 options.skipWhenRunning=true 时才检查后台任务
|
|
137
227
|
* 5. 命中 → 标记已触发 + 构建事件(prompt 取当次命中项)
|
|
228
|
+
*
|
|
229
|
+
* ★ Task #5409:入口不再挂 `@TracedAs`。只有真正命中并 fire 时才由
|
|
230
|
+
* `fireTick()` 落一条 `timer.tick.fire`(mode=schedule);未命中 / 当日已触发 /
|
|
231
|
+
* 被 running 任务挡住 / schedule 全项非法 → 零 trace,只累加 `skippedTicks`。
|
|
138
232
|
*/
|
|
139
233
|
private tickSchedule;
|
|
140
234
|
/**
|
|
@@ -157,6 +251,10 @@ export declare class TimerInstance implements EventSourceInstance {
|
|
|
157
251
|
* - metadata 注入 `scheduleLabel`(可选,便于下游识别是哪个时刻)
|
|
158
252
|
*
|
|
159
253
|
* @param entry 命中的 schedule 项;interval 模式不传
|
|
254
|
+
*
|
|
255
|
+
* ★ Task #5409:不再挂 `@TracedAs` —— 它只在 `fireTick()` 内部被调用一次,
|
|
256
|
+
* 且 fireTick 已经有 `timer.tick.fire` span。原来这里再加一个装饰器,
|
|
257
|
+
* 会让「一次 fire」落 2 条 span(实测 span 数交替 2/3 正是这个原因)。
|
|
160
258
|
*/
|
|
161
259
|
private buildSelfReminderEvent;
|
|
162
260
|
}
|