agentfootprint 2.2.0 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (154) hide show
  1. package/AGENTS.md +52 -0
  2. package/CLAUDE.md +52 -0
  3. package/README.md +49 -0
  4. package/README.proposed.md +258 -0
  5. package/ai-instructions/claude-code/SKILL.md +24 -5
  6. package/ai-instructions/clinerules +22 -5
  7. package/ai-instructions/copilot-instructions.md +22 -5
  8. package/ai-instructions/cursor/agentfootprint.md +22 -5
  9. package/ai-instructions/kiro/agentfootprint.md +22 -5
  10. package/ai-instructions/windsurfrules +22 -5
  11. package/dist/adapters/llm/AnthropicProvider.js +0 -31
  12. package/dist/adapters/llm/AnthropicProvider.js.map +1 -1
  13. package/dist/adapters/llm/BedrockProvider.js +2 -28
  14. package/dist/adapters/llm/BedrockProvider.js.map +1 -1
  15. package/dist/adapters/llm/BrowserAnthropicProvider.js +1 -31
  16. package/dist/adapters/llm/BrowserAnthropicProvider.js.map +1 -1
  17. package/dist/adapters/llm/BrowserOpenAIProvider.js +1 -11
  18. package/dist/adapters/llm/BrowserOpenAIProvider.js.map +1 -1
  19. package/dist/adapters/llm/MockProvider.js +35 -1
  20. package/dist/adapters/llm/MockProvider.js.map +1 -1
  21. package/dist/adapters/llm/OpenAIProvider.js +3 -29
  22. package/dist/adapters/llm/OpenAIProvider.js.map +1 -1
  23. package/dist/adapters/memory/agentcore.js +305 -0
  24. package/dist/adapters/memory/agentcore.js.map +1 -0
  25. package/dist/adapters/memory/redis.js +287 -0
  26. package/dist/adapters/memory/redis.js.map +1 -0
  27. package/dist/esm/adapters/llm/AnthropicProvider.js +0 -31
  28. package/dist/esm/adapters/llm/AnthropicProvider.js.map +1 -1
  29. package/dist/esm/adapters/llm/BedrockProvider.js +2 -28
  30. package/dist/esm/adapters/llm/BedrockProvider.js.map +1 -1
  31. package/dist/esm/adapters/llm/BrowserAnthropicProvider.js +1 -31
  32. package/dist/esm/adapters/llm/BrowserAnthropicProvider.js.map +1 -1
  33. package/dist/esm/adapters/llm/BrowserOpenAIProvider.js +1 -11
  34. package/dist/esm/adapters/llm/BrowserOpenAIProvider.js.map +1 -1
  35. package/dist/esm/adapters/llm/MockProvider.js +35 -1
  36. package/dist/esm/adapters/llm/MockProvider.js.map +1 -1
  37. package/dist/esm/adapters/llm/OpenAIProvider.js +3 -29
  38. package/dist/esm/adapters/llm/OpenAIProvider.js.map +1 -1
  39. package/dist/esm/adapters/memory/agentcore.js +301 -0
  40. package/dist/esm/adapters/memory/agentcore.js.map +1 -0
  41. package/dist/esm/adapters/memory/redis.js +283 -0
  42. package/dist/esm/adapters/memory/redis.js.map +1 -0
  43. package/dist/esm/index.js +2 -2
  44. package/dist/esm/index.js.map +1 -1
  45. package/dist/esm/lib/injection-engine/index.js +0 -54
  46. package/dist/esm/lib/injection-engine/index.js.map +1 -1
  47. package/dist/esm/lib/mcp/index.js +1 -0
  48. package/dist/esm/lib/mcp/index.js.map +1 -1
  49. package/dist/esm/lib/mcp/mcpClient.js +29 -24
  50. package/dist/esm/lib/mcp/mcpClient.js.map +1 -1
  51. package/dist/esm/lib/mcp/mockMcpClient.js +97 -0
  52. package/dist/esm/lib/mcp/mockMcpClient.js.map +1 -0
  53. package/dist/esm/lib/rag/defineRAG.js +0 -18
  54. package/dist/esm/lib/rag/defineRAG.js.map +1 -1
  55. package/dist/esm/lib/rag/indexDocuments.js +39 -4
  56. package/dist/esm/lib/rag/indexDocuments.js.map +1 -1
  57. package/dist/esm/memory/causal/loadSnapshot.js +1 -1
  58. package/dist/esm/memory/define.js +0 -14
  59. package/dist/esm/memory/define.js.map +1 -1
  60. package/dist/esm/memory/define.types.js +0 -10
  61. package/dist/esm/memory/define.types.js.map +1 -1
  62. package/dist/esm/resilience/index.js +0 -44
  63. package/dist/esm/resilience/index.js.map +1 -1
  64. package/dist/esm/stream.js +0 -29
  65. package/dist/esm/stream.js.map +1 -1
  66. package/dist/index.js +2 -1
  67. package/dist/index.js.map +1 -1
  68. package/dist/instructions.js +21 -0
  69. package/dist/instructions.js.map +1 -0
  70. package/dist/lib/injection-engine/index.js +0 -54
  71. package/dist/lib/injection-engine/index.js.map +1 -1
  72. package/dist/lib/instructions/defineInstruction.js +35 -0
  73. package/dist/lib/instructions/defineInstruction.js.map +1 -0
  74. package/dist/lib/instructions/evaluator.js +38 -0
  75. package/dist/lib/instructions/evaluator.js.map +1 -0
  76. package/dist/lib/instructions/index.js +48 -0
  77. package/dist/lib/instructions/index.js.map +1 -0
  78. package/dist/lib/instructions/types.js +22 -0
  79. package/dist/lib/instructions/types.js.map +1 -0
  80. package/dist/lib/mcp/index.js +3 -1
  81. package/dist/lib/mcp/index.js.map +1 -1
  82. package/dist/lib/mcp/mcpClient.js +29 -24
  83. package/dist/lib/mcp/mcpClient.js.map +1 -1
  84. package/dist/lib/mcp/mockMcpClient.js +101 -0
  85. package/dist/lib/mcp/mockMcpClient.js.map +1 -0
  86. package/dist/lib/rag/defineRAG.js +0 -18
  87. package/dist/lib/rag/defineRAG.js.map +1 -1
  88. package/dist/lib/rag/indexDocuments.js +39 -4
  89. package/dist/lib/rag/indexDocuments.js.map +1 -1
  90. package/dist/memory/causal/loadSnapshot.js +1 -1
  91. package/dist/memory/conversationHelpers.js +39 -0
  92. package/dist/memory/conversationHelpers.js.map +1 -0
  93. package/dist/memory/define.js +0 -14
  94. package/dist/memory/define.js.map +1 -1
  95. package/dist/memory/define.types.js +0 -10
  96. package/dist/memory/define.types.js.map +1 -1
  97. package/dist/resilience/index.js +0 -44
  98. package/dist/resilience/index.js.map +1 -1
  99. package/dist/stream.js +0 -29
  100. package/dist/stream.js.map +1 -1
  101. package/dist/types/adapters/llm/AnthropicProvider.d.ts +0 -31
  102. package/dist/types/adapters/llm/AnthropicProvider.d.ts.map +1 -1
  103. package/dist/types/adapters/llm/BedrockProvider.d.ts +2 -28
  104. package/dist/types/adapters/llm/BedrockProvider.d.ts.map +1 -1
  105. package/dist/types/adapters/llm/BrowserAnthropicProvider.d.ts +1 -31
  106. package/dist/types/adapters/llm/BrowserAnthropicProvider.d.ts.map +1 -1
  107. package/dist/types/adapters/llm/BrowserOpenAIProvider.d.ts +1 -11
  108. package/dist/types/adapters/llm/BrowserOpenAIProvider.d.ts.map +1 -1
  109. package/dist/types/adapters/llm/MockProvider.d.ts +45 -0
  110. package/dist/types/adapters/llm/MockProvider.d.ts.map +1 -1
  111. package/dist/types/adapters/llm/OpenAIProvider.d.ts +3 -29
  112. package/dist/types/adapters/llm/OpenAIProvider.d.ts.map +1 -1
  113. package/dist/types/adapters/memory/agentcore.d.ts +157 -0
  114. package/dist/types/adapters/memory/agentcore.d.ts.map +1 -0
  115. package/dist/types/adapters/memory/redis.d.ts +126 -0
  116. package/dist/types/adapters/memory/redis.d.ts.map +1 -0
  117. package/dist/types/index.d.ts +2 -2
  118. package/dist/types/index.d.ts.map +1 -1
  119. package/dist/types/instructions.d.ts +5 -0
  120. package/dist/types/instructions.d.ts.map +1 -0
  121. package/dist/types/lib/injection-engine/index.d.ts +0 -54
  122. package/dist/types/lib/injection-engine/index.d.ts.map +1 -1
  123. package/dist/types/lib/instructions/defineInstruction.d.ts +22 -0
  124. package/dist/types/lib/instructions/defineInstruction.d.ts.map +1 -0
  125. package/dist/types/lib/instructions/evaluator.d.ts +11 -0
  126. package/dist/types/lib/instructions/evaluator.d.ts.map +1 -0
  127. package/dist/types/lib/instructions/index.d.ts +44 -0
  128. package/dist/types/lib/instructions/index.d.ts.map +1 -0
  129. package/dist/types/lib/instructions/types.d.ts +100 -0
  130. package/dist/types/lib/instructions/types.d.ts.map +1 -0
  131. package/dist/types/lib/mcp/index.d.ts +1 -0
  132. package/dist/types/lib/mcp/index.d.ts.map +1 -1
  133. package/dist/types/lib/mcp/mcpClient.d.ts +0 -17
  134. package/dist/types/lib/mcp/mcpClient.d.ts.map +1 -1
  135. package/dist/types/lib/mcp/mockMcpClient.d.ts +66 -0
  136. package/dist/types/lib/mcp/mockMcpClient.d.ts.map +1 -0
  137. package/dist/types/lib/mcp/types.d.ts +2 -0
  138. package/dist/types/lib/mcp/types.d.ts.map +1 -1
  139. package/dist/types/lib/rag/defineRAG.d.ts +18 -21
  140. package/dist/types/lib/rag/defineRAG.d.ts.map +1 -1
  141. package/dist/types/lib/rag/indexDocuments.d.ts +30 -1
  142. package/dist/types/lib/rag/indexDocuments.d.ts.map +1 -1
  143. package/dist/types/memory/causal/loadSnapshot.d.ts +1 -1
  144. package/dist/types/memory/conversationHelpers.d.ts +19 -0
  145. package/dist/types/memory/conversationHelpers.d.ts.map +1 -0
  146. package/dist/types/memory/define.d.ts +0 -14
  147. package/dist/types/memory/define.d.ts.map +1 -1
  148. package/dist/types/memory/define.types.d.ts +2 -12
  149. package/dist/types/memory/define.types.d.ts.map +1 -1
  150. package/dist/types/resilience/index.d.ts +0 -44
  151. package/dist/types/resilience/index.d.ts.map +1 -1
  152. package/dist/types/stream.d.ts +0 -29
  153. package/dist/types/stream.d.ts.map +1 -1
  154. package/package.json +20 -1
