@runtypelabs/persona 4.26.1 → 4.28.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.
Files changed (61) hide show
  1. package/dist/approval-ui.d.cts +18 -0
  2. package/dist/approval-ui.d.ts +18 -0
  3. package/dist/artifacts-ui.d.cts +18 -0
  4. package/dist/artifacts-ui.d.ts +18 -0
  5. package/dist/chunk-AALCT54S.js +1 -0
  6. package/dist/{client-history-GOZWBDA5.js → client-history-LV3KHEFA.js} +1 -1
  7. package/dist/client-history.js +1 -1
  8. package/dist/client-stream-N22JHTLE.js +4 -0
  9. package/dist/client-stream.js +3 -3
  10. package/dist/codegen.cjs +1 -1
  11. package/dist/codegen.js +1 -1
  12. package/dist/context-mentions.d.cts +18 -0
  13. package/dist/context-mentions.d.ts +18 -0
  14. package/dist/event-stream-view.d.cts +18 -0
  15. package/dist/event-stream-view.d.ts +18 -0
  16. package/dist/forms-ui.d.cts +26 -0
  17. package/dist/forms-ui.d.ts +26 -0
  18. package/dist/index.cjs +57 -57
  19. package/dist/index.cjs.map +1 -1
  20. package/dist/index.d.cts +34 -0
  21. package/dist/index.d.ts +34 -0
  22. package/dist/index.global.js +1 -1
  23. package/dist/index.global.js.map +1 -1
  24. package/dist/index.js +58 -58
  25. package/dist/index.js.map +1 -1
  26. package/dist/session-reconnect.d.cts +18 -0
  27. package/dist/session-reconnect.d.ts +18 -0
  28. package/dist/smart-dom-reader.d.cts +18 -0
  29. package/dist/smart-dom-reader.d.ts +18 -0
  30. package/dist/theme-editor-preview.cjs +66 -66
  31. package/dist/theme-editor-preview.d.cts +18 -0
  32. package/dist/theme-editor-preview.d.ts +18 -0
  33. package/dist/theme-editor-preview.js +31 -31
  34. package/dist/theme-editor.d.cts +18 -0
  35. package/dist/theme-editor.d.ts +18 -0
  36. package/dist/voice-runtime-LVUMPUDS.js +17 -0
  37. package/dist/voice-runtime.cjs +7 -7
  38. package/dist/voice-runtime.d.cts +33 -0
  39. package/dist/voice-runtime.d.ts +33 -0
  40. package/dist/voice-runtime.js +7 -7
  41. package/package.json +1 -1
  42. package/src/client-stream.ts +10 -3
  43. package/src/client.interrupt.test.ts +18 -0
  44. package/src/client.test.ts +20 -0
  45. package/src/client.ts +7 -0
  46. package/src/session.ts +16 -3
  47. package/src/session.voice.test.ts +199 -3
  48. package/src/types.ts +24 -0
  49. package/src/ui.composer-defer-one.test.ts +17 -0
  50. package/src/ui.ts +49 -12
  51. package/src/voice/__fixtures__/voice-wire/server/session_end-provider-error.json +6 -0
  52. package/src/voice/__fixtures__/voice-wire/server/session_end-unknown-reason.json +4 -0
  53. package/src/voice/__fixtures__/voice-wire/server/session_end.json +5 -0
  54. package/src/voice/runtype-voice-provider.ts +205 -21
  55. package/src/voice/voice-clause-buffer.test.ts +143 -0
  56. package/src/voice/voice-clause-buffer.ts +187 -0
  57. package/src/voice/voice-delegation.ts +111 -13
  58. package/src/voice/voice.test.ts +433 -2
  59. package/dist/chunk-GKPCIQPB.js +0 -1
  60. package/dist/client-stream-42FOI3EC.js +0 -4
  61. package/dist/voice-runtime-XLU6YK2N.js +0 -17
