@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.
Files changed (45) hide show
  1. package/dist/api/runtime/AgentOSOrchestrator.d.ts.map +1 -1
  2. package/dist/api/runtime/AgentOSOrchestrator.js +8 -1
  3. package/dist/api/runtime/AgentOSOrchestrator.js.map +1 -1
  4. package/dist/api/runtime/ExternalToolResultHandler.d.ts +92 -6
  5. package/dist/api/runtime/ExternalToolResultHandler.d.ts.map +1 -1
  6. package/dist/api/runtime/ExternalToolResultHandler.js +237 -28
  7. package/dist/api/runtime/ExternalToolResultHandler.js.map +1 -1
  8. package/dist/api/runtime/GMIChunkTransformer.d.ts +2 -0
  9. package/dist/api/runtime/GMIChunkTransformer.d.ts.map +1 -1
  10. package/dist/api/runtime/GMIChunkTransformer.js +6 -2
  11. package/dist/api/runtime/GMIChunkTransformer.js.map +1 -1
  12. package/dist/api/runtime/TurnExecutionPipeline.d.ts +6 -0
  13. package/dist/api/runtime/TurnExecutionPipeline.d.ts.map +1 -1
  14. package/dist/api/runtime/TurnExecutionPipeline.js.map +1 -1
  15. package/dist/cognition/emergent/PersonalityMutationStore.d.ts +10 -1
  16. package/dist/cognition/emergent/PersonalityMutationStore.d.ts.map +1 -1
  17. package/dist/cognition/emergent/PersonalityMutationStore.js +46 -14
  18. package/dist/cognition/emergent/PersonalityMutationStore.js.map +1 -1
  19. package/dist/cognition/library/LibraryIndex.d.ts +12 -8
  20. package/dist/cognition/library/LibraryIndex.d.ts.map +1 -1
  21. package/dist/cognition/library/LibraryIndex.js +12 -4
  22. package/dist/cognition/library/LibraryIndex.js.map +1 -1
  23. package/dist/cognition/memory/io/facade/types.d.ts +43 -24
  24. package/dist/cognition/memory/io/facade/types.d.ts.map +1 -1
  25. package/dist/cognition/substrate/GMI.d.ts +29 -0
  26. package/dist/cognition/substrate/GMI.d.ts.map +1 -1
  27. package/dist/cognition/substrate/GMI.js +48 -3
  28. package/dist/cognition/substrate/GMI.js.map +1 -1
  29. package/dist/cognition/substrate/GMIManager.d.ts +11 -1
  30. package/dist/cognition/substrate/GMIManager.d.ts.map +1 -1
  31. package/dist/cognition/substrate/GMIManager.js +30 -2
  32. package/dist/cognition/substrate/GMIManager.js.map +1 -1
  33. package/dist/cognition/substrate/IGMI.d.ts +34 -0
  34. package/dist/cognition/substrate/IGMI.d.ts.map +1 -1
  35. package/dist/core/conversation/conversationTables.js +3 -2
  36. package/dist/core/conversation/conversationTables.js.map +1 -1
  37. package/dist/core/storage/sqlStorageSchema.js +4 -3
  38. package/dist/core/storage/sqlStorageSchema.js.map +1 -1
  39. package/dist/orchestration/checkpoint/ICheckpointStore.d.ts +7 -0
  40. package/dist/orchestration/checkpoint/ICheckpointStore.d.ts.map +1 -1
  41. package/dist/orchestration/runtime/GraphRuntime.d.ts +25 -2
  42. package/dist/orchestration/runtime/GraphRuntime.d.ts.map +1 -1
  43. package/dist/orchestration/runtime/GraphRuntime.js +77 -14
  44. package/dist/orchestration/runtime/GraphRuntime.js.map +1 -1
  45. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"GMI.d.ts","sourceRoot":"","sources":["../../../src/cognition/substrate/GMI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GMI.d.ts","sourceRoot":"","sources":["../../../src/cognition/substrate/GMI.ts"],"names":[],"mappings":"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"}
