@polpo-ai/core 0.16.2 → 0.17.0

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.
@@ -19,6 +19,8 @@ export interface ChatSuggestionRequestOptions {
19
19
  guidance?: string;
20
20
  /** JSON snapshot of application state, at most 8192 serialized characters / 8 levels. */
21
21
  context?: Record<string, ChatSuggestionContextValue>;
22
+ /** Caller-authored actions, shown first in caller order within maxItems. Never model-generated. */
23
+ actions?: readonly ChatActionSuggestionInput[];
22
24
  }
23
25
  /** Validate bounded JSON before it reaches an auxiliary model or durable request. */
24
26
  export declare function normalizeChatSuggestionRequest(value: unknown): ChatSuggestionRequestOptions & {
@@ -28,14 +30,44 @@ export declare const ASK_USER_QUESTION_TOOL_NAME: "ask_user_question";
28
30
  /** Client-rendered tools that may suspend a direct chat turn. */
29
31
  export declare const CLIENT_INTERACTION_TOOL_NAMES: readonly ["ask_user_question"];
30
32
  export declare function isClientInteractionToolName(value: unknown): value is (typeof CLIENT_INTERACTION_TOOL_NAMES)[number];
31
- export interface ChatSuggestion {
33
+ export interface ChatMessageSuggestion {
32
34
  /** Stable identifier within the assistant message that produced it. */
33
35
  id: string;
34
36
  /** Short user-facing action label. */
35
37
  label: string;
36
38
  /** Exact text to send as the next user message when selected. */
37
39
  prompt: string;
40
+ /** Absent in legacy responses/history. Action-capable requests receive an explicit kind. */
41
+ kind?: "message";
38
42
  }
43
+ export type ChatSuggestionAction = {
44
+ type: "open_url";
45
+ url: string;
46
+ } | {
47
+ type: "postback";
48
+ value: string;
49
+ };
50
+ export interface ChatActionSuggestionInput {
51
+ kind: "action";
52
+ /** Optional stable caller ID; omitted IDs are assigned by request order. */
53
+ id?: string;
54
+ label: string;
55
+ action: ChatSuggestionAction;
56
+ }
57
+ export interface ChatActionSuggestion extends ChatActionSuggestionInput {
58
+ id: string;
59
+ }
60
+ export type ChatSuggestion = ChatMessageSuggestion | ChatActionSuggestion;
61
+ export interface ChatSuggestionPlan {
62
+ maxItems: number;
63
+ generatedCount: number;
64
+ actions: ChatActionSuggestion[];
65
+ includeKinds: boolean;
66
+ }
67
+ /** Allocate one stable output budget. Eligibility remains an agent/client/host decision. */
68
+ export declare function resolveChatSuggestionPlan(settings: ChatSuggestionSettings, value: boolean | ChatSuggestionRequestOptions | undefined): ChatSuggestionPlan;
69
+ /** Add only model-produced messages; models never supply the action payload. */
70
+ export declare function combineChatSuggestions(plan: ChatSuggestionPlan, messages: readonly ChatMessageSuggestion[]): ChatSuggestion[];
39
71
  export interface ChatSuggestionSettings {
40
72
  /** Generate suggested next messages after successful text responses. */
41
73
  enabled?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"chat-interactions.d.ts","sourceRoot":"","sources":["../src/chat-interactions.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAE/E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAE7D,eAAO,MAAM,6BAA6B,IAAI,CAAC;AAC/C,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,kCAAkC,MAAM,CAAC;AACtD,eAAO,MAAM,iCAAiC,OAAQ,CAAC;AACvD,eAAO,MAAM,iCAAiC,IAAI,CAAC;AAEnD,MAAM,MAAM,0BAA0B,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GACrE,0BAA0B,EAAE,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,0BAA0B,CAAA;CAAE,CAAC;AAEjF,oFAAoF;AACpF,MAAM,WAAW,4BAA4B;IAC3C,wFAAwF;IACxF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wFAAwF;IACxF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yFAAyF;IACzF,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;CACtD;AAED,qFAAqF;AACrF,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,OAAO,GAAG,4BAA4B,GAAG;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAuClH;AAED,eAAO,MAAM,2BAA2B,EAAG,mBAA4B,CAAC;AAExE,iEAAiE;AACjE,eAAO,MAAM,6BAA6B,gCAEhC,CAAC;AAEX,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAGzD;AAED,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,EAAE,EAAE,MAAM,CAAC;IACX,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,iEAAiE;IACjE,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,sBAAsB;IACrC,wEAAwE;IACxE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kEAAkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,uBAAwB,SAAQ,oBAAoB;IACnE,qFAAqF;IACrF,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,0DAA0D;IAC1D,WAAW,CAAC,EAAE,sBAAsB,CAAC;CACtC;AAED,MAAM,WAAW,iCAAiC;IAChD,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,WAAW,EAAE;QACX,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,MAAM,WAAW,iCAAiC;IAChD,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,WAAW,CAAC,EAAE,OAAO,GAAG,4BAA4B,CAAC;CACtD;AAED,MAAM,WAAW,mCAAmC;IAClD,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,EAAE,OAAO,CAAC;CACtB;AAgBD,wEAAwE;AACxE,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,OAAO,GACb,iCAAiC,CA+DnC;AAED,8EAA8E;AAC9E,wBAAgB,kCAAkC,CAAC,KAAK,EAAE;IACxD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,uBAAuB,CAAC;IACnC,MAAM,CAAC,EAAE,iCAAiC,CAAC;CAC5C,GAAG,mCAAmC,CAatC"}
1
+ {"version":3,"file":"chat-interactions.d.ts","sourceRoot":"","sources":["../src/chat-interactions.ts"],"names":[],"mappings":"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"}
@@ -49,6 +49,7 @@ export function normalizeChatSuggestionRequest(value) {
49
49
  ...(request.maxItems === undefined ? {} : { maxItems: settings.maxItems }),
50
50
  ...(settings.guidance ? { guidance: settings.guidance } : {}),
51
51
  ...(context === undefined ? {} : { context }),
52
+ ...(request.actions === undefined ? {} : { actions: normalizeChatSuggestionActions(request.actions) }),
52
53
  };
53
54
  }
54
55
  export const ASK_USER_QUESTION_TOOL_NAME = "ask_user_question";
@@ -60,6 +61,91 @@ export function isClientInteractionToolName(value) {
60
61
  return typeof value === "string"
61
62
  && CLIENT_INTERACTION_TOOL_NAMES.includes(value);
62
63
  }
64
+ function normalizeChatSuggestionActions(value) {
65
+ if (!Array.isArray(value) || value.length > MAX_CHAT_SUGGESTION_COUNT) {
66
+ throw new TypeError(`suggestions.actions must be an array of at most ${MAX_CHAT_SUGGESTION_COUNT} actions`);
67
+ }
68
+ const ids = new Set();
69
+ const text = (value, field, max) => {
70
+ if (typeof value !== "string" || !value.trim() || value.length > max) {
71
+ throw new TypeError(`suggestions.actions ${field} must be a non-empty string of at most ${max} characters`);
72
+ }
73
+ return value.trim();
74
+ };
75
+ const record = (value, fields) => {
76
+ const result = asRecord(value, "suggestions.actions item");
77
+ if (value === undefined || (Object.getPrototypeOf(result) !== Object.prototype && Object.getPrototypeOf(result) !== null)
78
+ || Object.keys(result).some(key => !fields.includes(key))) {
79
+ throw new TypeError("suggestions.actions contains unsupported fields");
80
+ }
81
+ return result;
82
+ };
83
+ const items = value.map(candidate => record(candidate, ["kind", "id", "label", "action"]));
84
+ // Reserve caller IDs before assigning any defaults, including IDs supplied
85
+ // later in the array. Only duplicate explicit IDs are invalid requests.
86
+ const explicitIds = items.map(item => item.id === undefined ? undefined : text(item.id, "id", 64));
87
+ for (const id of explicitIds) {
88
+ if (id === undefined)
89
+ continue;
90
+ if (!/^[A-Za-z0-9][A-Za-z0-9_.:-]{0,63}$/.test(id) || ids.has(id)) {
91
+ throw new TypeError("suggestions.actions IDs must be valid and unique");
92
+ }
93
+ ids.add(id);
94
+ }
95
+ return items.map((item, index) => {
96
+ if (item.kind !== "action")
97
+ throw new TypeError("suggestions.actions kind must be action");
98
+ let id = explicitIds[index];
99
+ if (id === undefined) {
100
+ let sequence = index + 1;
101
+ do {
102
+ id = `action_${sequence++}`;
103
+ } while (ids.has(id));
104
+ ids.add(id);
105
+ }
106
+ const label = text(item.label, "label", 64);
107
+ const action = asRecord(item.action, "suggestions.actions action");
108
+ if (action.type === "open_url") {
109
+ record(action, ["type", "url"]);
110
+ const url = text(action.url, "url", 2048);
111
+ const parsed = new URL(url);
112
+ if (!/^https:\/\//i.test(url) || url[8] === "/" || url.includes("\\")
113
+ || parsed.protocol !== "https:" || parsed.username || parsed.password || /[\u0000-\u0020\u007f]/.test(url)) {
114
+ throw new TypeError("suggestions.actions URL must be absolute HTTPS without credentials, backslashes or whitespace");
115
+ }
116
+ return { kind: "action", id, label, action: { type: "open_url", url } };
117
+ }
118
+ if (action.type === "postback") {
119
+ record(action, ["type", "value"]);
120
+ text(action.value, "value", 2000);
121
+ return { kind: "action", id, label, action: { type: "postback", value: action.value } };
122
+ }
123
+ throw new TypeError("suggestions.actions action must be open_url or postback");
124
+ });
125
+ }
126
+ /** Allocate one stable output budget. Eligibility remains an agent/client/host decision. */
127
+ export function resolveChatSuggestionPlan(settings, value) {
128
+ const request = normalizeChatSuggestionRequest(value);
129
+ const maxItems = request.maxItems ?? normalizeChatInteractionSettings({ suggestions: settings }).suggestions.maxItems;
130
+ const actions = request.enabled ? normalizeChatSuggestionActions(request.actions ?? []).slice(0, maxItems) : [];
131
+ return { maxItems, actions, generatedCount: request.enabled ? maxItems - actions.length : 0,
132
+ includeKinds: request.actions !== undefined };
133
+ }
134
+ /** Add only model-produced messages; models never supply the action payload. */
135
+ export function combineChatSuggestions(plan, messages) {
136
+ const result = [...plan.actions];
137
+ const limit = Math.min(plan.maxItems, plan.actions.length + plan.generatedCount);
138
+ const ids = new Set(result.map(item => item.id));
139
+ for (const item of messages) {
140
+ if (result.length >= limit)
141
+ break;
142
+ if (ids.has(item.id))
143
+ continue;
144
+ ids.add(item.id);
145
+ result.push(plan.includeKinds ? { ...item, kind: "message" } : item);
146
+ }
147
+ return result;
148
+ }
63
149
  function asRecord(value, field) {
64
150
  if (value === undefined)
65
151
  return {};
@@ -1 +1 @@
1
- {"version":3,"file":"chat-interactions.js","sourceRoot":"","sources":["../src/chat-interactions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-interactions.js","sourceRoot":"","sources":["../src/chat-interactions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=chat-suggestion-actions.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-suggestion-actions.test.d.ts","sourceRoot":"","sources":["../src/chat-suggestion-actions.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,91 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { combineChatSuggestions, normalizeChatSuggestionRequest, resolveChatSuggestionPlan } from "./chat-interactions.js";
3
+ const publish = { kind: "action", id: "publish", label: "Publish", action: {
4
+ type: "open_url", url: "https://app.example.test/sites/123?publish",
5
+ } };
6
+ const billing = { kind: "action", label: "View plan", action: {
7
+ type: "postback", value: "billing:open",
8
+ } };
9
+ describe("application-provided suggestion actions", () => {
10
+ it("preserves action order and takes an independent validated snapshot", () => {
11
+ const input = { actions: [{ ...publish, label: String(publish.label) }, { ...billing, label: String(billing.label) }] };
12
+ const normalized = normalizeChatSuggestionRequest(input);
13
+ expect(normalized.actions).toEqual([publish, { ...billing, id: "action_2" }]);
14
+ input.actions[0].label = "Changed";
15
+ expect(normalized.actions?.[0].label).toBe("Publish");
16
+ });
17
+ it("reserves the shared count for deterministic actions before model suggestions", () => {
18
+ const plan = resolveChatSuggestionPlan({ maxItems: 5 }, { actions: [publish, billing] });
19
+ expect(plan).toMatchObject({ maxItems: 5, generatedCount: 3,
20
+ actions: [publish, { ...billing, id: "action_2" }], includeKinds: true });
21
+ expect(resolveChatSuggestionPlan({ maxItems: 3 }, true)).toMatchObject({
22
+ maxItems: 3, generatedCount: 3, actions: [], includeKinds: false,
23
+ });
24
+ });
25
+ it.each([
26
+ { actions: [{ ...billing, id: "action_2" }, billing], expected: ["action_2", "action_3"] },
27
+ { actions: [billing, { ...billing, id: "action_1" }], expected: ["action_2", "action_1"] },
28
+ ])("allocates missing IDs without colliding with caller IDs: $expected", ({ actions, expected }) => {
29
+ const input = { actions };
30
+ const first = normalizeChatSuggestionRequest(input);
31
+ expect(first.actions?.map(action => action.id)).toEqual(expected);
32
+ expect(normalizeChatSuggestionRequest(input)).toEqual(first);
33
+ });
34
+ it("preserves opaque postback values exactly", () => {
35
+ const value = " caller-owned payload ";
36
+ expect(normalizeChatSuggestionRequest({ actions: [{ ...billing, action: { type: "postback", value } }] })
37
+ .actions?.[0].action).toEqual({ type: "postback", value });
38
+ });
39
+ it("limits the combined result without reordering caller actions", () => {
40
+ const plan = resolveChatSuggestionPlan({ maxItems: 3 }, { maxItems: 2,
41
+ actions: [publish, billing, { ...billing, id: "more", label: "More" }],
42
+ });
43
+ expect(plan.actions.map(item => item.label)).toEqual(["Publish", "View plan"]);
44
+ expect(plan.generatedCount).toBe(0);
45
+ });
46
+ it("combines actions and messages once, preserves legacy message shape and respects opt-out", () => {
47
+ const message = { id: "next", label: "Next", prompt: "What next?" };
48
+ expect(combineChatSuggestions(resolveChatSuggestionPlan({}, { actions: [publish] }), [message])).toEqual([
49
+ publish, { ...message, kind: "message" },
50
+ ]);
51
+ expect(combineChatSuggestions(resolveChatSuggestionPlan({}, true), [message])).toEqual([message]);
52
+ expect(combineChatSuggestions(resolveChatSuggestionPlan({}, false), [message])).toEqual([]);
53
+ expect(combineChatSuggestions(resolveChatSuggestionPlan({}, { actions: [publish] }), [
54
+ { ...message, id: "publish" }, message,
55
+ ])).toHaveLength(2);
56
+ });
57
+ it.each([
58
+ "javascript:alert(1)", "data:text/html,bad", "http://app.example.test", "/relative",
59
+ "https://user:password@app.example.test", "https://app.example.test/\npath",
60
+ "https:outside.example/path", "https:/outside.example/path",
61
+ "https:///outside.example/path", "https://outside.example\\path",
62
+ ])("rejects unsafe or ambiguous URL %s", url => {
63
+ expect(() => normalizeChatSuggestionRequest({ actions: [{ ...publish, action: { type: "open_url", url } }] })).toThrow();
64
+ });
65
+ it.each([
66
+ "https://outside.example/path?next=1#result",
67
+ "HTTPS://outside.example:8443/path",
68
+ "https://münchen.example/straße",
69
+ ])("preserves the same absolute destination when rendered against a page URL: %s", url => {
70
+ const result = normalizeChatSuggestionRequest({ actions: [{ ...publish, action: { type: "open_url", url } }] });
71
+ const action = result.actions?.[0].action;
72
+ expect(action?.type).toBe("open_url");
73
+ if (action?.type !== "open_url")
74
+ throw new Error("missing link action");
75
+ expect(new URL(action.url, "https://app.example.test/chat/session").href).toBe(new URL(url).href);
76
+ });
77
+ it.each([
78
+ [{ ...publish, label: " " }],
79
+ [{ ...publish, id: "invalid id" }],
80
+ [publish, publish],
81
+ [{ ...publish, action: { type: "open_url", url: publish.action.url, trusted: true } }],
82
+ [{ ...publish, action: { type: "postback", value: "" } }],
83
+ [{ ...publish, action: { type: "postback", value: "x".repeat(2001) } }],
84
+ [{ ...publish, action: { type: "execute_tool", name: "publish" } }],
85
+ [{ ...publish, prompt: "Unexpected model input" }],
86
+ Array.from({ length: 6 }, (_, index) => ({ ...publish, id: `action_${index}` })),
87
+ ].map((actions, index) => ({ actions, index })))("rejects malformed action set $index", ({ actions }) => {
88
+ expect(() => normalizeChatSuggestionRequest({ actions })).toThrow();
89
+ });
90
+ });
91
+ //# sourceMappingURL=chat-suggestion-actions.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-suggestion-actions.test.js","sourceRoot":"","sources":["../src/chat-suggestion-actions.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,8BAA8B,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAE3H,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE;QACzE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,4CAA4C;KACpE,EAAW,CAAC;AACb,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE;QAC5D,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc;KACxC,EAAW,CAAC;AAEb,QAAQ,CAAC,yCAAyC,EAAE,GAAG,EAAE;IACvD,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;QACxH,MAAM,UAAU,GAAG,8BAA8B,CAAC,KAAK,CAAC,CAAC;QACzD,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;QAC9E,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,SAAS,CAAC;QACnC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8EAA8E,EAAE,GAAG,EAAE;QACtF,MAAM,IAAI,GAAG,yBAAyB,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;QACzF,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,cAAc,EAAE,CAAC;YACzD,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5E,MAAM,CAAC,yBAAyB,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC;YACrE,QAAQ,EAAE,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK;SACjE,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,IAAI,CAAC;QACN,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE;QAC1F,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE;KAC3F,CAAC,CAAC,oEAAoE,EAAE,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QACjG,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,8BAA8B,CAAC,KAAK,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAClE,MAAM,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,KAAK,GAAG,0BAA0B,CAAC;QACzC,MAAM,CAAC,8BAA8B,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC;aACtG,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACtE,MAAM,IAAI,GAAG,yBAAyB,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC;YACnE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;SACvE,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;QAC/E,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yFAAyF,EAAE,GAAG,EAAE;QACjG,MAAM,OAAO,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;QACpE,MAAM,CAAC,sBAAsB,CAAC,yBAAyB,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACvG,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;SACzC,CAAC,CAAC;QACH,MAAM,CAAC,sBAAsB,CAAC,yBAAyB,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAClG,MAAM,CAAC,sBAAsB,CAAC,yBAAyB,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC5F,MAAM,CAAC,sBAAsB,CAAC,yBAAyB,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YACnF,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,OAAO;SACvC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,IAAI,CAAC;QACN,qBAAqB,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,WAAW;QACnF,wCAAwC,EAAE,iCAAiC;QAC3E,4BAA4B,EAAE,6BAA6B;QAC3D,+BAA+B,EAAE,+BAA+B;KACjE,CAAC,CAAC,oCAAoC,EAAE,GAAG,CAAC,EAAE;QAC7C,MAAM,CAAC,GAAG,EAAE,CAAC,8BAA8B,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAC3H,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,IAAI,CAAC;QACN,4CAA4C;QAC5C,mCAAmC;QACnC,gCAAgC;KACjC,CAAC,CAAC,8EAA8E,EAAE,GAAG,CAAC,EAAE;QACvF,MAAM,MAAM,GAAG,8BAA8B,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;QAChH,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAC1C,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,IAAI,MAAM,EAAE,IAAI,KAAK,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACxE,MAAM,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,uCAAuC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;IACpG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,IAAI,CAAC;QACN,CAAC,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;QAC5B,CAAC,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC;QAClC,CAAC,OAAO,EAAE,OAAO,CAAC;QAClB,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;QACtF,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC;QACzD,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACvE,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC;QACnE,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC;QAClD,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,UAAU,KAAK,EAAE,EAAE,CAAC,CAAC;KACjF,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,qCAAqC,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;QACtG,MAAM,CAAC,GAAG,EAAE,CAAC,8BAA8B,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACtE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@polpo-ai/core",
3
- "version": "0.16.2",
3
+ "version": "0.17.0",
4
4
  "description": "Pure business logic, types, schemas, and store interfaces for the Polpo AI agent orchestration platform",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",