@@ -7089,6 +7089,11 @@ interface VoiceProvider {
7089
7089
  setSessionBridge?(bridge: VoiceSessionBridge): void;
7090
7090
  /** The AI-disclosure notice for the live call, if one should show (speech-to-speech). */
7091
7091
  getDisclosure?(): string | null;
7092
+ /**
7093
+ * Status-line text for the call, returned once: why the server ended it
7094
+ * (`session_end`) or that it is reconnecting. `null` when there is none.
7095
+ */
7096
+ takeNotice?(): string | null;
7092
7097
  }
7093
7098
  /** Metadata on a {@link VoiceProvider.onTranscript} update. */
7094
7099
  type VoiceTranscriptMetadata = {
@@ -7120,6 +7125,13 @@ type VoiceDelegationRequest = {
7120
7125
  role: string;
7121
7126
  content: unknown;
7122
7127
  }>;
7128
+ /**
7129
+ * Set when the server streams delegated answers (`delegation_stream`): called
7130
+ * with each speakable piece of the turn's answer, in order, while it renders.
7131
+ * The pieces, concatenated, are a prefix of the result's `text`; the result
7132
+ * says how much of it with `streamedChars`.
7133
+ */
7134
+ stream?: (text: string) => void;
7123
7135
  };
7124
7136
  /**
7125
7137
  * How a delegated turn ended, or that it waits on an approval (contract
@@ -7150,6 +7162,12 @@ type VoiceDelegationResult = {
7150
7162
  * @default true
7151
7163
  */
7152
7164
  inChat?: boolean;
7165
+ /**
7166
+ * How many leading characters of `text` already went out through
7167
+ * `request.stream` (the rest, such as an approval script, is unstreamed).
7168
+ * Omitted or 0: nothing was streamed.
7169
+ */
7170
+ streamedChars?: number;
7153
7171
  /**
7154
7172
  * Set when the turn parked on approvals (`text` then asks for the decision).
7155
7173
  * Resolves with the terminal result once the visitor decides (or the
@@ -7089,6 +7089,11 @@ interface VoiceProvider {
7089
7089
  setSessionBridge?(bridge: VoiceSessionBridge): void;
7090
7090
  /** The AI-disclosure notice for the live call, if one should show (speech-to-speech). */
7091
7091
  getDisclosure?(): string | null;
7092
+ /**
7093
+ * Status-line text for the call, returned once: why the server ended it
7094
+ * (`session_end`) or that it is reconnecting. `null` when there is none.
7095
+ */
7096
+ takeNotice?(): string | null;
7092
7097
  }
7093
7098
  /** Metadata on a {@link VoiceProvider.onTranscript} update. */
7094
7099
  type VoiceTranscriptMetadata = {
@@ -7120,6 +7125,13 @@ type VoiceDelegationRequest = {
7120
7125
  role: string;
7121
7126
  content: unknown;
7122
7127
  }>;
7128
+ /**
7129
+ * Set when the server streams delegated answers (`delegation_stream`): called
7130
+ * with each speakable piece of the turn's answer, in order, while it renders.
7131
+ * The pieces, concatenated, are a prefix of the result's `text`; the result
7132
+ * says how much of it with `streamedChars`.
7133
+ */
7134
+ stream?: (text: string) => void;
7123
7135
  };
7124
7136
  /**
7125
7137
  * How a delegated turn ended, or that it waits on an approval (contract
@@ -7150,6 +7162,12 @@ type VoiceDelegationResult = {
7150
7162
  * @default true
7151
7163
  */
7152
7164
  inChat?: boolean;
7165
+ /**
7166
+ * How many leading characters of `text` already went out through
7167
+ * `request.stream` (the rest, such as an approval script, is unstreamed).
7168
+ * Omitted or 0: nothing was streamed.
7169
+ */
7170
+ streamedChars?: number;
7153
7171
  /**
7154
7172
  * Set when the turn parked on approvals (`text` then asks for the decision).
7155
7173
  * Resolves with the terminal result once the visitor decides (or the
@@ -7358,6 +7358,11 @@ interface VoiceProvider {
7358
7358
  setSessionBridge?(bridge: VoiceSessionBridge): void;
7359
7359
  /** The AI-disclosure notice for the live call, if one should show (speech-to-speech). */