@@ -1 +1 @@
1
- {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -22,7 +22,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
22
22
  };
23
23
  Object.defineProperty(exports, "__esModule", { value: true });
24
24
  exports.ConditionalBuilder = exports.Conditional = exports.ParallelBuilder = exports.Parallel = exports.SequenceBuilder = exports.Sequence = exports.defineTool = exports.AgentBuilder = exports.Agent = exports.LLMCallBuilder = exports.LLMCall = exports.renderThinkingLine = exports.selectThinkingState = exports.defaultThinkingTemplates = exports.renderCommentary = exports.extractCommentaryVars = exports.selectCommentaryKey = exports.defaultCommentaryTemplates = exports.boundaryRecorder = exports.BoundaryRecorder = exports.attachFlowchart = exports.LoggingDomains = exports.attachLogging = exports.attachThinking = exports.isPaused = exports.isPauseRequest = exports.askHuman = exports.pauseHere = exports.makeRunId = exports.RunnerBase = exports.typedEmit = exports.skillRecorder = exports.memoryRecorder = exports.evalRecorder = exports.permissionRecorder = exports.costRecorder = exports.compositionRecorder = exports.agentRecorder = exports.streamRecorder = exports.EmitBridge = exports.ContextRecorder = exports.parseSubflowPath = exports.buildEventMeta = exports.COMPOSITION_KEYS = exports.isInjectionKey = exports.injectionKeyForSlot = exports.INJECTION_KEYS = exports.EventDispatcher = exports.ALL_EVENT_TYPES = exports.EVENT_NAMES = void 0;
