veryfront 0.1.668 → 0.1.669

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/esm/deno.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export default {
2
2
  "name": "veryfront",
3
- "version": "0.1.668",
3
+ "version": "0.1.669",
4
4
  "license": "Apache-2.0",
5
5
  "nodeModulesDir": "auto",
6
6
  "workspace": [
@@ -1,4 +1,4 @@
1
- import { isRecord } from "../../chat/conversation.js";
1
+ import { getProviderModelMessageSourceId, isRecord } from "../../chat/conversation.js";
2
2
  import { buildDataFileAnnotation, } from "../../chat/types.js";
3
3
  import { toChildRunToolInputRecord } from "../child-run/execution-support.js";
4
4
  /** Error shape for agent runtime message conversion. */
@@ -19,7 +19,7 @@ function getOptionalStringField(part, key) {
19
19
  return typeof value === "string" && value.length > 0 ? value : undefined;
20
20
  }
21
21
  function createAgentRuntimeMessageId(message, index) {
22
- return `agent-runtime-${message.role}-${index + 1}`;
22
+ return getProviderModelMessageSourceId(message) ?? `agent-runtime-${message.role}-${index + 1}`;
23
23
  }
24
24
  function createTextAgentRuntimePart(text) {
25
25
  return hasTextContent(text) ? { type: "text", text } : null;
@@ -1,5 +1,16 @@
1
1
  import type { InferSchema } from "../extensions/schema/index.js";
2
2
  import type { ChatUiMessage, ChatUiMessagePart, ProviderModelMessage } from "./types.js";
3
+ declare const PROVIDER_MODEL_MESSAGE_SOURCE_ID: unique symbol;
4
+ /** Provider model message plus local-only source metadata. */
5
+ export type ProviderModelMessageWithSourceId = ProviderModelMessage & {
6
+ [PROVIDER_MODEL_MESSAGE_SOURCE_ID]?: string;
7
+ };
8
+ /** Read the local-only source UI message id attached during provider conversion. */
9
+ export declare function getProviderModelMessageSourceId(message: ProviderModelMessage): string | undefined;
10
+ /** Attach local-only source UI message id metadata to a provider message. */
11
+ export declare function withProviderModelMessageSourceId(message: ProviderModelMessage, sourceId: string): ProviderModelMessage;
12
+ /** Copy local-only source UI message id metadata when a provider message is cloned. */
13
+ export declare function copyProviderModelMessageSourceId<T extends ProviderModelMessage>(source: ProviderModelMessage, target: T): T;
3
14
  /** Zod schema for get message part. */
4
15
  export declare const getMessagePartSchema: () => import("../internal-agents/schema.js").Schema<import("../extensions/schema/schema-validator.js").InferShape<{
5
16
  type: import("../internal-agents/schema.js").Schema<"text">;
@@ -1 +1 @@
1
- {"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../../src/src/chat/conversation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../../src/src/chat/conversation.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,24 @@
1
1
  import { defineSchema } from "../schemas/index.js";
2
+ const PROVIDER_MODEL_MESSAGE_SOURCE_ID = Symbol.for("veryfront.providerModelMessageSourceId");
3
+ /** Read the local-only source UI message id attached during provider conversion. */
4
+ export function getProviderModelMessageSourceId(message) {
5
+ return message[PROVIDER_MODEL_MESSAGE_SOURCE_ID];
6
+ }
7
+ /** Attach local-only source UI message id metadata to a provider message. */
8
+ export function withProviderModelMessageSourceId(message, sourceId) {
9
+ Object.defineProperty(message, PROVIDER_MODEL_MESSAGE_SOURCE_ID, {
10
+ value: sourceId,
11
+ configurable: true,
12
+ enumerable: false,
13
+ writable: true,
14
+ });
15
+ return message;
16
+ }
17
+ /** Copy local-only source UI message id metadata when a provider message is cloned. */
18
+ export function copyProviderModelMessageSourceId(source, target) {
19
+ const sourceId = getProviderModelMessageSourceId(source);
20
+ return sourceId ? withProviderModelMessageSourceId(target, sourceId) : target;
21
+ }
2
22
  /** Zod schema for get message part. */
3
23
  export const getMessagePartSchema = defineSchema((v) => v.discriminatedUnion("type", [
4
24
  v.object({ type: v.literal("text"), text: v.string() }),
@@ -700,13 +720,14 @@ export function convertUiMessagesToProviderModelMessages(messages) {
700
720
  return [];
701
721
  }
702
722
  })();
703
- for (const providerMessage of converted) {
723
+ for (const rawProviderMessage of converted) {
724
+ const providerMessage = withProviderModelMessageSourceId(rawProviderMessage, message.id);
704
725
  const previous = providerMessages.at(-1);
705
726
  if (previous?.role === "tool" && providerMessage.role === "tool") {
706
- providerMessages[providerMessages.length - 1] = {
727
+ providerMessages[providerMessages.length - 1] = withProviderModelMessageSourceId({
707
728
  role: "tool",
708
729
  content: [...previous.content, ...providerMessage.content],
709
- };
730
+ }, getProviderModelMessageSourceId(previous) ?? message.id);
710
731
  continue;
711
732
  }
712
733
  providerMessages.push(providerMessage);
@@ -1 +1 @@
1
- {"version":3,"file":"message-prep.d.ts","sourceRoot":"","sources":["../../../src/src/chat/message-prep.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AAQjC,OAAO,EAKL,KAAK,aAAa,EAGlB,KAAK,oBAAoB,EAE1B,MAAM,YAAY,CAAC;AAMpB,4EAA4E;AAC5E,MAAM,WAAW,iDAAiD;IAChE,sBAAsB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5C;AAED,uBAAuB;AACvB,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAErD;AAOD,qBAAqB;AACrB,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,oBAAoB,EAAE,EAChC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,oBAAoB,EAAE,CAiCxB;AAqCD,kDAAkD;AAClD,wBAAgB,qCAAqC,CACnD,QAAQ,EAAE,oBAAoB,EAAE,EAChC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,oBAAoB,EAAE,CAiExB;AA+BD,4DAA4D;AAC5D,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAGxE;AAED,gDAAgD;AAChD,wBAAgB,kCAAkC,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CAwB7F;AAED,qDAAqD;AACrD,wBAAgB,wCAAwC,CACtD,QAAQ,EAAE,aAAa,EAAE,GACxB,aAAa,EAAE,CAmDjB;AAyCD,gCAAgC;AAChC,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CAiBhF;AAsFD,wCAAwC;AACxC,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,oBAAoB,EAAE,GAC/B,oBAAoB,EAAE,CAwBxB;AA4ED,wDAAwD;AACxD,wBAAgB,0CAA0C,CACxD,QAAQ,EAAE,aAAa,EAAE,EACzB,OAAO,GAAE,iDAAsD,GAC9D,oBAAoB,EAAE,CAqBxB;AA2OD,6BAA6B;AAC7B,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,oBAAoB,EAAE,CA4E3F;AAWD,yBAAyB;AACzB,wBAAgB,eAAe,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,oBAAoB,EAAE,CA4IxF;AAED,yBAAyB;AACzB,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAGjF;AAED,sCAAsC;AACtC,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,oBAAoB,EAAE,CA4B7F;AAED,wBAAwB;AACxB,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,oBAAoB,EAAE,EAChC,QAAQ,GAAE,MAAU,GACnB,oBAAoB,EAAE,CAexB;AAED,2BAA2B;AAC3B,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,oBAAoB,EAAE,CA0D1F;AAED,4BAA4B;AAC5B,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,oBAAoB,EAAE,EAChC,MAAM,GAAE,MAA6B,EACrC,QAAQ,GAAE,MAAU,GACnB,oBAAoB,EAAE,CAMxB"}
1
+ {"version":3,"file":"message-prep.d.ts","sourceRoot":"","sources":["../../../src/src/chat/message-prep.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AASjC,OAAO,EAKL,KAAK,aAAa,EAGlB,KAAK,oBAAoB,EAE1B,MAAM,YAAY,CAAC;AAMpB,4EAA4E;AAC5E,MAAM,WAAW,iDAAiD;IAChE,sBAAsB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5C;AAED,uBAAuB;AACvB,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAErD;AAOD,qBAAqB;AACrB,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,oBAAoB,EAAE,EAChC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,oBAAoB,EAAE,CAiCxB;AAqCD,kDAAkD;AAClD,wBAAgB,qCAAqC,CACnD,QAAQ,EAAE,oBAAoB,EAAE,EAChC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,oBAAoB,EAAE,CAiExB;AA+BD,4DAA4D;AAC5D,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAGxE;AAED,gDAAgD;AAChD,wBAAgB,kCAAkC,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CAwB7F;AAED,qDAAqD;AACrD,wBAAgB,wCAAwC,CACtD,QAAQ,EAAE,aAAa,EAAE,GACxB,aAAa,EAAE,CAmDjB;AAyCD,gCAAgC;AAChC,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CAiBhF;AAsFD,wCAAwC;AACxC,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,oBAAoB,EAAE,GAC/B,oBAAoB,EAAE,CA8BxB;AA4ED,wDAAwD;AACxD,wBAAgB,0CAA0C,CACxD,QAAQ,EAAE,aAAa,EAAE,EACzB,OAAO,GAAE,iDAAsD,GAC9D,oBAAoB,EAAE,CAqBxB;AA2OD,6BAA6B;AAC7B,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,oBAAoB,EAAE,CA4E3F;AAWD,yBAAyB;AACzB,wBAAgB,eAAe,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,oBAAoB,EAAE,CA4IxF;AAED,yBAAyB;AACzB,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAGjF;AAED,sCAAsC;AACtC,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,oBAAoB,EAAE,CA4B7F;AAED,wBAAwB;AACxB,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,oBAAoB,EAAE,EAChC,QAAQ,GAAE,MAAU,GACnB,oBAAoB,EAAE,CAexB;AAED,2BAA2B;AAC3B,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,GAAG,oBAAoB,EAAE,CAgE1F;AAED,4BAA4B;AAC5B,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,oBAAoB,EAAE,EAChC,MAAM,GAAE,MAA6B,EACrC,QAAQ,GAAE,MAAU,GACnB,oBAAoB,EAAE,CAMxB"}
@@ -1,4 +1,4 @@
1
- import { convertUiMessagesToProviderModelMessages, getStringField, isReasoningPart, isToolCallPart, isToolResultPart, } from "./conversation.js";
1
+ import { convertUiMessagesToProviderModelMessages, copyProviderModelMessageSourceId, getStringField, isReasoningPart, isToolCallPart, isToolResultPart, } from "./conversation.js";
2
2
  import { buildDataFileAnnotation, normalizeInlineAttachmentMediaType, } from "./types.js";
3
3
  import { historicalToolSummaries } from "../integrations/_tool_summaries.js";
4
4
  const CHARS_PER_TOKEN = 4;
@@ -354,18 +354,21 @@ export function sanitizeProviderModelMessages(messages) {
354
354
  if (Array.isArray(message.content)) {
355
355
  if (message.role === "user") {
356
356
  const cleaned = cleanContent(message.content);
357
- if (cleaned.length > 0)
358
- result.push({ ...message, content: cleaned });
357
+ if (cleaned.length > 0) {
358
+ result.push(copyProviderModelMessageSourceId(message, { ...message, content: cleaned }));
359
+ }
359
360
  }
360
361
  else if (message.role === "assistant") {
361
362
  const cleaned = cleanContent(message.content);
362
- if (cleaned.length > 0)
363
- result.push({ ...message, content: cleaned });
363
+ if (cleaned.length > 0) {
364
+ result.push(copyProviderModelMessageSourceId(message, { ...message, content: cleaned }));
365
+ }
364
366
  }
365
367
  else if (message.role === "tool") {
366
368
  const cleaned = cleanContent(message.content);
367
- if (cleaned.length > 0)
368
- result.push({ ...message, content: cleaned });
369
+ if (cleaned.length > 0) {
370
+ result.push(copyProviderModelMessageSourceId(message, { ...message, content: cleaned }));
371
+ }
369
372
  }
370
373
  continue;
371
374
  }
@@ -667,7 +670,7 @@ export function maskOldToolOutputs(messages) {
667
670
  if (msg.role === "assistant" && Array.isArray(msg.content)) {
668
671
  const filtered = msg.content.filter((part) => !isReasoningPart(part));
669
672
  if (filtered.length !== msg.content.length) {
670
- return { ...msg, content: filtered };
673
+ return copyProviderModelMessageSourceId(msg, { ...msg, content: filtered });
671
674
  }
672
675
  return msg;
673
676
  }
@@ -715,7 +718,7 @@ export function maskOldToolOutputs(messages) {
715
718
  }
716
719
  return { ...part, output: wrapToolResultOutput(part.output, masked) };
717
720
  });
718
- return { ...msg, content: newContent };
721
+ return copyProviderModelMessageSourceId(msg, { ...msg, content: newContent });
719
722
  });
720
723
  }
721
724
  function createSyntheticToolResult(toolCallId, toolName) {
@@ -763,10 +766,10 @@ export function repairToolPairs(messages) {
763
766
  }
764
767
  }
765
768
  if (repairedContent.length !== message.content.length) {
766
- result[index] = {
769
+ result[index] = copyProviderModelMessageSourceId(message, {
767
770
  ...message,
768
771
  content: repairedContent,
769
- };
772
+ });
770
773
  }
771
774
  if (regularToolCalls.length === 0) {
772
775
  continue;
@@ -811,24 +814,24 @@ export function repairToolPairs(messages) {
811
814
  laterIndex--;
812
815
  continue;
813
816
  }
814
- result[laterIndex] = {
817
+ result[laterIndex] = copyProviderModelMessageSourceId(laterMessage, {
815
818
  ...laterMessage,
816
819
  content: keptLaterContent,
817
- };
820
+ });
818
821
  }
819
822
  const repairedResults = unresolvedCalls.map((toolCall) => movedResults.get(toolCall.id) ?? createSyntheticToolResult(toolCall.id, toolCall.toolName));
820
823
  if (nextMessage?.role === "tool" && Array.isArray(nextMessage.content)) {
821
- result[index + 1] = {
824
+ result[index + 1] = copyProviderModelMessageSourceId(nextMessage, {
822
825
  ...nextMessage,
823
826
  content: [...repairedResults, ...nextMessage.content],
824
- };
827
+ });
825
828
  }
826
829
  else {
827
830
  const toolMessage = {
828
831
  role: "tool",
829
832
  content: repairedResults,
830
833
  };
831
- result.splice(index + 1, 0, toolMessage);
834
+ result.splice(index + 1, 0, copyProviderModelMessageSourceId(message, toolMessage));
832
835
  }
833
836
  mutated = true;
834
837
  }
@@ -858,7 +861,7 @@ export function ensureToolCallInputs(messages) {
858
861
  });
859
862
  if (msgMutated) {
860
863
  mutated = true;
861
- return { ...msg, content: newContent };
864
+ return copyProviderModelMessageSourceId(msg, { ...msg, content: newContent });
862
865
  }
863
866
  return msg;
864
867
  });
@@ -909,8 +912,9 @@ export function dedupeToolHistory(messages) {
909
912
  deduped.push(message);
910
913
  continue;
911
914
  }
912
- if (filtered.length > 0)
913
- deduped.push({ ...message, content: filtered });
915
+ if (filtered.length > 0) {
916
+ deduped.push(copyProviderModelMessageSourceId(message, { ...message, content: filtered }));
917
+ }
914
918
  }
915
919
  else if (message.role === "assistant" && Array.isArray(message.content)) {
916
920
  const { filtered, changed } = filterParts(message.content);
@@ -918,8 +922,9 @@ export function dedupeToolHistory(messages) {
918
922
  deduped.push(message);
919
923
  continue;
920
924
  }
921
- if (filtered.length > 0)
922
- deduped.push({ ...message, content: filtered });
925
+ if (filtered.length > 0) {
926
+ deduped.push(copyProviderModelMessageSourceId(message, { ...message, content: filtered }));
927
+ }
923
928
  }
924
929
  else if (message.role === "tool") {
925
930
  const { filtered, changed } = filterParts(message.content);
@@ -927,8 +932,9 @@ export function dedupeToolHistory(messages) {
927
932
  deduped.push(message);
928
933
  continue;
929
934
  }
930
- if (filtered.length > 0)
931
- deduped.push({ ...message, content: filtered });
935
+ if (filtered.length > 0) {
936
+ deduped.push(copyProviderModelMessageSourceId(message, { ...message, content: filtered }));
937
+ }
932
938
  }
933
939
  else {
934
940
  deduped.push(message);
@@ -1,3 +1,3 @@
1
1
  /** Shared version value. */
2
- export declare const VERSION = "0.1.668";
2
+ export declare const VERSION = "0.1.669";
3
3
  //# sourceMappingURL=version-constant.d.ts.map
@@ -1,4 +1,4 @@
1
1
  // Keep in sync with deno.json version.
2
2
  // scripts/release.ts updates this constant during releases.
3
3
  /** Shared version value. */
4
- export const VERSION = "0.1.668";
4
+ export const VERSION = "0.1.669";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "veryfront",
3
- "version": "0.1.668",
3
+ "version": "0.1.669",
4
4
  "description": "The simplest way to build AI-powered apps",
5
5
  "keywords": [
6
6
  "react",