7360
7360
  getDisclosure?(): string | null;
7361
+ /**
7362
+ * Status-line text for the call, returned once: why the server ended it
7363
+ * (`session_end`) or that it is reconnecting. `null` when there is none.
7364
+ */
7365
+ takeNotice?(): string | null;
7361
7366
  }
7362
7367
  /** Metadata on a {@link VoiceProvider.onTranscript} update. */
7363
7368
  type VoiceTranscriptMetadata = {
@@ -7389,6 +7394,13 @@ type VoiceDelegationRequest = {
7389
7394
  role: string;
7390
7395
  content: unknown;
7391
7396
  }>;
7397
+ /**
7398
+ * Set when the server streams delegated answers (`delegation_stream`): called
7399
+ * with each speakable piece of the turn's answer, in order, while it renders.
7400
+ * The pieces, concatenated, are a prefix of the result's `text`; the result
7401
+ * says how much of it with `streamedChars`.
7402
+ */
7403
+ stream?: (text: string) => void;
7392
7404
  };
7393
7405
  /**
7394
7406
  * How a delegated turn ended, or that it waits on an approval (contract
@@ -7419,6 +7431,12 @@ type VoiceDelegationResult = {
7419
7431
  * @default true
7420
7432
  */
7421
7433
  inChat?: boolean;
7434
+ /**
7435
+ * How many leading characters of `text` already went out through
7436
+ * `request.stream` (the rest, such as an approval script, is unstreamed).
7437
+ * Omitted or 0: nothing was streamed.
7438
+ */
7439
+ streamedChars?: number;
7422
7440
  /**
7423
7441
  * Set when the turn parked on approvals (`text` then asks for the decision).
7424
7442
  * Resolves with the terminal result once the visitor decides (or the
@@ -7358,6 +7358,11 @@ interface VoiceProvider {
7358
7358
  setSessionBridge?(bridge: VoiceSessionBridge): void;
7359
7359
  /** The AI-disclosure notice for the live call, if one should show (speech-to-speech). */
7360
7360
  getDisclosure?(): string | null;
7361
+ /**
7362
+ * Status-line text for the call, returned once: why the server ended it
7363
+ * (`session_end`) or that it is reconnecting. `null` when there is none.
7364
+ */
7365
+ takeNotice?(): string | null;
7361
7366
  }
7362
7367
  /** Metadata on a {@link VoiceProvider.onTranscript} update. */
7363
7368
  type VoiceTranscriptMetadata = {
@@ -7389,6 +7394,13 @@ type VoiceDelegationRequest = {
7389
7394
  role: string;
7390
7395
  content: unknown;
7391
7396
  }>;
7397
+ /**
7398
+ * Set when the server streams delegated answers (`delegation_stream`): called
7399
+ * with each speakable piece of the turn's answer, in order, while it renders.
7400
+ * The pieces, concatenated, are a prefix of the result's `text`; the result
7401
+ * says how much of it with `streamedChars`.
7402
+ */
7403
+ stream?: (text: string) => void;
7392
7404
  };
7393
7405
  /**
7394
7406
  * How a delegated turn ended, or that it waits on an approval (contract
@@ -7419,6 +7431,12 @@ type VoiceDelegationResult = {
7419
7431
  * @default true
7420
7432
  */
7421
7433
  inChat?: boolean;
7434
+ /**
7435
+ * How many leading characters of `text` already went out through
7436
+ * `request.stream` (the rest, such as an approval script, is unstreamed).
7437
+ * Omitted or 0: nothing was streamed.
7438
+ */
7439
+ streamedChars?: number;
7422
7440
  /**
7423
7441
  * Set when the turn parked on approvals (`text` then asks for the decision).
7424
7442
  * Resolves with the terminal result once the visitor decides (or the