@framers/agentos 0.10.23 → 0.10.25

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 (155) hide show
  1. package/dist/api/AgentOS.d.ts.map +1 -1
  2. package/dist/api/AgentOS.js +3 -2
  3. package/dist/api/AgentOS.js.map +1 -1
  4. package/dist/api/agent.d.ts.map +1 -1
  5. package/dist/api/agent.js +25 -10
  6. package/dist/api/agent.js.map +1 -1
  7. package/dist/api/embedText.d.ts.map +1 -1
  8. package/dist/api/embedText.js +53 -17
  9. package/dist/api/embedText.js.map +1 -1
  10. package/dist/api/generateImage.d.ts.map +1 -1
  11. package/dist/api/generateImage.js +51 -7
  12. package/dist/api/generateImage.js.map +1 -1
  13. package/dist/api/generateText.d.ts +36 -6
  14. package/dist/api/generateText.d.ts.map +1 -1
  15. package/dist/api/generateText.js +102 -17
  16. package/dist/api/generateText.js.map +1 -1
  17. package/dist/api/model.d.ts.map +1 -1
  18. package/dist/api/model.js +11 -4
  19. package/dist/api/model.js.map +1 -1
  20. package/dist/api/runtime/SelfImprovementSessionManager.d.ts +34 -2
  21. package/dist/api/runtime/SelfImprovementSessionManager.d.ts.map +1 -1
  22. package/dist/api/runtime/SelfImprovementSessionManager.js +119 -33
  23. package/dist/api/runtime/SelfImprovementSessionManager.js.map +1 -1
  24. package/dist/api/runtime/provider-defaults.d.ts.map +1 -1
  25. package/dist/api/runtime/provider-defaults.js +5 -2
  26. package/dist/api/runtime/provider-defaults.js.map +1 -1
  27. package/dist/api/streamText.d.ts.map +1 -1
  28. package/dist/api/streamText.js +116 -34
  29. package/dist/api/streamText.js.map +1 -1
  30. package/dist/api/types/AgentOSInput.d.ts +11 -0
  31. package/dist/api/types/AgentOSInput.d.ts.map +1 -1
  32. package/dist/api/types.d.ts +14 -6
  33. package/dist/api/types.d.ts.map +1 -1
  34. package/dist/api/types.js.map +1 -1
  35. package/dist/cognition/emergent/AdaptPersonalityTool.d.ts +13 -4
  36. package/dist/cognition/emergent/AdaptPersonalityTool.d.ts.map +1 -1
  37. package/dist/cognition/emergent/AdaptPersonalityTool.js +32 -23
  38. package/dist/cognition/emergent/AdaptPersonalityTool.js.map +1 -1
  39. package/dist/cognition/emergent/EmergentCapabilityEngine.d.ts +18 -6
  40. package/dist/cognition/emergent/EmergentCapabilityEngine.d.ts.map +1 -1
  41. package/dist/cognition/emergent/EmergentCapabilityEngine.js.map +1 -1
  42. package/dist/cognition/emergent/SelfEvaluateTool.d.ts +10 -3
  43. package/dist/cognition/emergent/SelfEvaluateTool.d.ts.map +1 -1
  44. package/dist/cognition/emergent/SelfEvaluateTool.js +3 -2
  45. package/dist/cognition/emergent/SelfEvaluateTool.js.map +1 -1
  46. package/dist/cognition/substrate/CognitiveMemoryBridge.d.ts +51 -2
  47. package/dist/cognition/substrate/CognitiveMemoryBridge.d.ts.map +1 -1
  48. package/dist/cognition/substrate/CognitiveMemoryBridge.js +84 -2
  49. package/dist/cognition/substrate/CognitiveMemoryBridge.js.map +1 -1
  50. package/dist/cognition/substrate/ConversationHistoryManager.d.ts +8 -4
  51. package/dist/cognition/substrate/ConversationHistoryManager.d.ts.map +1 -1
  52. package/dist/cognition/substrate/ConversationHistoryManager.js +17 -5
  53. package/dist/cognition/substrate/ConversationHistoryManager.js.map +1 -1
  54. package/dist/cognition/substrate/GMI.d.ts +92 -5
  55. package/dist/cognition/substrate/GMI.d.ts.map +1 -1
  56. package/dist/cognition/substrate/GMI.js +291 -65
  57. package/dist/cognition/substrate/GMI.js.map +1 -1
  58. package/dist/cognition/substrate/GMIManager.d.ts +12 -0
  59. package/dist/cognition/substrate/GMIManager.d.ts.map +1 -1
  60. package/dist/cognition/substrate/GMIManager.js +22 -16
  61. package/dist/cognition/substrate/GMIManager.js.map +1 -1
  62. package/dist/cognition/substrate/IGMI.d.ts +23 -0
  63. package/dist/cognition/substrate/IGMI.d.ts.map +1 -1
  64. package/dist/cognition/substrate/IGMI.js.map +1 -1
  65. package/dist/cognition/substrate/MetapromptExecutor.d.ts +183 -28
  66. package/dist/cognition/substrate/MetapromptExecutor.d.ts.map +1 -1
  67. package/dist/cognition/substrate/MetapromptExecutor.js +431 -108
  68. package/dist/cognition/substrate/MetapromptExecutor.js.map +1 -1
  69. package/dist/cognition/substrate/personas/IPersonaDefinition.d.ts +5 -0
  70. package/dist/cognition/substrate/personas/IPersonaDefinition.d.ts.map +1 -1
  71. package/dist/cognition/substrate/personas/PersonaValidation.d.ts.map +1 -1
  72. package/dist/cognition/substrate/personas/PersonaValidation.js +30 -0
  73. package/dist/cognition/substrate/personas/PersonaValidation.js.map +1 -1
  74. package/dist/cognition/substrate/personas/SoulLoader.d.ts +14 -1
  75. package/dist/cognition/substrate/personas/SoulLoader.d.ts.map +1 -1
  76. package/dist/cognition/substrate/personas/SoulLoader.js +45 -12
  77. package/dist/cognition/substrate/personas/SoulLoader.js.map +1 -1
  78. package/dist/cognition/substrate/personas/definitions/default_assistant_persona.json +3 -35
  79. package/dist/cognition/substrate/personas/hexaco.d.ts +34 -0
  80. package/dist/cognition/substrate/personas/hexaco.d.ts.map +1 -0
  81. package/dist/cognition/substrate/personas/hexaco.js +66 -0
  82. package/dist/cognition/substrate/personas/hexaco.js.map +1 -0
  83. package/dist/cognition/substrate/userFeedback.d.ts +69 -0
  84. package/dist/cognition/substrate/userFeedback.d.ts.map +1 -0
  85. package/dist/cognition/substrate/userFeedback.js +107 -0
  86. package/dist/cognition/substrate/userFeedback.js.map +1 -0
  87. package/dist/core/conversation/ConversationMessage.d.ts +9 -0
  88. package/dist/core/conversation/ConversationMessage.d.ts.map +1 -1
  89. package/dist/core/conversation/ConversationMessage.js.map +1 -1
  90. package/dist/core/llm/IPromptEngine.d.ts +9 -0
  91. package/dist/core/llm/IPromptEngine.d.ts.map +1 -1
  92. package/dist/core/llm/IPromptEngine.js.map +1 -1
  93. package/dist/core/llm/PromptEngine.d.ts +30 -1
  94. package/dist/core/llm/PromptEngine.d.ts.map +1 -1
  95. package/dist/core/llm/PromptEngine.js +229 -92
  96. package/dist/core/llm/PromptEngine.js.map +1 -1
  97. package/dist/core/llm/providers/IProvider.d.ts +28 -8
  98. package/dist/core/llm/providers/IProvider.d.ts.map +1 -1
  99. package/dist/core/llm/providers/implementations/AnthropicProvider.d.ts +135 -49
  100. package/dist/core/llm/providers/implementations/AnthropicProvider.d.ts.map +1 -1
  101. package/dist/core/llm/providers/implementations/AnthropicProvider.js +294 -110
  102. package/dist/core/llm/providers/implementations/AnthropicProvider.js.map +1 -1
  103. package/dist/core/llm/providers/implementations/ClaudeCodeProvider.d.ts.map +1 -1
  104. package/dist/core/llm/providers/implementations/ClaudeCodeProvider.js +15 -1
  105. package/dist/core/llm/providers/implementations/ClaudeCodeProvider.js.map +1 -1
  106. package/dist/core/llm/providers/implementations/GeminiCLIProvider.d.ts +1 -1
  107. package/dist/core/llm/providers/implementations/GeminiCLIProvider.d.ts.map +1 -1
  108. package/dist/core/llm/providers/implementations/GeminiCLIProvider.js +51 -24
  109. package/dist/core/llm/providers/implementations/GeminiCLIProvider.js.map +1 -1
  110. package/dist/core/llm/providers/implementations/GeminiProvider.d.ts +19 -6
  111. package/dist/core/llm/providers/implementations/GeminiProvider.d.ts.map +1 -1
  112. package/dist/core/llm/providers/implementations/GeminiProvider.js +62 -24
  113. package/dist/core/llm/providers/implementations/GeminiProvider.js.map +1 -1
  114. package/dist/core/llm/providers/implementations/OpenAIProvider.d.ts +255 -70
  115. package/dist/core/llm/providers/implementations/OpenAIProvider.d.ts.map +1 -1
  116. package/dist/core/llm/providers/implementations/OpenAIProvider.js +943 -214
  117. package/dist/core/llm/providers/implementations/OpenAIProvider.js.map +1 -1
  118. package/dist/core/llm/providers/implementations/cacheLeakDetector.d.ts +15 -7
  119. package/dist/core/llm/providers/implementations/cacheLeakDetector.d.ts.map +1 -1
  120. package/dist/core/llm/providers/implementations/cacheLeakDetector.js +12 -7
  121. package/dist/core/llm/providers/implementations/cacheLeakDetector.js.map +1 -1
  122. package/dist/core/llm/providers/implementations/openai-response-format-guard.d.ts +17 -0
  123. package/dist/core/llm/providers/implementations/openai-response-format-guard.d.ts.map +1 -1
  124. package/dist/core/llm/providers/implementations/openai-response-format-guard.js +31 -0
  125. package/dist/core/llm/providers/implementations/openai-response-format-guard.js.map +1 -1
  126. package/dist/core/llm/providers/model-cache-capabilities.d.ts +24 -9
  127. package/dist/core/llm/providers/model-cache-capabilities.d.ts.map +1 -1
  128. package/dist/core/llm/providers/model-cache-capabilities.js +59 -44
  129. package/dist/core/llm/providers/model-cache-capabilities.js.map +1 -1
  130. package/dist/core/llm/providers/model-effort.d.ts +21 -0
  131. package/dist/core/llm/providers/model-effort.d.ts.map +1 -1
  132. package/dist/core/llm/providers/model-effort.js +38 -2
  133. package/dist/core/llm/providers/model-effort.js.map +1 -1
  134. package/dist/core/llm/providers/model-forced-tool-choice.d.ts +13 -6
  135. package/dist/core/llm/providers/model-forced-tool-choice.d.ts.map +1 -1
  136. package/dist/core/llm/providers/model-forced-tool-choice.js +14 -7
  137. package/dist/core/llm/providers/model-forced-tool-choice.js.map +1 -1
  138. package/dist/core/llm/providers/model-thinking.d.ts +64 -13
  139. package/dist/core/llm/providers/model-thinking.d.ts.map +1 -1
  140. package/dist/core/llm/providers/model-thinking.js +52 -12
  141. package/dist/core/llm/providers/model-thinking.js.map +1 -1
  142. package/dist/core/llm/streaming/StreamingBatcher.d.ts +4 -3
  143. package/dist/core/llm/streaming/StreamingBatcher.d.ts.map +1 -1
  144. package/dist/core/llm/streaming/StreamingBatcher.js +8 -3
  145. package/dist/core/llm/streaming/StreamingBatcher.js.map +1 -1
  146. package/dist/core/safety/LLMProviderHealthRegistry.d.ts +4 -0
  147. package/dist/core/safety/LLMProviderHealthRegistry.d.ts.map +1 -1
  148. package/dist/core/safety/LLMProviderHealthRegistry.js +26 -0
  149. package/dist/core/safety/LLMProviderHealthRegistry.js.map +1 -1
  150. package/dist/core/utils/sha256.d.ts +19 -0
  151. package/dist/core/utils/sha256.d.ts.map +1 -0
  152. package/dist/core/utils/sha256.js +101 -0
  153. package/dist/core/utils/sha256.js.map +1 -0
  154. package/dist/orchestration/pipeline/query/types.js +1 -1
  155. package/package.json +1 -1
