@koda-sl/baker-bridge 0.49.0-dev.8dd40a2da → 0.49.0-dev.ea15b0199

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 (81) hide show
  1. package/README.md +28 -10
  2. package/dist/hono/agent-session.d.ts +3 -0
  3. package/dist/hono/agent-session.d.ts.map +1 -1
  4. package/dist/hono/agent-session.js +15 -0
  5. package/dist/hono/agent-session.js.map +1 -1
  6. package/dist/hono/agent.d.ts +4 -2
  7. package/dist/hono/agent.d.ts.map +1 -1
  8. package/dist/hono/agent.js +17 -3
  9. package/dist/hono/agent.js.map +1 -1
  10. package/dist/hono/agent.test.js +128 -1
  11. package/dist/hono/agent.test.js.map +1 -1
  12. package/dist/hono/bridge-job.d.ts +16 -1
  13. package/dist/hono/bridge-job.d.ts.map +1 -1
  14. package/dist/hono/bridge-job.js +75 -6
  15. package/dist/hono/bridge-job.js.map +1 -1
  16. package/dist/hono/bridge-job.test.js +159 -6
  17. package/dist/hono/bridge-job.test.js.map +1 -1
  18. package/dist/hono/callback.d.ts.map +1 -1
  19. package/dist/hono/callback.js +2 -2
  20. package/dist/hono/callback.js.map +1 -1
  21. package/dist/hono/chat-change.d.ts +102 -0
  22. package/dist/hono/chat-change.d.ts.map +1 -0
  23. package/dist/hono/chat-change.js +50 -0
  24. package/dist/hono/chat-change.js.map +1 -0
  25. package/dist/hono/convex.d.ts +4 -1
  26. package/dist/hono/convex.d.ts.map +1 -1
  27. package/dist/hono/convex.js +10 -1
  28. package/dist/hono/convex.js.map +1 -1
  29. package/dist/hono/convex.test.js +6 -4
  30. package/dist/hono/convex.test.js.map +1 -1
  31. package/dist/hono/guards/__tests__/google-ads-rsa.test.d.ts +2 -0
  32. package/dist/hono/guards/__tests__/google-ads-rsa.test.d.ts.map +1 -0
  33. package/dist/hono/guards/__tests__/google-ads-rsa.test.js +65 -0
  34. package/dist/hono/guards/__tests__/google-ads-rsa.test.js.map +1 -0
  35. package/dist/hono/guards/google-ads-rsa.d.ts +3 -0
  36. package/dist/hono/guards/google-ads-rsa.d.ts.map +1 -0
  37. package/dist/hono/guards/google-ads-rsa.js +32 -0
  38. package/dist/hono/guards/google-ads-rsa.js.map +1 -0
  39. package/dist/hono/guards.d.ts +3 -0
  40. package/dist/hono/guards.d.ts.map +1 -0
  41. package/dist/hono/guards.js +9 -0
  42. package/dist/hono/guards.js.map +1 -0
  43. package/dist/hono/relay.d.ts +9 -1
  44. package/dist/hono/relay.d.ts.map +1 -1
  45. package/dist/hono/relay.js +8 -0
  46. package/dist/hono/relay.js.map +1 -1
  47. package/dist/hono/server.d.ts.map +1 -1
  48. package/dist/hono/server.js +21 -0
  49. package/dist/hono/server.js.map +1 -1
  50. package/dist/hono/session-continuity.d.ts +1 -1
  51. package/dist/hono/session-continuity.d.ts.map +1 -1
  52. package/dist/hono/session-continuity.integration.test.js +4 -0
  53. package/dist/hono/session-continuity.integration.test.js.map +1 -1
  54. package/dist/hono/session-continuity.js.map +1 -1
  55. package/dist/hono/tag-input.d.ts +40 -0
  56. package/dist/hono/tag-input.d.ts.map +1 -0
  57. package/dist/hono/tag-input.js +132 -0
  58. package/dist/hono/tag-input.js.map +1 -0
  59. package/dist/hono/tag-input.test.d.ts +2 -0
  60. package/dist/hono/tag-input.test.d.ts.map +1 -0
  61. package/dist/hono/tag-input.test.js +66 -0
  62. package/dist/hono/tag-input.test.js.map +1 -0
  63. package/dist/hono/turn-result.d.ts +36 -0
  64. package/dist/hono/turn-result.d.ts.map +1 -0
  65. package/dist/hono/turn-result.js +207 -0
  66. package/dist/hono/turn-result.js.map +1 -0
  67. package/dist/hono/turn-result.test.d.ts +2 -0
  68. package/dist/hono/turn-result.test.d.ts.map +1 -0
  69. package/dist/hono/turn-result.test.js +63 -0
  70. package/dist/hono/turn-result.test.js.map +1 -0
  71. package/dist/hono/types.d.ts +3 -1
  72. package/dist/hono/types.d.ts.map +1 -1
  73. package/package.json +1 -1
  74. package/dist/hono/prompt-context.d.ts +0 -3
  75. package/dist/hono/prompt-context.d.ts.map +0 -1
  76. package/dist/hono/prompt-context.js +0 -13
  77. package/dist/hono/prompt-context.js.map +0 -1
  78. package/dist/hono/prompt-context.test.d.ts +0 -2
  79. package/dist/hono/prompt-context.test.d.ts.map +0 -1
  80. package/dist/hono/prompt-context.test.js +0 -39
  81. package/dist/hono/prompt-context.test.js.map +0 -1