25
- exports.mcpClient = exports.indexDocuments = exports.defineRAG = exports.identityNamespace = exports.mockEmbedder = exports.InMemoryStore = exports.SNAPSHOT_PROJECTIONS = exports.MEMORY_TIMING = exports.MEMORY_STRATEGIES = exports.MEMORY_TYPES = exports.defineMemory = exports.llmFactExtractor = exports.patternFactExtractor = exports.llmExtractor = exports.heuristicExtractor = exports.autoPipeline = exports.semanticPipeline = exports.narrativePipeline = exports.factPipeline = exports.ephemeralPipeline = exports.defaultPipeline = exports.defineFact = exports.defineSteering = exports.defineSkill = exports.defineInstruction = exports.buildInjectionEngineSubflow = exports.evaluateInjections = exports.encodeSSE = exports.SSEFormatter = exports.toSSE = exports.createProvider = exports.BrowserOpenAIProvider = exports.browserOpenai = exports.BrowserAnthropicProvider = exports.browserAnthropic = exports.BedrockProvider = exports.bedrock = exports.ollama = exports.OpenAIProvider = exports.openai = exports.AnthropicProvider = exports.anthropic = exports.mock = exports.MockProvider = exports.LoopBuilder = exports.Loop = void 0;
25
+ exports.mockMcpClient = exports.mcpClient = exports.indexDocuments = exports.defineRAG = exports.identityNamespace = exports.mockEmbedder = exports.InMemoryStore = exports.SNAPSHOT_PROJECTIONS = exports.MEMORY_TIMING = exports.MEMORY_STRATEGIES = exports.MEMORY_TYPES = exports.defineMemory = exports.llmFactExtractor = exports.patternFactExtractor = exports.llmExtractor = exports.heuristicExtractor = exports.autoPipeline = exports.semanticPipeline = exports.narrativePipeline = exports.factPipeline = exports.ephemeralPipeline = exports.defaultPipeline = exports.defineFact = exports.defineSteering = exports.defineSkill = exports.defineInstruction = exports.buildInjectionEngineSubflow = exports.evaluateInjections = exports.encodeSSE = exports.SSEFormatter = exports.toSSE = exports.createProvider = exports.BrowserOpenAIProvider = exports.browserOpenai = exports.BrowserAnthropicProvider = exports.browserAnthropic = exports.BedrockProvider = exports.bedrock = exports.ollama = exports.OpenAIProvider = exports.openai = exports.AnthropicProvider = exports.anthropic = exports.mock = exports.MockProvider = exports.LoopBuilder = exports.Loop = void 0;
26
26
  // Events — registry, types, payloads
27
27
  __exportStar(require("./events/types.js"), exports);
28
28
  __exportStar(require("./events/payloads.js"), exports);
