@copilotkit/channels-core 0.1.1 → 0.2.1-canary.1784916581
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/README.md +45 -2
- package/dist/create-channel.d.ts +20 -10
- package/dist/create-channel.d.ts.map +1 -1
- package/dist/create-channel.foundations.test.js +14 -14
- package/dist/create-channel.js +143 -124
- package/dist/create-channel.test.js +34 -34
- package/dist/modal-submit.test.js +4 -4
- package/dist/open-modal.test.js +4 -4
- package/dist/platform-adapter.d.ts +9 -0
- package/dist/platform-adapter.d.ts.map +1 -1
- package/dist/reactions.test.js +30 -10
- package/dist/telemetry/create-channel-telemetry.test.js +7 -4
- package/dist/telemetry/e2e-telemetry.test.js +1 -1
- package/dist/testing/fake-adapter.d.ts.map +1 -1
- package/dist/testing/fake-adapter.js +1 -1
- package/dist/thread-capabilities.test.js +5 -5
- package/dist/thread-ephemeral.test.js +1 -1
- package/dist/thread-reactions.test.js +2 -2
- package/package.json +4 -4
- package/dist/create-bot.d.ts +0 -171
- package/dist/create-bot.d.ts.map +0 -1
- package/dist/create-bot.foundations.test.d.ts +0 -2
- package/dist/create-bot.foundations.test.d.ts.map +0 -1
- package/dist/create-bot.foundations.test.js +0 -147
- package/dist/create-bot.js +0 -579
- package/dist/create-bot.test.d.ts +0 -2
- package/dist/create-bot.test.d.ts.map +0 -1
- package/dist/create-bot.test.js +0 -936
- package/dist/telemetry/bot-telemetry.d.ts +0 -31
- package/dist/telemetry/bot-telemetry.d.ts.map +0 -1
- package/dist/telemetry/bot-telemetry.js +0 -70
- package/dist/telemetry/bot-telemetry.test.d.ts +0 -2
- package/dist/telemetry/bot-telemetry.test.d.ts.map +0 -1
- package/dist/telemetry/bot-telemetry.test.js +0 -56
- package/dist/telemetry/create-bot-telemetry.test.d.ts +0 -2
- package/dist/telemetry/create-bot-telemetry.test.d.ts.map +0 -1
- package/dist/telemetry/create-bot-telemetry.test.js +0 -71
|
@@ -60,7 +60,7 @@ describe("createChannel", () => {
|
|
|
60
60
|
channel.onMention(async ({ thread }) => {
|
|
61
61
|
await thread.post(Section({ children: "hi" }));
|
|
62
62
|
});
|
|
63
|
-
await channel.start();
|
|
63
|
+
await channel.ɵruntime.start();
|
|
64
64
|
fake.emitTurn({ userText: "yo", conversationKey: "c1" });
|
|
65
65
|
await tick();
|
|
66
66
|
expect(fake.posted.length).toBe(1);
|
|
@@ -75,7 +75,7 @@ describe("createChannel", () => {
|
|
|
75
75
|
channel.onMention(async ({ thread }) => {
|
|
76
76
|
await thread.runAgent();
|
|
77
77
|
});
|
|
78
|
-
await channel.start();
|
|
78
|
+
await channel.ɵruntime.start();
|
|
79
79
|
fake.emitTurn({ userText: "yo", conversationKey: "c1" });
|
|
80
80
|
await tick();
|
|
81
81
|
const renderer = fake.lastRunRenderer;
|
|
@@ -107,7 +107,7 @@ describe("createChannel", () => {
|
|
|
107
107
|
: message.text,
|
|
108
108
|
});
|
|
109
109
|
});
|
|
110
|
-
await channel.start();
|
|
110
|
+
await channel.ɵruntime.start();
|
|
111
111
|
fake.emitTurn({
|
|
112
112
|
userText: "look",
|
|
113
113
|
conversationKey: "c1",
|
|
@@ -138,7 +138,7 @@ describe("createChannel", () => {
|
|
|
138
138
|
],
|
|
139
139
|
}));
|
|
140
140
|
});
|
|
141
|
-
await channel.start();
|
|
141
|
+
await channel.ɵruntime.start();
|
|
142
142
|
fake.emitTurn({ userText: "yo", conversationKey: "c1" });
|
|
143
143
|
await tick();
|
|
144
144
|
const button = findNode(fake.posted[0], "button");
|
|
@@ -164,7 +164,7 @@ describe("createChannel", () => {
|
|
|
164
164
|
],
|
|
165
165
|
}));
|
|
166
166
|
});
|
|
167
|
-
await channel.start();
|
|
167
|
+
await channel.ɵruntime.start();
|
|
168
168
|
fake.emitTurn({ userText: "create a thing", conversationKey: "c1" });
|
|
169
169
|
await tick();
|
|
170
170
|
const button = findNode(fake.posted[0], "button");
|
|
@@ -201,7 +201,7 @@ describe("createChannel", () => {
|
|
|
201
201
|
context: [{ description: "who", value: "user U1" }],
|
|
202
202
|
});
|
|
203
203
|
});
|
|
204
|
-
await channel.start();
|
|
204
|
+
await channel.ɵruntime.start();
|
|
205
205
|
fake.emitTurn({ userText: "go", conversationKey: "c1" });
|
|
206
206
|
await tick();
|
|
207
207
|
expect(seenContext).toEqual([
|
|
@@ -221,7 +221,7 @@ describe("createChannel", () => {
|
|
|
221
221
|
filename: "x.png",
|
|
222
222
|
});
|
|
223
223
|
});
|
|
224
|
-
await channel.start();
|
|
224
|
+
await channel.ɵruntime.start();
|
|
225
225
|
fake.emitTurn({ userText: "hi", conversationKey: "c1" });
|
|
226
226
|
await tick();
|
|
227
227
|
expect(result).toEqual({
|
|
@@ -243,7 +243,7 @@ describe("createChannel", () => {
|
|
|
243
243
|
history = await thread.getMessages();
|
|
244
244
|
resolved = await thread.lookupUser("Ada");
|
|
245
245
|
});
|
|
246
|
-
await channel.start();
|
|
246
|
+
await channel.ɵruntime.start();
|
|
247
247
|
fake.emitTurn({ userText: "hi", conversationKey: "c1" });
|
|
248
248
|
await tick();
|
|
249
249
|
expect(history).toEqual([
|
|
@@ -267,7 +267,7 @@ describe("createChannel", () => {
|
|
|
267
267
|
],
|
|
268
268
|
}));
|
|
269
269
|
});
|
|
270
|
-
await channel.start();
|
|
270
|
+
await channel.ɵruntime.start();
|
|
271
271
|
fake.emitTurn({ userText: "decide", conversationKey: "c1" });
|
|
272
272
|
await tick();
|
|
273
273
|
const button = findNode(fake.posted[0], "button");
|
|
@@ -297,7 +297,7 @@ describe("createChannel", () => {
|
|
|
297
297
|
runs++;
|
|
298
298
|
await gate;
|
|
299
299
|
});
|
|
300
|
-
await channel.start();
|
|
300
|
+
await channel.ɵruntime.start();
|
|
301
301
|
const sink = fake.getSink();
|
|
302
302
|
const turn = {
|
|
303
303
|
conversationKey: "c1",
|
|
@@ -329,7 +329,7 @@ describe("createChannel", () => {
|
|
|
329
329
|
runs++;
|
|
330
330
|
await gate;
|
|
331
331
|
});
|
|
332
|
-
await channel.start();
|
|
332
|
+
await channel.ɵruntime.start();
|
|
333
333
|
const sink = fake.getSink();
|
|
334
334
|
const turn = {
|
|
335
335
|
conversationKey: "c1",
|
|
@@ -358,7 +358,7 @@ describe("createChannel", () => {
|
|
|
358
358
|
channel.onMention(async () => {
|
|
359
359
|
runs++;
|
|
360
360
|
});
|
|
361
|
-
await channel.start();
|
|
361
|
+
await channel.ɵruntime.start();
|
|
362
362
|
const sink = fake.getSink();
|
|
363
363
|
const base = {
|
|
364
364
|
conversationKey: "c",
|
|
@@ -406,7 +406,7 @@ describe("createChannel", () => {
|
|
|
406
406
|
channel.onMention(async ({ message }) => {
|
|
407
407
|
capturedKey = message.userKey;
|
|
408
408
|
});
|
|
409
|
-
await channel.start();
|
|
409
|
+
await channel.ɵruntime.start();
|
|
410
410
|
const sink = fake.getSink();
|
|
411
411
|
await sink.onTurn({
|
|
412
412
|
conversationKey: "c1",
|
|
@@ -430,7 +430,7 @@ describe("createChannel", () => {
|
|
|
430
430
|
transcripts: { maxPerUser: 50 },
|
|
431
431
|
},
|
|
432
432
|
});
|
|
433
|
-
await channel.start();
|
|
433
|
+
await channel.ɵruntime.start();
|
|
434
434
|
const sink = fake.getSink();
|
|
435
435
|
// Drive a turn so identity is resolved and we can verify transcripts exist
|
|
436
436
|
const thread = { platform: "fake", conversationKey: "c1" };
|
|
@@ -481,7 +481,7 @@ describe("createChannel", () => {
|
|
|
481
481
|
channel.onMention(async ({ thread }) => {
|
|
482
482
|
await thread.runAgent({ transcript: true });
|
|
483
483
|
});
|
|
484
|
-
await channel.start();
|
|
484
|
+
await channel.ɵruntime.start();
|
|
485
485
|
// Seed one prior cross-platform entry (different platform label) so we can
|
|
486
486
|
// assert it shows up in the injected context. Seeded post-start: transcripts
|
|
487
487
|
// are only available once the backend is resolved in start().
|
|
@@ -535,7 +535,7 @@ describe("createChannel", () => {
|
|
|
535
535
|
rejected = true;
|
|
536
536
|
}
|
|
537
537
|
});
|
|
538
|
-
await channel.start();
|
|
538
|
+
await channel.ɵruntime.start();
|
|
539
539
|
fake.emitTurn({ userText: "go", conversationKey: "c1" });
|
|
540
540
|
await tick();
|
|
541
541
|
expect(roundTripped).toEqual({ step: "x" });
|
|
@@ -559,7 +559,7 @@ describe("createChannel lock and dedup edge cases", () => {
|
|
|
559
559
|
await gate;
|
|
560
560
|
throw new Error("boom");
|
|
561
561
|
});
|
|
562
|
-
await bot1.start();
|
|
562
|
+
await bot1.ɵruntime.start();
|
|
563
563
|
const sink = fake.getSink();
|
|
564
564
|
const turn = {
|
|
565
565
|
conversationKey: "c1",
|
|
@@ -601,7 +601,7 @@ describe("createChannel lock and dedup edge cases", () => {
|
|
|
601
601
|
runs++;
|
|
602
602
|
await gate;
|
|
603
603
|
});
|
|
604
|
-
await channel.start();
|
|
604
|
+
await channel.ɵruntime.start();
|
|
605
605
|
const sink = fake.getSink();
|
|
606
606
|
const turn = {
|
|
607
607
|
conversationKey: "c1",
|
|
@@ -634,7 +634,7 @@ describe("createChannel lock and dedup edge cases", () => {
|
|
|
634
634
|
runs++;
|
|
635
635
|
await gate;
|
|
636
636
|
});
|
|
637
|
-
await channel.start();
|
|
637
|
+
await channel.ɵruntime.start();
|
|
638
638
|
const sink = fake.getSink();
|
|
639
639
|
const turn = {
|
|
640
640
|
conversationKey: "c1",
|
|
@@ -665,7 +665,7 @@ describe("createChannel lock and dedup edge cases", () => {
|
|
|
665
665
|
channel.onMention(async ({ message }) => {
|
|
666
666
|
capturedUserKey = message.userKey;
|
|
667
667
|
});
|
|
668
|
-
await channel.start();
|
|
668
|
+
await channel.ɵruntime.start();
|
|
669
669
|
const sink = fake.getSink();
|
|
670
670
|
await sink.onTurn({
|
|
671
671
|
conversationKey: "c1",
|
|
@@ -686,7 +686,7 @@ describe("createChannel lock and dedup edge cases", () => {
|
|
|
686
686
|
channel.onMention(async ({ message }) => {
|
|
687
687
|
capturedUserKey = message.userKey;
|
|
688
688
|
});
|
|
689
|
-
await channel.start();
|
|
689
|
+
await channel.ɵruntime.start();
|
|
690
690
|
const sink = fake.getSink();
|
|
691
691
|
await sink.onTurn({
|
|
692
692
|
conversationKey: "c1",
|
|
@@ -707,7 +707,7 @@ describe("createChannel lock and dedup edge cases", () => {
|
|
|
707
707
|
channel.onMention(async () => {
|
|
708
708
|
runs++;
|
|
709
709
|
});
|
|
710
|
-
await channel.start();
|
|
710
|
+
await channel.ɵruntime.start();
|
|
711
711
|
const sink = fake.getSink();
|
|
712
712
|
const base = {
|
|
713
713
|
conversationKey: "c1",
|
|
@@ -746,7 +746,7 @@ describe("createChannel lock and dedup edge cases", () => {
|
|
|
746
746
|
channel.onMention(async () => {
|
|
747
747
|
runs++;
|
|
748
748
|
});
|
|
749
|
-
await channel.start();
|
|
749
|
+
await channel.ɵruntime.start();
|
|
750
750
|
const sink = fake.getSink();
|
|
751
751
|
await sink.onTurn({
|
|
752
752
|
conversationKey: "c1",
|
|
@@ -772,7 +772,7 @@ describe("createChannel lock and dedup edge cases", () => {
|
|
|
772
772
|
runs++;
|
|
773
773
|
await gate;
|
|
774
774
|
});
|
|
775
|
-
await channel.start();
|
|
775
|
+
await channel.ɵruntime.start();
|
|
776
776
|
const sink = fake.getSink();
|
|
777
777
|
const turnA = {
|
|
778
778
|
conversationKey: "c1",
|
|
@@ -813,7 +813,7 @@ describe("createChannel lock and dedup edge cases", () => {
|
|
|
813
813
|
channel.onMention(async () => {
|
|
814
814
|
runs++;
|
|
815
815
|
});
|
|
816
|
-
await channel.start();
|
|
816
|
+
await channel.ɵruntime.start();
|
|
817
817
|
const sink = fake.getSink();
|
|
818
818
|
const turn = {
|
|
819
819
|
conversationKey: "c2",
|
|
@@ -838,7 +838,7 @@ describe("createChannel slash commands", () => {
|
|
|
838
838
|
channel.onCommand("triage", ({ command, text }) => {
|
|
839
839
|
seen = { command, text };
|
|
840
840
|
});
|
|
841
|
-
await channel.start();
|
|
841
|
+
await channel.ɵruntime.start();
|
|
842
842
|
await fake.emitCommand({ command: "/Triage", text: "db is down" });
|
|
843
843
|
expect(seen).toEqual({ command: "triage", text: "db is down" });
|
|
844
844
|
});
|
|
@@ -849,7 +849,7 @@ describe("createChannel slash commands", () => {
|
|
|
849
849
|
channel.onCommand("triage", () => {
|
|
850
850
|
fired = true;
|
|
851
851
|
});
|
|
852
|
-
await channel.start();
|
|
852
|
+
await channel.ɵruntime.start();
|
|
853
853
|
await fake.emitCommand({ command: "unknown", text: "x" });
|
|
854
854
|
expect(fired).toBe(false);
|
|
855
855
|
});
|
|
@@ -868,7 +868,7 @@ describe("createChannel slash commands", () => {
|
|
|
868
868
|
}),
|
|
869
869
|
],
|
|
870
870
|
});
|
|
871
|
-
await channel.start();
|
|
871
|
+
await channel.ɵruntime.start();
|
|
872
872
|
await fake.emitCommand({
|
|
873
873
|
command: "book",
|
|
874
874
|
text: "raw",
|
|
@@ -881,7 +881,7 @@ describe("createChannel slash commands", () => {
|
|
|
881
881
|
const channel = createChannel({ adapters: [fake] });
|
|
882
882
|
channel.onCommand("triage", () => { });
|
|
883
883
|
channel.onCommand("status", () => { });
|
|
884
|
-
await channel.start();
|
|
884
|
+
await channel.ɵruntime.start();
|
|
885
885
|
expect(fake.registeredCommands?.map((c) => c.name).sort()).toEqual([
|
|
886
886
|
"status",
|
|
887
887
|
"triage",
|
|
@@ -893,7 +893,7 @@ describe("createChannel slash commands", () => {
|
|
|
893
893
|
const bad = new FakeAdapter({ platform: "telegram", failStart: true });
|
|
894
894
|
const good = new FakeAdapter({ platform: "slack" });
|
|
895
895
|
const channel = createChannel({ adapters: [bad, good] });
|
|
896
|
-
await expect(channel.start()).resolves.toBeUndefined();
|
|
896
|
+
await expect(channel.ɵruntime.start()).resolves.toBeUndefined();
|
|
897
897
|
expect(good.started).toBe(true);
|
|
898
898
|
expect(errSpy.mock.calls.some((c) => String(c[0]).includes("telegram"))).toBe(true);
|
|
899
899
|
}
|
|
@@ -911,7 +911,7 @@ describe("createChannel slash commands", () => {
|
|
|
911
911
|
const good = new FakeAdapter({ platform: "slack" });
|
|
912
912
|
const channel = createChannel({ adapters: [bad, good] });
|
|
913
913
|
channel.onCommand("triage", () => { });
|
|
914
|
-
await expect(channel.start()).resolves.toBeUndefined();
|
|
914
|
+
await expect(channel.ɵruntime.start()).resolves.toBeUndefined();
|
|
915
915
|
expect(good.started).toBe(true);
|
|
916
916
|
expect(good.registeredCommands?.map((c) => c.name)).toEqual(["triage"]);
|
|
917
917
|
expect(errSpy.mock.calls.some((c) => String(c[0]).includes("telegram"))).toBe(true);
|
|
@@ -927,8 +927,8 @@ describe("createChannel slash commands", () => {
|
|
|
927
927
|
const good = new FakeAdapter({ platform: "slack" });
|
|
928
928
|
const stopSpy = vi.spyOn(good, "stop");
|
|
929
929
|
const channel = createChannel({ adapters: [bad, good] });
|
|
930
|
-
await channel.start();
|
|
931
|
-
await expect(channel.stop()).resolves.toBeUndefined();
|
|
930
|
+
await channel.ɵruntime.start();
|
|
931
|
+
await expect(channel.ɵruntime.stop()).resolves.toBeUndefined();
|
|
932
932
|
expect(stopSpy).toHaveBeenCalled();
|
|
933
933
|
expect(errSpy.mock.calls.some((c) => String(c[0]).includes("telegram"))).toBe(true);
|
|
934
934
|
}
|
|
@@ -949,7 +949,7 @@ describe("createChannel slash commands", () => {
|
|
|
949
949
|
const channel = createChannel({});
|
|
950
950
|
expect(channel.adapters).toHaveLength(0);
|
|
951
951
|
const fake = new FakeAdapter();
|
|
952
|
-
channel.addAdapter(fake);
|
|
952
|
+
channel.ɵruntime.addAdapter(fake);
|
|
953
953
|
expect(channel.adapters).toEqual([fake]);
|
|
954
954
|
});
|
|
955
955
|
});
|
|
@@ -15,7 +15,7 @@ describe("channel.onModalSubmit / onModalClose", () => {
|
|
|
15
15
|
hasThread: !!evt.thread,
|
|
16
16
|
});
|
|
17
17
|
});
|
|
18
|
-
await channel.start();
|
|
18
|
+
await channel.ɵruntime.start();
|
|
19
19
|
const res = await fake.emitModalSubmit({
|
|
20
20
|
callbackId: "triage",
|
|
21
21
|
values: { summary: "boom", prio: "high" },
|
|
@@ -37,7 +37,7 @@ describe("channel.onModalSubmit / onModalClose", () => {
|
|
|
37
37
|
const fake = new FakeAdapter();
|
|
38
38
|
const channel = createChannel({ adapters: [fake] });
|
|
39
39
|
channel.onModalSubmit("triage", (evt) => evt.values.summary ? undefined : { errors: { summary: "Required" } });
|
|
40
|
-
await channel.start();
|
|
40
|
+
await channel.ɵruntime.start();
|
|
41
41
|
const res = await fake.emitModalSubmit({
|
|
42
42
|
callbackId: "triage",
|
|
43
43
|
values: {},
|
|
@@ -47,7 +47,7 @@ describe("channel.onModalSubmit / onModalClose", () => {
|
|
|
47
47
|
it("ignores submissions with no registered handler", async () => {
|
|
48
48
|
const fake = new FakeAdapter();
|
|
49
49
|
const channel = createChannel({ adapters: [fake] });
|
|
50
|
-
await channel.start();
|
|
50
|
+
await channel.ɵruntime.start();
|
|
51
51
|
const res = await fake.emitModalSubmit({
|
|
52
52
|
callbackId: "unknown",
|
|
53
53
|
values: {},
|
|
@@ -61,7 +61,7 @@ describe("channel.onModalSubmit / onModalClose", () => {
|
|
|
61
61
|
channel.onModalClose("triage", (evt) => {
|
|
62
62
|
closed.push(evt.callbackId);
|
|
63
63
|
});
|
|
64
|
-
await channel.start();
|
|
64
|
+
await channel.ɵruntime.start();
|
|
65
65
|
await fake.emitModalClose({ callbackId: "triage", user: { id: "U2" } });
|
|
66
66
|
expect(closed).toEqual(["triage"]);
|
|
67
67
|
});
|
package/dist/open-modal.test.js
CHANGED
|
@@ -18,7 +18,7 @@ describe("ctx.openModal", () => {
|
|
|
18
18
|
channel.onInteraction("ck:open", async (ctx) => {
|
|
19
19
|
res = await ctx.openModal(view);
|
|
20
20
|
});
|
|
21
|
-
await channel.start();
|
|
21
|
+
await channel.ɵruntime.start();
|
|
22
22
|
fake.emitInteraction({ id: "ck:open", triggerId: "T123" });
|
|
23
23
|
await tick();
|
|
24
24
|
expect(res).toEqual({ ok: true });
|
|
@@ -33,7 +33,7 @@ describe("ctx.openModal", () => {
|
|
|
33
33
|
channel.onCommand("triage", async (ctx) => {
|
|
34
34
|
res = await ctx.openModal(view);
|
|
35
35
|
});
|
|
36
|
-
await channel.start();
|
|
36
|
+
await channel.ɵruntime.start();
|
|
37
37
|
await fake.emitCommand({ command: "triage", triggerId: "T999" });
|
|
38
38
|
expect(res).toEqual({ ok: true });
|
|
39
39
|
expect(fake.openedModals[0].triggerId).toBe("T999");
|
|
@@ -45,7 +45,7 @@ describe("ctx.openModal", () => {
|
|
|
45
45
|
channel.onInteraction("ck:noop", (ctx) => {
|
|
46
46
|
hasOpen = typeof ctx.openModal === "function";
|
|
47
47
|
});
|
|
48
|
-
await channel.start();
|
|
48
|
+
await channel.ɵruntime.start();
|
|
49
49
|
fake.emitInteraction({ id: "ck:noop" });
|
|
50
50
|
await tick();
|
|
51
51
|
expect(hasOpen).toBe(false);
|
|
@@ -57,7 +57,7 @@ describe("ctx.openModal", () => {
|
|
|
57
57
|
channel.onInteraction("ck:x", (ctx) => {
|
|
58
58
|
hasOpen = typeof ctx.openModal === "function";
|
|
59
59
|
});
|
|
60
|
-
await channel.start();
|
|
60
|
+
await channel.ɵruntime.start();
|
|
61
61
|
fake.emitInteraction({ id: "ck:x", triggerId: "T1" });
|
|
62
62
|
await tick();
|
|
63
63
|
expect(hasOpen).toBe(false);
|
|
@@ -141,6 +141,15 @@ export interface IncomingReaction extends IngressEventBase {
|
|
|
141
141
|
messageRef?: MessageRef;
|
|
142
142
|
/** Containing thread/conversation id, when distinct from the message. */
|
|
143
143
|
threadId?: string;
|
|
144
|
+
/**
|
|
145
|
+
* Source provider a managed delivery originated from (e.g. `"teams"`,
|
|
146
|
+
* `"slack"`). Direct adapters omit it — core then normalizes by
|
|
147
|
+
* {@link PlatformAdapter.platform}. The Intelligence adapter (whose own
|
|
148
|
+
* `platform` is `"intelligence"`, not an emoji platform) sets it to the
|
|
149
|
+
* delivery's source provider so central normalization runs on the managed
|
|
150
|
+
* path.
|
|
151
|
+
*/
|
|
152
|
+
readonly platform?: string;
|
|
144
153
|
/** Native payload. */
|
|
145
154
|
raw: unknown;
|
|
146
155
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform-adapter.d.ts","sourceRoot":"","sources":["../src/platform-adapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"platform-adapter.d.ts","sourceRoot":"","sources":["../src/platform-adapter.ts"],"names":[],"mappings":"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"}
|
package/dist/reactions.test.js
CHANGED
|
@@ -13,7 +13,7 @@ describe("channel.onReaction", () => {
|
|
|
13
13
|
channel.onReaction([emoji.thumbs_up], (evt) => {
|
|
14
14
|
seen.push({ emoji: evt.emoji, raw: evt.rawEmoji, added: evt.added });
|
|
15
15
|
});
|
|
16
|
-
await channel.start();
|
|
16
|
+
await channel.ɵruntime.start();
|
|
17
17
|
// FakeAdapter.platform === "fake": normalizeEmoji falls through, but engine
|
|
18
18
|
// normalizes by adapter.platform. Use a Slack-style token via a fake whose
|
|
19
19
|
// platform normalizes — here we assert passthrough + catch-all instead.
|
|
@@ -35,7 +35,7 @@ describe("channel.onReaction", () => {
|
|
|
35
35
|
platform: evt.thread.platform,
|
|
36
36
|
});
|
|
37
37
|
});
|
|
38
|
-
await channel.start();
|
|
38
|
+
await channel.ɵruntime.start();
|
|
39
39
|
fake.emitReaction({
|
|
40
40
|
rawEmoji: "🎉",
|
|
41
41
|
added: true,
|
|
@@ -64,11 +64,31 @@ describe("channel.onReaction", () => {
|
|
|
64
64
|
channel.onReaction(["thumbs_up"], (evt) => {
|
|
65
65
|
hits.push(evt.emoji);
|
|
66
66
|
});
|
|
67
|
-
await channel.start();
|
|
67
|
+
await channel.ɵruntime.start();
|
|
68
68
|
fake.emitReaction({ rawEmoji: "thumbsup", added: true }); // Slack alias
|
|
69
69
|
await tick();
|
|
70
70
|
expect(hits).toEqual(["thumbs_up"]);
|
|
71
71
|
});
|
|
72
|
+
it("normalizes by the reaction's source platform on the managed path", async () => {
|
|
73
|
+
// Managed (Intelligence) path: the adapter's own platform is "intelligence"
|
|
74
|
+
// (not an emoji platform), but the reaction carries `platform: "teams"` from
|
|
75
|
+
// its source provider. Core must normalize by that source platform, so a
|
|
76
|
+
// Teams `<codepoint>_<name>` token resolves to its canonical name.
|
|
77
|
+
const fake = new FakeAdapter({ platform: "intelligence" });
|
|
78
|
+
const channel = createChannel({ adapters: [fake] });
|
|
79
|
+
const hits = [];
|
|
80
|
+
channel.onReaction(["refresh"], (evt) => {
|
|
81
|
+
hits.push(evt.emoji);
|
|
82
|
+
});
|
|
83
|
+
await channel.ɵruntime.start();
|
|
84
|
+
fake.emitReaction({
|
|
85
|
+
rawEmoji: "1f504_refresh",
|
|
86
|
+
added: true,
|
|
87
|
+
platform: "teams",
|
|
88
|
+
});
|
|
89
|
+
await tick();
|
|
90
|
+
expect(hits).toEqual(["refresh"]);
|
|
91
|
+
});
|
|
72
92
|
it("routes a reaction on a posted message to its <Message onReaction>", async () => {
|
|
73
93
|
const fake = new FakeAdapter();
|
|
74
94
|
const channel = createChannel({ adapters: [fake] });
|
|
@@ -81,7 +101,7 @@ describe("channel.onReaction", () => {
|
|
|
81
101
|
children: "hi",
|
|
82
102
|
}));
|
|
83
103
|
});
|
|
84
|
-
await channel.start();
|
|
104
|
+
await channel.ɵruntime.start();
|
|
85
105
|
fake.emitTurn({});
|
|
86
106
|
await tick();
|
|
87
107
|
// The handler is a closure, never serialized into the native payload.
|
|
@@ -108,7 +128,7 @@ describe("channel.onReaction", () => {
|
|
|
108
128
|
children: "hi",
|
|
109
129
|
}));
|
|
110
130
|
});
|
|
111
|
-
await channel.start();
|
|
131
|
+
await channel.ɵruntime.start();
|
|
112
132
|
fake.emitTurn({});
|
|
113
133
|
await tick();
|
|
114
134
|
// Channel delivery: the reaction arrives keyed by the provider ts (NOT the
|
|
@@ -145,7 +165,7 @@ describe("channel.onReaction", () => {
|
|
|
145
165
|
// pre-rendered Message() node.
|
|
146
166
|
await thread.post({ type: Card, props: {} });
|
|
147
167
|
});
|
|
148
|
-
await bot1.start();
|
|
168
|
+
await bot1.ɵruntime.start();
|
|
149
169
|
fake1.emitTurn({});
|
|
150
170
|
await tick();
|
|
151
171
|
// "Restart": a fresh channel + registry sharing the same store, Card re-registered.
|
|
@@ -156,7 +176,7 @@ describe("channel.onReaction", () => {
|
|
|
156
176
|
store: { adapter: backend },
|
|
157
177
|
components: [Card],
|
|
158
178
|
});
|
|
159
|
-
await bot2.start();
|
|
179
|
+
await bot2.ɵruntime.start();
|
|
160
180
|
fake2.emitReaction({ rawEmoji: "🎉", added: true, messageId: "msg-1" });
|
|
161
181
|
await tick();
|
|
162
182
|
expect(seen).toEqual(["🎉"]);
|
|
@@ -174,7 +194,7 @@ describe("channel.onReaction", () => {
|
|
|
174
194
|
children: "hi",
|
|
175
195
|
}));
|
|
176
196
|
});
|
|
177
|
-
await channel.start();
|
|
197
|
+
await channel.ɵruntime.start();
|
|
178
198
|
fake.emitTurn({});
|
|
179
199
|
await tick();
|
|
180
200
|
const before = fake.posted.length;
|
|
@@ -197,7 +217,7 @@ describe("channel.onReaction", () => {
|
|
|
197
217
|
children: "hi",
|
|
198
218
|
}));
|
|
199
219
|
});
|
|
200
|
-
await channel.start();
|
|
220
|
+
await channel.ɵruntime.start();
|
|
201
221
|
fake.emitTurn({});
|
|
202
222
|
await tick();
|
|
203
223
|
fake.emitReaction({ rawEmoji: "🎉", added: true, messageId: "other" });
|
|
@@ -217,7 +237,7 @@ describe("channel.onReaction", () => {
|
|
|
217
237
|
channel.onReaction(["thumbsup"], (evt) => {
|
|
218
238
|
hits.push(`alias:${evt.emoji}`);
|
|
219
239
|
});
|
|
220
|
-
await channel.start();
|
|
240
|
+
await channel.ɵruntime.start();
|
|
221
241
|
fake.emitReaction({ rawEmoji: "thumbsup", added: true }); // Slack alias
|
|
222
242
|
await tick();
|
|
223
243
|
expect(hits).toEqual(["thumbs_up", "alias:thumbs_up"]);
|
|
@@ -28,7 +28,7 @@ describe("createChannel telemetry wiring", () => {
|
|
|
28
28
|
},
|
|
29
29
|
],
|
|
30
30
|
});
|
|
31
|
-
await channel.start();
|
|
31
|
+
await channel.ɵruntime.start();
|
|
32
32
|
const call = capture.mock.calls.find((c) => c[0] === "oss.channel.configured");
|
|
33
33
|
expect(call).toBeDefined();
|
|
34
34
|
expect(call[1].platforms).toEqual(["custom"]); // FakeAdapter.platform "fake" → normalized
|
|
@@ -38,14 +38,17 @@ describe("createChannel telemetry wiring", () => {
|
|
|
38
38
|
it("emits oss.channel.started on start, start_failed (category only) on a throwing adapter", async () => {
|
|
39
39
|
const ok = new FakeAdapter();
|
|
40
40
|
const channel = createChannel({ adapters: [ok] });
|
|
41
|
-
await channel.start();
|
|
41
|
+
await channel.ɵruntime.start();
|
|
42
42
|
expect(capture.mock.calls.find((c) => c[0] === "oss.channel.started")?.[1]
|
|
43
43
|
.startedCount).toBe(1);
|
|
44
44
|
capture.mockClear();
|
|
45
45
|
const bad = new FakeAdapter();
|
|
46
46
|
bad.start = () => Promise.reject(Object.assign(new Error("xoxb-SECRET token bad"), { code: "EAUTH" }));
|
|
47
47
|
const bot2 = createChannel({ adapters: [bad] });
|
|
48
|
-
|
|
48
|
+
// All adapters failed → start() rejects (the channel is dead; the runtime
|
|
49
|
+
// reports status "error"). The start_failed telemetry is still captured
|
|
50
|
+
// before the throw.
|
|
51
|
+
await expect(bot2.ɵruntime.start()).rejects.toThrow(/failed to start/i);
|
|
49
52
|
const f = capture.mock.calls.find((c) => c[0] === "oss.channel.start_failed");
|
|
50
53
|
expect(f).toBeDefined();
|
|
51
54
|
expect(f[1].errorClass).toBe("auth");
|
|
@@ -60,7 +63,7 @@ describe("createChannel telemetry wiring", () => {
|
|
|
60
63
|
channel.onMention(async ({ thread }) => {
|
|
61
64
|
await thread.runAgent();
|
|
62
65
|
});
|
|
63
|
-
await channel.start();
|
|
66
|
+
await channel.ɵruntime.start();
|
|
64
67
|
capture.mockClear();
|
|
65
68
|
fake.emitTurn({ userText: "hi", conversationKey: "c1" });
|
|
66
69
|
await tick();
|
|
@@ -40,7 +40,7 @@ describe("oss.channel.* end-to-end (real ChannelTelemetry, only network boundary
|
|
|
40
40
|
channel.onMention(async ({ thread }) => {
|
|
41
41
|
await thread.runAgent();
|
|
42
42
|
});
|
|
43
|
-
await channel.start();
|
|
43
|
+
await channel.ɵruntime.start();
|
|
44
44
|
fake.emitTurn({ userText: "hi", conversationKey: "c1" });
|
|
45
45
|
await waitFor(() => sendSpy.mock.calls.some((c) => c[0].event === "oss.channel.agent_run"));
|
|
46
46
|
const events = sendSpy.mock.calls.map((c) => c[0].event);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fake-adapter.d.ts","sourceRoot":"","sources":["../../src/testing/fake-adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,YAAY,EACZ,aAAa,EACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EACV,eAAe,EACf,mBAAmB,EACnB,WAAW,EACX,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,WAAW,EAGX,WAAW,EACX,aAAa,EACb,SAAS,EACT,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAE1D,oHAAoH;AACpH,wBAAgB,mBAAmB,IAAI,WAAW,CAgCjD;AAED,qBAAa,WAAY,YAAW,eAAe;IACjD,QAAQ,SAAU;IAClB,QAAQ,CAAC,YAAY,EAAE,mBAAmB,CAAC;IAC3C,QAAQ,CAAC,aAAa,QAAQ;IAE9B,sEAAsE;IACtE,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,4FAA4F;IAC5F,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;IACvC,oEAAoE;IACpE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,mGAAmG;IACnG,OAAO,UAAS;IAEhB;;;;;;;;;;;;;OAaG;gBAED,QAAQ,GAAE;QACR,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,+FAA+F;QAC/F,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,iFAAiF;QACjF,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,0FAA0F;QAC1F,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,kEAAkE;QAClE,QAAQ,CAAC,EAAE,OAAO,CAAC;KACf;IA+DR,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAI3C;IAEF,MAAM,EAAE,WAAW,EAAE,EAAE,CAAM;IAC7B,OAAO,EAAE;QAAE,GAAG,EAAE,UAAU,CAAC;QAAC,EAAE,EAAE,WAAW,EAAE,CAAA;KAAE,EAAE,CAAM;IACvD,gBAAgB,EAAE,gBAAgB,EAAE,CAAM;IAC1C,eAAe,CAAC,EAAE,WAAW,CAAC;IAC9B,4DAA4D;IAC5D,QAAQ,EAAE,aAAa,EAAE,CAAM;IAC/B,wDAAwD;IACxD,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,iHAAiH;IACjH,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,OAAO,CAAC,IAAI,CAAC,CAAc;IAC3B,OAAO,CAAC,OAAO,CAAK;IAEpB,+FAA+F;IAC/F,OAAO,IAAI,WAAW;
|
|
1
|
+
{"version":3,"file":"fake-adapter.d.ts","sourceRoot":"","sources":["../../src/testing/fake-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -142,7 +142,7 @@ export class FakeAdapter {
|
|
|
142
142
|
/** Expose the registered sink so tests can invoke onTurn() directly for overlap/lock tests. */
|
|
143
143
|
getSink() {
|
|
144
144
|
if (!this.sink)
|
|
145
|
-
throw new Error("FakeAdapter: sink not set —
|
|
145
|
+
throw new Error("FakeAdapter: sink not set — start the channel (channel.ɵruntime.start()) first");
|
|
146
146
|
return this.sink;
|
|
147
147
|
}
|
|
148
148
|
async start(sink) {
|
|
@@ -9,7 +9,7 @@ describe("onThreadStarted routing", () => {
|
|
|
9
9
|
channel.onThreadStarted(({ thread, user }) => {
|
|
10
10
|
seen.push({ user: user?.id, platform: thread.platform });
|
|
11
11
|
});
|
|
12
|
-
await channel.start();
|
|
12
|
+
await channel.ɵruntime.start();
|
|
13
13
|
await fake.emitThreadStarted({ user: { id: "U1", name: "Ada" } });
|
|
14
14
|
expect(seen).toEqual([{ user: "U1", platform: "fake" }]);
|
|
15
15
|
});
|
|
@@ -23,14 +23,14 @@ describe("onThreadStarted routing", () => {
|
|
|
23
23
|
channel.onThreadStarted(() => {
|
|
24
24
|
order.push(2);
|
|
25
25
|
});
|
|
26
|
-
await channel.start();
|
|
26
|
+
await channel.ɵruntime.start();
|
|
27
27
|
await fake.emitThreadStarted();
|
|
28
28
|
expect(order).toEqual([1, 2]);
|
|
29
29
|
});
|
|
30
30
|
it("is a no-op when no handler is registered", async () => {
|
|
31
31
|
const fake = new FakeAdapter();
|
|
32
32
|
const channel = createChannel({ adapters: [fake] });
|
|
33
|
-
await channel.start();
|
|
33
|
+
await channel.ɵruntime.start();
|
|
34
34
|
// Should not throw.
|
|
35
35
|
await expect(Promise.resolve(fake.emitThreadStarted())).resolves.toBeUndefined();
|
|
36
36
|
});
|
|
@@ -44,7 +44,7 @@ describe("Thread.setSuggestedPrompts / setTitle capability gating", () => {
|
|
|
44
44
|
results.push(await thread.setSuggestedPrompts([{ title: "Triage", message: "Triage my issues" }], { title: "Try" }));
|
|
45
45
|
results.push(await thread.setTitle("My conversation"));
|
|
46
46
|
});
|
|
47
|
-
await channel.start();
|
|
47
|
+
await channel.ɵruntime.start();
|
|
48
48
|
await fake.emitThreadStarted({ replyTarget: { channel: "D1" } });
|
|
49
49
|
expect(results).toEqual([{ ok: true }, { ok: true }]);
|
|
50
50
|
expect(fake.suggestedPromptsCalls).toHaveLength(1);
|
|
@@ -65,7 +65,7 @@ describe("Thread.setSuggestedPrompts / setTitle capability gating", () => {
|
|
|
65
65
|
results.push(await thread.setSuggestedPrompts([]));
|
|
66
66
|
results.push(await thread.setTitle("nope"));
|
|
67
67
|
});
|
|
68
|
-
await channel.start();
|
|
68
|
+
await channel.ɵruntime.start();
|
|
69
69
|
await fake.emitThreadStarted();
|
|
70
70
|
expect(results[0].ok).toBe(false);
|
|
71
71
|
expect(results[0].error).toMatch(/does not support suggested prompts/);
|
|
@@ -4,7 +4,7 @@ import { FakeAdapter } from "./testing/fake-adapter.js";
|
|
|
4
4
|
async function runOnMessage(fake, fn) {
|
|
5
5
|
const channel = createChannel({ adapters: [fake] });
|
|
6
6
|
channel.onMessage(fn);
|
|
7
|
-
await channel.start();
|
|
7
|
+
await channel.ɵruntime.start();
|
|
8
8
|
fake.emitTurn({ userText: "hi", user: { id: "U1" } });
|
|
9
9
|
await new Promise((r) => setTimeout(r, 0));
|
|
10
10
|
}
|