@framers/agentos 0.13.1 → 0.13.2

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 (60) hide show
  1. package/README.md +11 -11
  2. package/dist/api/agent.d.ts +7 -3
  3. package/dist/api/agent.d.ts.map +1 -1
  4. package/dist/api/agent.js.map +1 -1
  5. package/dist/api/embedText.d.ts.map +1 -1
  6. package/dist/api/embedText.js +1 -8
  7. package/dist/api/embedText.js.map +1 -1
  8. package/dist/api/gmi.d.ts.map +1 -1
  9. package/dist/api/gmi.js +24 -19
  10. package/dist/api/gmi.js.map +1 -1
  11. package/dist/api/runtime/agentCognitiveMemory.d.ts +12 -9
  12. package/dist/api/runtime/agentCognitiveMemory.d.ts.map +1 -1
  13. package/dist/api/runtime/agentCognitiveMemory.js +53 -17
  14. package/dist/api/runtime/agentCognitiveMemory.js.map +1 -1
  15. package/dist/api/runtime/completionGateway.d.ts.map +1 -1
  16. package/dist/api/runtime/completionGateway.js +7 -0
  17. package/dist/api/runtime/completionGateway.js.map +1 -1
  18. package/dist/api/runtime/gmiResults.d.ts +63 -6
  19. package/dist/api/runtime/gmiResults.d.ts.map +1 -1
  20. package/dist/api/runtime/gmiResults.js +83 -13
  21. package/dist/api/runtime/gmiResults.js.map +1 -1
  22. package/dist/api/runtime/gmiSession.d.ts +17 -2
  23. package/dist/api/runtime/gmiSession.d.ts.map +1 -1
  24. package/dist/api/runtime/gmiSession.js +32 -7
  25. package/dist/api/runtime/gmiSession.js.map +1 -1
  26. package/dist/api/runtime/provider-defaults.d.ts +9 -0
  27. package/dist/api/runtime/provider-defaults.d.ts.map +1 -1
  28. package/dist/api/runtime/provider-defaults.js +9 -0
  29. package/dist/api/runtime/provider-defaults.js.map +1 -1
  30. package/dist/cognition/memory/CognitiveMemoryManager.d.ts +28 -21
  31. package/dist/cognition/memory/CognitiveMemoryManager.d.ts.map +1 -1
  32. package/dist/cognition/memory/CognitiveMemoryManager.js +76 -26
  33. package/dist/cognition/memory/CognitiveMemoryManager.js.map +1 -1
  34. package/dist/cognition/memory/retrieval/store/MemoryStore.d.ts +10 -2
  35. package/dist/cognition/memory/retrieval/store/MemoryStore.d.ts.map +1 -1
  36. package/dist/cognition/memory/retrieval/store/MemoryStore.js +11 -2
  37. package/dist/cognition/memory/retrieval/store/MemoryStore.js.map +1 -1
  38. package/dist/cognition/substrate/ConversationHistoryManager.d.ts +3 -1
  39. package/dist/cognition/substrate/ConversationHistoryManager.d.ts.map +1 -1
  40. package/dist/cognition/substrate/ConversationHistoryManager.js +9 -2
  41. package/dist/cognition/substrate/ConversationHistoryManager.js.map +1 -1
  42. package/dist/cognition/substrate/GMI.d.ts +33 -2
  43. package/dist/cognition/substrate/GMI.d.ts.map +1 -1
  44. package/dist/cognition/substrate/GMI.js +225 -71
  45. package/dist/cognition/substrate/GMI.js.map +1 -1
  46. package/dist/cognition/substrate/IGMI.d.ts +14 -3
  47. package/dist/cognition/substrate/IGMI.d.ts.map +1 -1
  48. package/dist/cognition/substrate/IGMI.js +2 -1
  49. package/dist/cognition/substrate/IGMI.js.map +1 -1
  50. package/dist/cognition/substrate/SentimentTracker.d.ts +8 -0
  51. package/dist/cognition/substrate/SentimentTracker.d.ts.map +1 -1
  52. package/dist/cognition/substrate/SentimentTracker.js +20 -0
  53. package/dist/cognition/substrate/SentimentTracker.js.map +1 -1
  54. package/dist/core/llm/providers/implementations/OpenAIProvider.d.ts.map +1 -1
  55. package/dist/core/llm/providers/implementations/OpenAIProvider.js +23 -4
  56. package/dist/core/llm/providers/implementations/OpenAIProvider.js.map +1 -1
  57. package/dist/extensions/ExtensionRegistry.d.ts.map +1 -1
  58. package/dist/extensions/ExtensionRegistry.js +4 -1
  59. package/dist/extensions/ExtensionRegistry.js.map +1 -1
  60. package/package.json +1 -1
@@ -5,12 +5,15 @@
5
5
  * in-memory knowledge graph, an embedding manager for `memory.embedding`, a
6
6
  * working memory of its own and the persona's HEXACO traits.
7
7
  *
8
- * One manager serves every session of an agent. Each GMI's memory bridge passes
9
- * the session's mood on every encode, retrieve and assemble call and scopes
10
- * recall to the session's user and conversation, so the manager's own mood
11
- * callback is neutral. The memory graph runs on the `'knowledge-graph'` backend
12
- * over the same in-memory knowledge graph, because the `'graphology'` backend
13
- * needs graphology, an optional peer dependency. Consolidation runs only when
8
+ * One manager serves every session of an agent, and each session's GMI is given
9
+ * `manager.forSession()`: the shared store with a working memory of its own, so
10
+ * a session's active context lists only its own memories. Each GMI's memory
11
+ * bridge passes the session's mood on every encode, retrieve and assemble call
12
+ * and scopes recall (graph associations included) to the session's user and
13
+ * conversation, so the manager's own mood callback is neutral. The memory graph
14
+ * runs on the `'knowledge-graph'` backend over the same in-memory knowledge
15
+ * graph, because the `'graphology'` backend needs graphology, an optional peer
16
+ * dependency. Consolidation runs only when
14
17
  * `memory.consolidation.enabled` is true. The build embeds one test text through
15
18
  * the embedding model it sets up, so a model that cannot answer, or answers with
16
19
  * another size than memory expects, fails the build instead of leaving memory empty.
@@ -22,6 +25,8 @@ import { InMemoryVectorStore } from '../../cognition/rag/vector_stores/InMemoryV
22
25
  import { InMemoryWorkingMemory } from '../../cognition/substrate/memory/InMemoryWorkingMemory.js';