@@ -12,9 +12,22 @@
12
12
  */
13
13
  import type { ICognitiveMemoryManager } from '../memory/CognitiveMemoryManager.js';
14
14
  import type { PADState } from '../memory/core/config.js';
15
- import type { AssembledMemoryContext, MemorySourceType, MemoryType } from '../memory/core/types.js';
15
+ import type { AssembledMemoryContext, MemoryScope, MemorySourceType, MemoryType } from '../memory/core/types.js';
16
16
  import { GMIMood } from './IGMI';
17
17
  import type { UserContext, GMITurnInput } from './IGMI';
18
+ /**
19
+ * Identity of the turn a memory retrieval runs for. The bridge combines it
20
+ * with the GMI's user and persona to decide which memory scopes a turn may
21
+ * read.
22
+ */
23
+ export interface CognitiveMemoryTurnScope {
24
+ /** Session the turn belongs to. */
25
+ sessionId?: string;
26
+ /** Conversation thread of the turn (defaults to the session upstream). */
27
+ conversationId?: string;
28
+ /** Organization the turn runs under, when known. */
29
+ organizationId?: string;
30
+ }
18
31
  /**
19
32
  * Options for encoding a piece of content into cognitive memory.
20
33
  */
@@ -78,17 +91,53 @@ export declare class CognitiveMemoryBridge {
78
91
  * @returns A unique array of non-empty tag strings.
79
92
  */
80
93
  buildTags(role: 'user' | 'assistant' | 'tool' | 'system'): string[];
94
+ /**
95
+ * Lists the memory scopes a turn may read, in the shape
96
+ * `CognitiveRetrievalOptions.scopes` expects:
97
+ *
98
+ * - `user` scope for the user id, and for the session id and GMI id, where
99
+ * {@link CognitiveMemoryBridge.syncForTurn} and
100
+ * {@link CognitiveMemoryBridge.encode} place user input, assistant replies
101
+ * and traces written without a user;
102
+ * - `thread` scope for the conversation id and the session id;
103
+ * - `persona` scope for the persona id and for the per-user persona id
104
+ * (`<userId>::<personaId>`) that the memory tools write;
105
+ * - `organization` scope for the turn's organization id and the user
106
+ * context's, which the memory tools write under, when known;
107
+ * - every scope for the memory manager's owner id, under which the manager
108
+ * files a trace written without a scope id.
109
+ *
110
+ * Scopes owned by other users or other sessions are never listed.
111
+ *
112
+ * @param turn - Session, conversation and organization of the current turn.
113
+ * @returns A de-duplicated scope list.
114
+ */
115
+ buildRetrievalScopes(turn?: CognitiveMemoryTurnScope): Array<{
116
+ scope: MemoryScope;
117
+ scopeId: string;
118
+ }>;
119
+ /**
120
+ * The memory manager's owner id (`CognitiveMemoryConfig.agentId`), the scope
121
+ * id the manager gives a trace written without one (consolidated schemas,
122
+ * `AgentMemory.remember` with default options).
123
+ */
124
+ private memoryOwnerId;
81
125
  /**
82
126
  * Assembles a cognitive memory context suitable for injection into the LLM prompt.
83
127
  *
84
128
  * Queries the memory store for relevant traces, assembles them into a text
85
129
  * block with token budget constraints, and returns the assembled context.
130
+ * Retrieval is limited to the scopes returned by
131
+ * {@link CognitiveMemoryBridge.buildRetrievalScopes}, so a memory backend
132
+ * shared by several sessions never surfaces another user's or another
133
+ * session's traces in this turn's prompt.
86
134
  *
87
135
  * @param query - The user's current input text to use as a retrieval query.
136
+ * @param turn - Session, conversation and organization of the current turn.
88
137
  * @returns The assembled memory context, or null if cognitive memory is unavailable
89
138
  * or the query is empty.
90
139
  */
91
- assembleContext(query: string): Promise<AssembledMemoryContext | null>;
140
+ assembleContext(query: string, turn?: CognitiveMemoryTurnScope): Promise<AssembledMemoryContext | null>;
92
141
  /**
93
142
  * Encodes a piece of content into the cognitive memory store.
94
143
  *
@@ -1 +1 @@
1
- {"version":3,"file":"CognitiveMemoryBridge.d.ts","sourceRoot":"","sources":["../../../src/cognition/substrate/CognitiveMemoryBridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AACnF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACpG,OAAO,EAAE,OAAO,EAAsB,MAAM,QAAQ,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,4EAA4E;IAC5E,IAAI,EAAE,UAAU,CAAC;IACjB,6EAA6E;IAC7E,UAAU,EAAE,gBAAgB,CAAC;IAC7B,0DAA0D;IAC1D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0DAA0D;IAC1D,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,QAAQ,CAAC;IAC/C,8DAA8D;IAC9D,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;;;;;;;;;GAUG;AACH,qBAAa,qBAAqB;IAY9B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAhBhC;;;;;;;;;OASG;gBAEgB,eAAe,EAAE,uBAAuB,EACxC,OAAO,EAAE,MAAM,OAAO,EACtB,cAAc,EAAE,MAAM,WAAW,EACjC,YAAY,EAAE,MAAM,MAAM,EAC1B,QAAQ,EAAE,MAAM,MAAM,EACtB,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI;IAOxG;;;;;;;OAOG;IACI,WAAW,IAAI,QAAQ;IAuB9B;;;;;;;;OAQG;IACI,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,EAAE;IAW1E;;;;;;;;;OASG;IACU,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IA0BnF;;;;;;;;OAQG;IACU,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,4BAA4B,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB1F;;;;;;;;;;OAUG;IACU,WAAW,CAAC,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BtF;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;CAY7B"}
1
+ {"version":3,"file":"CognitiveMemoryBridge.d.ts","sourceRoot":"","sources":["../../../src/cognition/substrate/CognitiveMemoryBridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AACnF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EACV,sBAAsB,EACtB,WAAW,EACX,gBAAgB,EAChB,UAAU,EACX,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,OAAO,EAAsB,MAAM,QAAQ,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAExD;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACvC,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oDAAoD;IACpD,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAUD;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,4EAA4E;IAC5E,IAAI,EAAE,UAAU,CAAC;IACjB,6EAA6E;IAC7E,UAAU,EAAE,gBAAgB,CAAC;IAC7B,0DAA0D;IAC1D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0DAA0D;IAC1D,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,QAAQ,CAAC;IAC/C,8DAA8D;IAC9D,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;;;;;;;;;GAUG;AACH,qBAAa,qBAAqB;IAY9B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAhBhC;;;;;;;;;OASG;gBAEgB,eAAe,EAAE,uBAAuB,EACxC,OAAO,EAAE,MAAM,OAAO,EACtB,cAAc,EAAE,MAAM,WAAW,EACjC,YAAY,EAAE,MAAM,MAAM,EAC1B,QAAQ,EAAE,MAAM,MAAM,EACtB,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI;IAOxG;;;;;;;OAOG;IACI,WAAW,IAAI,QAAQ;IAuB9B;;;;;;;;OAQG;IACI,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,EAAE;IAW1E;;;;;;;;;;;;;;;;;;;;OAoBG;IACI,oBAAoB,CACzB,IAAI,CAAC,EAAE,wBAAwB,GAC9B,KAAK,CAAC;QAAE,KAAK,EAAE,WAAW,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAiCjD;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAQrB;;;;;;;;;;;;;;OAcG;IACU,eAAe,CAC1B,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,wBAAwB,GAC9B,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IAgCzC;;;;;;;;OAQG;IACU,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,4BAA4B,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB1F;;;;;;;;;;OAUG;IACU,WAAW,CAAC,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BtF;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;CAY7B"}
@@ -11,6 +11,13 @@
11
11
  * @module cognitive_substrate/CognitiveMemoryBridge
12
12
  */
13
13
  import { GMIMood, GMIInteractionType } from './IGMI.js';
14
+ /**
15
+ * Returns the value when it is a string with visible characters. The value is
16
+ * not trimmed, so ids match the way the bridge wrote them.
17
+ */
18
+ function nonBlank(value) {
19
+ return typeof value === 'string' && value.trim().length > 0 ? value : undefined;
20
+ }
14
21
  /**
15
22
  * Bridges a GMI instance with the Cognitive Memory subsystem.
16
23
  *
@@ -93,22 +100,97 @@ export class CognitiveMemoryBridge {
93
100
  ].filter((value) => typeof value === 'string' && value.trim().length > 0);
94
101
  return Array.from(new Set(tags));
95
102
  }
103
+ /**
104
+ * Lists the memory scopes a turn may read, in the shape
105
+ * `CognitiveRetrievalOptions.scopes` expects:
106
+ *
107
+ * - `user` scope for the user id, and for the session id and GMI id, where
108
+ * {@link CognitiveMemoryBridge.syncForTurn} and
109
+ * {@link CognitiveMemoryBridge.encode} place user input, assistant replies
110
+ * and traces written without a user;
111
+ * - `thread` scope for the conversation id and the session id;
112
+ * - `persona` scope for the persona id and for the per-user persona id
113
+ * (`<userId>::<personaId>`) that the memory tools write;
114
+ * - `organization` scope for the turn's organization id and the user
115
+ * context's, which the memory tools write under, when known;
116
+ * - every scope for the memory manager's owner id, under which the manager
117
+ * files a trace written without a scope id.
118
+ *
119
+ * Scopes owned by other users or other sessions are never listed.
120
+ *
121
+ * @param turn - Session, conversation and organization of the current turn.
122
+ * @returns A de-duplicated scope list.
123
+ */
124
+ buildRetrievalScopes(turn) {
125
+ const userId = nonBlank(this.getUserContext()?.userId);
126
+ const personaId = nonBlank(this.getPersonaId());
127
+ const sessionId = nonBlank(turn?.sessionId);
128
+ const scopes = [];
129
+ const seen = new Set();
130
+ const add = (scope, scopeId) => {
131
+ if (!scopeId || seen.has(`${scope}:${scopeId}`))
132
+ return;
133
+ seen.add(`${scope}:${scopeId}`);
134
+ scopes.push({ scope, scopeId });
135
+ };
136
+ add('user', userId);
137
+ add('user', sessionId);
138
+ add('user', nonBlank(this.getGmiId()));
139
+ add('thread', nonBlank(turn?.conversationId));
140
+ add('thread', sessionId);
141
+ add('persona', personaId);
142
+ if (userId && personaId) {
143
+ add('persona', `${userId}::${personaId}`);
144
+ }
145
+ add('organization', nonBlank(turn?.organizationId));
146
+ add('organization', nonBlank(this.getUserContext()?.organizationId));
147
+ // The manager files a trace written without a scope id under its own
148
+ // owner id, whatever the scope (AgentMemory.remember writes `thread`).
149
+ const owner = this.memoryOwnerId();
150
+ for (const scope of ['user', 'thread', 'persona', 'organization']) {
151
+ add(scope, owner);
152
+ }
153
+ return scopes;
154
+ }
155
+ /**
156
+ * The memory manager's owner id (`CognitiveMemoryConfig.agentId`), the scope
157
+ * id the manager gives a trace written without one (consolidated schemas,
158
+ * `AgentMemory.remember` with default options).
159
+ */
160
+ memoryOwnerId() {
161
+ try {
162
+ return nonBlank(this.cognitiveMemory.getConfig?.()?.agentId);
163
+ }
164
+ catch {
165
+ return undefined;
166
+ }
167
+ }
96
168
  /**
97
169
  * Assembles a cognitive memory context suitable for injection into the LLM prompt.
98
170
  *
99
171
  * Queries the memory store for relevant traces, assembles them into a text
100
172
  * block with token budget constraints, and returns the assembled context.
173
+ * Retrieval is limited to the scopes returned by
174
+ * {@link CognitiveMemoryBridge.buildRetrievalScopes}, so a memory backend
175
+ * shared by several sessions never surfaces another user's or another
176
+ * session's traces in this turn's prompt.
101
177
  *
102
178
  * @param query - The user's current input text to use as a retrieval query.
179
+ * @param turn - Session, conversation and organization of the current turn.
103
180
  * @returns The assembled memory context, or null if cognitive memory is unavailable
104
181
  * or the query is empty.
105
182
  */
106
- async assembleContext(query) {
183
+ async assembleContext(query, turn) {
107
184
  if (!query.trim()) {
108
185
  return null;
109
186
  }
110
187
  try {
111
- const context = await this.cognitiveMemory.assembleForPrompt(query, 1600, this.getPadState());
188
+ const scopes = this.buildRetrievalScopes(turn);
189
+ // An empty list would make the store search every scope it knows of.
190
+ if (scopes.length === 0) {
191
+ return null;
192
+ }
193
+ const context = await this.cognitiveMemory.assembleForPrompt(query, 1600, this.getPadState(), { scopes });
112
194
  if (context.contextText.trim()) {
113
195
  this.addTraceEntry('DEBUG', 'Cognitive memory context assembled.', {
114
196
  tokensUsed: context.tokensUsed,
@@ -1 +1 @@
1
- {"version":3,"file":"CognitiveMemoryBridge.js","sourceRoot":"","sources":["../../../src/cognition/substrate/CognitiveMemoryBridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CognitiveMemoryBridge.js","sourceRoot":"","sources":["../../../src/cognition/substrate/CognitiveMemoryBridge.ts"],"names":[],"mappings":"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"}
@@ -60,14 +60,16 @@ export declare class ConversationHistoryManager {
60
60
  * distinguish success from failure.
61
61
  *
62
62
  * @param toolCallResult - The result from a tool execution.
63
+ * @returns The tool-role message that was appended.
63
64
  */
64
- updateWithToolResult(toolCallResult: ToolCallResult): void;
65
+ updateWithToolResult(toolCallResult: ToolCallResult): ChatMessage;
65
66
  /**
66
67
  * Builds a `ConversationMessage[]` snapshot of the current history, suitable
67
68
  * for injection into the PromptEngine's `PromptComponents`.
68
69
  *
69
70
  * Each ChatMessage is converted to the richer ConversationMessage format,
70
- * preserving tool_calls, role mappings, and content normalization.
71
+ * preserving tool_calls, thinking blocks, role mappings, and content
72
+ * normalization.
71
73
  *
72
74
  * @returns An array of ConversationMessage objects mirroring the current history.
73
75
  */
@@ -87,7 +89,9 @@ export declare class ConversationHistoryManager {
87
89
  * (AgentOS internal format).
88
90
  *
89
91
  * Handles role mapping, content normalization, and tool_calls conversion
90
- * (string arguments are parsed to objects).
92
+ * (string arguments are parsed to objects). An assistant turn's thinking
93
+ * blocks are kept as they are, because Anthropic rejects a tool-loop
94
+ * request that does not replay them verbatim.
91
95
  *
92
96
  * @param chatMsg - The ChatMessage to convert.
93
97
  * @returns The equivalent ConversationMessage.
@@ -99,7 +103,7 @@ export declare class ConversationHistoryManager {
99
103
  *
100
104
  * Messages with roles ERROR or THOUGHT return `null` as they have no
101
105
  * meaningful ChatMessage representation. SUMMARY messages are prefixed
102
- * with `[Conversation Summary]`.
106
+ * with `[Conversation Summary]`. Thinking blocks carry over unchanged.
103
107
  *
104
108
  * @param message - The ConversationMessage to convert.
105
109
  * @returns The equivalent ChatMessage, or null if the role is not representable.
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationHistoryManager.d.ts","sourceRoot":"","sources":["../../../src/cognition/substrate/ConversationHistoryManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,EACL,mBAAmB,EAGpB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAEL,YAAY,EACZ,cAAc,EACf,MAAM,QAAQ,CAAC;AAIhB;;;;;;;;GAQG;AACH,qBAAa,0BAA0B;IAWnC,OAAO,CAAC,gBAAgB;IAV1B,2DAA2D;IAC3D,OAAO,CAAC,mBAAmB,CAAqB;IAEhD;;;;;OAKG;gBAEO,gBAAgB,GAAE,MAA+C;IAO3E;;;;;OAKG;IACH,IAAW,OAAO,IAAI,SAAS,WAAW,EAAE,CAE3C;IAED;;;;;;;;;;;OAWG;IACI,MAAM,CAAC,SAAS,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;IAgDlE;;;;;;;;OAQG;IACI,oBAAoB,CAAC,cAAc,EAAE,cAAc,GAAG,IAAI;IAajE;;;;;;;;OAQG;IACI,cAAc,IAAI,mBAAmB,EAAE;IAM9C;;;;;;;;OAQG;IACI,OAAO,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,GAAG,IAAI;IAMhE;;;;;;;;;OASG;IACI,4BAA4B,CAAC,OAAO,EAAE,WAAW,GAAG,mBAAmB;IAwB9E;;;;;;;;;;OAUG;IACI,oBAAoB,CACzB,OAAO,EAAE,mBAAmB,GAC3B,WAAW,GAAG,IAAI;IAsCrB;;;;;;;OAOG;IACI,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAIvC;;;OAGG;IACI,KAAK,IAAI,IAAI;IAQpB;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IAahC;;;;;;OAMG;IACH,OAAO,CAAC,2BAA2B;IAenC;;;;;OAKG;IACH,OAAO,CAAC,mCAAmC;IAY3C;;;;;;;;OAQG;IACH,OAAO,CAAC,sBAAsB;CAgB/B"}
1
+ {"version":3,"file":"ConversationHistoryManager.d.ts","sourceRoot":"","sources":["../../../src/cognition/substrate/ConversationHistoryManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,EACL,mBAAmB,EAGpB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAEL,YAAY,EACZ,cAAc,EACf,MAAM,QAAQ,CAAC;AAIhB;;;;;;;;GAQG;AACH,qBAAa,0BAA0B;IAWnC,OAAO,CAAC,gBAAgB;IAV1B,2DAA2D;IAC3D,OAAO,CAAC,mBAAmB,CAAqB;IAEhD;;;;;OAKG;gBAEO,gBAAgB,GAAE,MAA+C;IAO3E;;;;;OAKG;IACH,IAAW,OAAO,IAAI,SAAS,WAAW,EAAE,CAE3C;IAED;;;;;;;;;;;OAWG;IACI,MAAM,CAAC,SAAS,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;IAgDlE;;;;;;;;;OASG;IACI,oBAAoB,CAAC,cAAc,EAAE,cAAc,GAAG,WAAW;IAexE;;;;;;;;;OASG;IACI,cAAc,IAAI,mBAAmB,EAAE;IAM9C;;;;;;;;OAQG;IACI,OAAO,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,GAAG,IAAI;IAMhE;;;;;;;;;;;OAWG;IACI,4BAA4B,CAAC,OAAO,EAAE,WAAW,GAAG,mBAAmB;IA4B9E;;;;;;;;;;OAUG;IACI,oBAAoB,CACzB,OAAO,EAAE,mBAAmB,GAC3B,WAAW,GAAG,IAAI;IAyCrB;;;;;;;OAOG;IACI,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAIvC;;;OAGG;IACI,KAAK,IAAI,IAAI;IAQpB;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IAahC;;;;;;OAMG;IACH,OAAO,CAAC,2BAA2B;IAenC;;;;;OAKG;IACH,OAAO,CAAC,mCAAmC;IAY3C;;;;;;;;OAQG;IACH,OAAO,CAAC,sBAAsB;CAgB/B"}
@@ -110,9 +110,10 @@ export class ConversationHistoryManager {
110
110
  * distinguish success from failure.
111
111
  *
112
112
  * @param toolCallResult - The result from a tool execution.
113
+ * @returns The tool-role message that was appended.
113
114
  */
114
115
  updateWithToolResult(toolCallResult) {
115
- this.conversationHistory.push({
116
+ const message = {
116
117
  role: 'tool',
117
118
  tool_call_id: toolCallResult.toolCallId,
118
119
  name: toolCallResult.toolName,
@@ -121,14 +122,17 @@ export class ConversationHistoryManager {
121
122
  : typeof toolCallResult.output === 'string'
122
123
  ? toolCallResult.output
123
124
  : JSON.stringify(toolCallResult.output),
124
- });
125
+ };
126
+ this.conversationHistory.push(message);
127
+ return message;
125
128
  }
126
129
  /**
127
130
  * Builds a `ConversationMessage[]` snapshot of the current history, suitable
128
131
  * for injection into the PromptEngine's `PromptComponents`.
129
132
  *
130
133
  * Each ChatMessage is converted to the richer ConversationMessage format,
131
- * preserving tool_calls, role mappings, and content normalization.
134
+ * preserving tool_calls, thinking blocks, role mappings, and content
135
+ * normalization.
132
136
  *
133
137
  * @returns An array of ConversationMessage objects mirroring the current history.
134
138
  */
@@ -154,7 +158,9 @@ export class ConversationHistoryManager {
154
158
  * (AgentOS internal format).
155
159
  *
156
160
  * Handles role mapping, content normalization, and tool_calls conversion
157
- * (string arguments are parsed to objects).
161
+ * (string arguments are parsed to objects). An assistant turn's thinking
162
+ * blocks are kept as they are, because Anthropic rejects a tool-loop
163
+ * request that does not replay them verbatim.
158
164
  *
159
165
  * @param chatMsg - The ChatMessage to convert.
160
166
  * @returns The equivalent ConversationMessage.
@@ -174,6 +180,9 @@ export class ConversationHistoryManager {
174
180
  ...(tc.thoughtSignature ? { thoughtSignature: tc.thoughtSignature } : {}),
175
181
  }));
176
182
  }
183
+ if (chatMsg.thinkingBlocks && chatMsg.thinkingBlocks.length > 0) {
184
+ conversationMessage.thinkingBlocks = [...chatMsg.thinkingBlocks];
185
+ }
177
186
  return conversationMessage;
178
187
  }
179
188
  /**
@@ -182,7 +191,7 @@ export class ConversationHistoryManager {
182
191
  *
183
192
  * Messages with roles ERROR or THOUGHT return `null` as they have no
184
193
  * meaningful ChatMessage representation. SUMMARY messages are prefixed
185
- * with `[Conversation Summary]`.
194
+ * with `[Conversation Summary]`. Thinking blocks carry over unchanged.
186
195
  *
187
196
  * @param message - The ConversationMessage to convert.
188
197
  * @returns The equivalent ChatMessage, or null if the role is not representable.
@@ -217,6 +226,9 @@ export class ConversationHistoryManager {
217
226
  ...(toolCall.thoughtSignature ? { thoughtSignature: toolCall.thoughtSignature } : {}),
218
227
  }))
219
228
  : undefined,
229
+ ...(Array.isArray(message.thinkingBlocks) && message.thinkingBlocks.length > 0
230
+ ? { thinkingBlocks: [...message.thinkingBlocks] }
231
+ : {}),
220
232
  };
221
233
  }
222
234
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ConversationHistoryManager.js","sourceRoot":"","sources":["../../../src/cognition/substrate/ConversationHistoryManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAEL,yBAAyB,EACzB,WAAW,GACZ,MAAM,6CAA6C,CAAC;AACrD,OAAO,EACL,kBAAkB,GAGnB,MAAM,QAAQ,CAAC;AAEhB,MAAM,sCAAsC,GAAG,EAAE,CAAC;AAElD;;;;;;;;GAQG;AACH,MAAM,OAAO,0BAA0B;IAIrC;;;;;OAKG;IACH,YACU,mBAA2B,sCAAsC;QAAjE,qBAAgB,GAAhB,gBAAgB,CAAiD;QAV3E,2DAA2D;QACnD,wBAAmB,GAAkB,EAAE,CAAC;IAU7C,CAAC;IAEJ,8EAA8E;IAC9E,aAAa;IACb,8EAA8E;IAE9E;;;;;OAKG;IACH,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED;;;;;;;;;;;OAWG;IACI,MAAM,CAAC,SAAuB,EAAE,WAAoB;QACzD,IAAI,YAAY,GAAuB,IAAI,CAAC;QAE5C,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,KAAK,kBAAkB,CAAC,IAAI;gBAC1B,YAAY,GAAG;oBACb,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,SAAS,CAAC,OAAiB;oBACpC,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE,QAAQ,IAAI,SAAS,CAAC,MAAM;iBACvD,CAAC;gBACF,MAAM;YACR,KAAK,kBAAkB,CAAC,kBAAkB;gBACxC,YAAY,GAAG;oBACb,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,SAAS,CAAC,OAAc;oBACjC,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE,QAAQ,IAAI,SAAS,CAAC,MAAM;iBACvD,CAAC;gBACF,MAAM;YACR,KAAK,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAC;gBACtC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC;oBAC9C,CAAC,CAAE,SAAS,CAAC,OAA4B;oBACzC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAyB,CAAC,CAAC;gBAC1C,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;oBACvB,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;wBAC5B,IAAI,EAAE,MAAM;wBACZ,YAAY,EAAE,MAAM,CAAC,UAAU;wBAC/B,IAAI,EAAE,MAAM,CAAC,QAAQ;wBACrB,OAAO,EACL,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;4BAC/B,CAAC,CAAC,MAAM,CAAC,MAAM;4BACf,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;qBACpC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YACD,KAAK,kBAAkB,CAAC,cAAc;gBACpC,YAAY,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,OAAiB,EAAE,CAAC;gBACxE,MAAM;QACV,CAAC;QACD,IAAI,YAAY;YAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAE9D,MAAM,YAAY,GAAG,WAAW,IAAI,IAAI,CAAC,gBAAgB,CAAC;QAC1D,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,YAAY,EAAE,CAAC;YACnD,MAAM,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,YAAY,CAAC;YACnE,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACI,oBAAoB,CAAC,cAA8B;QACxD,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAC5B,IAAI,EAAE,MAAM;YACZ,YAAY,EAAE,cAAc,CAAC,UAAU;YACvC,IAAI,EAAE,cAAc,CAAC,QAAQ;YAC7B,OAAO,EAAE,cAAc,CAAC,OAAO;gBAC7B,CAAC,CAAC,oBAAoB,cAAc,CAAC,QAAQ,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,YAAY,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE;gBACzH,CAAC,CAAC,OAAO,cAAc,CAAC,MAAM,KAAK,QAAQ;oBACzC,CAAC,CAAC,cAAc,CAAC,MAAM;oBACvB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC;SAC5C,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACI,cAAc;QACnB,OAAO,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CACxC,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,CACvC,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACI,OAAO,CAAC,mBAA0C;QACvD,IAAI,CAAC,mBAAmB,GAAG,mBAAmB;aAC3C,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;aAClD,MAAM,CAAC,CAAC,OAAO,EAA0B,EAAE,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC;IACnE,CAAC;IAED;;;;;;;;;OASG;IACI,4BAA4B,CAAC,OAAoB;QACtD,MAAM,mBAAmB,GAAG,yBAAyB,CACnD,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,IAAI,CAAC,EAC3C,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,OAAO,CAAC,EACjD;YACE,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,YAAY,EAAE,OAAO,CAAC,YAAY;SACnC,CACF,CAAC;QAEF,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxD,mBAAmB,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU;iBAChD,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC;iBAClC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACV,EAAE,EAAE,EAAE,CAAC,EAAE;gBACT,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI;gBACtB,SAAS,EAAE,IAAI,CAAC,sBAAsB,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAC7D,GAAG,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,EAAE,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC1E,CAAC,CAAC,CAAC;QACR,CAAC;QAED,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED;;;;;;;;;;OAUG;IACI,oBAAoB,CACzB,OAA4B;QAE5B,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,OAAO,EAAE,CAAC;YAC/E,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,GACR,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,OAAO;YACzE,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,SAAS;gBACtC,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI;oBACjC,CAAC,CAAC,MAAM;oBACR,CAAC,CAAC,MAAM,CAAC;QAEjB,MAAM,OAAO,GACX,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,OAAO,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;YACzE,CAAC,CAAC,2BAA2B,OAAO,CAAC,OAAO,EAAE;YAC9C,CAAC,CAAC,IAAI,CAAC,mCAAmC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAEhE,OAAO;YACL,IAAI;YACJ,OAAO;YACP,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;gBAC3C,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;oBAClC,EAAE,EAAE,QAAQ,CAAC,EAAE;oBACf,IAAI,EAAE,UAAmB;oBACzB,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ,CAAC,IAAI;wBACnB,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,IAAI,EAAE,CAAC;qBACpD;oBACD,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACtF,CAAC,CAAC;gBACL,CAAC,CAAC,SAAS;SACd,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACI,IAAI,CAAC,OAAoB;QAC9B,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAED;;;OAGG;IACI,KAAK;QACV,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;IAChC,CAAC;IAED,8EAA8E;IAC9E,kBAAkB;IAClB,8EAA8E;IAE9E;;;;;OAKG;IACK,wBAAwB,CAAC,IAAyB;QACxD,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,QAAQ;gBACX,OAAO,WAAW,CAAC,MAAM,CAAC;YAC5B,KAAK,WAAW;gBACd,OAAO,WAAW,CAAC,SAAS,CAAC;YAC/B,KAAK,MAAM;gBACT,OAAO,WAAW,CAAC,IAAI,CAAC;YAC1B;gBACE,OAAO,WAAW,CAAC,IAAI,CAAC;QAC5B,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACK,2BAA2B,CACjC,OAA+B;QAE/B,IAAI,OAAO,OAAO,KAAK,WAAW,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YACpD,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,OAAoD,CAAC;IAC9D,CAAC;IAED;;;;;OAKG;IACK,mCAAmC,CACzC,OAAuC;QAEvC,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YACpD,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAA2B,CAAC;QACtE,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAED;;;;;;;;OAQG;IACK,sBAAsB,CAAC,IAAa;QAC1C,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC;gBACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC1B,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QACD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,OAAO,IAA2B,CAAC;QACrC,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;CACF"}
1
+ {"version":3,"file":"ConversationHistoryManager.js","sourceRoot":"","sources":["../../../src/cognition/substrate/ConversationHistoryManager.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ import { IGMI, GMIBaseConfig, GMITurnInput, GMIOutputChunk, GMIPrimeState, Reaso
15
15
  import { IPersonaDefinition } from './personas/IPersonaDefinition';
16
16
  import { ConversationMessage } from '../../core/conversation/ConversationMessage';
17
17
  import type { ICognitiveMemoryManager } from '../memory/CognitiveMemoryManager.js';
18
+ import { type NormalizedUserFeedback } from './userFeedback';
18
19
  /**
19
20
  * @class GMI
20
21
  * @implements {IGMI}
@@ -40,6 +41,14 @@ export declare class GMI implements IGMI {
40
41
  private currentTaskContext;
41
42
  private reasoningTrace;
42
43
  private conversationHistoryManager;
44
+ /**
45
+ * Turn ownership. Each processTurnStream call takes the next number and
46
+ * owns the lifecycle state until a newer turn starts; a turn that no longer
47
+ * owns it (a failed turn whose generator is drained after the next turn
48
+ * began) leaves the state and the trace's turn id to the newer turn.
49
+ */
50
+ private turnSequence;
51
+ private stateOwnerTurn;
43
52
  private memoryBridge;
44
53
  private sentimentTracker;
45
54
  private metapromptExecutor;
@@ -80,6 +89,29 @@ export declare class GMI implements IGMI {
80
89
  getWorkingMemorySnapshot(): Promise<Record<string, any>>;
81
90
  /** @inheritdoc */
82
91
  getCognitiveMemoryManager(): ICognitiveMemoryManager | undefined;
92
+ /**
93
+ * Records user feedback on this instance. Adds a reasoning-trace entry
94
+ * (WARNING for negative feedback, DEBUG otherwise) and, when cognitive memory
95
+ * is configured, encodes the feedback as an episodic memory of the user. A
96
+ * correction is also encoded as a semantic memory so later turns can recall
97
+ * it. Memory failures are traced by the bridge and never thrown.
98
+ *
99
+ * @param feedback - Normalized feedback plus the id of the user who sent it.
100
+ */
101
+ recordUserFeedback(feedback: NormalizedUserFeedback & {
102
+ userId: string;
103
+ }): Promise<void>;
104
+ /**
105
+ * Sets one personality trait on this instance only. The persona definition
106
+ * is shared by every GMI of that persona (it is the GMIManager registry
107
+ * object), so the change is made on a copy that replaces this instance's
108
+ * active persona; other sessions and GMIs created later keep the original.
109
+ *
110
+ * @param trait - Trait key, e.g. `openness` or `honesty`.
111
+ * @param value - New trait value.
112
+ * @throws {GMIError} When the GMI has not been initialized.
113
+ */
114
+ setPersonalityTrait(trait: string, value: number): void;
83
115
  /**
84
116
  * Adds an entry to the GMI's reasoning trace.
85
117
  * @private
@@ -88,9 +120,25 @@ export declare class GMI implements IGMI {
88
120
  private stringifyTurnContent;
89
121
  private getConversationIdForTurn;
90
122
  private getOrganizationIdForTurn;
123
+ /**
124
+ * Error results for the calls of a tool round that produced none: the call
125
+ * that was running when the round failed and the calls not yet started.
126
+ * Recording them leaves a history in which every tool call the assistant
127
+ * message declared has an answer, which the next request needs (providers
128
+ * reject an unanswered tool call, and a later turn replays this history).
129
+ *
130
+ * @param requests - Every call the round's assistant message declared, in order.
131
+ * @param finishedCount - How many of them already produced a result.
132
+ * @param inFlight - The call that was running when the round failed, if any.
133
+ * @param error - Why the round stopped.
134
+ * @returns One error result per unanswered call.
135
+ */
136
+ private resultsForUnfinishedToolCalls;
91
137
  private buildToolSessionData;
92
138
  /**
93
- * Ensures the GMI is initialized and in a READY state.
139
+ * Ensures the GMI is initialized and idle: READY, or ERRORED after a failed
140
+ * turn. ERRORED only records that the last turn failed; the instance still
141
+ * works, so it does not block the next turn or the memory callbacks.
94
142
  * @private
95
143
  */
96
144
  private ensureReady;
@@ -111,6 +159,38 @@ export declare class GMI implements IGMI {
111
159
  * @returns {PromptExecutionContext} The context for prompt construction.
112
160
  */
113
161
  private buildPromptExecutionContext;
162
+ /**
163
+ * Assembles the conversation history and user input for one model call of
164
+ * a turn.
165
+ *
166
+ * The history is the conversation before this turn, then this turn's own
167
+ * messages. The conversation before the turn is the host's durable history
168
+ * (`metadata.conversationHistoryForPrompt`) when the host passed a non-empty
169
+ * one, which ends before the current user message; otherwise it is this
170
+ * GMI's history as the turn found it, without the user message the turn
171
+ * recorded. The turn's own messages are that user message and the assistant
172
+ * replies and tool results of earlier calls in the turn, so a tool round's
173
+ * calls and results reach the next call on either history.
174
+ *
175
+ * On a turn's first call, plain text input travels as `userInput`, which the
176
+ * chat template places last and attaches retrieved context to; the durable
177
+ * path has always sent it that way. Structured (multimodal) input stays a
178
+ * history message, so its parts reach the provider intact and only once.
179
+ *
180
+ * @param turn - Where the turn's messages come from.
181
+ * @param turn.durableHistory - The host's history before this turn, or
182
+ * `null` to use this GMI's own history.
183
+ * @param turn.historyAtTurnStart - This GMI's history once the turn input
184
+ * was recorded.
185
+ * @param turn.currentUserMessage - The user message the turn input added,
186
+ * when the turn is user-initiated.
187
+ * @param turn.turnMessages - Assistant replies and tool results the turn has
188
+ * added so far.
189
+ * @returns The `conversationHistory` and `userInput` prompt components,
190
+ * and how many history messages belong to this turn (token budgeting
191
+ * leaves those whole).
192
+ */
193
+ private buildPromptConversation;
114
194
  /**
115
195
  * Determines if RAG retrieval should be triggered based on the current query and persona configuration.
116
196
  * @private
@@ -119,10 +199,17 @@ export declare class GMI implements IGMI {
119
199
  */
120
200
  private shouldTriggerRAGRetrieval;
121
201
  /**
122
- * Determines the prompt format type based on model provider.
123
- * @param modelDetails - Model metadata from the provider manager.
124
- * @param providerId - The provider identifier.
125
- * @returns The prompt format type string.
202
+ * Returns the PromptEngine template GMI builds its prompts with.
203
+ *
204
+ * GMI hands the constructed prompt to `IProvider.generateCompletionStream`,
205
+ * whose input is an OpenAI-style `ChatMessage[]` for every provider; each
206
+ * provider converts that array to its own wire format (Anthropic messages
207
+ * with a separate system field, Gemini contents with a systemInstruction).
208
+ * A provider-specific template would hand the provider another shape; the
209
+ * `anthropic_messages` template, for one, returns an object with the
210
+ * system prompt split out, which AnthropicProvider cannot iterate.
211
+ *
212
+ * @returns Always `'openai_chat'`.
126
213
  */
127
214
  private determinePromptFormat;
128
215
  /**
@@ -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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"}