@framers/agentos 0.15.52 → 0.15.54
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/dist/api/runtime/AgentOSOrchestrator.d.ts.map +1 -1
- package/dist/api/runtime/AgentOSOrchestrator.js +8 -1
- package/dist/api/runtime/AgentOSOrchestrator.js.map +1 -1
- package/dist/api/runtime/ExternalToolResultHandler.d.ts +92 -6
- package/dist/api/runtime/ExternalToolResultHandler.d.ts.map +1 -1
- package/dist/api/runtime/ExternalToolResultHandler.js +237 -28
- package/dist/api/runtime/ExternalToolResultHandler.js.map +1 -1
- package/dist/api/runtime/GMIChunkTransformer.d.ts +2 -0
- package/dist/api/runtime/GMIChunkTransformer.d.ts.map +1 -1
- package/dist/api/runtime/GMIChunkTransformer.js +6 -2
- package/dist/api/runtime/GMIChunkTransformer.js.map +1 -1
- package/dist/api/runtime/TurnExecutionPipeline.d.ts +6 -0
- package/dist/api/runtime/TurnExecutionPipeline.d.ts.map +1 -1
- package/dist/api/runtime/TurnExecutionPipeline.js.map +1 -1
- package/dist/cognition/emergent/PersonalityMutationStore.d.ts +10 -1
- package/dist/cognition/emergent/PersonalityMutationStore.d.ts.map +1 -1
- package/dist/cognition/emergent/PersonalityMutationStore.js +46 -14
- package/dist/cognition/emergent/PersonalityMutationStore.js.map +1 -1
- package/dist/cognition/library/LibraryIndex.d.ts +12 -8
- package/dist/cognition/library/LibraryIndex.d.ts.map +1 -1
- package/dist/cognition/library/LibraryIndex.js +12 -4
- package/dist/cognition/library/LibraryIndex.js.map +1 -1
- package/dist/cognition/memory/io/facade/types.d.ts +43 -24
- package/dist/cognition/memory/io/facade/types.d.ts.map +1 -1
- package/dist/cognition/substrate/GMI.d.ts +29 -0
- package/dist/cognition/substrate/GMI.d.ts.map +1 -1
- package/dist/cognition/substrate/GMI.js +48 -3
- package/dist/cognition/substrate/GMI.js.map +1 -1
- package/dist/cognition/substrate/GMIManager.d.ts +11 -1
- package/dist/cognition/substrate/GMIManager.d.ts.map +1 -1
- package/dist/cognition/substrate/GMIManager.js +30 -2
- package/dist/cognition/substrate/GMIManager.js.map +1 -1
- package/dist/cognition/substrate/IGMI.d.ts +34 -0
- package/dist/cognition/substrate/IGMI.d.ts.map +1 -1
- package/dist/core/conversation/conversationTables.js +3 -2
- package/dist/core/conversation/conversationTables.js.map +1 -1
- package/dist/core/storage/sqlStorageSchema.js +4 -3
- package/dist/core/storage/sqlStorageSchema.js.map +1 -1
- package/dist/orchestration/checkpoint/ICheckpointStore.d.ts +7 -0
- package/dist/orchestration/checkpoint/ICheckpointStore.d.ts.map +1 -1
- package/dist/orchestration/runtime/GraphRuntime.d.ts +25 -2
- package/dist/orchestration/runtime/GraphRuntime.d.ts.map +1 -1
- package/dist/orchestration/runtime/GraphRuntime.js +77 -14
- package/dist/orchestration/runtime/GraphRuntime.js.map +1 -1
- package/package.json +1 -1
|
@@ -12,7 +12,9 @@
|
|
|
12
12
|
*/
|
|
13
13
|
import { AGENTOS_PENDING_EXTERNAL_TOOL_REQUEST_METADATA_KEY } from '../types/AgentOSExternalToolRequest.js';
|
|
14
14
|
import { AgentOSResponseChunkType, } from '../types/AgentOSResponse.js';
|
|
15
|
-
import { MessageRole } from '../../core/conversation/ConversationMessage.js';
|
|
15
|
+
import { MessageRole, createConversationMessage } from '../../core/conversation/ConversationMessage.js';
|
|
16
|
+
import { GMIPrimeState } from '../../cognition/substrate/IGMI.js';
|
|
17
|
+
import { turnContentText } from '../../cognition/substrate/turnContent.js';
|
|
16
18
|
import { refusedToolCallResult } from '../../cognition/substrate/toolCallGate.js';
|
|
17
19
|
import { gmiToolCallGateFor } from './toolCallGate.js';
|
|
18
20
|
import { externalToolPauseCalls } from './externalToolPause.js';
|
|
@@ -21,6 +23,43 @@ import { GMIError, GMIErrorCode } from '../../core/utils/errors.js';
|
|
|
21
23
|
import { snapshotPersonaDetails } from '../../orchestration/turn-planner/helpers.js';
|
|
22
24
|
import { withAgentOSSpan, recordAgentOSToolResultMetrics, } from '../../safety/evaluation/observability/otel.js';
|
|
23
25
|
import { ORGANIZATION_ID_METADATA_KEY } from '../../core/conversation/LongTermMemoryPolicy.js';
|
|
26
|
+
/**
|
|
27
|
+
* Marks a GMI whose own history holds turns of more than one conversation since this runtime last set it.
|
|
28
|
+
*/
|
|
29
|
+
const SEVERAL_CONVERSATIONS = Symbol('several conversations');
|
|
30
|
+
/**
|
|
31
|
+
* `history` ending with an assistant message that names each call of the pause the history does not name. A GMI
|
|
32
|
+
* whose turn a host's own tool layer stopped never recorded the calls the host runs (the shipped GMI runs every call
|
|
33
|
+
* of its tool rounds itself), and a provider takes a tool result only after the assistant message that made its call.
|
|
34
|
+
*/
|
|
35
|
+
function withPauseCalls(history, pauseCalls) {
|
|
36
|
+
const named = new Set(history.flatMap((message) => message.role === MessageRole.ASSISTANT && Array.isArray(message.tool_calls)
|
|
37
|
+
? message.tool_calls.map((call) => call.id)
|
|
38
|
+
: []));
|
|
39
|
+
const missing = pauseCalls.filter((call) => !named.has(call.id));
|
|
40
|
+
return missing.length === 0
|
|
41
|
+
? history
|
|
42
|
+
: [...history, createConversationMessage(MessageRole.ASSISTANT, null, { tool_calls: missing })];
|
|
43
|
+
}
|
|
44
|
+
/** Whether `gmi` was shut down or is shutting down, so it continues nothing. */
|
|
45
|
+
function isShutDown(gmi) {
|
|
46
|
+
const state = typeof gmi.getCurrentState === 'function' ? gmi.getCurrentState() : undefined;
|
|
47
|
+
return state === GMIPrimeState.SHUTTING_DOWN || state === GMIPrimeState.SHUTDOWN;
|
|
48
|
+
}
|
|
49
|
+
/** The history a conversation holds, as a turn's prompt reads it: every message but errors and thoughts. */
|
|
50
|
+
function storedHistoryOf(conversationContext) {
|
|
51
|
+
return conversationContext.getHistory(undefined, [MessageRole.ERROR, MessageRole.THOUGHT]);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Whether `stored`, a message of the conversation, records the turn input `held` as a GMI's history holds it: the same
|
|
55
|
+
* role and the same text, since the turn pipeline stores a multimodal input as its text.
|
|
56
|
+
*/
|
|
57
|
+
function recordsTurnInput(stored, held) {
|
|
58
|
+
return (stored !== undefined &&
|
|
59
|
+
held !== undefined &&
|
|
60
|
+
stored.role === held.role &&
|
|
61
|
+
turnContentText(stored.content) === turnContentText(held.content));
|
|
62
|
+
}
|
|
24
63
|
/** Builds metadata payload attached to TOOL_CALL_REQUEST chunks. */
|
|
25
64
|
function buildToolCallChunkMetadata(streamContext, extra) {
|
|
26
65
|
const metadata = {
|
|
@@ -184,6 +223,13 @@ export class ExternalToolResultHandler {
|
|
|
184
223
|
* From the verdict until the drop ends, the pause such a stream saves is neither offered, resumed nor continued.
|
|
185
224
|
*/
|
|
186
225
|
this.blockedStreams = new Map();
|
|
226
|
+
/**
|
|
227
|
+
* The conversation each GMI's own history holds, as far as this runtime ran turns on the GMI: the one conversation
|
|
228
|
+
* whose turns it recorded since this runtime last set its history, or SEVERAL_CONVERSATIONS. A session's GMI serves
|
|
229
|
+
* every conversation of the session and records each turn in its own history, so a continuation reads that history
|
|
230
|
+
* only while it holds the continuation's conversation alone.
|
|
231
|
+
*/
|
|
232
|
+
this.gmiHistoryOwners = new WeakMap();
|
|
187
233
|
}
|
|
188
234
|
/**
|
|
189
235
|
* Replaces the processGMIOutput callback after construction.
|
|
@@ -195,6 +241,22 @@ export class ExternalToolResultHandler {
|
|
|
195
241
|
setProcessGMIOutputCallback(cb) {
|
|
196
242
|
this.processGMIOutputCallback = cb;
|
|
197
243
|
}
|
|
244
|
+
/**
|
|
245
|
+
* Notes that a turn of `conversationId` runs on `gmi`, which records the turn in its own history. The orchestrator
|
|
246
|
+
* calls it before each user turn reaches the GMI, and a continuation once the GMI it runs on holds the paused turn.
|
|
247
|
+
*
|
|
248
|
+
* @param gmi - The GMI the turn runs on.
|
|
249
|
+
* @param conversationId - The turn's conversation.
|
|
250
|
+
*/
|
|
251
|
+
noteTurnOnGmi(gmi, conversationId) {
|
|
252
|
+
const owner = this.gmiHistoryOwners.get(gmi);
|
|
253
|
+
if (owner === undefined) {
|
|
254
|
+
this.gmiHistoryOwners.set(gmi, conversationId);
|
|
255
|
+
}
|
|
256
|
+
else if (owner !== conversationId) {
|
|
257
|
+
this.gmiHistoryOwners.set(gmi, SEVERAL_CONVERSATIONS);
|
|
258
|
+
}
|
|
259
|
+
}
|
|
198
260
|
// ---------------------------------------------------------------------------
|
|
199
261
|
// orchestrateToolResult (single)
|
|
200
262
|
// ---------------------------------------------------------------------------
|
|
@@ -223,7 +285,9 @@ export class ExternalToolResultHandler {
|
|
|
223
285
|
* further tool-call chaining. The results continue the stream only while the
|
|
224
286
|
* conversation holds the pause the stream saved and each result answers one
|
|
225
287
|
* of its calls; the pause is taken once, so a result delivered twice, or after
|
|
226
|
-
* the pause was resumed, ended by a newer turn or replaced, is refused.
|
|
288
|
+
* the pause was resumed, ended by a newer turn or replaced, is refused. The
|
|
289
|
+
* GMI the results reach holds the paused turn, whatever the session's GMI ran
|
|
290
|
+
* since the pause ({@link gmiForContinuation}).
|
|
227
291
|
*
|
|
228
292
|
* @param agentOSStreamId - The orchestrator stream ID.
|
|
229
293
|
* @param toolResults - Array of tool results to process.
|
|
@@ -299,22 +363,22 @@ export class ExternalToolResultHandler {
|
|
|
299
363
|
}
|
|
300
364
|
/**
|
|
301
365
|
* Feeds `toolResults` to the stream's GMI and ends the continuation by the turn's rule: a pause for the calls of a
|
|
302
|
-
* non-final output, one `FINAL_RESPONSE` otherwise. The
|
|
366
|
+
* non-final output, one `FINAL_RESPONSE` otherwise. The GMI holds the paused turn when the results reach it
|
|
367
|
+
* ({@link gmiForContinuation}). The caller has taken `takenPause`, the pause the results answer:
|
|
303
368
|
* the store keeps that it was taken before the results reach the GMI, and a call of it the results leave out is
|
|
304
369
|
* answered as not run, in the conversation and, for a GMI that takes results together (`handleToolResults()`), in the
|
|
305
370
|
* results the GMI reads, so both histories answer every call of the pause before the GMI writes again. A
|
|
306
|
-
* continuation that fails before the conversation records the results (the store refuses that save,
|
|
307
|
-
* no JSON form) puts the pause back, as the store holds it; one that fails later ends
|
|
308
|
-
* calls, whose request the host never read, as a new turn ends a pause
|
|
371
|
+
* continuation that fails before the conversation records the results (the store refuses that save, a result has
|
|
372
|
+
* no JSON form, or no GMI holds the paused turn) puts the pause back, as the store holds it; one that fails later ends
|
|
373
|
+
* a pause it saved for its next calls, whose request the host never read, as a new turn ends a pause
|
|
374
|
+
* ({@link endPauseOfFailedStream}).
|
|
309
375
|
*/
|
|
310
376
|
async continueWithToolResults(agentOSStreamId, streamContext, takenPause, toolResults, toolCallGate) {
|
|
311
377
|
const startedAt = Date.now();
|
|
312
|
-
const {
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
? { toolCallGate: continuationGate }
|
|
317
|
-
: undefined;
|
|
378
|
+
const { userId, personaId, conversationContext, userApiKeys } = streamContext;
|
|
379
|
+
// the GMI the turn paused on, until the continuation knows the GMI it runs on
|
|
380
|
+
let gmi = streamContext.gmi;
|
|
381
|
+
let gmiInstanceIdForChunks = gmi.getGMIId();
|
|
318
382
|
const metricToolName = toolResults.length === 1 ? toolResults[0].toolName : '__batch_external_tools__';
|
|
319
383
|
const metricToolSuccess = toolResults.every((tr) => tr.isSuccess);
|
|
320
384
|
console.log(`AgentOSOrchestrator: Feeding ${toolResults.length} tool result(s) for stream ${agentOSStreamId}, GMI ${gmiInstanceIdForChunks} back to GMI.`);
|
|
@@ -335,6 +399,17 @@ export class ExternalToolResultHandler {
|
|
|
335
399
|
const resultMessages = this.enableConversationalPersistence && conversationContext
|
|
336
400
|
? toolResults.map((toolResult) => toolResultMessage(toolResult, personaId))
|
|
337
401
|
: [];
|
|
402
|
+
// The GMI the results reach, holding the paused turn, before the conversation records the results: a GMI
|
|
403
|
+
// given the conversation's history then reads them once, when it takes them.
|
|
404
|
+
gmi = await this.gmiForContinuation(streamContext);
|
|
405
|
+
gmiInstanceIdForChunks = gmi.getGMIId();
|
|
406
|
+
span?.setAttribute('agentos.gmi_id', gmiInstanceIdForChunks);
|
|
407
|
+
// the gate the continuation was given, else the one the stream's turn ran with: the GMI may hold no gate of
|
|
408
|
+
// the paused turn, having dropped another conversation's turn's or been built again for the continuation
|
|
409
|
+
const continuationGate = gmiToolCallGateFor(toolCallGate ?? streamContext.toolCallGate, agentOSStreamId, gmiInstanceIdForChunks, streamContext);
|
|
410
|
+
const continuationOptions = continuationGate
|
|
411
|
+
? { toolCallGate: continuationGate }
|
|
412
|
+
: undefined;
|
|
338
413
|
// The caller took the pause; the store keeps that before the results reach the GMI, since the GMI takes
|
|
339
414
|
// them once. A store that refuses the save fails the continuation here, with the pause put back as the store
|
|
340
415
|
// holds it.
|
|
@@ -525,6 +600,142 @@ export class ExternalToolResultHandler {
|
|
|
525
600
|
throw error;
|
|
526
601
|
}
|
|
527
602
|
}
|
|
603
|
+
/**
|
|
604
|
+
* The GMI a continuation gives the results to, holding the paused turn. It is the stream's GMI unless that GMI was
|
|
605
|
+
* shut down, as the session's GMI is when a turn on the session asks for another persona or the manager's idle
|
|
606
|
+
* cleanup ends it: then it is the session's GMI for the stream's persona, acquired under the stream's organization as
|
|
607
|
+
* the turn acquired its own (the manager waits for a GMI it is shutting down before it gives the session another),
|
|
608
|
+
* and the stream goes on on it.
|
|
609
|
+
* Such a GMI, and one whose own history holds a turn of another conversation, is given the paused turn first
|
|
610
|
+
* ({@link setPausedTurnOn}). The stream's GMI keeps its own history while it holds this conversation alone, since
|
|
611
|
+
* that history also holds the calls the GMI ran itself in the turn, which the conversation does not.
|
|
612
|
+
*
|
|
613
|
+
* @param streamContext - The continuation's stream, which goes on on the GMI returned.
|
|
614
|
+
* @returns The GMI the continuation runs on.
|
|
615
|
+
* @throws {GMIError} `INVALID_STATE` when the stream's GMI was shut down and the conversation holds no history of the
|
|
616
|
+
* paused turn (conversational persistence is off), or the session's GMI the manager gives is shut down too; the
|
|
617
|
+
* manager's error when it gives the session no GMI.
|
|
618
|
+
*/
|
|
619
|
+
async gmiForContinuation(streamContext) {
|
|
620
|
+
const { conversationId } = streamContext;
|
|
621
|
+
let gmi = streamContext.gmi;
|
|
622
|
+
if (isShutDown(gmi)) {
|
|
623
|
+
if (storedHistoryOf(streamContext.conversationContext).length === 0) {
|
|
624
|
+
const message = `The GMI the turn of conversation '${conversationId}' paused on was shut down, and the conversation holds no ` +
|
|
625
|
+
'history of the paused turn to continue it on another GMI, so the results do not continue it.';
|
|
626
|
+
console.warn(`AgentOSOrchestrator: ${message}`);
|
|
627
|
+
throw new GMIError(message, GMIErrorCode.INVALID_STATE, { conversationId, gmiInstanceId: gmi.getGMIId() });
|
|
628
|
+
}
|
|
629
|
+
const acquired = await this.dependencies.gmiManager.getOrCreateGMIForSession(streamContext.userId, streamContext.sessionId, streamContext.personaId, conversationId, streamContext.processingOptions?.preferredModelId, streamContext.processingOptions?.preferredProviderId, streamContext.userApiKeys, undefined,
|
|
630
|
+
// the turn's resolved organization, '' for none, as the turn pipeline passed it for the turn: a GMI built here
|
|
631
|
+
// binds its learner as the GMI the turn paused on was bound
|
|
632
|
+
streamContext.organizationId ?? '');
|
|
633
|
+
gmi = acquired.gmi;
|
|
634
|
+
if (isShutDown(gmi)) {
|
|
635
|
+
// the manager waits for a GMI it deactivates before it gives the session another; one shut down without it
|
|
636
|
+
// continues nothing either
|
|
637
|
+
const message = `The session's GMI for persona '${streamContext.personaId}' is shut down too, so the results do not ` +
|
|
638
|
+
`continue the paused turn of conversation '${conversationId}'.`;
|
|
639
|
+
console.warn(`AgentOSOrchestrator: ${message}`);
|
|
640
|
+
throw new GMIError(message, GMIErrorCode.INVALID_STATE, { conversationId, gmiInstanceId: gmi.getGMIId() });
|
|
641
|
+
}
|
|
642
|
+
streamContext.gmi = gmi;
|
|
643
|
+
this.setPausedTurnOn(gmi, streamContext);
|
|
644
|
+
}
|
|
645
|
+
else {
|
|
646
|
+
const owner = this.gmiHistoryOwners.get(gmi);
|
|
647
|
+
if (owner !== undefined && owner !== conversationId) {
|
|
648
|
+
this.setPausedTurnOn(gmi, streamContext);
|
|
649
|
+
}
|
|
650
|
+
}
|
|
651
|
+
this.noteTurnOnGmi(gmi, conversationId);
|
|
652
|
+
return gmi;
|
|
653
|
+
}
|
|
654
|
+
/**
|
|
655
|
+
* Gives `gmi` the paused turn of `streamContext`'s stream before the results reach it: the GMI's own history of the
|
|
656
|
+
* paused turn when the stream kept it at the pause ({@link pausedTurnHistoryOf}), which holds the calls the GMI ran
|
|
657
|
+
* itself in the turn, and otherwise the conversation's history, as a turn's prompt reads it, when the conversation
|
|
658
|
+
* holds one (a conversation the runtime does not record holds none, and the GMI's own history goes on, with a
|
|
659
|
+
* warning when it holds a turn of another conversation); then the stream's session, conversation and organization,
|
|
660
|
+
* and the sources its turn retrieved. A GMI that ran a turn of another conversation keeps neither that turn's
|
|
661
|
+
* organization nor its sources: a stream with no organization clears the GMI's, and a stream with no sources of its
|
|
662
|
+
* turn, such as a resume in a process that does not hold the paused stream, clears the GMI's sources. A GMI that ran
|
|
663
|
+
* no turn here keeps what the stream does not set.
|
|
664
|
+
*/
|
|
665
|
+
setPausedTurnOn(gmi, streamContext) {
|
|
666
|
+
const { conversationId } = streamContext;
|
|
667
|
+
const owner = this.gmiHistoryOwners.get(gmi);
|
|
668
|
+
const servedAnother = owner !== undefined && owner !== conversationId;
|
|
669
|
+
// the GMI's own history of the paused turn when the stream holds it, which keeps the calls the GMI ran itself in
|
|
670
|
+
// the turn; the conversation's stored history otherwise
|
|
671
|
+
const history = this.enableConversationalPersistence && streamContext.pausedTurnHistory
|
|
672
|
+
? streamContext.pausedTurnHistory
|
|
673
|
+
: storedHistoryOf(streamContext.conversationContext);
|
|
674
|
+
if (gmi.hydrateConversationHistory && history.length > 0) {
|
|
675
|
+
gmi.hydrateConversationHistory(history);
|
|
676
|
+
this.gmiHistoryOwners.set(gmi, conversationId);
|
|
677
|
+
}
|
|
678
|
+
else if (servedAnother) {
|
|
679
|
+
// with conversational persistence off the GMI's own history is the only record of the session's conversations,
|
|
680
|
+
// and setting another one would erase the other conversation's: the continuation reads it, as every turn of the
|
|
681
|
+
// session does
|
|
682
|
+
console.warn(`AgentOSOrchestrator: GMI ${gmi.getGMIId()} continues the paused turn of conversation '${conversationId}' on ` +
|
|
683
|
+
'its own history, which also holds a turn of another conversation of the session: ' +
|
|
684
|
+
(history.length === 0 ? 'the conversation holds no history to set in its place.' : 'the GMI takes no history.'));
|
|
685
|
+
}
|
|
686
|
+
if (gmi.hydrateTurnContext) {
|
|
687
|
+
const sources = streamContext.ragSources;
|
|
688
|
+
gmi.hydrateTurnContext({
|
|
689
|
+
sessionId: streamContext.sessionId,
|
|
690
|
+
conversationId,
|
|
691
|
+
organizationId: streamContext.organizationId ?? (servedAnother ? '' : undefined),
|
|
692
|
+
...(servedAnother || (owner !== conversationId && sources !== undefined) ? { ragSources: sources ?? [] } : {}),
|
|
693
|
+
});
|
|
694
|
+
}
|
|
695
|
+
}
|
|
696
|
+
/**
|
|
697
|
+
* What the GMI of `streamContext` holds of the turn that stops for `pauseCalls`, with the pause's calls
|
|
698
|
+
* ({@link withPauseCalls}), kept with the stream while the runtime records the conversation, for a continuation on a
|
|
699
|
+
* GMI that no longer holds the turn. While the GMI's history holds the stream's conversation alone it is that whole
|
|
700
|
+
* history (`getConversationHistory()`). When the history also holds a turn of another conversation of the session,
|
|
701
|
+
* it is the conversation's stored history before the paused turn followed by the turn's own messages as the GMI holds
|
|
702
|
+
* them (`getLastTurnHistory()`), while the conversation's last message is the input those messages start with, as the
|
|
703
|
+
* turn pipeline records it. Undefined otherwise, and for a GMI that does not give that history; a continuation then
|
|
704
|
+
* starts from the conversation's stored history.
|
|
705
|
+
*/
|
|
706
|
+
pausedTurnHistoryOf(streamContext, pauseCalls) {
|
|
707
|
+
const { gmi, conversationId } = streamContext;
|
|
708
|
+
const owner = this.gmiHistoryOwners.get(gmi);
|
|
709
|
+
if (!this.enableConversationalPersistence || owner === undefined) {
|
|
710
|
+
return undefined;
|
|
711
|
+
}
|
|
712
|
+
try {
|
|
713
|
+
if (owner === conversationId) {
|
|
714
|
+
return typeof gmi.getConversationHistory === 'function'
|
|
715
|
+
? withPauseCalls(gmi.getConversationHistory(), pauseCalls)
|
|
716
|
+
: undefined;
|
|
717
|
+
}
|
|
718
|
+
if (typeof gmi.getLastTurnHistory !== 'function') {
|
|
719
|
+
return undefined;
|
|
720
|
+
}
|
|
721
|
+
// the GMI's history holds a turn of another conversation too: the paused turn's own messages, after what the
|
|
722
|
+
// conversation held before the turn
|
|
723
|
+
const turnMessages = gmi.getLastTurnHistory();
|
|
724
|
+
const stored = storedHistoryOf(streamContext.conversationContext);
|
|
725
|
+
if (!recordsTurnInput(stored[stored.length - 1], turnMessages[0])) {
|
|
726
|
+
console.warn(`AgentOSOrchestrator: the conversation '${conversationId}' does not end with the input of the turn that ` +
|
|
727
|
+
`paused on GMI ${gmi.getGMIId()}, whose history also holds a turn of another conversation, so a ` +
|
|
728
|
+
"continuation that sets the paused turn on a GMI starts from the conversation's stored history.");
|
|
729
|
+
return undefined;
|
|
730
|
+
}
|
|
731
|
+
return withPauseCalls([...stored.slice(0, -1), ...turnMessages], pauseCalls);
|
|
732
|
+
}
|
|
733
|
+
catch (error) {
|
|
734
|
+
console.warn(`AgentOSOrchestrator: GMI ${gmi.getGMIId()} gave no history for the pause of conversation '${conversationId}', ` +
|
|
735
|
+
"so a continuation that sets the paused turn on a GMI starts from the conversation's stored history.", error);
|
|
736
|
+
return undefined;
|
|
737
|
+
}
|
|
738
|
+
}
|
|
528
739
|
// ---------------------------------------------------------------------------
|
|
529
740
|
// Resume from persisted state
|
|
530
741
|
// ---------------------------------------------------------------------------
|
|
@@ -650,7 +861,7 @@ export class ExternalToolResultHandler {
|
|
|
650
861
|
}
|
|
651
862
|
// what can refuse the resume (an organization the runtime refuses) runs here, in the same step as the check and
|
|
652
863
|
// before the take, so a refused resume leaves the pause as it was
|
|
653
|
-
const streamContext = this.openResumedStream(agentOSStreamId, pendingRequest, options, gmi, conversationContext);
|
|
864
|
+
const streamContext = this.openResumedStream(agentOSStreamId, pendingRequest, options, gmi, conversationContext, toolCallGate);
|
|
654
865
|
// the resume takes the pause in the same step as the check, so a result on the pause's stream or a new turn that
|
|
655
866
|
// comes while the resume waits below finds no pause to continue or end
|
|
656
867
|
conversationContext.setMetadata(AGENTOS_PENDING_EXTERNAL_TOOL_REQUEST_METADATA_KEY, undefined);
|
|
@@ -719,11 +930,14 @@ export class ExternalToolResultHandler {
|
|
|
719
930
|
}
|
|
720
931
|
/**
|
|
721
932
|
* Opens the stream a resume continues a pause on: its context, with the organization the runtime resolves for the
|
|
722
|
-
* resume
|
|
933
|
+
* resume and the tool-call gate the resume was given; while this process still holds the paused stream, also the
|
|
934
|
+
* sources the paused turn retrieved, the GMI's own history of the turn and, for a resume given no gate, the gate the
|
|
935
|
+
* paused turn ran with; and the GMI's history and turn context set from them, from the conversation and from the
|
|
936
|
+
* new stream ({@link setPausedTurnOn}).
|
|
723
937
|
*
|
|
724
938
|
* @throws {GMIError} When the runtime refuses the resume's organization.
|
|
725
939
|
*/
|
|
726
|
-
openResumedStream(agentOSStreamId, pendingRequest, options, gmi, conversationContext) {
|
|
940
|
+
openResumedStream(agentOSStreamId, pendingRequest, options, gmi, conversationContext, toolCallGate) {
|
|
727
941
|
const currentPersonaId = gmi.getCurrentPrimaryPersonaId();
|
|
728
942
|
const storedOrganizationId = conversationContext.getMetadata(ORGANIZATION_ID_METADATA_KEY);
|
|
729
943
|
const resolvedOrganizationId = this.resolveOrganizationContext(options.organizationId ?? storedOrganizationId);
|
|
@@ -740,21 +954,14 @@ export class ExternalToolResultHandler {
|
|
|
740
954
|
preferredModelId: options.preferredModelId,
|
|
741
955
|
preferredProviderId: options.preferredProviderId,
|
|
742
956
|
},
|
|
957
|
+
// the pause stores the calls and never the documents its turn retrieved, nor the GMI's own tool rounds; the
|
|
958
|
+
// stream that saved it keeps them
|
|
959
|
+
ragSources: this.activeStreamContexts.get(pendingRequest.streamId)?.ragSources,
|
|
960
|
+
pausedTurnHistory: this.activeStreamContexts.get(pendingRequest.streamId)?.pausedTurnHistory,
|
|
961
|
+
toolCallGate: toolCallGate ?? this.activeStreamContexts.get(pendingRequest.streamId)?.toolCallGate,
|
|
743
962
|
};
|
|
744
963
|
this.activeStreamContexts.set(agentOSStreamId, streamContext);
|
|
745
|
-
|
|
746
|
-
// conversation the runtime does not record holds none, and the GMI's own history goes on
|
|
747
|
-
const conversationHistory = conversationContext.getHistory(undefined, [MessageRole.ERROR, MessageRole.THOUGHT]);
|
|
748
|
-
if (gmi.hydrateConversationHistory && conversationHistory.length > 0) {
|
|
749
|
-
gmi.hydrateConversationHistory(conversationHistory);
|
|
750
|
-
}
|
|
751
|
-
if (gmi.hydrateTurnContext) {
|
|
752
|
-
gmi.hydrateTurnContext({
|
|
753
|
-
sessionId: pendingRequest.sessionId,
|
|
754
|
-
conversationId: conversationContext.sessionId,
|
|
755
|
-
organizationId: resolvedOrganizationId,
|
|
756
|
-
});
|
|
757
|
-
}
|
|
964
|
+
this.setPausedTurnOn(gmi, streamContext);
|
|
758
965
|
return streamContext;
|
|
759
966
|
}
|
|
760
967
|
// ---------------------------------------------------------------------------
|
|
@@ -797,6 +1004,8 @@ export class ExternalToolResultHandler {
|
|
|
797
1004
|
async persistPendingExternalToolRequest(agentOSStreamId, streamContext, gmiInstanceId, toolCalls, rationale) {
|
|
798
1005
|
const { conversationContext, personaId } = streamContext;
|
|
799
1006
|
const pendingRequest = this.buildPendingExternalToolRequest(agentOSStreamId, streamContext, gmiInstanceId, toolCalls, rationale);
|
|
1007
|
+
// what the GMI holds of the paused turn and the store does not, for a continuation on a GMI that no longer holds it
|
|
1008
|
+
streamContext.pausedTurnHistory = this.pausedTurnHistoryOf(streamContext, toolCalls);
|
|
800
1009
|
// recorded only in a conversation the runtime records: its tool results and replies are recorded there too, and
|
|
801
1010
|
// a call recorded alone would reach the next turn's prompt with no result
|
|
802
1011
|
if (toolCalls.length > 0 && this.enableConversationalPersistence) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExternalToolResultHandler.js","sourceRoot":"","sources":["../../../src/api/runtime/ExternalToolResultHandler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ExternalToolResultHandler.js","sourceRoot":"","sources":["../../../src/api/runtime/ExternalToolResultHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,6 +35,8 @@ export interface TransformerStreamContext {
|
|
|
35
35
|
preferredProviderId?: string;
|
|
36
36
|
};
|
|
37
37
|
languageNegotiation?: any;
|
|
38
|
+
/** The sources the stream announced last, which the transformer records as it streams them. */
|
|
39
|
+
ragSources?: import('../../cognition/rag/IRetrievalAugmentor.js').RagRetrievedChunk[];
|
|
38
40
|
}
|
|
39
41
|
/**
|
|
40
42
|
* Callback for clearing pending external tool requests.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GMIChunkTransformer.d.ts","sourceRoot":"","sources":["../../../src/api/runtime/GMIChunkTransformer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAInF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,KAAK,EACV,IAAI,EACJ,YAAY,EACZ,cAAc,EACd,SAAS,EAGV,MAAM,gCAAgC,CAAC;AASxC,OAAO,KAAK,EAAgB,QAAQ,EAAE,MAAM,8CAA8C,CAAC;AAO3F;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,IAAI,CAAC;IACV,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,iBAAiB,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAAC,mBAAmB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChF,mBAAmB,CAAC,EAAE,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"GMIChunkTransformer.d.ts","sourceRoot":"","sources":["../../../src/api/runtime/GMIChunkTransformer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,6BAA6B,CAAC;AAInF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,KAAK,EACV,IAAI,EACJ,YAAY,EACZ,cAAc,EACd,SAAS,EAGV,MAAM,gCAAgC,CAAC;AASxC,OAAO,KAAK,EAAgB,QAAQ,EAAE,MAAM,8CAA8C,CAAC;AAO3F;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,IAAI,CAAC;IACV,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,iBAAiB,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAAC,mBAAmB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChF,mBAAmB,CAAC,EAAE,GAAG,CAAC;IAC1B,+FAA+F;IAC/F,UAAU,CAAC,EAAE,OAAO,4CAA4C,EAAE,iBAAiB,EAAE,CAAC;CACvF;AAED;;;;GAIG;AACH,MAAM,MAAM,2BAA2B,GAAG,CACxC,mBAAmB,EAAE,mBAAmB,GAAG,SAAS,KACjD,OAAO,CAAC,IAAI,CAAC,CAAC;AAkBnB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,mBAAmB;IAiB5B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,+BAA+B;IAChD,OAAO,CAAC,mBAAmB;IApB7B,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAoC;IAE/E;;;;;;;;;;;;OAYG;gBAEgB,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,wBAAwB,CAAC,EAC3D,MAAM,EAAE,kBAAkB,EAC1B,YAAY,EAAE,+BAA+B,EAC7C,+BAA+B,EAAE,OAAO,EACjD,mBAAmB,EAAE,2BAA2B;IAG1D;;;;OAIG;IACH,8BAA8B,CAAC,EAAE,EAAE,2BAA2B,GAAG,IAAI;IAQrE;;;;;;;;;;;;;;;;;;;OAmBG;IACG,gBAAgB,CACpB,eAAe,EAAE,MAAM,EACvB,aAAa,EAAE,wBAAwB,EACvC,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,OAAO,GACtB,OAAO,CAAC,IAAI,CAAC;IA2FhB;;;;;;;;;;;;;;;;OAgBG;IACG,wBAAwB,CAC5B,eAAe,EAAE,MAAM,EACvB,aAAa,EAAE,wBAAwB,EACvC,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC;IAqIhB;;;;;;;;;OASG;IACH,qBAAqB,CACnB,eAAe,EAAE,MAAM,EACvB,KAAK,EAAE,YAAY,EACnB,aAAa,EAAE,wBAAwB,GACtC,YAAY;IAmEf;;;;;;;OAOG;IACH,sCAAsC,CACpC,QAAQ,EAAE,QAAQ,GAAG,IAAI,EACzB,KAAK,EAAE,YAAY,GAClB,QAAQ,GAAG,IAAI;CA4BnB"}
|
|
@@ -112,8 +112,10 @@ export class GMIChunkTransformer {
|
|
|
112
112
|
async processGMIOutput(agentOSStreamId, streamContext, gmiOutput, isContinuation) {
|
|
113
113
|
const { gmi, personaId, conversationContext } = streamContext;
|
|
114
114
|
const gmiInstanceIdForChunks = gmi.getGMIId();
|
|
115
|
-
// The sources reach the stream before the text, so an output guardrail that judges the text reads them
|
|
115
|
+
// The sources reach the stream before the text, so an output guardrail that judges the text reads them; the stream
|
|
116
|
+
// keeps them for a continuation of its turn.
|
|
116
117
|
if (Array.isArray(gmiOutput.ragSources) && gmiOutput.ragSources.length > 0) {
|
|
118
|
+
streamContext.ragSources = gmiOutput.ragSources;
|
|
117
119
|
await this.chunks.pushChunk(agentOSStreamId, AgentOSResponseChunkType.METADATA_UPDATE, gmiInstanceIdForChunks, personaId, false, { updates: { ragSources: gmiOutput.ragSources } });
|
|
118
120
|
}
|
|
119
121
|
if (gmiOutput.responseText) {
|
|
@@ -227,7 +229,9 @@ export class GMIChunkTransformer {
|
|
|
227
229
|
// Surface as METADATA_UPDATE so consumers (output guardrails, UI source
|
|
228
230
|
// panels, telemetry) can pick up retrieved chunks before the model
|
|
229
231
|
// emits text deltas. Grounding guardrails subscribe to this update to
|
|
230
|
-
// verify subsequent claims against the same sources the LLM saw.
|
|
232
|
+
// verify subsequent claims against the same sources the LLM saw. The stream keeps them: a continuation of
|
|
233
|
+
// the turn gives them to a GMI that does not hold them (ExternalToolResultHandler).
|
|
234
|
+
streamContext.ragSources = ragSources;
|
|
231
235
|
await this.chunks.pushChunk(agentOSStreamId, AgentOSResponseChunkType.METADATA_UPDATE, gmiInstanceIdForChunks, personaId, false, { updates: { ragSources } });
|
|
232
236
|
}
|
|
233
237
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GMIChunkTransformer.js","sourceRoot":"","sources":["../../../src/api/runtime/GMIChunkTransformer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,EACL,wBAAwB,GACzB,MAAM,0BAA0B,CAAC;AAWlC,OAAO,EACL,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAC;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,0BAA0B,EAAE,MAAM,yDAAyD,CAAC;AACrG,OAAO,EAAE,+CAA+C,EAAE,MAAM,6BAA6B,CAAC;AAC9F,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"GMIChunkTransformer.js","sourceRoot":"","sources":["../../../src/api/runtime/GMIChunkTransformer.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,7 @@ import type { GMIChunkTransformer } from './GMIChunkTransformer';
|
|
|
24
24
|
import type { TaskOutcomeTelemetryManager } from './TaskOutcomeTelemetryManager';
|
|
25
25
|
import type { ConversationContext } from '../../core/conversation/ConversationContext';
|
|
26
26
|
import type { IGMI, GMITurnInput } from '../../cognition/substrate/IGMI';
|
|
27
|
+
import type { GuardrailToolCallGate } from '../../safety/guardrails/guardrailDispatcher';
|
|
27
28
|
import type { RollingSummaryCompactionConfig } from '../../core/conversation/RollingSummaryCompactor';
|
|
28
29
|
import { type ResolvedLongTermMemoryPolicy } from '../../core/conversation/LongTermMemoryPolicy';
|
|
29
30
|
import type { LongTermMemoryRecallProfile } from '../types/OrchestratorConfig';
|
|
@@ -45,6 +46,11 @@ export interface PipelineStreamContext {
|
|
|
45
46
|
preferredProviderId?: string;
|
|
46
47
|
};
|
|
47
48
|
languageNegotiation?: any;
|
|
49
|
+
/**
|
|
50
|
+
* The output guardrails' tool-call gate the stream's turn runs with, when a guardrail evaluates tool calls; a
|
|
51
|
+
* continuation of the stream given no gate of its own is judged with it.
|
|
52
|
+
*/
|
|
53
|
+
toolCallGate?: GuardrailToolCallGate;
|
|
48
54
|
}
|
|
49
55
|
/**
|
|
50
56
|
* Result of the pre-LLM turn preparation pipeline.
|