@polpo-ai/server 0.15.38 → 0.15.40

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.
Files changed (49) hide show
  1. package/dist/loop-contract.test.js +30 -0
  2. package/dist/loop-contract.test.js.map +1 -1
  3. package/dist/routes/agents.d.ts.map +1 -1
  4. package/dist/routes/agents.js +4 -0
  5. package/dist/routes/agents.js.map +1 -1
  6. package/dist/routes/completions/agent-step-runner.d.ts.map +1 -1
  7. package/dist/routes/completions/agent-step-runner.js +10 -2
  8. package/dist/routes/completions/agent-step-runner.js.map +1 -1
  9. package/dist/routes/completions/agent-step-runner.test.js +84 -1
  10. package/dist/routes/completions/agent-step-runner.test.js.map +1 -1
  11. package/dist/routes/completions/chat-handler.d.ts +3 -1
  12. package/dist/routes/completions/chat-handler.d.ts.map +1 -1
  13. package/dist/routes/completions/chat-handler.js +25 -7
  14. package/dist/routes/completions/chat-handler.js.map +1 -1
  15. package/dist/routes/completions/conversation-turn.d.ts +3 -2
  16. package/dist/routes/completions/conversation-turn.d.ts.map +1 -1
  17. package/dist/routes/completions/conversation-turn.js +124 -20
  18. package/dist/routes/completions/conversation-turn.js.map +1 -1
  19. package/dist/routes/completions/execution-router-runtime.test.d.ts +2 -0
  20. package/dist/routes/completions/execution-router-runtime.test.d.ts.map +1 -0
  21. package/dist/routes/completions/execution-router-runtime.test.js +386 -0
  22. package/dist/routes/completions/execution-router-runtime.test.js.map +1 -0
  23. package/dist/routes/completions/project-loop-runner.d.ts +5 -1
  24. package/dist/routes/completions/project-loop-runner.d.ts.map +1 -1
  25. package/dist/routes/completions/project-loop-runner.js +30 -2
  26. package/dist/routes/completions/project-loop-runner.js.map +1 -1
  27. package/dist/routes/completions/runtime-plan-hook.test.js +2 -0
  28. package/dist/routes/completions/runtime-plan-hook.test.js.map +1 -1
  29. package/dist/routes/completions/tool-mapping.d.ts +3 -0
  30. package/dist/routes/completions/tool-mapping.d.ts.map +1 -1
  31. package/dist/routes/completions/tool-mapping.gateway.test.d.ts +2 -0
  32. package/dist/routes/completions/tool-mapping.gateway.test.d.ts.map +1 -0
  33. package/dist/routes/completions/tool-mapping.gateway.test.js +78 -0
  34. package/dist/routes/completions/tool-mapping.gateway.test.js.map +1 -0
  35. package/dist/routes/completions/tool-mapping.js +23 -1
  36. package/dist/routes/completions/tool-mapping.js.map +1 -1
  37. package/dist/routes/completions/tool-mapping.test.js +642 -1
  38. package/dist/routes/completions/tool-mapping.test.js.map +1 -1
  39. package/dist/routes/completions-loop-runtime.test.js +53 -0
  40. package/dist/routes/completions-loop-runtime.test.js.map +1 -1
  41. package/dist/routes/completions.d.ts +6 -1
  42. package/dist/routes/completions.d.ts.map +1 -1
  43. package/dist/routes/completions.js +3 -0
  44. package/dist/routes/completions.js.map +1 -1
  45. package/dist/schemas.d.ts +20 -0
  46. package/dist/schemas.d.ts.map +1 -1
  47. package/dist/schemas.js +38 -0
  48. package/dist/schemas.js.map +1 -1
  49. package/package.json +6 -6