@@ -235,4 +235,5 @@ Object.defineProperty(exports, "indexDocuments", { enumerable: true, get: functi
235
235
  // cost when MCP isn't used).
236
236
  var index_js_7 = require("./lib/mcp/index.js");
237
237
  Object.defineProperty(exports, "mcpClient", { enumerable: true, get: function () { return index_js_7.mcpClient; } });
238
+ Object.defineProperty(exports, "mockMcpClient", { enumerable: true, get: function () { return index_js_7.mockMcpClient; } });
238
239
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ /**
3
+ * agentfootprint/instructions — public re-export for the Instructions subsystem.
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ __exportStar(require("./lib/instructions/index.js"), exports);
21
+ //# sourceMappingURL=instructions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;AAEH,8DAA4C"}
@@ -5,60 +5,6 @@
5
5
  * The unifying primitive of agentfootprint context engineering.
6
6
  * One `Injection` type. One `InjectionEngine` subflow. N typed sugar
7
7
  * factories. See `README.md` in this folder for the full concept.
8
- *
9
- * ─── 7-panel design review (2026-04-28) ─────────────────────────────
10
- *
11
- * LLM-AI system design ✓ ONE primitive replaces N feature-specific
12
- * subsystems. Skill, Steering, Instruction,
13
- * Context (and RAG, Memory, Guardrail)
14
- * are typed sugar producing the same shape.
15
- * Engine is shared; observability is shared;
16
- * Lens chips are shared.
17
- *
18
- * Performance ✓ Trigger evaluation O(N) per iteration.
19
- * Subflow ceremony ~50µs per iteration.
20
- * Negligible. Active set materialized once,
21
- * consumed by 3 slot subflows.
22
- *
23
- * Scalability ✓ Adding a flavor = adding a sugar factory
24
- * file. Zero engine change. Library scales
25
- * to 50+ flavors without bloating the
26
- * engine. The "narrow waist" pattern.
27
- *
28
- * Research alignment ✓ Maps to "Augmented LM" framing
29
- * (Mialon et al. 2023): every external
30
- * input is an augmentation; agentfootprint
31
- * calls them Injections. Factory names
32
- * preserve research vocabulary (Skill, RAG,
33
- * Memory, Steering) at the API surface.
34
- *
35
- * Flexibility ✓ Discriminated `trigger` union handles
36
- * always / rule / on-tool-return /
37
- * llm-activated. New trigger kinds extend
38
- * cleanly. Multi-slot per Injection covers
39
- * Skills (system-prompt + tools).
40
- *
41
- * Abstraction-modular ✓ Engine = subflow (drill-able). Factories
42
- * = small files (one per flavor). Slot
43
- * subflows are unchanged consumers.
44
- * Textbook narrow-waist architecture.
45
- *
46
- * Software engineering ✓ Predicate exceptions caught + reported
47
- * via `skipped[]`, never propagate. Frozen
48
- * Injections. Validation in factories.
49
- * 7-pattern test coverage. Subpath export
50
- * for tree-shake.
51
- *
52
- * Plus footprintjs integration check ✓ — uses existing slot subflow
53
- * convention (writes activeInjections to scope; slots filter by
54
- * targeted slot) + ContextRecorder picks up source field zero-change.
55
- *
56
- * Plus TypeScript engineer check ✓ — discriminated union, no `any`,
57
- * frozen returns, exhaustiveness check on trigger kind.
58
- *
59
- * ─── 7-pattern test coverage ────────────────────────────────────────
60
- *
61
- * See `test/lib/injection-engine/*.test.ts`.
62
8
  */
63
9
  Object.defineProperty(exports, "__esModule", { value: true });
64
10
  exports.defineFact = exports.defineSteering = exports.defineSkill = exports.defineInstruction = exports.buildInjectionEngineSubflow = exports.evaluateInjections = void 0;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/injection-engine/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;;;AAWH,SAAS;AACT,+CAAoD;AAA3C,kHAAA,kBAAkB,OAAA;AAC3B,mFAG0C;AAFxC,6IAAA,2BAA2B,OAAA;AAI7B,gFAAgF;AAChF,yEAAoG;AAA3F,yHAAA,iBAAiB,OAAA;AAE1B,6DAAkF;AAAzE,6GAAA,WAAW,OAAA;AAEpB,mEAA2F;AAAlF,mHAAA,cAAc,OAAA;AAEvB,2DAA+E;AAAtE,2GAAA,UAAU,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/injection-engine/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAWH,SAAS;AACT,+CAAoD;AAA3C,kHAAA,kBAAkB,OAAA;AAC3B,mFAG0C;AAFxC,6IAAA,2BAA2B,OAAA;AAI7B,gFAAgF;AAChF,yEAAoG;AAA3F,yHAAA,iBAAiB,OAAA;AAE1B,6DAAkF;AAAzE,6GAAA,WAAW,OAAA;AAEpB,mEAA2F;AAAlF,mHAAA,cAAc,OAAA;AAEvB,2DAA+E;AAAtE,2GAAA,UAAU,OAAA"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ /**
3
+ * defineInstruction — ergonomic builder for `Instruction`.
4
+ *
5
+ * Pattern: Builder pattern (GoF) for the Strategy interface.
6
+ * Role: Public surface — used by consumers to declare instructions.
7
+ *
8
+ * @example
9
+ * import { defineInstruction } from 'agentfootprint';
10
+ * import type { InstructionContext } from 'agentfootprint';
11
+ *
12
+ * const refundEmpathy = defineInstruction({
13
+ * id: 'refund-empathy',
14
+ * description: 'Calm tone for refund denials.',
15
+ * activeWhen: (ctx) => ctx.lastToolResult?.toolName === 'check_refund'
16
+ * && ctx.lastToolResult.result.includes('denied'),
17
+ * prompt: 'Be empathetic. Do NOT promise refund reversal.',
18
+ * });
19
+ */
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ exports.defineInstruction = void 0;
22
+ function defineInstruction(options) {
23
+ if (!options.id || options.id.trim().length === 0) {
24
+ throw new Error('defineInstruction: `id` is required and must be non-empty.');
25
+ }
26
+ if (options.prompt === undefined
27
+ && (!options.tools || options.tools.length === 0)) {
28
+ throw new Error(`defineInstruction(${options.id}): instruction must declare at least one of \`prompt\` or \`tools\`.`);
29
+ }
30
+ // Freeze for consumer protection — instructions should be immutable
31
+ // after construction so the agent can cache evaluations.
32
+ return Object.freeze({ ...options });
33
+ }
34
+ exports.defineInstruction = defineInstruction;
35
+ //# sourceMappingURL=defineInstruction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defineInstruction.js","sourceRoot":"","sources":["../../../src/lib/instructions/defineInstruction.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;GAiBG;;;AAMH,SAAgB,iBAAiB,CAAC,OAAiC;IACjE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAChF,CAAC;IACD,IACE,OAAO,CAAC,MAAM,KAAK,SAAS;WACzB,CAAC,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,EACjD,CAAC;QACD,MAAM,IAAI,KAAK,CACb,qBAAqB,OAAO,CAAC,EAAE,sEAAsE,CACtG,CAAC;IACJ,CAAC;IACD,oEAAoE;IACpE,yDAAyD;IACzD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,CAAgB,CAAC;AACtD,CAAC;AAfD,8CAeC"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ /**
3
+ * Instruction evaluator — runs the `activeWhen` predicates and
4
+ * returns the active set + any skipped predicates.
5
+ *
6
+ * Pattern: Pure function. Stateless.
7
+ * Role: Internal helper used by Agent during pre-LLM stage.
8
+ * Emits: N/A — caller handles emit + observability.
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.evaluateInstructions = void 0;
12
+ function evaluateInstructions(instructions, ctx) {
13
+ const active = [];
14
+ const skipped = [];
15
+ for (const inst of instructions) {
16
+ if (!inst.activeWhen) {
17
+ // No predicate → always active (unconditional injection).
18
+ active.push(inst);
19
+ continue;
20
+ }
21
+ let matched = false;
22
+ try {
23
+ matched = inst.activeWhen(ctx);
24
+ }
25
+ catch (err) {
26
+ skipped.push({
27
+ id: inst.id,
28
+ error: err instanceof Error ? err.message : String(err),
29
+ });
30
+ continue;
31
+ }
32
+ if (matched)
33
+ active.push(inst);
34
+ }
35
+ return { active, skipped };
36
+ }
37
+ exports.evaluateInstructions = evaluateInstructions;
38
+ //# sourceMappingURL=evaluator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evaluator.js","sourceRoot":"","sources":["../../../src/lib/instructions/evaluator.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAQH,SAAgB,oBAAoB,CAClC,YAAoC,EACpC,GAAuB;IAEvB,MAAM,MAAM,GAAkB,EAAE,CAAC;IACjC,MAAM,OAAO,GAAoC,EAAE,CAAC;IAEpD,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,0DAA0D;YAC1D,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClB,SAAS;QACX,CAAC;QACD,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC;YACH,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACjC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC;gBACX,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACxD,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,IAAI,OAAO;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AAC7B,CAAC;AA3BD,oDA2BC"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ /**
3
+ * Instructions — declarative rule-based system-prompt injection.
4
+ *
5
+ * Public API for the v2 Instructions subsystem. See `types.ts` for the
6
+ * full interface + the unified context-engineering model placement.
7
+ *
8
+ * ─── 7-panel design review (2026-04-28) ─────────────────────────────
9
+ *
10
+ * LLM-AI system design ✓ Maps cleanly to the unified context-
11
+ * engineering model: slot=system-prompt
12
+ * (+optional tools), role=system, timing=
13
+ * per-iteration, decision=rule.
14
+ * Performance ✓ Predicates run once per iteration (not
15
+ * per token / per event). O(N) in number
16
+ * of instructions; typical N ≤ 20.
17
+ * Scalability ✓ Stateless evaluator; many concurrent
18
+ * agents share the same instruction list
19
+ * via Object.freeze.
20
+ * Research alignment ✓ Mirrors v1 AgentInstruction's `activeWhen`
21
+ * shape (origin/main `c6e11d0`) but drops
22
+ * `onToolResult`, `safety`, decision-scope
23
+ * wrapping for v2 simplicity. Equivalent
24
+ * tool-result-driven behavior is expressed
25
+ * via `activeWhen: (ctx) =>
26
+ * ctx.lastToolResult?.toolName === 'X'`.
27
+ * Flexibility ✓ Same Instruction can be active across
28
+ * multiple iterations; can inject tools
29
+ * in addition to prompt; predicates can
30
+ * inspect history + last tool result.
31
+ * Abstraction-modular ✓ Three small files: types, builder,
32
+ * evaluator. Agent integration is one
33
+ * call into `evaluateInstructions()`.
34
+ * Software engineering ✓ Predicate errors are caught + surfaced
35
+ * (no crash). Frozen instructions prevent
36
+ * mutation. 7-pattern test coverage.
37
+ *
38
+ * ─── 7-pattern test coverage ────────────────────────────────────────
39
+ *
40
+ * See `test/lib/instructions/*.test.ts`.
41
+ */
42
+ Object.defineProperty(exports, "__esModule", { value: true });
43
+ exports.evaluateInstructions = exports.defineInstruction = void 0;
44
+ var defineInstruction_js_1 = require("./defineInstruction.js");
45
+ Object.defineProperty(exports, "defineInstruction", { enumerable: true, get: function () { return defineInstruction_js_1.defineInstruction; } });
46
+ var evaluator_js_1 = require("./evaluator.js");
47
+ Object.defineProperty(exports, "evaluateInstructions", { enumerable: true, get: function () { return evaluator_js_1.evaluateInstructions; } });
48
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/instructions/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;;;AAEH,+DAGgC;AAF9B,yHAAA,iBAAiB,OAAA;AAInB,+CAEwB;AADtB,oHAAA,oBAAoB,OAAA"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ /**
3
+ * Instructions — types.
4
+ *
5
+ * An Instruction is a declarative rule for conditional system-prompt
6
+ * injection. The agent evaluates each Instruction's `activeWhen`
7
+ * predicate at the start of every iteration; matching instructions'
8
+ * `prompt` text is prepended to the system prompt for that iteration.
9
+ *
10
+ * This is the rule-based flavor of the unified context-engineering
11
+ * model: slot=system-prompt, role=system, timing=per-iteration,
12
+ * decision=rule. (Compare with Skills: timing=on-activation,
13
+ * decision=LLM-guided.)
14
+ *
15
+ * Pattern: Strategy (GoF) — each Instruction is a strategy for
16
+ * "should I add this prompt to the next iteration?"
17
+ * Role: Consumer-facing shape. Agent.create(...).instruction(...).
18
+ * Emits: `agentfootprint.context.injected` with source='instruction'
19
+ * when an instruction activates.
20
+ */
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/instructions/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;GAkBG"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mcpClient = void 0;
3
+ exports.mockMcpClient = exports.mcpClient = void 0;
4
4
  /**
5
5
  * MCP — Model Context Protocol client integration. Connect to an MCP
6
6
  * server, register its tools on your Agent. Server-side support is
@@ -9,4 +9,6 @@ exports.mcpClient = void 0;
9
9
  */
10
10
  var mcpClient_js_1 = require("./mcpClient.js");
11
11
  Object.defineProperty(exports, "mcpClient", { enumerable: true, get: function () { return mcpClient_js_1.mcpClient; } });
12
+ var mockMcpClient_js_1 = require("./mockMcpClient.js");
13
+ Object.defineProperty(exports, "mockMcpClient", { enumerable: true, get: function () { return mockMcpClient_js_1.mockMcpClient; } });
12
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/mcp/index.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,+CAA2C;AAAlC,yGAAA,SAAS,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/mcp/index.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,+CAA2C;AAAlC,yGAAA,SAAS,OAAA;AAClB,uDAAgG;AAAvF,iHAAA,aAAa,OAAA"}
@@ -30,32 +30,18 @@
30
30
  * `McpClientOptions` so observability surfaces can group
31
31
  * tool calls by server.
32
32
  *
33
- * 7-panel review (2026-04-29):
34
- * - LLM Systems ✅ inputSchema preserved verbatim — the LLM sees
35
- * the same tool schema MCP advertised
36
- * - Architect ✅ pure adapter; no engine code. New tool sources
37
- * slot in via the same `Tool` interface
38
- * - API Designer ✅ three methods (.tools / .refresh / .close)
39
- * mirror the MCP SDK lifecycle
40
- * - Performance ✅ tool list cached after first fetch; .refresh
41
- * is opt-in. callTool round-trip is one network
42
- * hop per tool call (same as direct LLM-tool flow)
43
- * - Privacy ✅ no implicit logging; consumer controls auth
44
- * via transport headers
45
- * - SoftEng ✅ lazy-required SDK + friendly install error;
46
- * mock injection point for tests
47
- * - TS Engineer ✅ structural McpSdkClient shim — works against
48
- * any future SDK version with the same shape
49
- *
50
33
  * Lazy-require pattern: the `@modelcontextprotocol/sdk` peer-dep
51
34
  * loads only when a consumer actually constructs a client. Tests
52
35
  * inject `_client` and skip the import path entirely.
53
36
  */
54
37
  Object.defineProperty(exports, "__esModule", { value: true });
55
38
  exports.mcpClient = void 0;
39
+ // Version-less identity. The MCP `clientInfo` field is informational
40
+ // (server logs it); a hardcoded number drifts every release. Consumers
41
+ // who care about wire-level identity pass `clientInfo` explicitly.
56
42
  const DEFAULT_CLIENT_INFO = {
57
43
  name: 'agentfootprint',
58
- version: '2.1.0', // bumped per release
44
+ version: '0.0.0',
59
45
  };
60
46
  /**
61
47
  * Connect to an MCP server. Returns an `McpClient` that exposes the
@@ -72,22 +58,33 @@ async function mcpClient(opts) {
72
58
  // Tool cache so consumers calling `.tools()` more than once don't
73
59
  // hammer the server. `.refresh()` invalidates it.
74
60
  let cache = null;
61
+ let closed = false;
62
+ const ensureOpen = (op) => {
63
+ if (closed) {
64
+ throw new Error(`mcpClient[${name}].${op}() called after close(). Construct a new client to reconnect.`);
65
+ }
66
+ };
75
67
  const buildTools = async () => {
76
68
  const listed = await sdk.listTools();
77
- return listed.tools.map((t) => wrapMcpTool(sdk, t));
69
+ return listed.tools.map((t) => wrapMcpTool(name, sdk, t, opts.signal));
78
70
  };
79
71
  return {
80
72
  name,
81
73
  async tools() {
74
+ ensureOpen('tools');
82
75
  if (!cache)
83
76
  cache = await buildTools();
84
77
  return cache;
85
78
  },
86
79
  async refresh() {
80
+ ensureOpen('refresh');
87
81
  cache = await buildTools();
88
82
  return cache;
89
83
  },
90
84
  async close() {
85
+ if (closed)
86
+ return;
87
+ closed = true;
91
88
  cache = null;
92
89
  await sdk.close();
93
90
  },
@@ -146,30 +143,38 @@ async function buildTransport(t) {
146
143
  });
147
144
  }
148
145
  // ─── Tool wrapping ─────────────────────────────────────────────────
149
- function wrapMcpTool(sdk, mcp) {
150
- return {
146
+ function wrapMcpTool(serverName, sdk, mcp, signal) {
147
+ const tool = {
151
148
  schema: {
152
149
  name: mcp.name,
153
150
  description: mcp.description ?? `MCP tool: ${mcp.name}`,
154
151
  inputSchema: mcp.inputSchema,
155
152
  },
156
153
  execute: async (args) => {
154
+ // The agent passes args as `unknown` per Tool contract. MCP
155
+ // expects a JSON object — non-object inputs become `{}` rather
156
+ // than failing the SDK call.
157
+ const argsObj = args !== null && typeof args === 'object' && !Array.isArray(args)
158
+ ? args
159
+ : {};
157
160
  const result = await sdk.callTool({
158
161
  name: mcp.name,
159
- arguments: args ?? {},
162
+ arguments: argsObj,
163
+ ...(signal && { signal }),
160
164
  });
161
165
  // MCP returns content blocks. We concatenate text blocks into
162
166
  // a single string for the agent's tool-result event payload.
163
167
  // Non-text blocks (images, resources) are summarized with their
164
- // type — full multi-modal mapping is a v2.x follow-up.
168
+ // type — full multi-modal mapping is a future-release follow-up.
165
169
  const text = result.content
166
170
  .map((c) => (c.type === 'text' && c.text ? c.text : `[${c.type}]`))
167
171
  .join('\n');
168
172
  if (result.isError) {
169
- throw new Error(`MCP tool '${mcp.name}' returned an error: ${text}`);
173
+ throw new Error(`MCP tool '${mcp.name}' (server '${serverName}') returned an error: ${text}`);
170
174
  }
171
175
  return text;
172
176
  },
173
177
  };
178
+ return tool;
174
179
  }
175
180
  //# sourceMappingURL=mcpClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcpClient.js","sourceRoot":"","sources":["../../../src/lib/mcp/mcpClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcpClient.js","sourceRoot":"","sources":["../../../src/lib/mcp/mcpClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ /**
3
+ * mockMcpClient — in-memory MCP client for development and tests.
4
+ *
5
+ * const slack = mockMcpClient({
6
+ * tools: [
7
+ * {
8
+ * name: 'send_message',
9
+ * description: 'Post a message to a channel',
10
+ * inputSchema: { type: 'object' },
11
+ * handler: async ({ text }) => `Posted: ${text}`,
12
+ * },
13
+ * ],
14
+ * });
15
+ *
16
+ * const agent = Agent.create({ provider: mock({ reply: 'ok' }) })
17
+ * .tools(await slack.tools())
18
+ * .build();
19
+ *
20
+ * Pattern: Adapter (GoF) — produces an `McpClient` with the same shape
21
+ * as `mcpClient(opts)` but driven by an in-memory tool table
22
+ * instead of the MCP SDK + transport. Drop-in for development:
23
+ * start with `mockMcpClient`, swap to `mcpClient` once the
24
+ * real server is ready.
25
+ *
26
+ * Why public: `mcpClient`'s `_client` injection is `@internal` because
27
+ * the SDK shape isn't a stable public surface. `mockMcpClient` exposes
28
+ * a curated tool-handler shape that's tied to OUR Tool contract instead
29
+ * — stable, documented, and the right level of abstraction for
30
+ * mock-first development.
31
+ */
32
+ Object.defineProperty(exports, "__esModule", { value: true });
33
+ exports.mockMcpClient = void 0;
34
+ /**
35
+ * Build an in-memory `McpClient`. Useful when you want to develop
36
+ * against MCP semantics without spawning subprocesses, hitting the
37
+ * network, or installing `@modelcontextprotocol/sdk`. Same `McpClient`
38
+ * shape as `mcpClient(opts)` — code that consumes one accepts the other.
39
+ */
40
+ function mockMcpClient(options) {
41
+ const name = options.name ?? 'mock-mcp';
42
+ const toolMap = new Map(options.tools.map((t) => [t.name, t]));
43
+ let cache = null;
44
+ let closed = false;
45
+ const ensureOpen = (op) => {
46
+ if (closed) {
47
+ throw new Error(`mockMcpClient[${name}].${op}() called after close(). Construct a new client to reuse.`);
48
+ }
49
+ };
50
+ const buildTools = () => options.tools.map((mcp) => wrapMockTool(name, toolMap, mcp));
51
+ return {
52
+ name,
53
+ async tools() {
54
+ ensureOpen('tools');
55
+ if (!cache)
56
+ cache = buildTools();
57
+ return cache;
58
+ },
59
+ async refresh() {
60
+ ensureOpen('refresh');
61
+ cache = buildTools();
62
+ return cache;
63
+ },
64
+ async close() {
65
+ if (closed)
66
+ return;
67
+ closed = true;
68
+ cache = null;
69
+ },
70
+ };
71
+ }
72
+ exports.mockMcpClient = mockMcpClient;
73
+ function wrapMockTool(serverName, toolMap, mcp) {
74
+ const tool = {
75
+ schema: {
76
+ name: mcp.name,
77
+ description: mcp.description ?? `Mock MCP tool: ${mcp.name}`,
78
+ inputSchema: mcp.inputSchema,
79
+ },
80
+ execute: async (args) => {
81
+ const argsObj = args !== null && typeof args === 'object' && !Array.isArray(args)
82
+ ? args
83
+ : {};
84
+ // Look up by name at call time so mid-test handler swaps via a
85
+ // mutable Map could be supported later. For now `toolMap` is
86
+ // built once at factory time.
87
+ const handler = toolMap.get(mcp.name)?.handler;
88
+ if (!handler)
89
+ return '[mock result]';
90
+ try {
91
+ return await handler(argsObj);
92
+ }
93
+ catch (err) {
94
+ const msg = err instanceof Error ? err.message : String(err);
95
+ throw new Error(`Mock MCP tool '${mcp.name}' (server '${serverName}') threw: ${msg}`);
96
+ }
97
+ },
98
+ };
99
+ return tool;
100
+ }
101
+ //# sourceMappingURL=mockMcpClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockMcpClient.js","sourceRoot":"","sources":["../../../src/lib/mcp/mockMcpClient.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;;;AAkCH;;;;;GAKG;AACH,SAAgB,aAAa,CAAC,OAA6B;IACzD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,UAAU,CAAC;IACxC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAsB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpF,IAAI,KAAK,GAA2B,IAAI,CAAC;IACzC,IAAI,MAAM,GAAG,KAAK,CAAC;IAEnB,MAAM,UAAU,GAAG,CAAC,EAAU,EAAQ,EAAE;QACtC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CACb,iBAAiB,IAAI,KAAK,EAAE,2DAA2D,CACxF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAoB,EAAE,CACvC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IAE/D,OAAO;QACL,IAAI;QACJ,KAAK,CAAC,KAAK;YACT,UAAU,CAAC,OAAO,CAAC,CAAC;YACpB,IAAI,CAAC,KAAK;gBAAE,KAAK,GAAG,UAAU,EAAE,CAAC;YACjC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,KAAK,CAAC,OAAO;YACX,UAAU,CAAC,SAAS,CAAC,CAAC;YACtB,KAAK,GAAG,UAAU,EAAE,CAAC;YACrB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,KAAK,CAAC,KAAK;YACT,IAAI,MAAM;gBAAE,OAAO;YACnB,MAAM,GAAG,IAAI,CAAC;YACd,KAAK,GAAG,IAAI,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC;AApCD,sCAoCC;AAED,SAAS,YAAY,CACnB,UAAkB,EAClB,OAAyC,EACzC,GAAgB;IAEhB,MAAM,IAAI,GAAS;QACjB,MAAM,EAAE;YACN,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,kBAAkB,GAAG,CAAC,IAAI,EAAE;YAC5D,WAAW,EAAE,GAAG,CAAC,WAAW;SAC7B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YACtB,MAAM,OAAO,GACX,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;gBAC/D,CAAC,CAAE,IAAgC;gBACnC,CAAC,CAAC,EAAE,CAAC;YACT,+DAA+D;YAC/D,6DAA6D;YAC7D,8BAA8B;YAC9B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;YAC/C,IAAI,CAAC,OAAO;gBAAE,OAAO,eAAe,CAAC;YACrC,IAAI,CAAC;gBACH,OAAO,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;YAChC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC7D,MAAM,IAAI,KAAK,CAAC,kBAAkB,GAAG,CAAC,IAAI,cAAc,UAAU,aAAa,GAAG,EAAE,CAAC,CAAC;YACxF,CAAC;QACH,CAAC;KACF,CAAC;IACF,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -30,24 +30,6 @@
30
30
  * `agentfootprint.context.injected` when retrieved chunks
31
31
  * land in the messages slot.
32
32
  *
33
- * 7-panel review (2026-04-29):
34
- * - LLM Systems ✅ injects as 'user' role by default — RAG chunks
35
- * land where the LLM treats them as authoritative
36
- * retrieved context, not behavior rules
37
- * - Architect ✅ composition over defineMemory; zero new engine
38
- * code; multi-RAG layering works via per-id keys
39
- * - API Designer ✅ one factory, mirrors defineMemory shape; consumer
40
- * ergonomics: `agent.rag(defineRAG({...}))`
41
- * - Performance ✅ embedding cost is one call per turn (TURN_START
42
- * timing, default); strict threshold prevents
43
- * injecting low-confidence noise
44
- * - Privacy ✅ multi-tenant via MemoryIdentity tuple; doc
45
- * content never crosses tenant boundaries
46
- * - ML / IR ✅ embedder version pinned via `embedderId`; cosine
47
- * score semantics inherited from MemoryStore
48
- * - SoftEng ✅ thin file (this one); existing memory tests
49
- * cover the underlying pipeline
50
- *
51
33
  * @see ./indexDocuments.ts for the seeding helper
52
34
  * @see ../../memory/define.ts for the underlying factory
53
35
  *
@@ -1 +1 @@
1
- {"version":3,"file":"defineRAG.js","sourceRoot":"","sources":["../../../src/lib/rag/defineRAG.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8EG;;;AAMH,kEAA+E;AAC/E,sDAAsD;AA0DtD;;;;;;;GAOG;AACH,SAAgB,SAAS,CAAC,IAAsB;IAC9C,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,EAAE,2BAA2B,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,EAAE,8BAA8B,CAAC,CAAC;IACtE,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CACb,aAAa,IAAI,CAAC,EAAE,oCAAoC;YACtD,yEAAyE,CAC5E,CAAC;IACJ,CAAC;IAED,OAAO,IAAA,wBAAY,EAAC;QAClB,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;QACxE,IAAI,EAAE,8BAAY,CAAC,QAAQ;QAC3B,QAAQ,EAAE;YACR,IAAI,EAAE,mCAAiB,CAAC,KAAK;YAC7B,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC;YACpB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG;YAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB;QACD,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,MAAM;KAC9B,CAAC,CAAC;AACL,CAAC;AA9BD,8BA8BC"}
1
+ {"version":3,"file":"defineRAG.js","sourceRoot":"","sources":["../../../src/lib/rag/defineRAG.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;;;AAMH,kEAA+E;AAC/E,sDAAsD;AAyEtD;;;;;;;GAOG;AACH,SAAgB,SAAS,CAAC,IAAsB;IAC9C,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,EAAE,2BAA2B,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,EAAE,8BAA8B,CAAC,CAAC;IACtE,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CACb,aAAa,IAAI,CAAC,EAAE,oCAAoC;YACtD,yEAAyE,CAC5E,CAAC;IACJ,CAAC;IAED,OAAO,IAAA,wBAAY,EAAC;QAClB,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;QACxE,IAAI,EAAE,8BAAY,CAAC,QAAQ;QAC3B,QAAQ,EAAE;YACR,IAAI,EAAE,mCAAiB,CAAC,KAAK;YAC7B,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC;YACpB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG;YAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB;QACD,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,MAAM;KAC9B,CAAC,CAAC;AACL,CAAC;AA9BD,8BA8BC"}