23
26
  import { HEXACO_TRAIT_KEYS, normalizeHexacoTraits } from '../../cognition/substrate/personas/hexaco.js';
24
27
  import { createProviderManager, resolveModelOption, resolveProvider } from '../model.js';
28
+ import { GEMINI_DEFAULT_EMBEDDING_MODEL, PROVIDER_DEFAULTS } from './provider-defaults.js';
29
+ import { getDefaultProvider } from './global-default.js';
25
30
  /**
26
31
  * Output sizes of the embedding models agentos knows, as each returns them when
27
32
  * no `dimensions` is requested: OpenAI's (text-embedding-3 in
@@ -76,21 +81,52 @@ function checkedDimension(memory) {
76
81
  }
77
82
  return declared;
78
83
  }
84
+ /** The default embedding model agentos has for `providerId`: the shared provider defaults', or Gemini's (embedText's). */
85
+ function defaultEmbeddingModelOf(providerId) {
86
+ return providerId === 'gemini' ? GEMINI_DEFAULT_EMBEDDING_MODEL : PROVIDER_DEFAULTS[providerId]?.embedding;
87
+ }
88
+ /** The providers memory picks by itself, OpenAI first (spec D7), each with the variable that configures it. */
89
+ const EMBEDDING_DETECTION_ORDER = [
90
+ { provider: 'openai', envKey: 'OPENAI_API_KEY' },
91
+ { provider: 'gemini', envKey: 'GEMINI_API_KEY' },
92
+ { provider: 'ollama', envKey: 'OLLAMA_BASE_URL' },
93
+ ];
94
+ /**
95
+ * The embedding provider, and the model when one is named, memory uses when
96
+ * `memory.embedding` names no provider: the global default provider
97
+ * (`setDefaultProvider`) when agentos has an embedding model for it, with the
98
+ * default's own model when that is an embedding model; else the first of
99
+ * OpenAI, Gemini and Ollama whose key (Ollama: base URL) is set.
100
+ */
101
+ function defaultEmbeddingChoice(env) {
102
+ const globalDefault = getDefaultProvider();
103
+ if (globalDefault?.provider && defaultEmbeddingModelOf(globalDefault.provider)) {
104
+ const model = globalDefault.model && /embed/i.test(globalDefault.model) ? globalDefault.model : undefined;
105
+ return { provider: globalDefault.provider, ...(model ? { model } : {}) };
106
+ }
107
+ const detected = EMBEDDING_DETECTION_ORDER.find(({ envKey }) => env[envKey]);
108
+ return detected ? { provider: detected.provider } : undefined;
109
+ }
79
110
  /**
80
- * Resolves the embedding model from `memory.embedding`, or, when it is unset,
81
- * from the environment: OpenAI's default embedding model when OPENAI_API_KEY is
82
- * set, else Ollama's when OLLAMA_BASE_URL is set. Only checks whether those two
83
- * are set; the provider's credentials are resolved when the memory is built.
111
+ * Resolves the embedding model from `memory.embedding`, or, when it names no
112
+ * provider, from the global default provider and the environment (see
113
+ * {@link defaultEmbeddingChoice}). Only checks which provider is configured;
114
+ * its credentials are resolved when the memory is built.
84
115
  */