@@ -0,0 +1,386 @@
1
+ import { describe, expect, it, vi } from "vitest";
2
+ import { createRuntimePlan, } from "@polpo-ai/core";
3
+ import { prepareChatCompletionExecution, } from "../completions.js";
4
+ function routeClassifier(decision) {
5
+ return {
6
+ classify: async () => decision,
7
+ };
8
+ }
9
+ function makePlan(execution, surface = "agent", source = "request") {
10
+ return createRuntimePlan({
11
+ surface,
12
+ source,
13
+ execution,
14
+ model: { selection: "mock", source: "agent" },
15
+ }, {
16
+ createId: () => "plan-route",
17
+ now: () => "2026-07-28T12:00:00.000Z",
18
+ });
19
+ }
20
+ function makeDeps(overrides = {}) {
21
+ return {
22
+ getAgents: async () => [{
23
+ name: "agent-1",
24
+ model: "mock",
25
+ allowedTools: ["read"],
26
+ assignedLoops: ["research", "build"],
27
+ executionRouter: {
28
+ mode: "auto",
29
+ allowedLoops: ["research", "build"],
30
+ },
31
+ }],
32
+ getConfig: () => ({}),
33
+ getMemoryStore: () => null,
34
+ getSessionStore: () => null,
35
+ getStore: () => null,
36
+ emit: () => { },
37
+ resolveAgentModel: async () => ({
38
+ model: {
39
+ id: "mock",
40
+ name: "Mock",
41
+ provider: "mock",
42
+ runtimeMode: "provider",
43
+ aiModel: {},
44
+ contextWindow: 200_000,
45
+ maxTokens: 8_192,
46
+ },
47
+ }),
48
+ buildAgentPrompt: async () => "agent prompt",
49
+ resolveAgentTools: async () => ({
50
+ tools: [],
51
+ executor: async () => "ok",
52
+ }),
53
+ getProjectLoop: async (name) => ({
54
+ name,
55
+ label: name === "research" ? "Research" : "Build",
56
+ description: name === "research"
57
+ ? "Investigate sources."
58
+ : "Create project files.",
59
+ metadata: { secret: "PRIVATE LOOP METADATA" },
60
+ start: "run",
61
+ steps: {
62
+ run: {
63
+ type: "agent",
64
+ systemPrompt: "PRIVATE LOOP PROMPT",
65
+ tools: ["bash"],
66
+ next: "end",
67
+ },
68
+ },
69
+ }),
70
+ resolveExecutionRouteClassifier: async () => routeClassifier({
71
+ mode: "loop",
72
+ loop: "research",
73
+ confidence: 0.95,
74
+ reason: "Research workflow requested",
75
+ }),
76
+ ...overrides,
77
+ };
78
+ }
79
+ describe("completion execution router", () => {
80
+ it("routes to an assigned project loop before prompt, model, tools, or session writes", async () => {
81
+ const calls = [];
82
+ const emit = vi.fn((event) => calls.push(`emit:${event}`));
83
+ const sessionStore = {
84
+ create: vi.fn(async () => {
85
+ calls.push("session:create");
86
+ return "session-1";
87
+ }),
88
+ addMessage: vi.fn(async () => {
89
+ calls.push("session:message");
90
+ }),
91
+ };
92
+ const resolveRuntimePlan = vi.fn(async (input) => {
93
+ calls.push("plan");
94
+ expect(input.execution).toEqual({
95
+ mode: "loop",
96
+ loop: "research",
97
+ source: "router",
98
+ });
99
+ return makePlan(input.execution, input.surface, input.source);
100
+ });
101
+ const resolveExecutionRouteClassifier = vi.fn(async () => ({
102
+ classify: async (input) => {
103
+ calls.push("classify");
104
+ expect(input).toEqual({
105
+ version: 1,
106
+ surface: "channel",
107
+ source: "channel",
108
+ input: "Please research the market",
109
+ loops: [
110
+ {
111
+ name: "research",
112
+ label: "Research",
113
+ description: "Investigate sources.",
114
+ },
115
+ {
116
+ name: "build",
117
+ label: "Build",
118
+ description: "Create project files.",
119
+ },
120
+ ],
121
+ labels: [],
122
+ });
123
+ expect(JSON.stringify(input)).not.toContain("PRIVATE");
124
+ expect(JSON.stringify(input)).not.toContain("bash");
125
+ return {
126
+ mode: "loop",
127
+ loop: "research",
128
+ confidence: 0.95,
129
+ reason: "Research workflow requested",
130
+ };
131
+ },
132
+ }));
133
+ const deps = makeDeps({
134
+ emit,
135
+ getSessionStore: () => sessionStore,
136
+ resolveRuntimePlan,
137
+ buildAgentPrompt: async () => {
138
+ calls.push("prompt");
139
+ return "prompt";
140
+ },
141
+ resolveAgentModel: async () => {
142
+ calls.push("model");
143
+ throw new Error("project loop must not resolve the root model");
144
+ },
145
+ resolveAgentTools: async () => {
146
+ calls.push("tools");
147
+ throw new Error("project loop must not resolve tools during preparation");
148
+ },
149
+ resolveExecutionRouteClassifier,
150
+ });
151
+ const headers = new Map();
152
+ const prepared = await prepareChatCompletionExecution(deps, {
153
+ agent: "agent-1",
154
+ user: "external-user-1",
155
+ messages: [
156
+ { role: "user", content: "Old request is not classifier history" },
157
+ { role: "assistant", content: "Old answer" },
158
+ { role: "user", content: "Please research the market" },
159
+ ],
160
+ stream: false,
161
+ }, {
162
+ runtime: { surface: "channel", source: "channel" },
163
+ setHeader: (name, value) => headers.set(name, value),
164
+ });
165
+ expect(prepared.kind).toBe("project-loop");
166
+ if (prepared.kind !== "project-loop")
167
+ throw new Error("Expected project loop");
168
+ expect(prepared.projectLoop.name).toBe("research");
169
+ expect(prepared.executionRoute).toMatchObject({
170
+ mode: "loop",
171
+ loop: "research",
172
+ decisionSource: "router",
173
+ });
174
+ expect(headers.get("x-loop")).toBe("research");
175
+ expect(resolveExecutionRouteClassifier).toHaveBeenCalledWith({
176
+ surface: "channel",
177
+ source: "channel",
178
+ agentName: "agent-1",
179
+ userId: "external-user-1",
180
+ });
181
+ expect(resolveRuntimePlan).toHaveBeenCalledOnce();
182
+ expect(calls).toEqual([
183
+ "classify",
184
+ "emit:runtime:execution-route",
185
+ "plan",
186
+ "emit:runtime:plan",
187
+ "session:create",
188
+ "session:message",
189
+ ]);
190
+ });
191
+ it("keeps a confident direct route on the normal chat path", async () => {
192
+ const getProjectLoop = vi.fn(makeDeps().getProjectLoop);
193
+ const deps = makeDeps({
194
+ getProjectLoop,
195
+ resolveExecutionRouteClassifier: async () => routeClassifier({
196
+ mode: "direct",
197
+ confidence: 0.99,
198
+ reason: "A normal answer is sufficient",
199
+ }),
200
+ });
201
+ const prepared = await prepareChatCompletionExecution(deps, {
202
+ agent: "agent-1",
203
+ messages: [{ role: "user", content: "Say hello" }],
204
+ stream: false,
205
+ });
206
+ expect(prepared.kind).toBe("chat");
207
+ if (prepared.kind !== "chat")
208
+ throw new Error("Expected chat");
209
+ expect(prepared.execution.executionRoute).toMatchObject({
210
+ mode: "direct",
211
+ decisionSource: "router",
212
+ });
213
+ expect(getProjectLoop).toHaveBeenCalledTimes(2);
214
+ });
215
+ it("lets an explicit authorized loop win and never creates a classifier", async () => {
216
+ const resolveExecutionRouteClassifier = vi.fn();
217
+ const headers = new Map();
218
+ const prepared = await prepareChatCompletionExecution(makeDeps({
219
+ resolveExecutionRouteClassifier,
220
+ }), {
221
+ agent: "agent-1",
222
+ loop: "build",
223
+ messages: [{ role: "user", content: "Do it" }],
224
+ stream: false,
225
+ }, {
226
+ setHeader: (name, value) => headers.set(name, value),
227
+ });
228
+ expect(prepared.kind).toBe("project-loop");
229
+ if (prepared.kind !== "project-loop")
230
+ throw new Error("Expected project loop");
231
+ expect(prepared.projectLoop.name).toBe("build");
232
+ expect(prepared.executionRoute).toMatchObject({
233
+ status: "explicit",
234
+ mode: "loop",
235
+ loop: "build",
236
+ decisionSource: "request",
237
+ });
238
+ expect(headers.get("x-loop")).toBe("build");
239
+ expect(resolveExecutionRouteClassifier).not.toHaveBeenCalled();
240
+ });
241
+ it("does no router work when configuration is absent or off", async () => {
242
+ const getProjectLoop = vi.fn();
243
+ const resolveExecutionRouteClassifier = vi.fn();
244
+ const emit = vi.fn();
245
+ const deps = makeDeps({
246
+ getAgents: async () => [{
247
+ name: "agent-1",
248
+ model: "mock",
249
+ assignedLoops: ["research"],
250
+ }],
251
+ getProjectLoop,
252
+ resolveExecutionRouteClassifier,
253
+ emit,
254
+ });
255
+ const prepared = await prepareChatCompletionExecution(deps, {
256
+ agent: "agent-1",
257
+ messages: [{ role: "user", content: "Research this" }],
258
+ stream: false,
259
+ });
260
+ expect(prepared.kind).toBe("chat");
261
+ if (prepared.kind !== "chat")
262
+ throw new Error("Expected chat");
263
+ expect(prepared.execution.executionRoute).toBeUndefined();
264
+ expect(getProjectLoop).not.toHaveBeenCalled();
265
+ expect(resolveExecutionRouteClassifier).not.toHaveBeenCalled();
266
+ expect(emit).not.toHaveBeenCalledWith("runtime:execution-route", expect.anything());
267
+ });
268
+ it("falls back to direct when every allowed assigned loop is missing", async () => {
269
+ const resolveExecutionRouteClassifier = vi.fn();
270
+ const emit = vi.fn();
271
+ const deps = makeDeps({
272
+ getProjectLoop: async () => null,
273
+ resolveExecutionRouteClassifier,
274
+ emit,
275
+ });
276
+ const prepared = await prepareChatCompletionExecution(deps, {
277
+ agent: "agent-1",
278
+ messages: [{ role: "user", content: "Research this" }],
279
+ stream: false,
280
+ });
281
+ expect(prepared.kind).toBe("chat");
282
+ if (prepared.kind !== "chat")
283
+ throw new Error("Expected chat");
284
+ expect(prepared.execution.executionRoute).toMatchObject({
285
+ mode: "direct",
286
+ status: "skipped",
287
+ fallbackUsed: false,
288
+ });
289
+ expect(resolveExecutionRouteClassifier).not.toHaveBeenCalled();
290
+ expect(emit).toHaveBeenCalledWith("runtime:execution-route", expect.objectContaining({
291
+ route: expect.objectContaining({ mode: "direct" }),
292
+ }));
293
+ });
294
+ it("fails closed when a runtime planner contradicts the validated route", async () => {
295
+ const buildAgentPrompt = vi.fn();
296
+ const resolveAgentModel = vi.fn();
297
+ const resolveAgentTools = vi.fn();
298
+ const sessionStore = { create: vi.fn(), addMessage: vi.fn() };
299
+ const deps = makeDeps({
300
+ resolveExecutionRouteClassifier: async () => routeClassifier({
301
+ mode: "direct",
302
+ confidence: 0.99,
303
+ reason: "Direct",
304
+ }),
305
+ resolveRuntimePlan: async () => makePlan({
306
+ mode: "loop",
307
+ loop: "research",
308
+ source: "router",
309
+ }),
310
+ buildAgentPrompt,
311
+ resolveAgentModel,
312
+ resolveAgentTools,
313
+ getSessionStore: () => sessionStore,
314
+ });
315
+ const prepared = await prepareChatCompletionExecution(deps, {
316
+ agent: "agent-1",
317
+ messages: [{ role: "user", content: "Say hello" }],
318
+ stream: false,
319
+ });
320
+ expect(prepared).toMatchObject({
321
+ kind: "error",
322
+ status: 500,
323
+ body: {
324
+ error: {
325
+ code: "runtime_planning_failed",
326
+ },
327
+ },
328
+ });
329
+ expect(buildAgentPrompt).not.toHaveBeenCalled();
330
+ expect(resolveAgentModel).not.toHaveBeenCalled();
331
+ expect(resolveAgentTools).not.toHaveBeenCalled();
332
+ expect(sessionStore.create).not.toHaveBeenCalled();
333
+ });
334
+ it("never allows a classifier to select an unassigned loop", async () => {
335
+ const prepared = await prepareChatCompletionExecution(makeDeps({
336
+ resolveExecutionRouteClassifier: async () => routeClassifier({
337
+ mode: "loop",
338
+ loop: "admin",
339
+ confidence: 1,
340
+ reason: "Attempted widening",
341
+ }),
342
+ }), {
343
+ agent: "agent-1",
344
+ messages: [{ role: "user", content: "Run admin" }],
345
+ stream: false,
346
+ });
347
+ expect(prepared.kind).toBe("chat");
348
+ if (prepared.kind !== "chat")
349
+ throw new Error("Expected safe direct fallback");
350
+ expect(prepared.execution.executionRoute).toMatchObject({
351
+ mode: "direct",
352
+ status: "fallback",
353
+ fallbackUsed: true,
354
+ });
355
+ });
356
+ it("rejects malformed router settings before loading manifests", async () => {
357
+ const getProjectLoop = vi.fn();
358
+ const prepared = await prepareChatCompletionExecution(makeDeps({
359
+ getAgents: async () => [{
360
+ name: "agent-1",
361
+ model: "mock",
362
+ assignedLoops: ["research"],
363
+ executionRouter: {
364
+ mode: "auto",
365
+ allowedLoops: [],
366
+ },
367
+ }],
368
+ getProjectLoop,
369
+ }), {
370
+ agent: "agent-1",
371
+ messages: [{ role: "user", content: "Research this" }],
372
+ stream: false,
373
+ });
374
+ expect(prepared).toMatchObject({
375
+ kind: "error",
376
+ status: 500,
377
+ body: {
378
+ error: {
379
+ code: "runtime_execution_routing_failed",
380
+ },
381
+ },
382
+ });
383
+ expect(getProjectLoop).not.toHaveBeenCalled();
384
+ });
385
+ });
386
+ //# sourceMappingURL=execution-router-runtime.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution-router-runtime.test.js","sourceRoot":"","sources":["../../../src/routes/completions/execution-router-runtime.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAClD,OAAO,EACL,iBAAiB,GAGlB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,8BAA8B,GAE/B,MAAM,mBAAmB,CAAC;AAE3B,SAAS,eAAe,CAAC,QAAiB;IACxC,OAAO;QACL,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,QAAQ;KAC/B,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CACf,SAAmC,EACnC,UAAkC,OAAO,EACzC,SAAgC,SAAS;IAEzC,OAAO,iBAAiB,CAAC;QACvB,OAAO;QACP,MAAM;QACN,SAAS;QACT,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;KAC9C,EAAE;QACD,QAAQ,EAAE,GAAG,EAAE,CAAC,YAAY;QAC5B,GAAG,EAAE,GAAG,EAAE,CAAC,0BAA0B;KACtC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,QAAQ,CAAC,YAA0C,EAAE;IAC5D,OAAO;QACL,SAAS,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;gBACtB,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,MAAM;gBACb,YAAY,EAAE,CAAC,MAAM,CAAC;gBACtB,aAAa,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC;gBACpC,eAAe,EAAE;oBACf,IAAI,EAAE,MAAM;oBACZ,YAAY,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC;iBACpC;aACF,CAAC;QACF,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC;QACrB,cAAc,EAAE,GAAG,EAAE,CAAC,IAAI;QAC1B,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI;QAC3B,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI;QACpB,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;QACd,iBAAiB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;YAC9B,KAAK,EAAE;gBACL,EAAE,EAAE,MAAM;gBACV,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE,MAAM;gBAChB,WAAW,EAAE,UAAU;gBACvB,OAAO,EAAE,EAAS;gBAClB,aAAa,EAAE,OAAO;gBACtB,SAAS,EAAE,KAAK;aACjB;SACF,CAAC;QACF,gBAAgB,EAAE,KAAK,IAAI,EAAE,CAAC,cAAc;QAC5C,iBAAiB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;YAC9B,KAAK,EAAE,EAAE;YACT,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI;SAC3B,CAAC;QACF,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YAC/B,IAAI;YACJ,KAAK,EAAE,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO;YACjD,WAAW,EAAE,IAAI,KAAK,UAAU;gBAC9B,CAAC,CAAC,sBAAsB;gBACxB,CAAC,CAAC,uBAAuB;YAC3B,QAAQ,EAAE,EAAE,MAAM,EAAE,uBAAuB,EAAE;YAC7C,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE;gBACL,GAAG,EAAE;oBACH,IAAI,EAAE,OAAO;oBACb,YAAY,EAAE,qBAAqB;oBACnC,KAAK,EAAE,CAAC,MAAM,CAAC;oBACf,IAAI,EAAE,KAAK;iBACZ;aACF;SACF,CAAC;QACF,+BAA+B,EAAE,KAAK,IAAI,EAAE,CAC1C,eAAe,CAAC;YACd,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,UAAU;YAChB,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,6BAA6B;SACtC,CAAC;QACJ,GAAG,SAAS;KACb,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;IAC3C,EAAE,CAAC,mFAAmF,EAAE,KAAK,IAAI,EAAE;QACjG,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAC;QACnE,MAAM,YAAY,GAAG;YACnB,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE;gBACvB,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAC7B,OAAO,WAAW,CAAC;YACrB,CAAC,CAAC;YACF,UAAU,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE;gBAC3B,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAChC,CAAC,CAAC;SACH,CAAC;QACF,MAAM,kBAAkB,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAC/C,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACnB,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC;gBAC9B,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,QAAQ;aACjB,CAAC,CAAC;YACH,OAAO,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;QACH,MAAM,+BAA+B,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;YACzD,QAAQ,EAAE,KAAK,EAAE,KAAc,EAAE,EAAE;gBACjC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACvB,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;oBACpB,OAAO,EAAE,CAAC;oBACV,OAAO,EAAE,SAAS;oBAClB,MAAM,EAAE,SAAS;oBACjB,KAAK,EAAE,4BAA4B;oBACnC,KAAK,EAAE;wBACL;4BACE,IAAI,EAAE,UAAU;4BAChB,KAAK,EAAE,UAAU;4BACjB,WAAW,EAAE,sBAAsB;yBACpC;wBACD;4BACE,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE,OAAO;4BACd,WAAW,EAAE,uBAAuB;yBACrC;qBACF;oBACD,MAAM,EAAE,EAAE;iBACX,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;gBACvD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBACpD,OAAO;oBACL,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,UAAU;oBAChB,UAAU,EAAE,IAAI;oBAChB,MAAM,EAAE,6BAA6B;iBACtC,CAAC;YACJ,CAAC;SACF,CAAC,CAAC,CAAC;QACJ,MAAM,IAAI,GAAG,QAAQ,CAAC;YACpB,IAAI;YACJ,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY;YACnC,kBAAkB;YAClB,gBAAgB,EAAE,KAAK,IAAI,EAAE;gBAC3B,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACrB,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,iBAAiB,EAAE,KAAK,IAAI,EAAE;gBAC5B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAClE,CAAC;YACD,iBAAiB,EAAE,KAAK,IAAI,EAAE;gBAC5B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;YAC5E,CAAC;YACD,+BAA+B;SAChC,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;QAE1C,MAAM,QAAQ,GAAG,MAAM,8BAA8B,CAAC,IAAI,EAAE;YAC1D,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,iBAAiB;YACvB,QAAQ,EAAE;gBACR,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,uCAAuC,EAAE;gBAClE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,EAAE;gBAC5C,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,4BAA4B,EAAE;aACxD;YACD,MAAM,EAAE,KAAK;SACd,EAAE;YACD,OAAO,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE;YAClD,SAAS,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC;SACrD,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3C,IAAI,QAAQ,CAAC,IAAI,KAAK,cAAc;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC/E,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACnD,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC;YAC5C,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,UAAU;YAChB,cAAc,EAAE,QAAQ;SACzB,CAAC,CAAC;QACH,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/C,MAAM,CAAC,+BAA+B,CAAC,CAAC,oBAAoB,CAAC;YAC3D,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,SAAS;YACpB,MAAM,EAAE,iBAAiB;SAC1B,CAAC,CAAC;QACH,MAAM,CAAC,kBAAkB,CAAC,CAAC,oBAAoB,EAAE,CAAC;QAClD,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;YACpB,UAAU;YACV,8BAA8B;YAC9B,MAAM;YACN,mBAAmB;YACnB,gBAAgB;YAChB,iBAAiB;SAClB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;QACtE,MAAM,cAAc,GAAG,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,cAAc,CAAC,CAAC;QACxD,MAAM,IAAI,GAAG,QAAQ,CAAC;YACpB,cAAc;YACd,+BAA+B,EAAE,KAAK,IAAI,EAAE,CAC1C,eAAe,CAAC;gBACd,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,IAAI;gBAChB,MAAM,EAAE,+BAA+B;aACxC,CAAC;SACL,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,8BAA8B,CAAC,IAAI,EAAE;YAC1D,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;YAClD,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;QAC/D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC;YACtD,IAAI,EAAE,QAAQ;YACd,cAAc,EAAE,QAAQ;SACzB,CAAC,CAAC;QACH,MAAM,CAAC,cAAc,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,KAAK,IAAI,EAAE;QACnF,MAAM,+BAA+B,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAChD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC1C,MAAM,QAAQ,GAAG,MAAM,8BAA8B,CAAC,QAAQ,CAAC;YAC7D,+BAA+B;SAChC,CAAC,EAAE;YACF,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;YAC9C,MAAM,EAAE,KAAK;SACd,EAAE;YACD,SAAS,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC;SACrD,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3C,IAAI,QAAQ,CAAC,IAAI,KAAK,cAAc;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC/E,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC;YAC5C,MAAM,EAAE,UAAU;YAClB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,OAAO;YACb,cAAc,EAAE,SAAS;SAC1B,CAAC,CAAC;QACH,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,CAAC,+BAA+B,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;QACvE,MAAM,cAAc,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/B,MAAM,+BAA+B,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAChD,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACrB,MAAM,IAAI,GAAG,QAAQ,CAAC;YACpB,SAAS,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;oBACtB,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,MAAM;oBACb,aAAa,EAAE,CAAC,UAAU,CAAC;iBAC5B,CAAC;YACF,cAAc;YACd,+BAA+B;YAC/B,IAAI;SACL,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,8BAA8B,CAAC,IAAI,EAAE;YAC1D,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;YACtD,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;QAC/D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,aAAa,EAAE,CAAC;QAC1D,MAAM,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC9C,MAAM,CAAC,+BAA+B,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC/D,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,oBAAoB,CACnC,yBAAyB,EACzB,MAAM,CAAC,QAAQ,EAAE,CAClB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;QAChF,MAAM,+BAA+B,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAChD,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACrB,MAAM,IAAI,GAAG,QAAQ,CAAC;YACpB,cAAc,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI;YAChC,+BAA+B;YAC/B,IAAI;SACL,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,8BAA8B,CAAC,IAAI,EAAE;YAC1D,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;YACtD,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;QAC/D,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC;YACtD,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,SAAS;YACjB,YAAY,EAAE,KAAK;SACpB,CAAC,CAAC;QACH,MAAM,CAAC,+BAA+B,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC/D,MAAM,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAC/B,yBAAyB,EACzB,MAAM,CAAC,gBAAgB,CAAC;YACtB,KAAK,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;SACnD,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,KAAK,IAAI,EAAE;QACnF,MAAM,gBAAgB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACjC,MAAM,iBAAiB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,MAAM,iBAAiB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,MAAM,YAAY,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QAC9D,MAAM,IAAI,GAAG,QAAQ,CAAC;YACpB,+BAA+B,EAAE,KAAK,IAAI,EAAE,CAC1C,eAAe,CAAC;gBACd,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,IAAI;gBAChB,MAAM,EAAE,QAAQ;aACjB,CAAC;YACJ,kBAAkB,EAAE,KAAK,IAAI,EAAE,CAAC,QAAQ,CAAC;gBACvC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,QAAQ;aACjB,CAAC;YACF,gBAAgB;YAChB,iBAAiB;YACjB,iBAAiB;YACjB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY;SACpC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,8BAA8B,CAAC,IAAI,EAAE;YAC1D,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;YAClD,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC;YAC7B,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,GAAG;YACX,IAAI,EAAE;gBACJ,KAAK,EAAE;oBACL,IAAI,EAAE,yBAAyB;iBAChC;aACF;SACF,CAAC,CAAC;QACH,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAChD,MAAM,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACjD,MAAM,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACjD,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;QACtE,MAAM,QAAQ,GAAG,MAAM,8BAA8B,CAAC,QAAQ,CAAC;YAC7D,+BAA+B,EAAE,KAAK,IAAI,EAAE,CAC1C,eAAe,CAAC;gBACd,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO;gBACb,UAAU,EAAE,CAAC;gBACb,MAAM,EAAE,oBAAoB;aAC7B,CAAC;SACL,CAAC,EAAE;YACF,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;YAClD,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC/E,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC;YACtD,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,UAAU;YAClB,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,cAAc,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,MAAM,8BAA8B,CAAC,QAAQ,CAAC;YAC7D,SAAS,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;oBACtB,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,MAAM;oBACb,aAAa,EAAE,CAAC,UAAU,CAAC;oBAC3B,eAAe,EAAE;wBACf,IAAI,EAAE,MAAM;wBACZ,YAAY,EAAE,EAAE;qBACjB;iBACF,CAAC;YACF,cAAc;SACf,CAAC,EAAE;YACF,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;YACtD,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC;YAC7B,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,GAAG;YACX,IAAI,EAAE;gBACJ,KAAK,EAAE;oBACL,IAAI,EAAE,kCAAkC;iBACzC;aACF;SACF,CAAC,CAAC;QACH,MAAM,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IAChD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -6,7 +6,7 @@
6
6
  * Also owns loop-run persistence (traces, approvals, resume checkpoints)