@@ -724,6 +724,26 @@ export class GMI {
724
724
  hydrateConversationHistory(conversationHistory) {
725
725
  this.conversationHistoryManager.hydrate(conversationHistory);
726
726
  }
727
+ /**
728
+ * The conversation history as this GMI holds it, as messages `hydrateConversationHistory()` takes back: the calls of
729
+ * its own tool rounds with their results, and the thinking blocks and thought signatures of its assistant turns.
730
+ */
731
+ getConversationHistory() {
732
+ return this.conversationHistoryManager.buildForPrompt();
733
+ }
734
+ /**
735
+ * The messages of the conversation history from the input of this GMI's last turn on, as `getConversationHistory()`
736
+ * gives them: that input, the assistant turns and tool results of the turn's tool rounds, and what a tool
737
+ * continuation of the turn added. Empty when no turn ran, or when the history no longer holds that input (it was
738
+ * replaced, cleared or trimmed past it).
739
+ */
740
+ getLastTurnHistory() {
741
+ const history = this.conversationHistoryManager.history;
742
+ const start = this.lastTurnInput ? history.indexOf(this.lastTurnInput) : -1;
743
+ return start < 0
744
+ ? []
745
+ : history.slice(start).map((message) => this.conversationHistoryManager.convertToConversationMessage(message));
746
+ }
727
747
  /**
728
748
  * Makes `messages` the whole conversation history. An empty array is
729
749
  * authoritative: it empties the history (unlike
@@ -745,15 +765,37 @@ export class GMI {
745
765
  this.conversationHistoryManager.clear();
746
766
  this.forgetTurnsOutside([]);
747
767
  }
768
+ /**
769
+ * Sets the turn a tool continuation goes on with: the ids its continuation runs under and the sources its tool
770
+ * calls and reply are judged with. A blank session or conversation id leaves the GMI's as it is; a blank
771
+ * organization means the turn has none, and clears the GMI's. `ragSources` replaces the sources the GMI keeps for
772
+ * the turn (an empty array clears them); without it they stay. A conversation other than the one of the GMI's last
773
+ * turn drops what the GMI kept for that turn, which a continuation would otherwise go on with: the model hop that
774
+ * served it, its memory scope, its tool-call gate, its learning preparation and its sources. The continuation then
775
+ * starts as on a GMI built for it: on the route's first hop that can start, with a learning preparation asked for the
776
+ * continuation.
777
+ */
748
778
  hydrateTurnContext(context) {
749
779
  if (typeof context.sessionId === 'string' && context.sessionId.trim()) {
750
780
  this.reasoningTrace.sessionId = context.sessionId.trim();
751
781
  }
752
782
  if (typeof context.conversationId === 'string' && context.conversationId.trim()) {
753
- this.reasoningTrace.conversationId = context.conversationId.trim();
783
+ const conversationId = context.conversationId.trim();
784
+ if (conversationId !== this.reasoningTrace.conversationId) {
785
+ // the GMI's last turn was another conversation's: nothing it kept for that turn belongs to this one
786
+ this.turnResolution = undefined;
787
+ this.turnMemoryScope = undefined;
788
+ this.turnToolCallGate = undefined;
789
+ this.turnLearning = undefined;
790
+ this.turnRagSources = undefined;
791
+ }
792
+ this.reasoningTrace.conversationId = conversationId;
754
793
  }
755
- if (typeof context.organizationId === 'string' && context.organizationId.trim()) {
756
- this.reasoningTrace.organizationId = context.organizationId.trim();
794
+ if (typeof context.organizationId === 'string') {
795
+ this.reasoningTrace.organizationId = context.organizationId.trim() || undefined;
796
+ }
797
+ if (Array.isArray(context.ragSources)) {
798
+ this.turnRagSources = context.ragSources.length > 0 ? [...context.ragSources] : undefined;
757
799
  }
758
800
  }
759
801
  /**
@@ -1003,6 +1045,9 @@ export class GMI {
1003
1045
  // assistant replies and tool results the loop below adds.
1004
1046
  const historyAtTurnStart = [...this.conversationHistoryManager.history];
1005
1047
  const currentUserMessage = historyAtTurnStart.find((message) => message.role === 'user' && !messagesBeforeInput.has(message));
1048
+ if (turnInput.metadata?.isToolContinuation !== true) {
1049
+ this.lastTurnInput = historyAtTurnStart.find((message) => !messagesBeforeInput.has(message));
1050
+ }
1006
1051
  // The turn's input, so a later replaceHistory() or clearHistory() can tell
1007
1052
  // whether the history still holds this turn. Bounded like the trace:
1008
1053
  // every turn on the trace has at least one entry there.
@@ -1 +1 @@
1
- {"version":3,"file":"GMI.js","sourceRoot":"","sources":["../../../src/cognition/substrate/GMI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GMI.js","sourceRoot":"","sources":["../../../src/cognition/substrate/GMI.ts"],"names":[],"mappings":"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"}
@@ -105,6 +105,12 @@ export declare class GMIManager {
105
105
  * the call returns or throws. shutdown() waits for them.
106
106
  */
107
107
  private readonly creationsInFlight;
108
+ /**
109
+ * The deactivation running for each session. The GMI it shuts down stays in
110
+ * the maps until its shutdown has ended, so an acquisition for the session
111
+ * waits for it and never hands out a GMI that is shutting down.
112
+ */
113
+ private readonly deactivations;
108
114
  constructor(config: GMIManagerConfig, subscriptionService: ISubscriptionService | undefined, authService: IAuthService | undefined, conversationManager: ConversationManager, promptEngine: IPromptEngine, llmProviderManager: AIModelProviderManager, utilityAI: IUtilityAI, toolOrchestrator: IToolOrchestrator, retrievalAugmentor?: IRetrievalAugmentor, personaLoader?: IPersonaLoader);
109
115
  private validateGMIDependencies;
110
116
  private getAgencySeatKey;
@@ -162,12 +168,16 @@ export declare class GMIManager {
162
168
  * Shuts down the GMI bound to a session and removes it from both maps. It
163
169
  * skips the initialization check because `shutdown()` marks the manager
164
170
  * uninitialized first, so that no new work starts, and then calls this for
165
- * every session.
171
+ * every session. A call made while the session's deactivation runs waits for
172
+ * that one, and so does an acquisition for the session
173
+ * (`getOrCreateGMIForSession()`).
166
174
  *
167
175
  * @param sessionId - The session whose GMI is shut down.
168
176
  * @returns `true` when the session had an active GMI, `false` when it had none.
169
177
  */
170
178
  private deactivateSession;
179
+ /** The work of {@link GMIManager.deactivateSession}, run once at a time for a session. */
180
+ private shutDownSessionGMI;
171
181
  /**
172
182
  * Shuts one GMI down and waits for it at most `shutdownTimeoutMs`. A GMI
173
183
  * that has not finished by then is logged at warn and finishes on its own; a
@@ -1 +1 @@
1
- {"version":3,"file":"GMIManager.d.ts","sourceRoot":"","sources":["../../../src/cognition/substrate/GMIManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GMIManager.d.ts","sourceRoot":"","sources":["../../../src/cognition/substrate/GMIManager.ts"],"names":[],"mappings":"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"}
@@ -38,6 +38,12 @@ export class GMIManager {
38
38
  * the call returns or throws. shutdown() waits for them.
39
39
  */
40
40
  this.creationsInFlight = new Set();
41
+ /**
42
+ * The deactivation running for each session. The GMI it shuts down stays in
43
+ * the maps until its shutdown has ended, so an acquisition for the session
44
+ * waits for it and never hands out a GMI that is shutting down.
45
+ */
46
+ this.deactivations = new Map();
41
47
  this.managerId = `gmi-manager-${uuidv4()}`;
42
48
  if (!config || !config.personaLoaderConfig) {
43
49
  throw new GMIManagerError('Invalid GMIManager configuration: personaLoaderConfig is required.', GMIErrorCode.CONFIGURATION_ERROR, { providedConfig: config });
@@ -456,6 +462,14 @@ export class GMIManager {
456
462
  throw new GMIManagerError(`Access denied: Persona '${requestedPersonaId}' requires tier '${personaDefinition.minSubscriptionTier}'.`, GMIErrorCode.PERMISSION_DENIED, { requestedPersonaId, userId });
457
463
  }
458
464
  const { persona: effectivePersona, overlay, overlayChanged } = this.resolvePersonaWithAgencyOverlay(personaDefinition, agencyOptions);
465
+ // A GMI being deactivated (a persona refresh, the idle cleanup) stays bound to the session until its shutdown has
466
+ // ended: the acquisition waits for that, so it finds the session without a GMI rather than the GMI shutting down.
467
+ let deactivation = this.deactivations.get(sessionId);
468
+ while (deactivation) {
469
+ await deactivation.catch(() => false);
470
+ this.ensureInitialized();
471
+ deactivation = this.deactivations.get(sessionId);
472
+ }
459
473
  let gmiInstanceId = this.gmiSessionMap.get(sessionId);
460
474
  let gmi = gmiInstanceId ? this.activeGMIs.get(gmiInstanceId) : undefined;
461
475
  if (gmi && (gmi.getPersona().id !== requestedPersonaId || overlayChanged)) {
@@ -536,12 +550,26 @@ export class GMIManager {
536
550
  * Shuts down the GMI bound to a session and removes it from both maps. It
537
551
  * skips the initialization check because `shutdown()` marks the manager
538
552
  * uninitialized first, so that no new work starts, and then calls this for
539
- * every session.
553
+ * every session. A call made while the session's deactivation runs waits for
554
+ * that one, and so does an acquisition for the session
555
+ * (`getOrCreateGMIForSession()`).
540
556
  *
541
557
  * @param sessionId - The session whose GMI is shut down.
542
558
  * @returns `true` when the session had an active GMI, `false` when it had none.
543
559
  */
544
- async deactivateSession(sessionId) {
560
+ deactivateSession(sessionId) {
561
+ const running = this.deactivations.get(sessionId);
562
+ if (running)
563
+ return running;
564
+ const deactivation = this.shutDownSessionGMI(sessionId).finally(() => {
565
+ if (this.deactivations.get(sessionId) === deactivation)
566
+ this.deactivations.delete(sessionId);
567
+ });
568
+ this.deactivations.set(sessionId, deactivation);
569
+ return deactivation;
570
+ }
571
+ /** The work of {@link GMIManager.deactivateSession}, run once at a time for a session. */
572
+ async shutDownSessionGMI(sessionId) {
545
573
  const gmiInstanceId = this.gmiSessionMap.get(sessionId);
546
574
  if (!gmiInstanceId) {
547
575
  console.warn(`GMIManager (ID: ${this.managerId}): No GMI instance ID found for session ${sessionId} during deactivation attempt.`);