85
116
  function resolveEmbeddingTarget(memory, env) {
86
- const requested = memory.embedding?.provider || (env.OPENAI_API_KEY ? 'openai' : env.OLLAMA_BASE_URL ? 'ollama' : undefined);
87
- if (!requested) {
88
- throw new Error('gmi(): cognitive memory needs an embedding model. Set memory.embedding: { provider, model } or set OPENAI_API_KEY or OLLAMA_BASE_URL.');
117
+ const choice = memory.embedding?.provider
118
+ ? { provider: memory.embedding.provider }
119
+ : defaultEmbeddingChoice(env);
120
+ if (!choice) {
121
+ throw new Error('gmi(): cognitive memory needs an embedding model. Set memory.embedding: { provider, model }, a default provider that has embedding models (setDefaultProvider), or OPENAI_API_KEY, GEMINI_API_KEY or OLLAMA_BASE_URL.');
89
122
  }
123
+ const requested = choice.provider;
90
124
  refuseProviderWithoutEmbeddings(requested);
125
+ // Gemini has no embedding model in the shared provider defaults; embedText's default applies.
126
+ const modelName = memory.embedding?.model ?? choice.model ?? (requested === 'gemini' ? GEMINI_DEFAULT_EMBEDDING_MODEL : undefined);
91
127
  let model;
92
128
  try {
93
- model = resolveModelOption({ provider: requested, model: memory.embedding?.model }, 'embedding');
129
+ model = resolveModelOption({ provider: requested, model: modelName }, 'embedding');
94
130
  }
95
131
  catch (error) {
96
132
  throw errorWithCause(`gmi(): memory.embedding: ${messageOf(error)}`, error);
@@ -107,11 +143,11 @@ function resolveEmbeddingTarget(memory, env) {
107
143
  /**
108
144
  * Checks, when the agent is built, that cognitive memory has an embedding model
109
145
  * it can use, so a missing or unusable one fails before the first send. Reads
110
- * the environment only to pick the provider when `memory.embedding` is unset;
111
- * credentials are read when the memory is built.
146
+ * the global default provider and the environment only to pick the provider when
147
+ * `memory.embedding` names none; credentials are read when the memory is built.
112
148
  *
113
149
  * @param memory - The agent's memory config.
114
- * @param env - The environment to read OPENAI_API_KEY and OLLAMA_BASE_URL from (defaults to `process.env`).
150
+ * @param env - The environment to read OPENAI_API_KEY, GEMINI_API_KEY and OLLAMA_BASE_URL from (defaults to `process.env`).
115
151
  * @throws {Error} Naming `memory.embedding` when no provider is set or detected, when the
116
152
  * provider has no embeddings (Anthropic, Groq, xAI, the Claude Code and Gemini CLIs), when the
117
153
  * model does not resolve, or when the model's output size is unknown and
@@ -1 +1 @@
1
- {"version":3,"file":"agentCognitiveMemory.js","sourceRoot":"","sources":["../../../src/api/runtime/agentCognitiveMemory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentCognitiveMemory.js","sourceRoot":"","sources":["../../../src/api/runtime/agentCognitiveMemory.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"completionGateway.d.ts","sourceRoot":"","sources":["../../../src/api/runtime/completionGateway.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACnC,OAAO,KAAK,EAAE,WAAW,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACtI,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oDAAoD,CAAC;AACjG,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAI7F,OAAO,EAML,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAsD,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGzG,kFAAkF;AAClF,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mFAAmF;IACnF,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACjD,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACzC,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,UAAU,CAAC,EAAE,mBAAmB,CAAC,YAAY,CAAC,CAAC;IAC/C,oHAAoH;IACpH,iBAAiB,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAC5C,uGAAuG;IACvG,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4GAA4G;IAC5G,WAAW,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC,CAAC;IAC1E,6DAA6D;IAC7D,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,IAAI,CAAC;IACrF,0FAA0F;IAC1F,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,IAAI,CAAC;CAClF;AAED,qDAAqD;AACrD,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,qBAAqB,CAAC;CAC/B;AAED,yFAAyF;AACzF,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,0DAA0D;IAC1D,UAAU,EAAE,kBAAkB,GAAG,iBAAiB,GAAG,yBAAyB,CAAC;IAC/E,eAAe,EAAE,sBAAsB,CAAC;IACxC,6GAA6G;IAC7G,eAAe,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACjD,gFAAgF;IAChF,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;CAC9C;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GACzB;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,UAAU,CAAA;CAAE,GAC3E;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,CAAC;AAE1B,uHAAuH;AACvH,MAAM,WAAW,iBAAkB,SAAQ,aAAa,CAAC,uBAAuB,CAAC;IAC/E,OAAO,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,KAAK,EAAE,eAAe,EAAE,KAAK,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAAC;IACpG,MAAM,CACJ,UAAU,EAAE,oBAAoB,EAChC,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,EAAE,sBAAsB,EAC/B,cAAc,CAAC,EAAE,OAAO,EACxB,UAAU,CAAC,EAAE,MAAM,GAClB,iBAAiB,CAAC;CACtB;AAED,uFAAuF;AACvF,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAKpF;AAqLD,wBAAgB,uBAAuB,CAAC,QAAQ,GAAE,OAAO,CAAC,eAAe,CAAM,GAAG,iBAAiB,CAwKlG"}
1
+ {"version":3,"file":"completionGateway.d.ts","sourceRoot":"","sources":["../../../src/api/runtime/completionGateway.ts"],"names":[],"mappings":"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"}
@@ -97,7 +97,13 @@ function errorFromChunk(e) {
97
97
  ...(e.details !== undefined ? { details: e.details } : {}),
98
98
  });
99
99
  }
100
+ /**
101
+ * The chunk that ends an attempt whose provider threw after content. It carries
102
+ * the usage the error reports (`details.usage`, as a refused Claude turn reports
103
+ * it), so the GMI counts what the failed step was billed.
104
+ */
100
105
  function terminalErrorChunk(resolution, error) {
106
+ const usage = asUsageReport(usageOfError(error));
101
107
  return {
102
108
  id: `gateway-error-${resolution.providerId}-${resolution.hop}`,
103
109
  object: 'chat.completion.chunk',
@@ -105,6 +111,7 @@ function terminalErrorChunk(resolution, error) {
105
111
  modelId: resolution.modelId,
106
112
  choices: [],
107
113
  isFinal: true,
114
+ ...(usage ? { usage } : {}),
108
115
  error: { message: error.message, type: error.type ?? 'provider_error', details: { terminal: true, providerId: resolution.providerId, hop: resolution.hop } },
109
116
  };
110
117
  }
@@ -1 +1 @@
1
- {"version":3,"file":"completionGateway.js","sourceRoot":"","sources":["../../../src/api/runtime/completionGateway.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,gDAAgD,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACzF,OAAO,EACL,6BAA6B,EAC7B,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,YAAY,GAGb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAsB,MAAM,iBAAiB,CAAC;AACzG,OAAO,EAAE,8BAA8B,EAAE,MAAM,gCAAgC,CAAC;AA2EhF,uFAAuF;AACvF,MAAM,UAAU,aAAa,CAAC,UAAkB;IAC9C,MAAM,GAAG,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;IACrC,IAAI,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,iBAAiB,CAAC;IACxD,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,yBAAyB,CAAC;IACvF,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAED,SAAS,WAAW,CAAoC,KAAQ;IAC9D,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAe,CAAC;AACpG,CAAC;AAED,+FAA+F;AAC/F,SAAS,YAAY,CAAC,QAAuB;IAC3C,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9C,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM;YAAE,SAAS;QAChC,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ;YAAE,OAAO,CAAC,CAAC,OAAO,CAAC;QACpD,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,CAAC,OAAO;iBACb,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACZ,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAA0C,CAAC;gBAClE,OAAO,IAAI,KAAK,MAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACjE,CAAC,CAAC;iBACD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;iBACjC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,WAAW,CAAC,KAA+B;IAClD,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;SACjB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAuB,CAAC,IAAI,IAAK,CAAsC,CAAC,QAAQ,EAAE,IAAI,CAAC;SACnG,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,sFAAsF;AACtF,SAAS,gBAAgB,CAAC,UAAkB;IAC1C,MAAM,KAAK,GAAG,uBAAuB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC3D,OAAO,MAAM,CAAC,MAAM,CAClB,IAAI,KAAK,CAAC,mBAAmB,UAAU,4BAA4B,KAAK,EAAE,mBAAmB,IAAI,CAAC,IAAI,CAAC,EACvG,EAAE,IAAI,EAAE,6BAA6B,EAAE,UAAU,EAAE,GAAG,EAAE,CACzD,CAAC;AACJ,CAAC;AAED,iHAAiH;AACjH,KAAK,UAAU,aAAa,CAAC,KAAsB;IACjD,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,kBAAkB,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC;IAC/G,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAG,uBAAuB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC7D,MAAM,MAAM,GAAG;gBACb,QAAQ,EAAE,KAAK,CAAC,YAAY,EAAE,QAAQ,IAAI,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC;gBACtE,GAAG,UAAU;gBACb,GAAG,KAAK,CAAC,YAAY;gBACrB,sBAAsB,EAAE,KAAK,CAAC,YAAY,EAAE,sBAAsB,IAAI,UAAU,CAAC,sBAAsB,IAAI,UAAU;gBACrH,oBAAoB,EAAE,yBAAyB,CAC7C,UAAU,CAAC,oBAAoB,EAC/B,KAAK,CAAC,YAAY,EAAE,oBAAoB,EACxC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,CACxD;gBACD,oBAAoB,EAAE,KAAK,CAAC,YAAY,EAAE,oBAAoB,IAAI,UAAU,CAAC,oBAAoB;gBACjG,UAAU,EAAE,KAAK,CAAC,YAAY,EAAE,UAAU,IAAI,KAAK,CAAC,UAAU,IAAI,UAAU,CAAC,UAAU;aACpE,CAAC;YACtB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;YACjE,IAAI,MAAM,EAAE,CAAC;gBACX,UAAU,GAAG,MAAM,CAAC,SAAS,EAAE,UAAU,IAAI,UAAU,CAAC;gBACxD,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;YAC3B,CAAC;QACH,CAAC;QAAC,OAAO,SAAS,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,oEAAoE,EAAE,SAAS,CAAC,CAAC;QAChG,CAAC;IACH,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAClD,CAAC;AAID;;;;;GAKG;AACH,SAAS,iBAAiB,CAAC,IAAa;IACtC,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG;QACrH,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,sIAAsI;AACtI,SAAS,cAAc,CAAC,CAAc;IACpC,MAAM,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACzC,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;QACzC,IAAI,EAAE,qBAAqB;QAC3B,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3D,CAAC,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB,CAAC,UAAgC,EAAE,KAAY;IACxE,OAAO;QACL,EAAE,EAAE,iBAAiB,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,GAAG,EAAE;QAC9D,MAAM,EAAE,uBAAuB;QAC/B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;QACtC,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,OAAO,EAAE,EAAE;QACX,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAG,KAA2B,CAAC,IAAI,IAAI,gBAAgB,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE,GAAG,EAAE,UAAU,CAAC,GAAG,EAAE,EAAE;KACpL,CAAC;AACJ,CAAC;AAED,8FAA8F;AAC9F,SAAS,cAAc,CAAC,KAA8B;IACpD,IAAI,KAAK,CAAC,iBAAiB;QAAE,OAAO,IAAI,CAAC;IACzC,IAAI,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3E,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5E,OAAQ,KAAwC,CAAC,gBAAgB,KAAK,SAAS,CAAC;AAClF,CAAC;AAED,mFAAmF;AACnF,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAC1D,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,GAAG,KAAgC,CAAC;IACzF,OAAO,CAAC,YAAY,EAAE,gBAAgB,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC3G,CAAC,CAAE,KAAoB;QACvB,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,WAAW,CAAC,QAAgD,EAAE,KAAY,EAAE,UAAuB;IAC1G,MAAM,QAAQ,GAAG,aAAa,CAAC,UAAU,CAAC,IAAI,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IACjF,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC9B,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9C,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;IAC1B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,wFAAwF;AACxF,SAAS,WAAW,CAAC,UAAgC,EAAE,MAAe,EAAE,UAAkB;IACxF,MAAM,cAAc,GAAG,8BAA8B,CAAC;QACpD,UAAU,EAAE,UAAU,CAAC,UAAU;QACjC,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,UAAU,EAAE,oBAAoB,CAAC,MAAM,CAAC;QACxC,eAAe,EAAE,MAAM;QACvB,UAAU;KACX,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,cAAwG,CAAC;IACxH,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,kCAAkC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;AAClH,CAAC;AAED,4HAA4H;AAC5H,SAAS,kBAAkB,CAAC,KAA8B,EAAE,QAAgB;IAC1E,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,KAAK,GAAG,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC;IAC1C,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,MAAM;QAAE,OAAO,KAAK,CAAC;IAC5C,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC;IAC1E,IAAI,CAAC,UAAU;QAAE,OAAO,KAAK,CAAC;IAC9B,IAAI,gBAAgB,GAAY,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC;IAC9D,IAAI,OAAO,gBAAgB,KAAK,QAAQ,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAClD,CAAC;QAAC,MAAM,CAAC;YACP,iEAAiE;QACnE,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;IACzD,OAAO;QACL,GAAG,KAAK;QACR,OAAO,EAAE,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnI,gBAAgB;KAC0C,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,WAAqC,EAAE;IAC7E,KAAK,UAAU,OAAO,CAAC,KAAsB,EAAE,KAA4B;QACzE,MAAM,KAAK,GAAoB,EAAE,GAAG,QAAQ,EAAE,GAAG,WAAW,CAAC,KAA2C,CAAC,EAAqB,CAAC;QAC/H,IAAI,KAAmC,CAAC;QACxC,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC;YAC3C,MAAM,SAAS,GAAG,KAAK,CAAC,iBAAiB,IAAI,6BAA6B,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC/G,KAAK,GAAG,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;QACzJ,CAAC;QACD,IAAI,SAA4B,CAAC;QACjC,KAAK,IAAI,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC;YACpE,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YACrB,kFAAkF;YAClF,mFAAmF;YACnF,IAAI,iBAAqC,CAAC;YAC1C,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;gBAC1J,MAAM,QAAQ,GAAG,GAAG,KAAK,CAAC;oBACxB,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;oBACtG,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBACvD,iBAAiB,GAAG,QAAQ,CAAC,UAAU,CAAC;gBACxC,IAAI,uBAAuB,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;oBAAE,MAAM,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACrG,MAAM,eAAe,GAAG,MAAM,qBAAqB,CAAC,QAAQ,CAAC,CAAC;gBAC9D,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACvF,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC/F,MAAM,UAAU,GAAyB;oBACvC,UAAU,EAAE,QAAQ,CAAC,UAAU;oBAC/B,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,GAAG;oBACH,gBAAgB,EAAE,IAAI,EAAE,iBAAiB,IAAI,IAAI;oBACjD,YAAY,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,IAAI,EAAE,CAAC,CAAC;oBAC7C,UAAU,EAAE,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC;oBAC9C,eAAe;oBACf,eAAe,EAAE,SAAS;wBACxB,CAAC,CAAE,WAAW,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,CAAqC;wBACxI,CAAC,CAAC,EAAE;oBACN,KAAK;iBACN,CAAC;gBACF,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;oBACZ,KAAK,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,IAAI,IAAI,KAAK,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC;gBAC/J,CAAC;gBACD,OAAO,UAAU,CAAC;YACpB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,SAAS,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;gBAChE,0EAA0E;gBAC1E,uEAAuE;gBACvE,+CAA+C;gBAC/C,IAAI,iBAAiB,IAAI,SAAS,CAAC,IAAI,KAAK,6BAA6B,EAAE,CAAC;oBAC1E,uBAAuB,CAAC,aAAa,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC;gBACtE,CAAC;gBACD,KAAK,CAAC,YAAY,EAAE,CAAC,EAAE,UAAU,EAAE,iBAAiB,IAAI,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;gBAC7F,+FAA+F;gBAC/F,+CAA+C;gBAC/C,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC;oBAAE,MAAM,SAAS,CAAC;YACjE,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS,MAAM,CACb,UAAgC,EAChC,QAAuB,EACvB,OAA+B,EAC/B,cAAwB,EACxB,UAAU,GAAG,UAAU;QAEvB,IAAI,MAA6C,CAAC;QAClD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAoB,CAAC,cAAc,EAAE,EAAE;YAChE,MAAM,GAAG,cAAc,CAAC;QAC1B,CAAC,CAAC,CAAC;QACH,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,MAAM,GAAG,CAAC,CAAoB,EAAQ,EAAE;YAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM,CAAC,CAAC,CAAC,CAAC;YACZ,CAAC;QACH,CAAC,CAAC;QACF,MAAM,MAAM,GAAG,CACb,KAAY,EACZ,KAA6B,EAC7B,SAAS,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,sBAAsB,CAAC,KAAK,CAAC,EACjD,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAE/F,MAAM,UAAU,GAAG,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACpG,MAAM,WAAW,GAA2B;YAC1C,GAAG,OAAO;YACV,GAAG,UAAU,CAAC,eAAe;YAC7B,GAAG,CAAC,UAAU;gBACZ,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,CAAC,cAA0D,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE;gBACpI,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,EAAE,IAAI;SACb,CAAC;QAEF,KAAK,SAAS,CAAC,CAAC,GAAG;YACjB,IAAI,SAAS,GAAG,KAAK,CAAC;YACtB,IAAI,SAAS,GAAG,KAAK,CAAC;YACtB,MAAM,MAAM,GAA8B,EAAE,CAAC;YAC7C,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,UAAU,CAAC,eAAe,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;gBAC/E,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,aAAa,UAAU,CAAC,UAAU,qBAAqB,CAAC,EAAE,EAAE,IAAI,EAAE,6BAA6B,EAAE,CAAC,CAAC;oBACzI,uBAAuB,CAAC,aAAa,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;oBACpE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;oBACjC,OAAO;gBACT,CAAC;gBACD,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,QAAQ,CAAC,wBAAwB,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC;oBACrG,MAAM,KAAK,GAAG,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oBACxF,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;wBAChB,mEAAmE;wBACnE,uEAAuE;wBACvE,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC;wBAC7C,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;wBAC1C,IAAI,CAAC,OAAO;4BAAE,uBAAuB,CAAC,aAAa,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;wBAClF,IAAI,CAAC,SAAS,EAAE,CAAC;4BACf,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;4BACtD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;4BACrE,OAAO;wBACT,CAAC;wBACD,mEAAmE;wBACnE,iEAAiE;wBACjE,2CAA2C;wBAC3C,SAAS,GAAG,IAAI,CAAC;wBACjB,MAAM,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;wBAC9B,MAAM,KAAK,CAAC;wBACZ,OAAO;oBACT,CAAC;oBACD,IAAI,CAAC,SAAS,EAAE,CAAC;wBACf,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBACnB,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;4BAC1B,SAAS,GAAG,IAAI,CAAC;4BACjB,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;wBAC1B,CAAC;wBACD,SAAS;oBACX,CAAC;oBACD,MAAM,KAAK,CAAC;gBACd,CAAC;gBACD,6EAA6E;gBAC7E,sDAAsD;gBACtD,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,SAAS,GAAG,IAAI,CAAC;oBACjB,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAC1B,CAAC;gBACD,SAAS,GAAG,IAAI,CAAC;gBACjB,uBAAuB,CAAC,aAAa,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;gBAC7D,MAAM,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;YAChC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;gBAClE,uBAAuB,CAAC,aAAa,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBACpE,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;oBAClD,OAAO;gBACT,CAAC;gBACD,SAAS,GAAG,IAAI,CAAC;gBACjB,MAAM,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;gBAC9B,MAAM,kBAAkB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC9C,CAAC;oBAAS,CAAC;gBACT,yEAAyE;gBACzE,mEAAmE;gBACnE,IAAI,CAAC,SAAS;oBAAE,MAAM,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QAED,OAAO,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,CAAC;IAC1D,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"completionGateway.js","sourceRoot":"","sources":["../../../src/api/runtime/completionGateway.ts"],"names":[],"mappings":"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"}
@@ -6,9 +6,10 @@
6
6
  *
7
7
  * The rules are streamText's: the turn's text is the latest step that produced
8
8
  * text; usage adds each step's STEP_FINISHED usage once (USAGE_UPDATE carries a
9
- * request's running total) plus the billed usage of attempts that failed before
10
- * any output; a run that called tools and produced no text ends as
11
- * `'tool-calls'`; an ERROR chunk ends it as `'error'` with the GMI's code.
9
+ * request's running total) plus the billed usage of attempts that failed, before
10
+ * any output or after it; a run ends with its last step's own finish reason, or
11
+ * as `'tool-calls'` when the step limit ran out with calls outstanding and no
12
+ * text; an ERROR chunk ends it as `'error'` with the GMI's code.
12
13
  */
13
14
  import { GMIError } from '../../core/utils/errors.js';
14
15
  import { type GMIOutputChunk, type StepFinishedChunkPayload, type ToolResultChunkPayload } from '../../cognition/substrate/IGMI.js';
@@ -21,7 +22,7 @@ export interface GmiTurnError {
21
22
  message: string;
22
23
  details?: unknown;
23
24
  }
24
- /** An attempt that failed before any output and was billed (reported on a USAGE_UPDATE with `metadata.attemptFailed`). */
25
+ /** An attempt that failed, before any output or after it, and was billed (reported on a USAGE_UPDATE with `metadata.attemptFailed`). */
25
26
  export interface GmiFailedAttempt {
26
27
  providerId?: string;
27
28
  modelId?: string;
@@ -29,11 +30,22 @@ export interface GmiFailedAttempt {
29
30
  }
30
31
  /** The message a failed tool result carries. */
31
32
  export declare function toolErrorMessage(result: ToolResultChunkPayload): string;
33
+ /** Options for a {@link GmiTurnFolder}. */
34
+ export interface GmiTurnFolderOptions {
35
+ /**
36
+ * Whether the turn opted into cache diagnostics (`cacheDiagnostics` on the
37
+ * call). The provider message id is reported only then, as generateText and
38
+ * streamText report it: it is the thread key for the next request's diagnostics.
39
+ */
40
+ cacheDiagnostics?: boolean;
41
+ }
32
42
  /**
33
43
  * Accumulates one turn's chunks. `push` every chunk in order; read the result
34
44
  * once the turn has ended (or at any point for a partial view).
35
45
  */
36
46
  export declare class GmiTurnFolder {
47
+ private readonly options;
48
+ constructor(options?: GmiTurnFolderOptions);
37
49
  /** The STEP_FINISHED payloads, in order. */
38
50
  readonly steps: StepFinishedChunkPayload[];
39
51
  /** Every requested call in order, with its result once the TOOL_RESULT arrived. */
@@ -41,9 +53,32 @@ export declare class GmiTurnFolder {
41
53
  private readonly overrides;
42
54
  private readonly failed;
43
55
  private failure;
56
+ /** The provider and model the turn's first model call was routed to, and who waits for them. */
57
+ private firstRoute;
58
+ private readonly routeListeners;
59
+ /** How many calls had been requested when the latest step finished: the calls after it belong to the next step. */
60
+ private callsBeforeLastStep;
61
+ /** Whether the latest finished step requested tools (the GMI then runs them and goes on, unless the step limit ran out). */
62
+ private lastStepCalledTools;
44
63
  push(chunk: GMIOutputChunk): void;
45
64
  /** Marks the turn failed by a thrown error (the turn's generator itself threw). An ERROR chunk already seen wins. */
46
65
  fail(error: unknown): void;
66
+ /**
67
+ * Records a model call's route (its provider and model, once the hop is
68
+ * resolved). The first one is the turn's route, as streamText reports it:
69
+ * listeners hear it at once, before any chunk of the call arrives.
70
+ */
71
+ route(providerId: string, modelId: string): void;
72
+ /** The turn's first route, once it is known. */
73
+ routed(): {
74
+ providerId: string;
75
+ modelId: string;
76
+ } | undefined;
77
+ /** Calls `listener` with the turn's first route as soon as it is known (at once when it already is). */
78
+ onRoute(listener: (route: {
79
+ providerId: string;
80
+ modelId: string;
81
+ }) => void): void;
47
82
  /** Replaces a step's text (`onAfterGeneration`), in the result and in what the session stores. */
48
83
  overrideStepText(stepIndex: number, text: string): void;
49
84
  /** A step's text as the result reports it: a schema answer as its JSON string, else the hook's replacement, else the step's own text. */
@@ -52,14 +87,27 @@ export declare class GmiTurnFolder {
52
87
  text(): string;
53
88
  /** Each step's usage once, plus every billed failed attempt. */
54
89
  usage(): TokenUsage;
55
- /** The billed attempts that failed before any output, in order. */
90
+ /** The billed attempts that failed, in order. */
56
91
  failedAttempts(): GmiFailedAttempt[];
57
92
  /** Every call the model requested, with its result or error. */
58
93
  toolCalls(): ToolCallRecord[];
94
+ /** The last step's provider message id when the turn opted into cache diagnostics (null when the provider sent none); null otherwise. */
95
+ providerMessageId(): string | null;
59
96
  /** The latest schema answer a step carried, if any. */
60
97
  structuredOutput(): unknown;
61
98
  error(): GmiTurnError | undefined;
62
- finishReason(): GenerateTextResult['finishReason'];
99
+ /**
100
+ * How the run ended, by streamText's rules: the last step's own reason when
101
+ * that step requested no tools; when it did, the step limit ran out, and a run
102
+ * with calls outstanding and no text ended as 'tool-calls'.
103
+ *
104
+ * @param options.ignoreFailure - Report the finished steps even when the turn
105
+ * failed: for a stream its consumer abandoned, whose turn ends with the
106
+ * abort that the abandonment caused.
107
+ */
108
+ finishReason(options?: {
109
+ ignoreFailure?: boolean;
110
+ }): GenerateTextResult['finishReason'];
63
111
  /** The error the turn ended with, as a GMIError keeping the GMI's code. */
64
112
  toError(): GMIError | undefined;
65
113
  /**
@@ -79,11 +127,20 @@ export interface GmiStreamOptions {
79
127
  * folds the chunks itself.
80
128
  */
81
129
  folder?: GmiTurnFolder;
130
+ /**
131
+ * Stops the turn. Called once when the consumer stops reading `textStream` or
132
+ * `fullStream` before the turn ended (a `break`, or `return()` on the iterator).
133
+ */
134
+ stop?: () => void;
82
135
  }
83
136
  /**
84
137
  * A `StreamTextResult` over a GMI turn. The turn is drained eagerly, so every
85
138
  * promise settles whether the caller iterates, stops iterating early, or never
86
139
  * iterates; `textStream` and `fullStream` replay what arrived and wait for more.
140
+ * A caller that stops iterating either one before the turn ended stops the turn
141
+ * through `options.stop`; the promises then settle once the turn has ended, with
142
+ * the text delivered so far and, as streamText reports an abandoned stream, the
143
+ * finish reason of the latest finished step.
87
144
  *
88
145
  * `textStream` yields every TEXT_DELTA as it arrives. `fullStream` maps
89
146
  * TEXT_DELTA to `text`, TOOL_CALL_REQUEST to `tool-call`, TOOL_RESULT to
@@ -1 +1 @@
1
- {"version":3,"file":"gmiResults.d.ts","sourceRoot":"","sources":["../../../src/api/runtime/gmiResults.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,QAAQ,EAAgB,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,wBAAwB,EAE7B,KAAK,sBAAsB,EAC5B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAiB,KAAK,kBAAkB,EAAE,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAClH,OAAO,EAAgD,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACvG,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAExE,2DAA2D;AAC3D,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,0HAA0H;AAC1H,MAAM,WAAW,gBAAgB;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,UAAU,CAAC;CACnB;AAiBD,gDAAgD;AAChD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,GAAG,MAAM,CAGvE;AAED;;;GAGG;AACH,qBAAa,aAAa;IACxB,4CAA4C;IAC5C,QAAQ,CAAC,KAAK,EAAE,wBAAwB,EAAE,CAAM;IAChD,mFAAmF;IACnF,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyE;IAC/F,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA6B;IACvD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IACjD,OAAO,CAAC,OAAO,CAA2B;IAE1C,IAAI,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IA0CjC,qHAAqH;IACrH,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAQ1B,kGAAkG;IAClG,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAIvD,yIAAyI;IACzI,QAAQ,CAAC,IAAI,EAAE,wBAAwB,GAAG,MAAM;IAKhD,6DAA6D;IAC7D,IAAI,IAAI,MAAM;IAQd,gEAAgE;IAChE,KAAK,IAAI,UAAU;IAOnB,mEAAmE;IACnE,cAAc,IAAI,gBAAgB,EAAE;IAIpC,gEAAgE;IAChE,SAAS,IAAI,cAAc,EAAE;IAS7B,uDAAuD;IACvD,gBAAgB,IAAI,OAAO;IAO3B,KAAK,IAAI,YAAY,GAAG,SAAS;IAIjC,YAAY,IAAI,kBAAkB,CAAC,cAAc,CAAC;IAQlD,2EAA2E;IAC3E,OAAO,IAAI,QAAQ,GAAG,SAAS;IAK/B;;;;;;OAMG;IACH,oBAAoB,CAAC,eAAe,CAAC,EAAE,wBAAwB,EAAE,GAAG,kBAAkB;CAgBvF;AAeD,6CAA6C;AAC7C,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,aAAa,CAAC,cAAc,CAAC,EAAE,OAAO,GAAE,gBAAqB,GAAG,gBAAgB,CAiHvH"}
1
+ {"version":3,"file":"gmiResults.d.ts","sourceRoot":"","sources":["../../../src/api/runtime/gmiResults.ts"],"names":[],"mappings":"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"}
@@ -6,9 +6,10 @@
6
6
  *
7
7
  * The rules are streamText's: the turn's text is the latest step that produced
8
8
  * text; usage adds each step's STEP_FINISHED usage once (USAGE_UPDATE carries a
9
- * request's running total) plus the billed usage of attempts that failed before
10
- * any output; a run that called tools and produced no text ends as
11
- * `'tool-calls'`; an ERROR chunk ends it as `'error'` with the GMI's code.
9
+ * request's running total) plus the billed usage of attempts that failed, before
10
+ * any output or after it; a run ends with its last step's own finish reason, or
11
+ * as `'tool-calls'` when the step limit ran out with calls outstanding and no
12
+ * text; an ERROR chunk ends it as `'error'` with the GMI's code.
12
13
  */
13
14
  import { GMIError, GMIErrorCode } from '../../core/utils/errors.js';
14
15
  import { GMIOutputChunkType, } from '../../cognition/substrate/IGMI.js';
@@ -41,18 +42,26 @@ export function toolErrorMessage(result) {
41
42
  * once the turn has ended (or at any point for a partial view).
42
43
  */
43
44
  export class GmiTurnFolder {
44
- constructor() {
45
+ constructor(options = {}) {
46
+ this.options = options;
45
47
  /** The STEP_FINISHED payloads, in order. */
46
48
  this.steps = [];
47
49
  /** Every requested call in order, with its result once the TOOL_RESULT arrived. */
48
50
  this.calls = [];
49
51
  this.overrides = new Map();
50
52
  this.failed = [];
53
+ this.routeListeners = [];
54
+ /** How many calls had been requested when the latest step finished: the calls after it belong to the next step. */
55
+ this.callsBeforeLastStep = 0;
56
+ /** Whether the latest finished step requested tools (the GMI then runs them and goes on, unless the step limit ran out). */
57
+ this.lastStepCalledTools = false;
51
58
  }
52
59
  push(chunk) {
53
60
  switch (chunk.type) {
54
61
  case GMIOutputChunkType.STEP_FINISHED:
55
62
  this.steps.push(chunk.content);
63
+ this.lastStepCalledTools = this.calls.length > this.callsBeforeLastStep;
64
+ this.callsBeforeLastStep = this.calls.length;
56
65
  break;
57
66
  case GMIOutputChunkType.TOOL_CALL_REQUEST:
58
67
  for (const call of chunk.content ?? [])
@@ -99,6 +108,29 @@ export class GmiTurnFolder {
99
108
  details: error instanceof GMIError ? error.details : undefined,
100
109
  });
101
110
  }
111
+ /**
112
+ * Records a model call's route (its provider and model, once the hop is
113
+ * resolved). The first one is the turn's route, as streamText reports it:
114
+ * listeners hear it at once, before any chunk of the call arrives.
115
+ */
116
+ route(providerId, modelId) {
117
+ if (this.firstRoute)
118
+ return;
119
+ this.firstRoute = { providerId, modelId };
120
+ for (const listener of this.routeListeners.splice(0))
121
+ listener(this.firstRoute);
122
+ }
123
+ /** The turn's first route, once it is known. */
124
+ routed() {
125
+ return this.firstRoute;
126
+ }
127
+ /** Calls `listener` with the turn's first route as soon as it is known (at once when it already is). */
128
+ onRoute(listener) {
129
+ if (this.firstRoute)
130
+ listener(this.firstRoute);
131
+ else
132
+ this.routeListeners.push(listener);
133
+ }
102
134
  /** Replaces a step's text (`onAfterGeneration`), in the result and in what the session stores. */
103
135
  overrideStepText(stepIndex, text) {
104
136
  this.overrides.set(stepIndex, text);
@@ -127,7 +159,7 @@ export class GmiTurnFolder {
127
159
  addTokenUsage(total, attempt.usage);
128
160
  return total;
129
161
  }
130
- /** The billed attempts that failed before any output, in order. */
162
+ /** The billed attempts that failed, in order. */
131
163
  failedAttempts() {
132
164
  return this.failed.map((a) => ({ ...a, usage: { ...a.usage } }));
133
165
  }
@@ -142,6 +174,10 @@ export class GmiTurnFolder {
142
174
  return record;
143
175
  });
144
176
  }
177
+ /** The last step's provider message id when the turn opted into cache diagnostics (null when the provider sent none); null otherwise. */
178
+ providerMessageId() {
179
+ return this.options.cacheDiagnostics ? this.steps.at(-1)?.providerMessageId ?? null : null;
180
+ }
145
181
  /** The latest schema answer a step carried, if any. */
146
182
  structuredOutput() {
147
183
  for (let i = this.steps.length - 1; i >= 0; i--) {
@@ -153,14 +189,25 @@ export class GmiTurnFolder {
153
189
  error() {
154
190
  return this.failure;
155
191
  }
156
- finishReason() {
157
- if (this.failure)
192
+ /**
193
+ * How the run ended, by streamText's rules: the last step's own reason when
194
+ * that step requested no tools; when it did, the step limit ran out, and a run
195
+ * with calls outstanding and no text ended as 'tool-calls'.
196
+ *
197
+ * @param options.ignoreFailure - Report the finished steps even when the turn
198
+ * failed: for a stream its consumer abandoned, whose turn ends with the
199
+ * abort that the abandonment caused.
200
+ */
201
+ finishReason(options = {}) {
202
+ if (this.failure && !options.ignoreFailure)
158
203
  return 'error';
159
204
  const last = this.steps.at(-1);
160
205
  // The schema answer is the turn's reply, whatever stop reason carried it.
161
206
  if (last?.structuredOutput !== undefined)
162
207
  return 'stop';
163
- return this.calls.length > 0 && !this.text() ? 'tool-calls' : normalizeStreamFinishReason(last?.finishReason ?? null);
208
+ if (this.lastStepCalledTools && this.calls.length > 0 && !this.text())
209
+ return 'tool-calls';
210
+ return normalizeStreamFinishReason(last?.finishReason ?? null);
164
211
  }
165
212
  /** The error the turn ended with, as a GMIError keeping the GMI's code. */
166
213
  toError() {
@@ -182,7 +229,7 @@ export class GmiTurnFolder {
182
229
  model: last?.modelId ?? '',
183
230
  ...(last?.responseModel ? { responseModel: last.responseModel } : {}),
184
231
  ...(last?.serviceTier ? { serviceTier: last.serviceTier } : {}),
185
- ...(last?.providerMessageId ? { providerMessageId: last.providerMessageId } : {}),
232
+ ...(this.options.cacheDiagnostics ? { providerMessageId: this.providerMessageId() } : {}),
186
233
  ...(last?.cacheDiagnostics !== undefined ? { cacheDiagnostics: last.cacheDiagnostics } : {}),
187
234
  text: this.text(),
188
235
  usage: this.usage(),
@@ -203,6 +250,10 @@ function deferred() {
203
250
  * A `StreamTextResult` over a GMI turn. The turn is drained eagerly, so every
204
251
  * promise settles whether the caller iterates, stops iterating early, or never
205
252
  * iterates; `textStream` and `fullStream` replay what arrived and wait for more.
253
+ * A caller that stops iterating either one before the turn ended stops the turn
254
+ * through `options.stop`; the promises then settle once the turn has ended, with
255
+ * the text delivered so far and, as streamText reports an abandoned stream, the
256
+ * finish reason of the latest finished step.
206
257
  *
207
258
  * `textStream` yields every TEXT_DELTA as it arrives. `fullStream` maps
208
259
  * TEXT_DELTA to `text`, TOOL_CALL_REQUEST to `tool-call`, TOOL_RESULT to
@@ -219,6 +270,18 @@ export function streamFromGmiTurn(turn, options = {}) {
219
270
  const texts = [];
220
271
  const parts = [];
221
272
  let done = false;
273
+ // A consumer that stops reading stops the turn. The abort that follows ends the
274
+ // turn with an error the consumer did not get; an error that arrived before
275
+ // the consumer stopped is the turn's own.
276
+ let abandoned = false;
277
+ let failedBeforeAbandoned = false;
278
+ const abandon = () => {
279
+ if (done || abandoned)
280
+ return;
281
+ abandoned = true;
282
+ failedBeforeAbandoned = folder.error() !== undefined;
283
+ options.stop?.();
284
+ };
222
285
  let waiters = [];
223
286
  const wake = () => {
224
287
  const pending = waiters;
@@ -237,6 +300,11 @@ export function streamFromGmiTurn(turn, options = {}) {
237
300
  cacheDiagnostics: deferred(),
238
301
  providerMessageId: deferred(),
239
302
  };
303
+ // Provider and model resolve once the turn's model call is routed, as streamText's do.
304
+ folder.onRoute(({ providerId, modelId }) => {
305
+ p.provider.resolve(providerId);
306
+ p.model.resolve(modelId);
307
+ });
240
308
  void (async () => {
241
309
  // The text the step in progress has delivered; reset at each step boundary.
242
310
  let stepDelivered = '';
@@ -282,13 +350,14 @@ export function streamFromGmiTurn(turn, options = {}) {
282
350
  p.text.resolve(folder.error() && stepDelivered ? stepDelivered : folder.text());
283
351
  p.usage.resolve(folder.usage());
284
352
  p.toolCalls.resolve(folder.toolCalls());
285
- p.provider.resolve(last?.providerId ?? '');
286
- p.model.resolve(last?.modelId ?? '');
287
- p.finishReason.resolve(folder.finishReason());
353
+ // Already resolved when the turn was routed; '' when it failed before routing.
354
+ p.provider.resolve(folder.routed()?.providerId ?? last?.providerId ?? '');
355
+ p.model.resolve(folder.routed()?.modelId ?? last?.modelId ?? '');
356
+ p.finishReason.resolve(folder.finishReason({ ignoreFailure: abandoned && !failedBeforeAbandoned }));
288
357
  p.responseModel.resolve(last?.responseModel);
289
358
  p.serviceTier.resolve(last?.serviceTier);
290
359
  p.cacheDiagnostics.resolve(last?.cacheDiagnostics ?? null);
291
- p.providerMessageId.resolve(last?.providerMessageId ?? null);
360
+ p.providerMessageId.resolve(folder.providerMessageId());
292
361
  done = true;
293
362
  wake();
294
363
  }
@@ -309,6 +378,7 @@ export function streamFromGmiTurn(turn, options = {}) {
309
378
  },
310
379
  async return() {
311
380
  i = Number.MAX_SAFE_INTEGER;
381
+ abandon();
312
382
  return { value: undefined, done: true };
313
383
  },
314
384
  };