7
7
  * and the HTTP wiring for loop-mode requests (streaming + non-streaming).
8
8
  */
9
- import { type ContextBag, type LoopApprovedGate, type LoopRunRecord, type LoopResumeState, type LoopTraceEvent, type ProjectLoopConfig } from "@polpo-ai/core";
9
+ import { type ContextBag, type LoopApprovedGate, type LoopRunRecord, type LoopResumeState, type LoopTraceEvent, type ProjectLoopConfig, type ResolvedExecutionRoute, type RuntimePlan } from "@polpo-ai/core";
10
10
  import type { LanguageModelUsage } from "ai";
11
11
  import type { CompletionRouteDeps } from "../completions.js";
12
12
  import { type CompletionResolvedModelInfo } from "./agent-step-runner.js";
@@ -33,6 +33,8 @@ export declare function runProjectLoopCompletion(options: {
33
33
  onToolCall?: (toolCall: LoopRuntimeToolCall) => Promise<void>;
34
34
  onTrace?: (event: LoopTraceEvent) => Promise<void>;
35
35
  resumeRun?: LoopRunRecord;
36
+ runtimePlan?: RuntimePlan;
37
+ executionRoute?: ResolvedExecutionRoute;
36
38
  }): Promise<ProjectLoopRunResult>;