@@ -32,6 +32,7 @@ function activeControls() {
32
32
  abortController,
33
33
  pendingQuestions: new Map(),
34
34
  pendingPlans: new Map(),
35
+ pendingTagInputs: new Map(),
35
36
  isActive: () => active,
36
37
  deactivate: () => {
37
38
  active = false;
@@ -49,6 +50,8 @@ function recordingRelay() {
49
50
  startPreview: () => undefined,
50
51
  previewText: () => undefined,
51
52
  previewTools: () => undefined,
53
+ tagInputRequest: () => Promise.resolve(true),
54
+ tagInputResolved: () => Promise.resolve(),
52
55
  assistantEvent: (target, event, model) => {
53
56
  assistantEvents.push({ target, event, model });
54
57
  return Promise.resolve();
@@ -140,11 +143,12 @@ function createExecutor(options) {
140
143
  now: options.now,
141
144
  });
142
145
  }
143
- function resultMessage(costUsd, sessionId) {
146
+ function resultMessage(costUsd, sessionId, structuredOutput) {
144
147
  return {
145
148
  type: "result",
146
149
  total_cost_usd: costUsd,
147
150
  session_id: sessionId,
151
+ structured_output: structuredOutput,
148
152
  };
149
153
  }
150
154
  function assistantMessage(uuid, text, sessionId) {
@@ -303,18 +307,20 @@ describe("BridgeJobExecutor", () => {
303
307
  currentSender: { name: "Dana", userId: "user_dana" },
304
308
  }, activeControls());
305
309
  expect(calls[0]).toEqual({ threadId: "thread_mcp", actingUserId: "user_dana" });
306
- expect(queryInputs[0]?.options.mcpServers).toEqual({
310
+ expect(queryInputs[0]?.options.mcpServers).toMatchObject({
307
311
  composio_company: { type: "http", url: "https://mcp.example/co" },
308
312
  });
313
+ // The in-process baker_ui server (secure tag form) rides along on every turn.
314
+ expect(queryInputs[0]?.options.mcpServers).toHaveProperty("baker_ui");
309
315
  });
310
- it("omits mcpServers when the provider returns undefined", async () => {
316
+ it("passes only the baker_ui server when the provider returns undefined", async () => {
311
317
  const queryInputs = [];
312
318
  const executor = createExecutor({
313
319
  queryInputs,
314
320
  mcpServersProvider: () => Promise.resolve(undefined),
315
321
  });
316
322
  await executor.execute({ threadId: "thread_nomcp", turnId: "turn_nomcp", prompt: "Hi", history: history([]) }, activeControls());
317
- expect(queryInputs[0]?.options).not.toHaveProperty("mcpServers");
323
+ expect(Object.keys(queryInputs[0]?.options.mcpServers ?? {})).toEqual(["baker_ui"]);
318
324
  });
319
325
  it("still completes the turn when the MCP provider throws", async () => {
320
326
  const queryInputs = [];
@@ -324,7 +330,7 @@ describe("BridgeJobExecutor", () => {
324
330
  });
325
331
  const outcome = await executor.execute({ threadId: "thread_throw", turnId: "turn_throw", prompt: "Hi", history: history([]) }, activeControls());
326
332
  expect(outcome.kind).toBe("completed");
327
- expect(queryInputs[0]?.options).not.toHaveProperty("mcpServers");
333
+ expect(Object.keys(queryInputs[0]?.options.mcpServers ?? {})).toEqual(["baker_ui"]);
328
334
  });
329
335
  it("loads Baker plugins into Agent SDK query options", async () => {
330
336
  const queryInputs = [];
@@ -361,7 +367,7 @@ describe("BridgeJobExecutor", () => {
361
367
  await executor.execute({ threadId: "thread_no_mem", turnId: "turn_no_mem", prompt: "No memory", history: history([]) }, activeControls());
362
368
  expect(queryInputs[0]?.options).not.toHaveProperty("settings");
363
369
  });
364
- it("runs exact publish commands with the prompt passed through verbatim", async () => {
370
+ it("runs exact publish commands without Turn Result output or current changes context", async () => {
365
371
  const queryInputs = [];
366
372
  const executor = createExecutor({
367
373
  queryInputs,
@@ -372,8 +378,11 @@ describe("BridgeJobExecutor", () => {
372
378
  turnId: "turn_publish_command",
373
379
  prompt: "/publish",
374
380
  history: history([]),
381
+ currentChanges: [{ type: "knowledge", slug: "pricing", action: "updated" }],
375
382
  }, activeControls());
376
383
  expect(queryInputs[0]?.prompt).toBe("/publish");
384
+ expect(queryInputs[0]?.prompt).not.toContain("Current Chat Changes snapshot");
385
+ expect(queryInputs[0]?.options).not.toHaveProperty("outputFormat");
377
386
  });
378
387
  it("normalizes whitespace around publish commands before dispatching to the SDK", async () => {
379
388
  const queryInputs = [];
@@ -386,8 +395,10 @@ describe("BridgeJobExecutor", () => {
386
395
  turnId: "turn_publish_spaced",
387
396
  prompt: " /publish\n",
388
397
  history: history([]),
398
+ currentChanges: [{ type: "landing", slug: "home", action: "updated" }],
389
399
  }, activeControls());
390
400
  expect(queryInputs[0]?.prompt).toBe("/publish");
401
+ expect(queryInputs[0]?.options).not.toHaveProperty("outputFormat");
391
402
  });
392
403
  it("appends the viewing-reference context when the user has an output open in the preview", async () => {
393
404
  const queryInputs = [];
@@ -437,6 +448,27 @@ describe("BridgeJobExecutor", () => {
437
448
  }, activeControls());
438
449
  expect(queryInputs[0]?.prompt).toBe("/publish");
439
450
  });
451
+ it("ignores accidental Turn Result structured output for publish commands", async () => {
452
+ const executor = createExecutor({
453
+ queryResults: [
454
+ scriptedMessages(resultMessage(0.3, "session_publish_structured", {
455
+ changes: [{ type: "knowledge", slug: "pricing", action: "updated" }],
456
+ })),
457
+ ],
458
+ });
459
+ const outcome = await executor.execute({
460
+ threadId: "thread_publish_structured",
461
+ turnId: "turn_publish_structured",
462
+ prompt: "/publish",
463
+ history: history([]),
464
+ }, activeControls());
465
+ expect(outcome).toEqual({
466
+ kind: "completed",
467
+ costUsd: 0.3,
468
+ model: "claude-test",
469
+ cleanBoundary: expect.objectContaining({ version: 2, sessionId: "session_publish_structured" }),
470
+ });
471
+ });
440
472
  it("clears an invalid clean boundary and retries once with rehydrated history", async () => {
441
473
  const relay = recordingRelay();
442
474
  const clearCalls = [];
@@ -691,6 +723,38 @@ describe("BridgeJobExecutor", () => {
691
723
  });
692
724
  expect(clearCalls).toContainEqual({ threadId: "thread_provider_result_error", reason: "result_error" });
693
725
  });
726
+ it("does not save a boundary when output guard validation fails", async () => {
727
+ const clearCalls = [];
728
+ const savedBoundaries = [];
729
+ const executor = createExecutor({
730
+ clearCalls,
731
+ savedBoundaries,
732
+ queryResults: [
733
+ scriptedMessages(resultMessage(0.4, "session_google_ads_invalid", {
734
+ changes: [],
735
+ outputGuards: {
736
+ googleAdsRsa: {
737
+ assets: {
738
+ headlines: ["This Headline Is Definitely Over Thirty Characters"],
739
+ descriptions: ["Book a free audit and find leaks wasting budget."],
740
+ },
741
+ },
742
+ },
743
+ })),
744
+ ],
745
+ });
746
+ const outcome = await executor.execute({ threadId: "thread_google_ads_invalid", turnId: "turn_google_ads_invalid", prompt: "Write RSA copy" }, activeControls());
747
+ expect(outcome).toEqual({
748
+ kind: "errored",
749
+ costUsd: 0.4,
750
+ model: "claude-test",
751
+ errors: [
752
+ 'Google Ads RSA output guard failed: headline 1 is 50 characters (max 30): "This Headline Is Definitely Over Thirty Characters"',
753
+ ],
754
+ });
755
+ expect(savedBoundaries).toEqual([]);
756
+ expect(clearCalls).toContainEqual({ threadId: "thread_google_ads_invalid", reason: "output_guard_failure" });
757
+ });
694
758
  it("closes SDK queries on error and inactive exits but not on natural clean completion", async () => {
695
759
  const naturalCloseCalls = [];
696
760
  const naturalExecutor = createExecutor({
@@ -757,6 +821,95 @@ describe("BridgeJobExecutor", () => {
757
821
  });
758
822
  expect(pendingQuestionCount).toBe(0);
759
823
  });
824
+ it("blocks request_tag_input until resolved, strips secret prefill, and injects the redacted resolution", async () => {
825
+ const relay = recordingRelay();
826
+ const tagInputRequests = [];
827
+ relay.tagInputRequest = (target, payload) => {
828
+ tagInputRequests.push({ target, payload });
829
+ return Promise.resolve(true);
830
+ };
831
+ const controls = activeControls();
832
+ let guardResult;
833
+ const executor = new BridgeJobExecutor({
834
+ sdk: {
835
+ query: (input) => ({
836
+ async *[Symbol.asyncIterator]() {
837
+ const pending = input.options.canUseTool?.("mcp__baker_ui__request_tag_input", {
838
+ mode: "create",
839
+ tagType: "meta",
840
+ prefilledConfig: { pixelId: "123", accessToken: "EAAB-leak" },
841
+ message: "Need CAPI credentials",
842
+ }, {
843
+ toolUseID: "tool_tag_1",
844
+ requestId: "req_tag_1",
845
+ signal: input.options.abortController?.signal ?? new AbortController().signal,
846
+ });
847
+ while (controls.pendingTagInputs.size === 0) {
848
+ await new Promise((resolve) => setTimeout(resolve, 1));
849
+ }
850
+ // Mirror AgentSession.answerTagInput: resolve then delete.
851
+ controls.pendingTagInputs.get("tool_tag_1")?.resolve({
852
+ status: "submitted",
853
+ ref: "tag_temp_0000000000000001",
854
+ type: "meta",
855
+ identifier: { pixelId: "123" },
856
+ secretFieldsSet: ["accessToken"],
857
+ });
858
+ controls.pendingTagInputs.delete("tool_tag_1");
859
+ guardResult = await pending;
860
+ yield resultMessage(0, "session_tag_input");
861
+ },
862
+ }),
863
+ },
864
+ modelSelector: async (prompt) => ({ model: "claude-test", routerMessages: [{ role: "user", content: prompt }] }),
865
+ sessionStore: { load: async () => undefined, save: async () => undefined, clear: async () => undefined },
866
+ relay,
867
+ });
868
+ const outcome = await executor.execute({ threadId: "thread_tag_input", turnId: "turn_tag_input", prompt: "Set up meta pixel" }, controls);
869
+ expect(outcome.kind).toBe("completed");
870
+ // The leaked secret value never travels — its NAME becomes a requested field.
871
+ const payload = tagInputRequests[0]?.payload;
872
+ expect(payload.request.prefilledConfig).toEqual({ pixelId: "123" });
873
+ expect(payload.request.requestedSecretFields).toContain("accessToken");
874
+ expect(JSON.stringify(tagInputRequests)).not.toContain("EAAB-leak");
875
+ // The redacted resolution is injected into updatedInput for the MCP handler to echo.
876
+ expect(guardResult).toMatchObject({
877
+ behavior: "allow",
878
+ updatedInput: { resolution: { status: "submitted", ref: "tag_temp_0000000000000001" } },
879
+ });
880
+ expect(JSON.stringify(guardResult)).not.toContain("EAAB-leak");
881
+ expect(controls.pendingTagInputs.size).toBe(0);
882
+ });
883
+ it("times out unanswered request_tag_input calls and clears the pending entry", async () => {
884
+ const relay = recordingRelay();
885
+ const executor = new BridgeJobExecutor({
886
+ sdk: {
887
+ query: (input) => ({
888
+ async *[Symbol.asyncIterator]() {
889
+ await input.options.canUseTool?.("mcp__baker_ui__request_tag_input", { mode: "create", tagType: "clarity" }, {
890
+ toolUseID: "tool_tag_timeout",
891
+ requestId: "req_tag_timeout",
892
+ signal: input.options.abortController?.signal ?? new AbortController().signal,
893
+ });
894
+ yield resultMessage(0, "session_after_tag_input");
895
+ },
896
+ }),
897
+ },
898
+ modelSelector: async (prompt) => ({ model: "claude-test", routerMessages: [{ role: "user", content: prompt }] }),
899
+ sessionStore: { load: async () => undefined, save: async () => undefined, clear: async () => undefined },
900
+ relay,
901
+ askUserQuestionTimeoutMs: 1,
902
+ });
903
+ const controls = activeControls();
904
+ const outcome = await executor.execute({ threadId: "thread_tag_timeout", turnId: "turn_tag_timeout", prompt: "Add clarity" }, controls);
905
+ expect(outcome).toEqual({
906
+ kind: "errored",
907
+ costUsd: 0,
908
+ model: "claude-test",
909
+ errors: ["request_tag_input timed out after 1ms"],
910
+ });
911
+ expect(controls.pendingTagInputs.size).toBe(0);
912
+ });
760
913
  it("does not open a plan review when plan mode is off — ExitPlanMode is a no-op passthrough", async () => {
761
914
  const relay = recordingRelay();
762
915
  const planReviews = [];
@@ -1 +1 @@
1
- {"version":3,"file":"bridge-job.test.js","sourceRoot":"","sources":["../../src/hono/bridge-job.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bridge-job.test.js","sourceRoot":"","sources":["../../src/hono/bridge-job.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"callback.d.ts","sourceRoot":"","sources":["../../src/hono/callback.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAO9E"}
1
+ {"version":3,"file":"callback.d.ts","sourceRoot":"","sources":["../../src/hono/callback.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiB9E"}
@@ -5,11 +5,11 @@ import { getOrCreateSession } from "./agent.js";
5
5
  * needs to be returned because Convex is the source of truth for the UI.
6
6
  */
7
7
  export async function processAsync(request) {
8
- const { prompt, threadId, attachments, history, turnId, currentReference, currentSender, planMode } = request;
8
+ const { prompt, threadId, attachments, history, turnId, currentChanges, currentReference, currentSender, planMode } = request;
9
9
  if (!turnId) {
10
10
  throw new Error("turnId is required");
11
11
  }
12
12
  const session = await getOrCreateSession(threadId);
13
- await session.sendAndStream(prompt, attachments, history, turnId, currentReference, currentSender, planMode);
13
+ await session.sendAndStream(prompt, attachments, history, turnId, currentChanges, currentReference, currentSender, planMode);
14
14
  }
15
15
  //# sourceMappingURL=callback.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"callback.js","sourceRoot":"","sources":["../../src/hono/callback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGhD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAA4B;IAC7D,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAC9G,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;AAC/G,CAAC"}
1
+ {"version":3,"file":"callback.js","sourceRoot":"","sources":["../../src/hono/callback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGhD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAA4B;IAC7D,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,aAAa,EAAE,QAAQ,EAAE,GACjH,OAAO,CAAC;IACV,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,OAAO,CAAC,aAAa,CACzB,MAAM,EACN,WAAW,EACX,OAAO,EACP,MAAM,EACN,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,QAAQ,CACT,CAAC;AACJ,CAAC"}
@@ -0,0 +1,102 @@
1
+ export declare const CHANGE_TYPES: readonly ["landing", "document", "knowledge", "brand", "company", "flow", "action", "report"];
2
+ export declare const CHANGE_ACTIONS: readonly ["created", "updated", "deleted"];
3
+ export declare const REPORT_STATUSES: readonly ["draft", "active", "error", "archived"];
4
+ export declare const DOCUMENT_FORMATS: readonly ["pdf", "pptx", "docx", "xlsx", "csv", "json"];
5
+ export type ChangeType = (typeof CHANGE_TYPES)[number];
6
+ export type ChangeAction = (typeof CHANGE_ACTIONS)[number];
7
+ export type ReportStatus = (typeof REPORT_STATUSES)[number];
8
+ export type DocumentFormat = (typeof DOCUMENT_FORMATS)[number];
9
+ type BaseChatChange<T extends ChangeType> = {
10
+ type: T;
11
+ slug: string;
12
+ action: ChangeAction;
13
+ contentVersion?: number;
14
+ };
15
+ type DocumentChatChange = BaseChatChange<"document"> & {
16
+ format?: DocumentFormat;
17
+ };
18
+ type ReportChatChange = BaseChatChange<"report"> & {
19
+ title?: string;
20
+ description?: string;
21
+ intent?: string;
22
+ status?: ReportStatus;
23
+ sourcePath?: string;
24
+ definitionContentVersion?: number;
25
+ dashboardContentVersion?: number;
26
+ endpointContentVersion?: number;
27
+ errorMessage?: string;
28
+ };
29
+ export type ChatChange = DocumentChatChange | ReportChatChange | BaseChatChange<Exclude<ChangeType, "document" | "report">>;
30
+ export declare const chatChangeJsonSchema: {
31
+ readonly oneOf: readonly [...{
32
+ type: string;
33
+ additionalProperties: boolean;
34
+ required: string[];
35
+ properties: {
36
+ type: {
37
+ const: "action" | "brand" | "company" | "document" | "flow" | "knowledge" | "landing";
38
+ };
39
+ slug: {
40
+ type: string;
41
+ minLength: number;
42
+ };
43
+ action: {
44
+ enum: readonly ["created", "updated", "deleted"];
45
+ };
46
+ contentVersion: {
47
+ type: string;
48
+ };
49
+ format?: {
50
+ enum: readonly ["pdf", "pptx", "docx", "xlsx", "csv", "json"];
51
+ } | undefined;
52
+ };
53
+ }[], {
54
+ readonly type: "object";
55
+ readonly additionalProperties: false;
56
+ readonly required: readonly ["type", "slug", "action"];
57
+ readonly properties: {
58
+ readonly type: {
59
+ readonly const: "report";
60
+ };
61
+ readonly slug: {
62
+ readonly type: "string";
63
+ readonly minLength: 1;
64
+ };
65
+ readonly action: {
66
+ readonly enum: readonly ["created", "updated", "deleted"];
67
+ };
68
+ readonly contentVersion: {
69
+ readonly type: "number";
70
+ };
71
+ readonly title: {
72
+ readonly type: "string";
73
+ };
74
+ readonly description: {
75
+ readonly type: "string";
76
+ };
77
+ readonly intent: {
78
+ readonly type: "string";
79
+ };
80
+ readonly status: {
81
+ readonly enum: readonly ["draft", "active", "error", "archived"];
82
+ };
83
+ readonly sourcePath: {
84
+ readonly type: "string";
85
+ };
86
+ readonly definitionContentVersion: {
87
+ readonly type: "number";
88
+ };
89
+ readonly dashboardContentVersion: {
90
+ readonly type: "number";
91
+ };
92
+ readonly endpointContentVersion: {
93
+ readonly type: "number";
94
+ };
95
+ readonly errorMessage: {
96
+ readonly type: "string";
97
+ };
98
+ };
99
+ }];
100
+ };
101
+ export {};
102
+ //# sourceMappingURL=chat-change.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-change.d.ts","sourceRoot":"","sources":["../../src/hono/chat-change.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,YACvB,SAAS,EACT,UAAU,EACV,WAAW,EACX,OAAO,EACP,SAAS,EACT,MAAM,EACN,QAAQ,EACR,QAAQ,CACA,CAAC;AACX,eAAO,MAAM,cAAc,YAAI,SAAS,EAAE,SAAS,EAAE,SAAS,CAAU,CAAC;AACzE,eAAO,MAAM,eAAe,YAAI,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAU,CAAC;AACjF,eAAO,MAAM,gBAAgB,YAAI,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAU,CAAC;AAExF,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AACvD,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAC3D,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAC5D,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/D,KAAK,cAAc,CAAC,CAAC,SAAS,UAAU,IAAI;IAC1C,IAAI,EAAE,CAAC,CAAC;IACR,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,YAAY,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,KAAK,kBAAkB,GAAG,cAAc,CAAC,UAAU,CAAC,GAAG;IACrD,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB,CAAC;AAEF,KAAK,gBAAgB,GAAG,cAAc,CAAC,QAAQ,CAAC,GAAG;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,UAAU,GAClB,kBAAkB,GAClB,gBAAgB,GAChB,cAAc,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC;AAE/D,eAAO,MAAM,oBAAoB;;;;;;;gBAOjB,KAAK;;;gBACL,IAAI;gBAAY,SAAS;;;gBACvB,IAAI;;;gBACI,IAAI;;;;;;;uBAKlB,QAAQ;;qCAEH,MAAM,EAAE,MAAM,EAAE,QAAQ;;qBAEjC,IAAI;yBAAI,KAAK,EAAE,QAAQ;;qBACvB,IAAI;yBAAI,IAAI,EAAE,QAAQ;yBAAE,SAAS,EAAE,CAAC;;qBACpC,MAAM;yBAAI,IAAI;;qBACd,cAAc;yBAAI,IAAI,EAAE,QAAQ;;qBAChC,KAAK;yBAAI,IAAI,EAAE,QAAQ;;qBACvB,WAAW;yBAAI,IAAI,EAAE,QAAQ;;qBAC7B,MAAM;yBAAI,IAAI,EAAE,QAAQ;;qBACxB,MAAM;yBAAI,IAAI;;qBACd,UAAU;yBAAI,IAAI,EAAE,QAAQ;;qBAC5B,wBAAwB;yBAAI,IAAI,EAAE,QAAQ;;qBAC1C,uBAAuB;yBAAI,IAAI,EAAE,QAAQ;;qBACzC,sBAAsB;yBAAI,IAAI,EAAE,QAAQ;;qBACxC,YAAY;yBAAI,IAAI,EAAE,QAAQ;;;;CAI5B,CAAC"}
@@ -0,0 +1,50 @@
1
+ export const CHANGE_TYPES = [
2
+ "landing",
3
+ "document",
4
+ "knowledge",
5
+ "brand",
6
+ "company",
7
+ "flow",
8
+ "action",
9
+ "report",
10
+ ];
11
+ export const CHANGE_ACTIONS = ["created", "updated", "deleted"];
12
+ export const REPORT_STATUSES = ["draft", "active", "error", "archived"];
13
+ export const DOCUMENT_FORMATS = ["pdf", "pptx", "docx", "xlsx", "csv", "json"];
14
+ export const chatChangeJsonSchema = {
15
+ oneOf: [
16
+ ...CHANGE_TYPES.filter((type) => type !== "report").map((type) => ({
17
+ type: "object",
18
+ additionalProperties: false,
19
+ required: ["type", "slug", "action"],
20
+ properties: {
21
+ type: { const: type },
22
+ slug: { type: "string", minLength: 1 },
23
+ action: { enum: CHANGE_ACTIONS },
24
+ contentVersion: { type: "number" },
25
+ ...(type === "document" ? { format: { enum: DOCUMENT_FORMATS } } : {}),
26
+ },
27
+ })),
28
+ {
29
+ type: "object",
30
+ additionalProperties: false,
31
+ required: ["type", "slug", "action"],
32
+ properties: {
33
+ type: { const: "report" },
34
+ slug: { type: "string", minLength: 1 },
35
+ action: { enum: CHANGE_ACTIONS },
36
+ contentVersion: { type: "number" },
37
+ title: { type: "string" },
38
+ description: { type: "string" },
39
+ intent: { type: "string" },
40
+ status: { enum: REPORT_STATUSES },
41
+ sourcePath: { type: "string" },
42
+ definitionContentVersion: { type: "number" },
43
+ dashboardContentVersion: { type: "number" },
44
+ endpointContentVersion: { type: "number" },
45
+ errorMessage: { type: "string" },
46
+ },
47
+ },
48
+ ],
49
+ };
50
+ //# sourceMappingURL=chat-change.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-change.js","sourceRoot":"","sources":["../../src/hono/chat-change.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,SAAS;IACT,UAAU;IACV,WAAW;IACX,OAAO;IACP,SAAS;IACT,MAAM;IACN,QAAQ;IACR,QAAQ;CACA,CAAC;AACX,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAU,CAAC;AACzE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAU,CAAC;AACjF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAU,CAAC;AAmCxF,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,KAAK,EAAE;QACL,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACjE,IAAI,EAAE,QAAQ;YACd,oBAAoB,EAAE,KAAK;YAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC;YACpC,UAAU,EAAE;gBACV,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;gBACrB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE;gBACtC,MAAM,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE;gBAChC,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAClC,GAAG,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACvE;SACF,CAAC,CAAC;QACH;YACE,IAAI,EAAE,QAAQ;YACd,oBAAoB,EAAE,KAAK;YAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC;YACpC,UAAU,EAAE;gBACV,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE;gBACzB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE;gBACtC,MAAM,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE;gBAChC,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAClC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC/B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,MAAM,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE;gBACjC,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC9B,wBAAwB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC5C,uBAAuB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC3C,sBAAsB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1C,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aACjC;SACF;KACF;CACO,CAAC"}