37
39
  export declare function buildLoopResumeState(continuation: {
38
40
  context: ContextBag;
@@ -63,5 +65,7 @@ export declare function handleProjectLoopCompletion(c: any, options: {
63
65
  extraSystemParts: string[];
64
66
  sessionStore: any;
65
67
  sessionId: string | null;
68
+ runtimePlan?: RuntimePlan;
69
+ executionRoute?: ResolvedExecutionRoute;
66
70
  }): Promise<any>;
67
71
  //# sourceMappingURL=project-loop-runner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"project-loop-runner.d.ts","sourceRoot":"","sources":["../../../src/routes/completions/project-loop-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EASL,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AAC7C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAIL,KAAK,2BAA2B,EACjC,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAA4C,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAEvG,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,kBAAkB,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,2BAA2B,CAAC;IAC5C,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,SAAS,EAAE,GAAG,EAAE,CAAC;IACjB,OAAO,EAAE,UAAU,CAAC;IACpB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,wBAAwB,CAAC,OAAO,EAAE;IACtD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,WAAW,EAAE,GAAG,CAAC;IACjB,WAAW,EAAE,iBAAiB,CAAC;IAC/B,UAAU,EAAE,GAAG,EAAE,CAAC;IAClB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA0PhC;AAED,wBAAgB,oBAAoB,CAClC,YAAY,EAAE;IAAE,OAAO,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,GAAG,EAAE,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,EACtF,UAAU,EAAE,GAAG,EAAE,EACjB,gBAAgB,EAAE,MAAM,EAAE,EAC1B,aAAa,EAAE,gBAAgB,EAAE,GAAG,SAAS,GAC5C,eAAe,GAAG,SAAS,CAc7B;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE;IAClD,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,OAAO,CAAC,aAAa,CAAC,CAuCzB;AAED;;;;GAIG;AACH,wBAAsB,2BAA2B,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE;IACjE,IAAI,EAAE,mBAAmB,CAAC;IAC1B,IAAI,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1D,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,GAAG,CAAC;IACjB,WAAW,EAAE,iBAAiB,CAAC;IAC/B,UAAU,EAAE,GAAG,EAAE,CAAC;IAClB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,YAAY,EAAE,GAAG,CAAC;IAClB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,GAAG,OAAO,CAAC,GAAG,CAAC,CAgKf"}
1
+ {"version":3,"file":"project-loop-runner.d.ts","sourceRoot":"","sources":["../../../src/routes/completions/project-loop-runner.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ import { agentConfigForModelPrimary, addUsage, runAgentStepCompletion, } from ".
13
13
  import { completionResponse, loopRuntimeErrorEnvelope, modelNotFoundEnvelope, sseChunk } from "./sse.js";
14
14
  import { emitFileChanged, persistAssistantMessage } from "./tool-mapping.js";
15
15
  export async function runProjectLoopCompletion(options) {
16
- const { deps, agentConfig, projectLoop, aiMessages, extraSystemParts, sessionId, user, onToolCall, onTrace, resumeRun } = options;
16
+ const { deps, agentConfig, projectLoop, aiMessages, extraSystemParts, sessionId, user, onToolCall, onTrace, resumeRun, runtimePlan, executionRoute, } = options;
17
17
  const normalized = normalizeProjectLoop(projectLoop);
18
18
  if (!normalized.pipeline)
19
19
  throw new Error(`Loop "${projectLoop.name}" does not define a pipeline`);
@@ -49,6 +49,30 @@ export async function runProjectLoopCompletion(options) {
49
49
  user,
50
50
  metadata: {
51
51
  runtime: "chat.completions",
52
+ surface: runtimePlan?.surface ?? executionRoute?.surface ?? "agent",
53
+ source: runtimePlan?.source
54
+ ?? executionRoute?.invocationSource
55
+ ?? "request",
56
+ execution: {
57
+ mode: "loop",
58
+ loop: projectLoop.name,
59
+ source: runtimePlan?.execution.source
60
+ ?? executionRoute?.decisionSource
61
+ ?? "request",
62
+ },
63
+ ...(runtimePlan ? { runtimePlanId: runtimePlan.id } : {}),
64
+ ...(executionRoute
65
+ ? {
66
+ executionRoute: {
67
+ status: executionRoute.status,
68
+ decisionSource: executionRoute.decisionSource,
69
+ confidence: executionRoute.confidence,
70
+ reason: executionRoute.reason,
71
+ latencyMs: executionRoute.latencyMs,
72
+ fallbackUsed: executionRoute.fallbackUsed,
73
+ },
74
+ }
75
+ : {}),
52
76
  loopVersion: projectLoop.version ?? "1",
53
77
  },
54
78
  });
@@ -328,7 +352,7 @@ export async function resumeProjectLoopRun(options) {
328
352
  * tool_call / loop_trace chunks, or a single JSON body).
329
353
  */
330
354
  export async function handleProjectLoopCompletion(c, options) {
331
- const { deps, body, completionId, agentConfig, projectLoop, aiMessages, extraSystemParts, sessionStore, sessionId } = options;
355
+ const { deps, body, completionId, agentConfig, projectLoop, aiMessages, extraSystemParts, sessionStore, sessionId, runtimePlan, executionRoute, } = options;
332
356
  if (body.stream) {
333
357
  return streamSSE(c, async (stream) => {
334
358
  const abortController = new AbortController();
@@ -363,6 +387,8 @@ export async function handleProjectLoopCompletion(c, options) {
363
387
  extraSystemParts,
364
388
  sessionId,
365
389
  user: body.user,
390
+ runtimePlan,
391
+ executionRoute,
366
392
  onToolCall: async (toolCall) => {
367
393
  if (abortController.signal.aborted)
368
394
  return;
@@ -448,6 +474,8 @@ export async function handleProjectLoopCompletion(c, options) {
448
474
  extraSystemParts,
449
475
  sessionId,
450
476
  user: body.user,
477
+ runtimePlan,
478
+ executionRoute,
451
479
  });
452
480
  finalText = run.text;
453
481
  runUsage = run.usage;
@@ -1 +1 @@
1
- {"version":3,"file":"project-loop-runner.js","sourceRoot":"","sources":["../../../src/routes/completions/project-loop-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EACL,gBAAgB,EAChB,yBAAyB,EACzB,mCAAmC,EACnC,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,GAOrB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,0BAA0B,EAC1B,QAAQ,EACR,sBAAsB,GAEvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzG,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAA4B,MAAM,mBAAmB,CAAC;AAcvG,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,OAW9C;IACC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IAClI,MAAM,UAAU,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;IACrD,IAAI,CAAC,UAAU,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,SAAS,WAAW,CAAC,IAAI,8BAA8B,CAAC,CAAC;IAEnG,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC5D,MAAM,eAAe,GAAG,SAAS,CAAC,eAAe,IAAI,SAAS,CAAC,QAAQ,CAAC;IACxE,MAAM,YAAY,GAAG,0BAA0B,CAC7C,WAAW,EACX,IAAI,CAAC,SAAS,EAAE,EAAE,QAAQ,CAC3B,CAAC,KAAK,IAAI,OAAO,CAAC;IACnB,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;IAC9C,MAAM,WAAW,GAAG,SAAS,EAAE,MAAM,CAAC;IACtC,MAAM,SAAS,GAAG,SAAS,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACxF,IAAI,YAAY,IAAI,SAAS,IAAI,SAAS,EAAE,CAAC;QAC3C,MAAM,YAAY,CAAC,SAAS,CAAC,SAAS,EAAE;YACtC,MAAM,EAAE,UAAU;YAClB,KAAK,EAAE,SAAS;YAChB,WAAW,EAAE,SAAS;YACtB,QAAQ,EAAE;gBACR,GAAG,SAAS,CAAC,QAAQ;gBACrB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,cAAc,EAAE,CAAC,WAAW,EAAE,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC;aACjD;YACD,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;gBACpB,GAAG,WAAW;gBACd,QAAQ,EAAE,CAAC,WAAW,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC;gBACzC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACpC,CAAC,CAAC,CAAC,SAAS;SACd,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,YAAY,IAAI,SAAS,EAAE,CAAC;QACrC,MAAM,YAAY,CAAC,SAAS,CAAC;YAC3B,EAAE,EAAE,SAAS;YACb,IAAI,EAAE,WAAW;YACjB,SAAS,EAAE,WAAW,CAAC,IAAI;YAC3B,SAAS,EAAE,SAAS,IAAI,SAAS;YACjC,IAAI;YACJ,QAAQ,EAAE;gBACR,OAAO,EAAE,kBAAkB;gBAC3B,WAAW,EAAE,WAAW,CAAC,OAAO,IAAI,GAAG;aACxC;SACF,CAAC,CAAC;IACL,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,gBAAgB,EAAE,CAAC;IACxC,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,IAAI,UAAU,GAAuB,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAwB,CAAC;IAC/G,IAAI,SAAS,GAAG,YAAY,CAAC;IAC7B,IAAI,iBAA0D,CAAC;IAC/D,IAAI,oBAAyD,CAAC;IAC9D,MAAM,cAAc,GAAU,EAAE,CAAC;IACjC,MAAM,MAAM,GAAqB,EAAE,CAAC;IAEpC,MAAM,SAAS,GAAG,KAAK,EAAE,KAAqB,EAAE,EAAE;QAChD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnB,IAAI,YAAY,IAAI,SAAS,EAAE,CAAC;YAC9B,IAAI,CAAC;gBACH,MAAM,YAAY,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YACnD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,IAAI,CAAC,+BAA+B,EAAE;oBACzC,SAAS;oBACT,IAAI,EAAE,WAAW,CAAC,IAAI;oBACtB,SAAS,EAAE,KAAK,CAAC,IAAI;oBACrB,KAAK,EAAG,GAAa,CAAC,OAAO;iBAC9B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,IAAI,CAAC;YACH,MAAM,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,IAAI,CAAC,gCAAgC,EAAE;gBAC1C,SAAS;gBACT,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,SAAS,EAAE,KAAK,CAAC,IAAI;gBACrB,KAAK,EAAG,GAAa,CAAC,OAAO;aAC9B,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC;YACpC,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ;YAClG,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,OAAO,EAAE,WAAW,EAAE,OAAO,IAAI,EAAE;YACnC,YAAY,EAAE,WAAW,CAAC,KAAK;YAC/B,kBAAkB,EAAE,WAAW,CAAC,WAAW;YAC3C,eAAe,EAAE,WAAW,CAAC,QAAQ;YACrC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;gBACpB,YAAY,EAAE,WAAW,CAAC,YAAY;gBACtC,aAAa,EAAE,WAAW,CAAC,aAAa;aACzC,CAAC,CAAC,CAAC,SAAS;YACb,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;gBACvB,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;gBAC7B,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;gBACvC,MAAM,EAAE,GAAG,aAAa,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;gBACrC,MAAM,UAAU,EAAE,CAAC;oBACjB,EAAE;oBACF,IAAI;oBACJ,SAAS,EAAE,IAAI;oBACf,KAAK,EAAE,SAAS;iBACjB,CAAC,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACjD,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAC5C,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/C,MAAM,KAAK,GAAG;oBACZ,EAAE;oBACF,IAAI;oBACJ,SAAS,EAAE,IAAI;oBACf,MAAM,EAAE,MAAM;oBACd,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,OAAgB,CAAC,CAAC,CAAC,WAAoB;iBACzD,CAAC;gBACF,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3B,MAAM,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC;gBAC1B,IAAI,OAAO;oBAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;gBACrC,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5C,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;gBACrC,MAAM,EAAE,GAAG,aAAa,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;gBACrC,MAAM,UAAU,EAAE,CAAC;oBACjB,EAAE;oBACF,IAAI,EAAE,QAAQ,IAAI,EAAE;oBACpB,SAAS,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;oBACjD,KAAK,EAAE,SAAS;iBACjB,CAAC,CAAC;gBACH,MAAM,SAAS,GAAG,kBAAkB,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC9D,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAAC;oBAC9C,IAAI;oBACJ,WAAW,EAAE,SAAS;oBACtB,UAAU;oBACV,gBAAgB;oBAChB,OAAO;oBACP,QAAQ,EAAE,IAAI;oBACd,UAAU;iBACX,CAAC,CAAC;gBACH,SAAS,GAAG,UAAU,CAAC,IAAI,IAAI,SAAS,CAAC;gBACzC,UAAU,GAAG,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;gBACpD,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC;gBAC7B,iBAAiB,GAAG,UAAU,CAAC,aAAa,CAAC;gBAC7C,oBAAoB,GAAG,UAAU,CAAC,gBAAgB,CAAC;gBACnD,cAAc,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;gBAC7C,MAAM,MAAM,GAAG,oBAAoB,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;gBACnE,MAAM,KAAK,GAAG;oBACZ,EAAE;oBACF,IAAI,EAAE,QAAQ,IAAI,EAAE;oBACpB,SAAS,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;oBACjD,MAAM,EAAE,MAAM;oBACd,KAAK,EAAE,WAAoB;iBAC5B,CAAC;gBACF,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3B,MAAM,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC;gBAC1B,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC;YACvC,CAAC;YACD,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBAC1B,MAAM,IAAI,KAAK,CAAC,oBAAoB,IAAI,0CAA0C,CAAC,CAAC;YACtF,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS;YAAE,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACpE,IAAI,YAAY,IAAI,SAAS,EAAE,CAAC;YAC9B,MAAM,YAAY,CAAC,SAAS,CAAC,SAAS,EAAE;gBACtC,MAAM,EAAE,WAAW;gBACnB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM;gBACzE,MAAM,EAAE,SAAS;gBACjB,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS;gBACzF,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACtC,CAAC,CAAC;QACL,CAAC;QACD,OAAO;YACL,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,UAAU;YACjB,KAAK,EAAE,SAAS;YAChB,aAAa,EAAE,iBAAiB;YAChC,gBAAgB,EAAE,oBAAoB;YACtC,SAAS,EAAE,cAAc;YACzB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,KAAK,EAAE,MAAM,CAAC,MAAM;YACpB,SAAS;SACV,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,YAAY,IAAI,SAAS,EAAE,CAAC;YAC7B,GAAW,CAAC,SAAS,GAAG,SAAS,CAAC;YACnC,IAAI,GAAG,YAAY,yBAAyB,IAAI,GAAG,YAAY,mCAAmC,EAAE,CAAC;gBACnG,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC;gBAChD,IAAI,iBAAqC,CAAC;gBAC1C,MAAM,MAAM,GAAG,GAAG,YAAY,mCAAmC;oBAC/D,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,IAAI,mBAAmB,MAAM,CAAC,CAAC,CAAC,EAAE;oBACrD,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,eAAe,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChD,MAAM,QAAQ,GAAG,GAAG,YAAY,mCAAmC;oBACjE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,IAAI,GAAG,CAAC,UAAU,CAAC,EAAE,IAAI,0BAA0B;oBAC/E,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,sBAAsB,CAAC;gBACtE,MAAM,YAAY,GAAG,GAAG,YAAY,mCAAmC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC;gBAClG,IAAI,aAAa,EAAE,CAAC;oBAClB,iBAAiB,GAAG,YAAY,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC7C,MAAM,aAAa,CAAC,MAAM,CAAC;wBACzB,EAAE,EAAE,iBAAiB;wBACrB,MAAM;wBACN,QAAQ;wBACR,MAAM,EAAE,SAAS;wBACjB,OAAO,EAAE;4BACP,IAAI,EAAE,eAAe;4BACrB,YAAY;4BACZ,SAAS;4BACT,QAAQ,EAAE,WAAW,CAAC,IAAI;4BAC1B,SAAS,EAAE,WAAW,CAAC,IAAI;4BAC3B,IAAI,EAAE,GAAG,CAAC,IAAI;4BACd,GAAG,CAAC,GAAG,YAAY,mCAAmC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;4BACjH,OAAO,EAAE,GAAG,CAAC,OAAO;4BACpB,OAAO,EAAE,GAAG,CAAC,OAAO;4BACpB,KAAK,EAAE,MAAM;yBACd;wBACD,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;qBACtC,CAAC,CAAC;oBACF,GAAW,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;gBACrD,CAAC;gBACD,MAAM,YAAY,CAAC,SAAS,CAAC,SAAS,EAAE;oBACtC,MAAM,EAAE,mBAAmB;oBAC3B,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM;oBAC3D,iBAAiB;oBACjB,QAAQ,EAAE;wBACR,IAAI,EAAE,YAAY;wBAClB,QAAQ,EAAE,GAAG,YAAY,mCAAmC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,WAAW;wBAC1G,YAAY,EAAE,GAAG,YAAY,mCAAmC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,IAAI,WAAW,CAAC,CAAC,CAAC,SAAS;wBAC/G,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,OAAO,EAAE,GAAG,YAAY,mCAAmC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO;wBACzG,OAAO,EAAE,GAAG,CAAC,OAAO;wBACpB,OAAO,EAAE,GAAG,CAAC,OAAO;wBACpB,MAAM,EAAE,SAAS;qBAClB;oBACD,MAAM,EAAE,oBAAoB,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,CAAC;oBACxG,KAAK,EAAE,GAAG,CAAC,OAAO;iBACnB,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,YAAY,CAAC,SAAS,CAAC,SAAS,EAAE;oBACtC,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM;oBAC3D,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;oBACvD,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACtC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;YAAS,CAAC;QACT,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YACtB,SAAS,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,YAAsF,EACtF,UAAiB,EACjB,gBAA0B,EAC1B,aAA6C;IAE7C,IAAI,CAAC,YAAY;QAAE,OAAO,SAAS,CAAC;IACpC,OAAO;QACL,OAAO,EAAE,YAAY,CAAC,OAAO;QAC7B,KAAK,EAAE,YAAY,CAAC,KAAK;QACzB,YAAY,EAAE,YAAY,CAAC,YAAY;QACvC,aAAa,EAAE,aAAa,IAAI,EAAE;QAClC,OAAO,EAAE;YACP,UAAU;YACV,gBAAgB;SACjB;QACD,QAAQ,EAAE,CAAC;QACX,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,OAI1C;IACC,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;IACtD,IAAI,CAAC,YAAY;QAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IAEvE,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACrD,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,aAAa,OAAO,CAAC,KAAK,aAAa,CAAC,CAAC;IACnE,IAAI,GAAG,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,aAAa,OAAO,CAAC,KAAK,QAAQ,GAAG,CAAC,MAAM,yBAAyB,CAAC,CAAC;IACzF,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CAAC,aAAa,OAAO,CAAC,KAAK,4BAA4B,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;IAC9C,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,SAAS,CAAC,CAAC;IAC9E,IAAI,CAAC,WAAW;QAAE,MAAM,IAAI,KAAK,CAAC,UAAU,GAAG,CAAC,SAAS,IAAI,SAAS,6BAA6B,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IAC9G,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc;QAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7F,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACpE,IAAI,CAAC,WAAW;QAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,GAAG,CAAC,QAAQ,aAAa,CAAC,CAAC;IAE9E,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IACtG,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAAC;QAC1E,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,gBAA4B;QACjD,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,wBAAwB,CAAC;QAC7B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,WAAW;QACX,WAAW;QACX,UAAU;QACV,gBAAgB;QAChB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,SAAS,EAAE,GAAG;KACf,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClD,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC,EAAE,4BAA4B,CAAC,CAAC;IAC/E,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,CAAM,EAAE,OAUzD;IACC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IAE9H,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACnC,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;YAC9C,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,eAAe,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACnD,MAAM,iBAAiB,GAAG,WAAW,CAAC,GAAG,EAAE;gBACzC,IAAI,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnC,aAAa,CAAC,iBAAiB,CAAC,CAAC;oBACjC,OAAO;gBACT,CAAC;gBACD,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;oBACpC,aAAa,CAAC,iBAAiB,CAAC,CAAC;gBACnC,CAAC,CAAC,CAAC;YACL,CAAC,EAAE,MAAM,CAAC,CAAC;YAEX,IAAI,cAAc,GAAkB,IAAI,CAAC;YACzC,IAAI,SAAS,GAAG,EAAE,CAAC;YACnB,IAAI,QAAQ,GAAuB,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAwB,CAAC;YAC7G,IAAI,QAAQ,GAAG,0BAA0B,CACvC,WAAW,EACX,IAAI,CAAC,SAAS,EAAE,EAAE,QAAQ,CAC3B,CAAC,KAAK,IAAI,OAAO,CAAC;YACnB,IAAI,aAAsD,CAAC;YAC3D,IAAI,gBAAqD,CAAC;YAC1D,IAAI,SAAS,GAAU,EAAE,CAAC;YAE1B,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC/E,IAAI,YAAY,IAAI,SAAS,EAAE,CAAC;oBAC9B,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,SAAS,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;oBAC9E,cAAc,GAAG,WAAW,CAAC,EAAE,CAAC;gBAClC,CAAC;gBAED,MAAM,GAAG,GAAG,MAAM,wBAAwB,CAAC;oBACzC,IAAI;oBACJ,WAAW;oBACX,WAAW;oBACX,UAAU;oBACV,gBAAgB;oBAChB,SAAS;oBACT,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;wBAC7B,IAAI,eAAe,CAAC,MAAM,CAAC,OAAO;4BAAE,OAAO;wBAC3C,MAAM,MAAM,CAAC,QAAQ,CAAC;4BACpB,IAAI,EAAE,QAAQ,CAAC,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;yBAChE,CAAC,CAAC;oBACL,CAAC;oBACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;wBACvB,IAAI,eAAe,CAAC,MAAM,CAAC,OAAO;4BAAE,OAAO;wBAC3C,MAAM,MAAM,CAAC,QAAQ,CAAC;4BACpB,IAAI,EAAE,QAAQ,CAAC,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;yBAC9D,CAAC,CAAC;oBACL,CAAC;iBACF,CAAC,CAAC;gBACH,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC;gBACrB,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC;gBACrB,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC;gBACrB,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;gBAClC,gBAAgB,GAAG,GAAG,CAAC,gBAAgB,CAAC;gBACxC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;gBAE1B,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,IAAI,SAAS,EAAE,CAAC;oBACjD,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;gBAClF,CAAC;gBACD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpC,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;oBACpG,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;gBAC5C,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,GAAG,YAAY,YAAY,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjG,OAAO;gBACT,CAAC;gBACD,MAAM,QAAQ,GAAG,qBAAqB,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBAClE,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;oBACzF,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;oBAC1C,OAAO;gBACT,CAAC;gBACD,MAAM,SAAS,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;gBAChD,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;oBAC1F,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;oBAC1C,OAAO;gBACT,CAAC;gBACD,MAAM,GAAG,CAAC;YACZ,CAAC;oBAAS,CAAC;gBACT,aAAa,CAAC,iBAAiB,CAAC,CAAC;gBACjC,MAAM,uBAAuB,CAAC,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;gBAC7F,IAAI,CAAC;oBACH,IAAI,CAAC,oBAAoB,EAAE,CAAC;wBAC1B,KAAK,EAAE,QAAQ;wBACf,KAAK,EAAE,QAAQ;wBACf,aAAa;wBACb,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,SAAS,EAAE,SAAS,IAAI,SAAS;wBACjC,IAAI,EAAE,IAAI,CAAC,IAAI;wBACf,gBAAgB;qBACjB,CAAC,CAAC;gBACL,CAAC;gBAAC,MAAM,CAAC,CAAC,4BAA4B,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC,CAAQ,CAAC;IACZ,CAAC;IAED,IAAI,cAAc,GAAkB,IAAI,CAAC;IACzC,IAAI,QAAQ,GAAuB,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAwB,CAAC;IAC7G,IAAI,QAAQ,GAAG,0BAA0B,CACvC,WAAW,EACX,IAAI,CAAC,SAAS,EAAE,EAAE,QAAQ,CAC3B,CAAC,KAAK,IAAI,OAAO,CAAC;IACnB,IAAI,aAAsD,CAAC;IAC3D,IAAI,gBAAqD,CAAC;IAC1D,IAAI,SAAS,GAAU,EAAE,CAAC;IAC1B,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,IAAI,CAAC;QACH,IAAI,YAAY,IAAI,SAAS,EAAE,CAAC;YAC9B,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,SAAS,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;YAC9E,cAAc,GAAG,WAAW,CAAC,EAAE,CAAC;QAClC,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,wBAAwB,CAAC;YACzC,IAAI;YACJ,WAAW;YACX,WAAW;YACX,UAAU;YACV,gBAAgB;YAChB,SAAS;YACT,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAC;QACH,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC;QACrB,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC;QACrB,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC;QACrB,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;QAClC,gBAAgB,GAAG,GAAG,CAAC,gBAAgB,CAAC;QACxC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;QAC1B,OAAO,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IAC9H,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,QAAQ,GAAG,qBAAqB,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAClE,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,GAAU,CAAC,CAAC;QACjD,CAAC;QACD,MAAM,SAAS,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;QAChD,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,GAAU,CAAC,CAAC;QAClD,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;YAAS,CAAC;QACT,MAAM,uBAAuB,CAAC,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAC7F,IAAI,CAAC;YACH,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC1B,KAAK,EAAE,QAAQ;gBACf,KAAK,EAAE,QAAQ;gBACf,aAAa;gBACb,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAE,SAAS,IAAI,SAAS;gBACjC,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,gBAAgB;aACjB,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC,CAAC,4BAA4B,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"project-loop-runner.js","sourceRoot":"","sources":["../../../src/routes/completions/project-loop-runner.ts"],"names":[],"mappings":"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"}
@@ -94,6 +94,8 @@ describe("completion runtime plan hook", () => {
94
94
  agent: "agent-1",
95
95
  stream: false,
96
96
  messages: [{ role: "user", content: "hello" }],
97
+ }, {
98
+ runtime: { surface: "channel", source: "channel" },
97
99
  });
98
100
  expect(prepared.kind).toBe("chat");
99
101
  if (prepared.kind !== "chat")