agentfootprint 8.5.0 → 8.7.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 (142) hide show
  1. package/AGENTS.md +1 -1
  2. package/CLAUDE.md +1 -1
  3. package/README.md +1 -1
  4. package/ai-instructions/claude-code/SKILL.md +1 -1
  5. package/dist/core/Agent.js +62 -1
  6. package/dist/core/Agent.js.map +1 -1
  7. package/dist/core/RunnerBase.js +7 -1
  8. package/dist/core/RunnerBase.js.map +1 -1
  9. package/dist/core/agent/AgentBuilder.js +104 -0
  10. package/dist/core/agent/AgentBuilder.js.map +1 -1
  11. package/dist/core/agent/stages/toolCalls.js +136 -5
  12. package/dist/core/agent/stages/toolCalls.js.map +1 -1
  13. package/dist/core/slots/buildToolsSlot.js +77 -0
  14. package/dist/core/slots/buildToolsSlot.js.map +1 -1
  15. package/dist/esm/core/Agent.d.ts +15 -0
  16. package/dist/esm/core/Agent.js +62 -1
  17. package/dist/esm/core/Agent.js.map +1 -1
  18. package/dist/esm/core/RunnerBase.js +7 -1
  19. package/dist/esm/core/RunnerBase.js.map +1 -1
  20. package/dist/esm/core/agent/AgentBuilder.js +104 -0
  21. package/dist/esm/core/agent/AgentBuilder.js.map +1 -1
  22. package/dist/esm/core/agent/stages/toolCalls.d.ts +35 -0
  23. package/dist/esm/core/agent/stages/toolCalls.js +136 -5
  24. package/dist/esm/core/agent/stages/toolCalls.js.map +1 -1
  25. package/dist/esm/core/agent/types.d.ts +26 -0
  26. package/dist/esm/core/slots/buildToolsSlot.js +78 -1
  27. package/dist/esm/core/slots/buildToolsSlot.js.map +1 -1
  28. package/dist/esm/events/payloads.d.ts +29 -0
  29. package/dist/esm/events/registry.d.ts +3 -1
  30. package/dist/esm/events/registry.js +2 -0
  31. package/dist/esm/events/registry.js.map +1 -1
  32. package/dist/esm/identity/CredentialConsentRequiredError.d.ts +63 -0
  33. package/dist/esm/identity/CredentialConsentRequiredError.js +65 -0
  34. package/dist/esm/identity/CredentialConsentRequiredError.js.map +1 -0
  35. package/dist/esm/identity/consent.d.ts +81 -0
  36. package/dist/esm/identity/consent.js +85 -0
  37. package/dist/esm/identity/consent.js.map +1 -0
  38. package/dist/esm/identity.d.ts +2 -0
  39. package/dist/esm/identity.js +1 -0
  40. package/dist/esm/identity.js.map +1 -1
  41. package/dist/esm/lib/injection-engine/factories/defineRelevanceHint.d.ts +15 -0
  42. package/dist/esm/lib/injection-engine/factories/defineRelevanceHint.js +16 -0
  43. package/dist/esm/lib/injection-engine/factories/defineRelevanceHint.js.map +1 -1
  44. package/dist/esm/lib/injection-engine/factories/defineSkill.d.ts +9 -0
  45. package/dist/esm/lib/injection-engine/factories/defineSkill.js.map +1 -1
  46. package/dist/esm/lib/injection-engine/index.d.ts +3 -3
  47. package/dist/esm/lib/injection-engine/index.js +8 -3
  48. package/dist/esm/lib/injection-engine/index.js.map +1 -1
  49. package/dist/esm/lib/injection-engine/skillContract.d.ts +25 -2
  50. package/dist/esm/lib/injection-engine/skillContract.js +11 -4
  51. package/dist/esm/lib/injection-engine/skillContract.js.map +1 -1
  52. package/dist/esm/lib/injection-engine/skillGraph.d.ts +65 -4
  53. package/dist/esm/lib/injection-engine/skillGraph.js +36 -11
  54. package/dist/esm/lib/injection-engine/skillGraph.js.map +1 -1
  55. package/dist/esm/lib/injection-engine/skillGraphCheckup.d.ts +47 -7
  56. package/dist/esm/lib/injection-engine/skillGraphCheckup.js +165 -13
  57. package/dist/esm/lib/injection-engine/skillGraphCheckup.js.map +1 -1
  58. package/dist/esm/lib/injection-engine/skillsFromDir.d.ts +24 -0
  59. package/dist/esm/lib/injection-engine/skillsFromDir.js +19 -0
  60. package/dist/esm/lib/injection-engine/skillsFromDir.js.map +1 -1
  61. package/dist/esm/lib/injection-engine/types.d.ts +8 -0
  62. package/dist/esm/lib/injection-engine/types.js.map +1 -1
  63. package/dist/esm/lib/mcp/mcpServe.js +11 -1
  64. package/dist/esm/lib/mcp/mcpServe.js.map +1 -1
  65. package/dist/esm/tool-providers/index.d.ts +1 -1
  66. package/dist/esm/tool-providers/index.js +4 -1
  67. package/dist/esm/tool-providers/index.js.map +1 -1
  68. package/dist/esm/tool-providers/skillScopedTools.d.ts +4 -0
  69. package/dist/esm/tool-providers/skillScopedTools.js +33 -2
  70. package/dist/esm/tool-providers/skillScopedTools.js.map +1 -1
  71. package/dist/esm/tool-providers/types.d.ts +25 -0
  72. package/dist/events/registry.js +2 -0
  73. package/dist/events/registry.js.map +1 -1
  74. package/dist/identity/CredentialConsentRequiredError.js +69 -0
  75. package/dist/identity/CredentialConsentRequiredError.js.map +1 -0
  76. package/dist/identity/consent.js +91 -0
  77. package/dist/identity/consent.js.map +1 -0
  78. package/dist/identity.js +3 -1
  79. package/dist/identity.js.map +1 -1
  80. package/dist/lib/injection-engine/factories/defineRelevanceHint.js +17 -1
  81. package/dist/lib/injection-engine/factories/defineRelevanceHint.js.map +1 -1
  82. package/dist/lib/injection-engine/factories/defineSkill.js.map +1 -1
  83. package/dist/lib/injection-engine/index.js +7 -1
  84. package/dist/lib/injection-engine/index.js.map +1 -1
  85. package/dist/lib/injection-engine/skillContract.js +11 -4
  86. package/dist/lib/injection-engine/skillContract.js.map +1 -1
  87. package/dist/lib/injection-engine/skillGraph.js +37 -11
  88. package/dist/lib/injection-engine/skillGraph.js.map +1 -1
  89. package/dist/lib/injection-engine/skillGraphCheckup.js +165 -13
  90. package/dist/lib/injection-engine/skillGraphCheckup.js.map +1 -1
  91. package/dist/lib/injection-engine/skillsFromDir.js +19 -0
  92. package/dist/lib/injection-engine/skillsFromDir.js.map +1 -1
  93. package/dist/lib/injection-engine/types.js.map +1 -1
  94. package/dist/lib/mcp/mcpServe.js +11 -1
  95. package/dist/lib/mcp/mcpServe.js.map +1 -1
  96. package/dist/tool-providers/index.js +5 -1
  97. package/dist/tool-providers/index.js.map +1 -1
  98. package/dist/tool-providers/skillScopedTools.js +35 -3
  99. package/dist/tool-providers/skillScopedTools.js.map +1 -1
  100. package/dist/types/core/Agent.d.ts +15 -0
  101. package/dist/types/core/Agent.d.ts.map +1 -1
  102. package/dist/types/core/RunnerBase.d.ts.map +1 -1
  103. package/dist/types/core/agent/AgentBuilder.d.ts.map +1 -1
  104. package/dist/types/core/agent/stages/toolCalls.d.ts +35 -0
  105. package/dist/types/core/agent/stages/toolCalls.d.ts.map +1 -1
  106. package/dist/types/core/agent/types.d.ts +26 -0
  107. package/dist/types/core/agent/types.d.ts.map +1 -1
  108. package/dist/types/core/slots/buildToolsSlot.d.ts.map +1 -1
  109. package/dist/types/events/payloads.d.ts +29 -0
  110. package/dist/types/events/payloads.d.ts.map +1 -1
  111. package/dist/types/events/registry.d.ts +3 -1
  112. package/dist/types/events/registry.d.ts.map +1 -1
  113. package/dist/types/identity/CredentialConsentRequiredError.d.ts +64 -0
  114. package/dist/types/identity/CredentialConsentRequiredError.d.ts.map +1 -0
  115. package/dist/types/identity/consent.d.ts +82 -0
  116. package/dist/types/identity/consent.d.ts.map +1 -0
  117. package/dist/types/identity.d.ts +2 -0
  118. package/dist/types/identity.d.ts.map +1 -1
  119. package/dist/types/lib/injection-engine/factories/defineRelevanceHint.d.ts +15 -0
  120. package/dist/types/lib/injection-engine/factories/defineRelevanceHint.d.ts.map +1 -1
  121. package/dist/types/lib/injection-engine/factories/defineSkill.d.ts +9 -0
  122. package/dist/types/lib/injection-engine/factories/defineSkill.d.ts.map +1 -1
  123. package/dist/types/lib/injection-engine/index.d.ts +3 -3
  124. package/dist/types/lib/injection-engine/index.d.ts.map +1 -1
  125. package/dist/types/lib/injection-engine/skillContract.d.ts +25 -2
  126. package/dist/types/lib/injection-engine/skillContract.d.ts.map +1 -1
  127. package/dist/types/lib/injection-engine/skillGraph.d.ts +65 -4
  128. package/dist/types/lib/injection-engine/skillGraph.d.ts.map +1 -1
  129. package/dist/types/lib/injection-engine/skillGraphCheckup.d.ts +47 -7
  130. package/dist/types/lib/injection-engine/skillGraphCheckup.d.ts.map +1 -1
  131. package/dist/types/lib/injection-engine/skillsFromDir.d.ts +24 -0
  132. package/dist/types/lib/injection-engine/skillsFromDir.d.ts.map +1 -1
  133. package/dist/types/lib/injection-engine/types.d.ts +8 -0
  134. package/dist/types/lib/injection-engine/types.d.ts.map +1 -1
  135. package/dist/types/lib/mcp/mcpServe.d.ts.map +1 -1
  136. package/dist/types/tool-providers/index.d.ts +1 -1
  137. package/dist/types/tool-providers/index.d.ts.map +1 -1
  138. package/dist/types/tool-providers/skillScopedTools.d.ts +4 -0
  139. package/dist/types/tool-providers/skillScopedTools.d.ts.map +1 -1
  140. package/dist/types/tool-providers/types.d.ts +25 -0
  141. package/dist/types/tool-providers/types.d.ts.map +1 -1
  142. package/package.json +1 -1
@@ -72,6 +72,7 @@ exports.EVENT_NAMES = {
72
72
  discoveryStarted: 'agentfootprint.tools.discovery_started',
73
73
  discoveryCompleted: 'agentfootprint.tools.discovery_completed',
74
74
  discoveryFailed: 'agentfootprint.tools.discovery_failed',
75
+ shadowed: 'agentfootprint.tools.shadowed',
75
76
  },
76
77
  skill: {
77
78
  activated: 'agentfootprint.skill.activated',
@@ -177,6 +178,7 @@ exports.ALL_EVENT_TYPES = [
177
178
  'agentfootprint.tools.discovery_started',
178
179
  'agentfootprint.tools.discovery_completed',
179
180
  'agentfootprint.tools.discovery_failed',
181
+ 'agentfootprint.tools.shadowed',
180
182
  'agentfootprint.validation.args_invalid',
181
183
  'agentfootprint.skill.activated',
182
184
  'agentfootprint.skill.deactivated',
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/events/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/events/registry.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;AA6EH,yEAAyE;AACzE,gEAAgE;AAChE,wEAAwE;AAC3D,QAAA,WAAW,GAAG;IACzB,WAAW,EAAE;QACX,KAAK,EAAE,kCAAkC;QACzC,IAAI,EAAE,iCAAiC;QACvC,SAAS,EAAE,uCAAuC;QAClD,cAAc,EAAE,4CAA4C;QAC5D,QAAQ,EAAE,sCAAsC;QAChD,YAAY,EAAE,0CAA0C;QACxD,cAAc,EAAE,4CAA4C;QAC5D,aAAa,EAAE,2CAA2C;KAC3D;IACD,KAAK,EAAE;QACL,SAAS,EAAE,iCAAiC;QAC5C,OAAO,EAAE,+BAA+B;QACxC,cAAc,EAAE,sCAAsC;QACtD,YAAY,EAAE,oCAAoC;QAClD,YAAY,EAAE,oCAAoC;QAClD,OAAO,EAAE,8BAA8B;QACvC,4BAA4B,EAAE,sDAAsD;QACpF,iBAAiB,EAAE,0CAA0C;QAC7D,mBAAmB,EAAE,4CAA4C;KAClE;IACD,MAAM,EAAE;QACN,QAAQ,EAAE,iCAAiC;QAC3C,MAAM,EAAE,+BAA+B;QACvC,KAAK,EAAE,6BAA6B;QACpC,SAAS,EAAE,kCAAkC;QAC7C,OAAO,EAAE,gCAAgC;QACzC,aAAa,EAAE,sCAAsC;QACrD,WAAW,EAAE,oCAAoC;KAClD;IACD,OAAO,EAAE;QACP,QAAQ,EAAE,iCAAiC;QAC3C,OAAO,EAAE,gCAAgC;QACzC,YAAY,EAAE,sCAAsC;QACpD,cAAc,EAAE,wCAAwC;QACxD,SAAS,EAAE,kCAAkC;KAC9C;IACD,MAAM,EAAE;QACN,eAAe,EAAE,wCAAwC;QACzD,QAAQ,EAAE,gCAAgC;QAC1C,QAAQ,EAAE,gCAAgC;QAC1C,OAAO,EAAE,+BAA+B;KACzC;IACD,KAAK,EAAE;QACL,OAAO,EAAE,8BAA8B;QACvC,SAAS,EAAE,gCAAgC;QAC3C,WAAW,EAAE,kCAAkC;QAC/C,gBAAgB,EAAE,wCAAwC;QAC1D,kBAAkB,EAAE,0CAA0C;QAC9D,eAAe,EAAE,uCAAuC;QACxD,QAAQ,EAAE,+BAA+B;KAC1C;IACD,KAAK,EAAE;QACL,SAAS,EAAE,gCAAgC;QAC3C,WAAW,EAAE,kCAAkC;QAC/C,QAAQ,EAAE,+BAA+B;QACzC,iBAAiB,EAAE,yCAAyC;KAC7D;IACD,UAAU,EAAE;QACV,WAAW,EAAE,wCAAwC;KACtD;IACD,UAAU,EAAE;QACV,KAAK,EAAE,iCAAiC;QACxC,UAAU,EAAE,uCAAuC;QACnD,UAAU,EAAE,uCAAuC;QACnD,IAAI,EAAE,gCAAgC;KACvC;IACD,UAAU,EAAE;QACV,SAAS,EAAE,qCAAqC;QAChD,QAAQ,EAAE,oCAAoC;QAC9C,qBAAqB,EAAE,kDAAkD;QACzE,MAAM,EAAE,kCAAkC;KAC3C;IACD,IAAI,EAAE;QACJ,OAAO,EAAE,6BAA6B;KACvC;IACD,QAAQ,EAAE;QACR,SAAS,EAAE,mCAAmC;KAC/C;IACD,IAAI,EAAE;QACJ,IAAI,EAAE,0BAA0B;QAChC,QAAQ,EAAE,+BAA+B;KAC1C;IACD,IAAI,EAAE;QACJ,KAAK,EAAE,2BAA2B;QAClC,gBAAgB,EAAE,uCAAuC;KAC1D;IACD,KAAK,EAAE;QACL,OAAO,EAAE,8BAA8B;QACvC,SAAS,EAAE,gCAAgC;QAC3C,KAAK,EAAE,4BAA4B;KACpC;IACD,WAAW,EAAE;QACX,QAAQ,EAAE,sCAAsC;QAChD,OAAO,EAAE,oCAAoC;QAC7C,SAAS,EAAE,sCAAsC;KAClD;IACD,KAAK,EAAE;QACL,OAAO,EAAE,8BAA8B;QACvC,MAAM,EAAE,6BAA6B;KACtC;IACD,OAAO,EAAE;QACP,OAAO,EAAE,gCAAgC;QACzC,QAAQ,EAAE,iCAAiC;KAC5C;IACD,UAAU,EAAE;QACV,QAAQ,EAAE,oCAAoC;KAC/C;IACD,SAAS,EAAE;QACT,SAAS,EAAE,oCAAoC;KAChD;CACO,CAAC;AA6TX;;;GAGG;AACU,QAAA,eAAe,GAAuC;IACjE,kCAAkC;IAClC,iCAAiC;IACjC,uCAAuC;IACvC,4CAA4C;IAC5C,sCAAsC;IACtC,0CAA0C;IAC1C,4CAA4C;IAC5C,2CAA2C;IAC3C,iCAAiC;IACjC,+BAA+B;IAC/B,sCAAsC;IACtC,oCAAoC;IACpC,oCAAoC;IACpC,8BAA8B;IAC9B,sDAAsD;IACtD,0CAA0C;IAC1C,4CAA4C;IAC5C,iCAAiC;IACjC,+BAA+B;IAC/B,6BAA6B;IAC7B,kCAAkC;IAClC,gCAAgC;IAChC,sCAAsC;IACtC,oCAAoC;IACpC,iCAAiC;IACjC,gCAAgC;IAChC,sCAAsC;IACtC,wCAAwC;IACxC,kCAAkC;IAClC,wCAAwC;IACxC,gCAAgC;IAChC,gCAAgC;IAChC,+BAA+B;IAC/B,8BAA8B;IAC9B,gCAAgC;IAChC,kCAAkC;IAClC,wCAAwC;IACxC,0CAA0C;IAC1C,uCAAuC;IACvC,+BAA+B;IAC/B,wCAAwC;IACxC,gCAAgC;IAChC,kCAAkC;IAClC,+BAA+B;IAC/B,yCAAyC;IACzC,iCAAiC;IACjC,uCAAuC;IACvC,uCAAuC;IACvC,gCAAgC;IAChC,qCAAqC;IACrC,oCAAoC;IACpC,kDAAkD;IAClD,kCAAkC;IAClC,6BAA6B;IAC7B,mCAAmC;IACnC,0BAA0B;IAC1B,+BAA+B;IAC/B,2BAA2B;IAC3B,uCAAuC;IACvC,8BAA8B;IAC9B,gCAAgC;IAChC,4BAA4B;IAC5B,sCAAsC;IACtC,oCAAoC;IACpC,sCAAsC;IACtC,8BAA8B;IAC9B,6BAA6B;IAC7B,gCAAgC;IAChC,iCAAiC;IACjC,oCAAoC;IACpC,oCAAoC;CAC5B,CAAC"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ /**
3
+ * CredentialConsentRequiredError — typed error thrown by `Agent.run()` under
4
+ * `onAuthorizationRequired: 'tell-model'` when a turn finished while a tool's
5
+ * DECLARED credential was never obtained.
6
+ *
7
+ * Pattern: Typed Error (parallel to `PolicyHaltError` / `MessageDeniedError`).
8
+ * Role: The honesty terminal for the non-pausing mode. `'tell-model'` lets
9
+ * the model adapt in-loop after a consent block — but a turn that
10
+ * returned a plain answer string would be claiming a completion it
11
+ * did not earn, because the tool never ran. `AgentOutput` is a bare
12
+ * string with nowhere to hang "…and a consent is still outstanding",
13
+ * so the fact is surfaced as an error instead of being dropped.
14
+ * Emits: N/A (this file DEFINES the class; `agentfootprint.credential.
15
+ * authorization_required` fires from the toolCalls handler at the
16
+ * moment the block resolves, and carries `{ service, sessionId }`
17
+ * only — never the URL).
18
+ *
19
+ * **The `authorizationUrl` on this error is a bearer capability.** It carries a
20
+ * session-correlating `state` parameter: whoever holds the URL can complete the
21
+ * consent flow. It reaches the caller HERE and on `PendingAsk` under
22
+ * `'pause'` — and deliberately nowhere else. It is never written to the
23
+ * conversation, the snapshot, the narrative, the typed event stream, or a
24
+ * recording. Treat it like the token it stands in for: hand it to the person
25
+ * who must click it, and do not log it.
26
+ *
27
+ * Under the default `onAuthorizationRequired: 'pause'` this error never fires —
28
+ * the run pauses at the block instead and the same three fields ride
29
+ * `PendingAsk`.
30
+ *
31
+ * @example
32
+ * try {
33
+ * await agent.run({ message: 'pay invoice INV-42' });
34
+ * } catch (e) {
35
+ * if (e instanceof CredentialConsentRequiredError) {
36
+ * // Show the URL to the PERSON. Never log it.
37
+ * await notifyUser(e.service, e.authorizationUrl);
38
+ * } else {
39
+ * throw e;
40
+ * }
41
+ * }
42
+ */
43
+ Object.defineProperty(exports, "__esModule", { value: true });
44
+ exports.CredentialConsentRequiredError = void 0;
45
+ class CredentialConsentRequiredError extends Error {
46
+ code = 'ERR_CREDENTIAL_CONSENT_REQUIRED';
47
+ service;
48
+ /** The 3LO consent URL. A BEARER CAPABILITY — see the class note. */
49
+ authorizationUrl;
50
+ sessionId;
51
+ tool;
52
+ iteration;
53
+ constructor(ctx) {
54
+ // The MESSAGE deliberately omits the URL. An error message is the one
55
+ // string that reliably reaches a log line, and this class exists to keep
56
+ // a capability out of logs.
57
+ super(`Authorization required for '${ctx.service}' (tool='${ctx.tool}', ` +
58
+ `iteration=${ctx.iteration}). The tool did not run. Read ` +
59
+ `\`error.authorizationUrl\` to send the person to consent.`);
60
+ this.name = 'CredentialConsentRequiredError';
61
+ this.service = ctx.service;
62
+ this.authorizationUrl = ctx.authorizationUrl;
63
+ this.sessionId = ctx.sessionId;
64
+ this.tool = ctx.tool;
65
+ this.iteration = ctx.iteration;
66
+ }
67
+ }
68
+ exports.CredentialConsentRequiredError = CredentialConsentRequiredError;
69
+ //# sourceMappingURL=CredentialConsentRequiredError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CredentialConsentRequiredError.js","sourceRoot":"","sources":["../../src/identity/CredentialConsentRequiredError.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;;;AAeH,MAAa,8BAA+B,SAAQ,KAAK;IAC9C,IAAI,GAAG,iCAA0C,CAAC;IAClD,OAAO,CAAS;IACzB,qEAAqE;IAC5D,gBAAgB,CAAS;IACzB,SAAS,CAAS;IAClB,IAAI,CAAS;IACb,SAAS,CAAS;IAE3B,YAAY,GAAqC;QAC/C,sEAAsE;QACtE,yEAAyE;QACzE,4BAA4B;QAC5B,KAAK,CACH,+BAA+B,GAAG,CAAC,OAAO,YAAY,GAAG,CAAC,IAAI,KAAK;YACjE,aAAa,GAAG,CAAC,SAAS,gCAAgC;YAC1D,2DAA2D,CAC9D,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,gCAAgC,CAAC;QAC7C,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAC3B,IAAI,CAAC,gBAAgB,GAAG,GAAG,CAAC,gBAAgB,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;IACjC,CAAC;CACF;AAzBD,wEAyBC"}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ /**
3
+ * The 3LO consent vocabulary — one place, because four surfaces must agree on
4
+ * it and three of them are security boundaries.
5
+ *
6
+ * A `CredentialProvider` that answers `authorization-required` is saying: a
7
+ * PERSON has to click a link before this tool can run. Two things follow, and
8
+ * they are the whole of this module.
9
+ *
10
+ * **1. The URL is a bearer capability, not a message.** It carries a
11
+ * session-correlating `state` parameter; whoever holds it can complete the
12
+ * consent flow. It goes to the CALLER — on `PendingAsk` under `'pause'`, on
13
+ * `CredentialConsentRequiredError` under `'tell-model'` — and to nowhere else.
14
+ * Before 8.6.0 it was interpolated into the tool-result string, which put it in
15
+ * the conversation and therefore in every channel built to preserve tool output
16
+ * (history, `stream.tool_end`, `agent.iteration_end`, `context.injected`, the
17
+ * commit log, the snapshot, the narrative's `rawValue`, and any recording).
18
+ * `modelRefusal()` is the URL-free replacement, and it is why the interpolation
19
+ * has no remaining call site.
20
+ *
21
+ * **2. The model is the one party that cannot act on it.** So what the model
22
+ * reads names the service, says a person is handling it, and tells it what to
23
+ * do instead — the same shape as the `[permission denied: …]` refusal it
24
+ * already knows how to read.
25
+ */
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.redactConsentUrlForEvent = exports.consentQuestion = exports.modelRefusal = exports.CONSENT_URL_WITHHELD = exports.CONSENT_PAUSE_KEY = void 0;
28
+ /**
29
+ * The key under which a consent request rides `pauseData` (and therefore
30
+ * `PendingAsk.pauseData`). Named, rather than free-form, for one reason:
31
+ * `agentfootprint.pause.request` mirrors the WHOLE `pauseData` into its
32
+ * `questionPayload`, so the emitter has to be able to find this block and
33
+ * withhold the URL from the event stream. A free-form shape could not be
34
+ * bounded by name, and the URL would have leaked into every observer again.
35
+ *
36
+ * @see redactConsentUrlForEvent
37
+ */
38
+ exports.CONSENT_PAUSE_KEY = 'authorization';
39
+ /** Placeholder written where the consent URL is deliberately withheld. */
40
+ exports.CONSENT_URL_WITHHELD = '[withheld: consent URL is caller-only]';
41
+ /**
42
+ * What the MODEL reads when a declared credential needs consent. Never the URL.
43
+ *
44
+ * Bracketed like the permission-gate refusal, because it is the same kind of
45
+ * fact: the call did not happen and the model must adapt. It names the service
46
+ * (so the model can reason about what is unavailable), says a person is on it
47
+ * (so it does not invent a way to authorize itself), and offers the two honest
48
+ * continuations.
49
+ */
50
+ function modelRefusal(service) {
51
+ return (`[authorization required: '${service}' — a person must consent before this ` +
52
+ `tool can run. The caller has been told; you cannot do it yourself. ` +
53
+ `Continue with work that does not need '${service}', or say plainly that ` +
54
+ `you could not finish this step.]`);
55
+ }
56
+ exports.modelRefusal = modelRefusal;
57
+ /** The plain-words question a host shows the person, via `PendingAsk.question`. */
58
+ function consentQuestion(service, tool) {
59
+ return `Authorize access to '${service}' so '${tool}' can run.`;
60
+ }
61
+ exports.consentQuestion = consentQuestion;
62
+ /**
63
+ * Strip the consent URL out of a `pause.request` payload.
64
+ *
65
+ * `RunnerBase.emitPauseRequest` copies the whole `pauseData` into
66
+ * `PauseRequestPayload.questionPayload`, which is right for a check-in's
67
+ * evidence pack and wrong for a bearer URL. This withholds exactly one field by
68
+ * name and leaves every other pause shape untouched — the same discipline the
69
+ * audit adapter's `BOUND_FIELDS` already applies to `tool_end.result`.
70
+ *
71
+ * Returns the input unchanged (same reference) when there is no consent block,
72
+ * so no existing pause pays for this.
73
+ */
74
+ function redactConsentUrlForEvent(payload) {
75
+ const block = payload[exports.CONSENT_PAUSE_KEY];
76
+ if (typeof block !== 'object' ||
77
+ block === null ||
78
+ !('authorizationUrl' in block) ||
79
+ typeof block.authorizationUrl !== 'string') {
80
+ return payload;
81
+ }
82
+ return {
83
+ ...payload,
84
+ [exports.CONSENT_PAUSE_KEY]: {
85
+ ...block,
86
+ authorizationUrl: exports.CONSENT_URL_WITHHELD,
87
+ },
88
+ };
89
+ }
90
+ exports.redactConsentUrlForEvent = redactConsentUrlForEvent;
91
+ //# sourceMappingURL=consent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consent.js","sourceRoot":"","sources":["../../src/identity/consent.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;;;AAeH;;;;;;;;;GASG;AACU,QAAA,iBAAiB,GAAG,eAAe,CAAC;AAUjD,0EAA0E;AAC7D,QAAA,oBAAoB,GAAG,wCAAwC,CAAC;AAE7E;;;;;;;;GAQG;AACH,SAAgB,YAAY,CAAC,OAAe;IAC1C,OAAO,CACL,6BAA6B,OAAO,wCAAwC;QAC5E,qEAAqE;QACrE,0CAA0C,OAAO,yBAAyB;QAC1E,kCAAkC,CACnC,CAAC;AACJ,CAAC;AAPD,oCAOC;AAED,mFAAmF;AACnF,SAAgB,eAAe,CAAC,OAAe,EAAE,IAAY;IAC3D,OAAO,wBAAwB,OAAO,SAAS,IAAI,YAAY,CAAC;AAClE,CAAC;AAFD,0CAEC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,wBAAwB,CACtC,OAA0C;IAE1C,MAAM,KAAK,GAAG,OAAO,CAAC,yBAAiB,CAAC,CAAC;IACzC,IACE,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,CAAC,CAAC,kBAAkB,IAAI,KAAK,CAAC;QAC9B,OAAQ,KAAuC,CAAC,gBAAgB,KAAK,QAAQ,EAC7E,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO;QACL,GAAG,OAAO;QACV,CAAC,yBAAiB,CAAC,EAAE;YACnB,GAAI,KAAiC;YACrC,gBAAgB,EAAE,4BAAoB;SACvC;KACF,CAAC;AACJ,CAAC;AAnBD,4DAmBC"}
package/dist/identity.js CHANGED
@@ -29,7 +29,7 @@
29
29
  * here is the same symbol on the new door, not a copy.
30
30
  */
31
31
  Object.defineProperty(exports, "__esModule", { value: true });
32
- exports.agentCoreIdentity = exports.withCredentialRetry = exports.staticTokens = exports.headers = exports.basic = exports.apiKey = exports.bearer = exports.unconfiguredCredentialProvider = exports.isCredentialIssued = void 0;
32
+ exports.agentCoreIdentity = exports.withCredentialRetry = exports.CredentialConsentRequiredError = exports.staticTokens = exports.headers = exports.basic = exports.apiKey = exports.bearer = exports.unconfiguredCredentialProvider = exports.isCredentialIssued = void 0;
33
33
  var types_js_1 = require("./identity/types.js");
34
34
  Object.defineProperty(exports, "isCredentialIssued", { enumerable: true, get: function () { return types_js_1.isCredentialIssued; } });
35
35
  Object.defineProperty(exports, "unconfiguredCredentialProvider", { enumerable: true, get: function () { return types_js_1.unconfiguredCredentialProvider; } });
@@ -40,6 +40,8 @@ Object.defineProperty(exports, "basic", { enumerable: true, get: function () { r
40
40
  Object.defineProperty(exports, "headers", { enumerable: true, get: function () { return kinds_js_1.headers; } });
41
41
  var staticTokens_js_1 = require("./identity/staticTokens.js");
42
42
  Object.defineProperty(exports, "staticTokens", { enumerable: true, get: function () { return staticTokens_js_1.staticTokens; } });
43
+ var CredentialConsentRequiredError_js_1 = require("./identity/CredentialConsentRequiredError.js");
44
+ Object.defineProperty(exports, "CredentialConsentRequiredError", { enumerable: true, get: function () { return CredentialConsentRequiredError_js_1.CredentialConsentRequiredError; } });
43
45
  var withCredentialRetry_js_1 = require("./identity/withCredentialRetry.js");
44
46
  Object.defineProperty(exports, "withCredentialRetry", { enumerable: true, get: function () { return withCredentialRetry_js_1.withCredentialRetry; } });
45
47
  var agentcore_js_1 = require("./adapters/identity/agentcore.js");
@@ -1 +1 @@
1
- {"version":3,"file":"identity.js","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;;;AAWH,gDAAyF;AAAhF,8GAAA,kBAAkB,OAAA;AAAE,0HAAA,8BAA8B,OAAA;AAC3D,gDAS6B;AAR3B,kGAAA,MAAM,OAAA;AACN,kGAAA,MAAM,OAAA;AACN,iGAAA,KAAK,OAAA;AACL,mGAAA,OAAO,OAAA;AAMT,8DAAoF;AAA3E,+GAAA,YAAY,OAAA;AACrB,4EAG2C;AAFzC,6HAAA,mBAAmB,OAAA;AAGrB,iEAK0C;AAJxC,iHAAA,iBAAiB,OAAA"}
1
+ {"version":3,"file":"identity.js","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;;;AAWH,gDAAyF;AAAhF,8GAAA,kBAAkB,OAAA;AAAE,0HAAA,8BAA8B,OAAA;AAC3D,gDAS6B;AAR3B,kGAAA,MAAM,OAAA;AACN,kGAAA,MAAM,OAAA;AACN,iGAAA,KAAK,OAAA;AACL,mGAAA,OAAO,OAAA;AAMT,8DAAoF;AAA3E,+GAAA,YAAY,OAAA;AAKrB,kGAGsD;AAFpD,mJAAA,8BAA8B,OAAA;AAGhC,4EAG2C;AAFzC,6HAAA,mBAAmB,OAAA;AAGrB,iEAK0C;AAJxC,iHAAA,iBAAiB,OAAA"}
@@ -15,7 +15,22 @@
15
15
  * Add it explicitly: `Agent.create(...).skillGraph(graph).injection(defineRelevanceHint())`.
16
16
  */
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.defineRelevanceHint = void 0;
18
+ exports.defineRelevanceHint = exports.READS_ENTRY_SCORES_METADATA_KEY = void 0;
19
+ /**
20
+ * The metadata marker that says "this injection reads `ctx.entryScores`" (8.7.0).
21
+ *
22
+ * Only `.entryBy()` / `.entryByRelevance()` ever write `entryScores` — the PickEntry
23
+ * stage runs a scorer and stamps them. Mounted on a graph with no scorer, the hint's
24
+ * trigger simply can never be true, and nothing said so: the injection registered,
25
+ * evaluated false on every iteration for the life of the agent, and the author saw a
26
+ * feature that was configured and inert.
27
+ *
28
+ * A marker rather than an id match, because the id is the caller's to choose
29
+ * (`defineRelevanceHint({ id })`) — matching on `'relevance-hint'` would miss every
30
+ * renamed one and would false-positive on anybody else's injection of that name.
31
+ * `AgentBuilder.build()` reads it and dev-warns.
32
+ */
33
+ exports.READS_ENTRY_SCORES_METADATA_KEY = 'readsEntryScores';
19
34
  /** Is the top entry a near-tie with the runner-up? */
20
35
  function isNearTie(scores, threshold) {
21
36
  if (!scores || scores.length < 2)
@@ -33,6 +48,7 @@ function defineRelevanceHint(options = {}) {
33
48
  kind: 'rule',
34
49
  activeWhen: (ctx) => ctx.iteration === 1 && isNearTie(ctx.entryScores, threshold),
35
50
  },
51
+ metadata: { [exports.READS_ENTRY_SCORES_METADATA_KEY]: true },
36
52
  inject: {
37
53
  systemPrompt: 'Note: an offline relevance scorer found two or more starting skills nearly tied for ' +
38
54
  'this request. That scorer only matches description keywords and cannot see the ' +
@@ -1 +1 @@
1
- {"version":3,"file":"defineRelevanceHint.js","sourceRoot":"","sources":["../../../../src/lib/injection-engine/factories/defineRelevanceHint.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAcH,sDAAsD;AACtD,SAAS,SAAS,CAAC,MAAuC,EAAE,SAAiB;IAC3E,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAC/C,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;IACrE,OAAO,MAAM,CAAC,CAAC,CAAE,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC,SAAS,GAAG,SAAS,CAAC;AACjE,CAAC;AAED,SAAgB,mBAAmB,CAAC,UAAgC,EAAE;IACpE,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC;IAC5C,OAAO;QACL,EAAE,EAAE,OAAO,CAAC,EAAE,IAAI,gBAAgB;QAClC,MAAM,EAAE,cAAc;QACtB,WAAW,EAAE,8EAA8E;QAC3F,OAAO,EAAE;YACP,IAAI,EAAE,MAAM;YACZ,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC;SAClF;QACD,MAAM,EAAE;YACN,YAAY,EACV,sFAAsF;gBACtF,iFAAiF;gBACjF,sFAAsF;gBACtF,uFAAuF;gBACvF,uBAAuB;SAC1B;KACF,CAAC;AACJ,CAAC;AAnBD,kDAmBC"}
1
+ {"version":3,"file":"defineRelevanceHint.js","sourceRoot":"","sources":["../../../../src/lib/injection-engine/factories/defineRelevanceHint.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAcH;;;;;;;;;;;;;GAaG;AACU,QAAA,+BAA+B,GAAG,kBAA2B,CAAC;AAE3E,sDAAsD;AACtD,SAAS,SAAS,CAAC,MAAuC,EAAE,SAAiB;IAC3E,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAC/C,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;IACrE,OAAO,MAAM,CAAC,CAAC,CAAE,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC,SAAS,GAAG,SAAS,CAAC;AACjE,CAAC;AAED,SAAgB,mBAAmB,CAAC,UAAgC,EAAE;IACpE,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC;IAC5C,OAAO;QACL,EAAE,EAAE,OAAO,CAAC,EAAE,IAAI,gBAAgB;QAClC,MAAM,EAAE,cAAc;QACtB,WAAW,EAAE,8EAA8E;QAC3F,OAAO,EAAE;YACP,IAAI,EAAE,MAAM;YACZ,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC;SAClF;QACD,QAAQ,EAAE,EAAE,CAAC,uCAA+B,CAAC,EAAE,IAAI,EAAE;QACrD,MAAM,EAAE;YACN,YAAY,EACV,sFAAsF;gBACtF,iFAAiF;gBACjF,sFAAsF;gBACtF,uFAAuF;gBACvF,uBAAuB;SAC1B;KACF,CAAC;AACJ,CAAC;AApBD,kDAoBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"defineSkill.js","sourceRoot":"","sources":["../../../../src/lib/injection-engine/factories/defineSkill.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;;;AAIH,4EAAwE;AA0HxE;;;;;;;;;;;GAWG;AACH,SAAgB,kBAAkB,CAAC,QAAgB,EAAE,KAAc;IACjE,MAAM,CAAC,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IACjC,IAAI,CAAC,KAAK,WAAW,EAAE,CAAC;QACtB,2CAA2C;QAC3C,4CAA4C;QAC5C,+EAA+E;QAC/E,gFAAgF;QAChF,IAAI,KAAK,IAAI,iEAAiE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3F,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAbD,gDAaC;AAED,SAAgB,WAAW,CAAC,IAAwB;IAClD,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CACb,eAAe,IAAI,CAAC,EAAE,0EAA0E,CACjG,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,CAAC,EAAE,0BAA0B,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,MAAM,EAAE,OAAgB;QACxB,OAAO,EAAE;YACP,IAAI,EAAE,eAAwB;YAC9B,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,YAAY;SAC9C;QACD,MAAM,EAAE;YACN,YAAY,EAAE,IAAI,CAAC,IAAI;YACvB,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;SAClE;QACD,iEAAiE;QACjE,oEAAoE;QACpE,iEAAiE;QACjE,mCAAmC;QACnC,EAAE;QACF,iEAAiE;QACjE,iEAAiE;QACjE,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC;YACtB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,MAAM;YACvC,GAAG,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;YAChE,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;YAC7D,KAAK,EAAE,IAAA,wCAAkB,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC;SAC/C,CAAC;KACH,CAAyB,CAAC;AAC7B,CAAC;AAtCD,kCAsCC"}
1
+ {"version":3,"file":"defineSkill.js","sourceRoot":"","sources":["../../../../src/lib/injection-engine/factories/defineSkill.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;;;AAIH,4EAAwE;AAmIxE;;;;;;;;;;;GAWG;AACH,SAAgB,kBAAkB,CAAC,QAAgB,EAAE,KAAc;IACjE,MAAM,CAAC,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IACjC,IAAI,CAAC,KAAK,WAAW,EAAE,CAAC;QACtB,2CAA2C;QAC3C,4CAA4C;QAC5C,+EAA+E;QAC/E,gFAAgF;QAChF,IAAI,KAAK,IAAI,iEAAiE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3F,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAbD,gDAaC;AAED,SAAgB,WAAW,CAAC,IAAwB;IAClD,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CACb,eAAe,IAAI,CAAC,EAAE,0EAA0E,CACjG,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,CAAC,EAAE,0BAA0B,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,MAAM,EAAE,OAAgB;QACxB,OAAO,EAAE;YACP,IAAI,EAAE,eAAwB;YAC9B,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,YAAY;SAC9C;QACD,MAAM,EAAE;YACN,YAAY,EAAE,IAAI,CAAC,IAAI;YACvB,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;SAClE;QACD,iEAAiE;QACjE,oEAAoE;QACpE,iEAAiE;QACjE,mCAAmC;QACnC,EAAE;QACF,iEAAiE;QACjE,iEAAiE;QACjE,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC;YACtB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,MAAM;YACvC,GAAG,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;YAChE,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;YAC7D,KAAK,EAAE,IAAA,wCAAkB,EAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC;SAC/C,CAAC;KACH,CAAyB,CAAC;AAC7B,CAAC;AAtCD,kCAsCC"}
@@ -7,7 +7,7 @@
7
7
  * factories. See `README.md` in this folder for the full concept.
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.skillToolNames = exports.checkSkillContracts = exports.checkSkillContract = exports.rankEntries = exports.embeddingScorer = exports.keywordScorer = exports.SKILL_GRAPH_METADATA_KEY = exports.decideSkill = exports.skillGraph = exports.defineInjection = exports.defineFact = exports.defineSteering = exports.buildReadSkillTool = exports.buildListSkillsTool = exports.skillsFromDir = exports.SkillRegistry = exports.resolveSurfaceMode = exports.defineSkill = exports.defineRelevanceHint = exports.defineInstruction = exports.buildInjectionEngineSubflow = exports.evaluateInjections = exports.projectActiveInjection = void 0;
10
+ exports.skillToolNames = exports.checkSkillContracts = exports.checkSkillContract = exports.rankEntries = exports.embeddingScorer = exports.keywordScorer = exports.SKILL_GRAPH_METADATA_KEY = exports.formatCheckup = exports.decideSkill = exports.skillGraph = exports.defineInjection = exports.defineFact = exports.defineSteering = exports.buildReadSkillTool = exports.buildListSkillsTool = exports.skillsFromDir = exports.SkillRegistry = exports.resolveSurfaceMode = exports.defineSkill = exports.READS_ENTRY_SCORES_METADATA_KEY = exports.defineRelevanceHint = exports.defineInstruction = exports.buildInjectionEngineSubflow = exports.evaluateInjections = exports.projectActiveInjection = void 0;
11
11
  // POJO projection — used by slot subflows + advanced consumers
12
12
  var types_js_1 = require("./types.js");
13
13
  Object.defineProperty(exports, "projectActiveInjection", { enumerable: true, get: function () { return types_js_1.projectActiveInjection; } });
@@ -21,6 +21,7 @@ var defineInstruction_js_1 = require("./factories/defineInstruction.js");
21
21
  Object.defineProperty(exports, "defineInstruction", { enumerable: true, get: function () { return defineInstruction_js_1.defineInstruction; } });
22
22
  var defineRelevanceHint_js_1 = require("./factories/defineRelevanceHint.js");
23
23
  Object.defineProperty(exports, "defineRelevanceHint", { enumerable: true, get: function () { return defineRelevanceHint_js_1.defineRelevanceHint; } });
24
+ Object.defineProperty(exports, "READS_ENTRY_SCORES_METADATA_KEY", { enumerable: true, get: function () { return defineRelevanceHint_js_1.READS_ENTRY_SCORES_METADATA_KEY; } });
24
25
  var defineSkill_js_1 = require("./factories/defineSkill.js");
25
26
  Object.defineProperty(exports, "defineSkill", { enumerable: true, get: function () { return defineSkill_js_1.defineSkill; } });
26
27
  Object.defineProperty(exports, "resolveSurfaceMode", { enumerable: true, get: function () { return defineSkill_js_1.resolveSurfaceMode; } });
@@ -52,6 +53,11 @@ Object.defineProperty(exports, "defineInjection", { enumerable: true, get: funct
52
53
  var skillGraph_js_1 = require("./skillGraph.js");
53
54
  Object.defineProperty(exports, "skillGraph", { enumerable: true, get: function () { return skillGraph_js_1.skillGraph; } });
54
55
  Object.defineProperty(exports, "decideSkill", { enumerable: true, get: function () { return skillGraph_js_1.decideSkill; } });
56
+ // 8.7.0 — render a `graph.checkup()` for a log line or a CI failure. The formatter
57
+ // the library itself uses; without it every consumer wrote their own. `checkupGraph`
58
+ // stays private: its input is the graph's internal wiring shape, and `graph.checkup()`
59
+ // is already the door to it.
60
+ Object.defineProperty(exports, "formatCheckup", { enumerable: true, get: function () { return skillGraph_js_1.formatCheckup; } });
55
61
  Object.defineProperty(exports, "SKILL_GRAPH_METADATA_KEY", { enumerable: true, get: function () { return skillGraph_js_1.SKILL_GRAPH_METADATA_KEY; } });
56
62
  var entryScorer_js_1 = require("./entryScorer.js");
57
63
  Object.defineProperty(exports, "keywordScorer", { enumerable: true, get: function () { return entryScorer_js_1.keywordScorer; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/injection-engine/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAYH,+DAA+D;AAC/D,uCAAoD;AAA3C,kHAAA,sBAAsB,OAAA;AAE/B,SAAS;AACT,+CAAoD;AAA3C,kHAAA,kBAAkB,OAAA;AAC3B,mFAG0C;AAFxC,6IAAA,2BAA2B,OAAA;AAI7B,gFAAgF;AAChF,yEAAoG;AAA3F,yHAAA,iBAAiB,OAAA;AAC1B,6EAAoG;AAA3F,6HAAA,mBAAmB,OAAA;AAE5B,6DAOoC;AANlC,6GAAA,WAAW,OAAA;AACX,oHAAA,kBAAkB,OAAA;AAOpB,uDAA8E;AAArE,iHAAA,aAAa,OAAA;AAEtB,8EAA8E;AAC9E,+EAA+E;AAC/E,6DAA6D;AAC7D,uDAA8E;AAArE,iHAAA,aAAa,OAAA;AAEtB,wEAAwE;AACxE,sEAAsE;AACtE,iEAAiE;AACjE,+BAA+B;AAC/B,iDAA8F;AAArF,oHAAA,mBAAmB,OAAA;AAAE,mHAAA,kBAAkB,OAAA;AAEhD,mEAA2F;AAAlF,mHAAA,cAAc,OAAA;AAEvB,2DAA+E;AAAtE,2GAAA,UAAU,OAAA;AAEnB,6EAA6E;AAC7E,0EAA0E;AAC1E,qDAAqD;AACrD,qEAIwC;AAHtC,qHAAA,eAAe,OAAA;AAKjB,4EAA4E;AAC5E,8EAA8E;AAC9E,iDA+ByB;AA9BvB,2GAAA,UAAU,OAAA;AACV,4GAAA,WAAW,OAAA;AACX,yHAAA,wBAAwB,OAAA;AA6B1B,mDAO0B;AANxB,+GAAA,aAAa,OAAA;AACb,iHAAA,eAAe,OAAA;AACf,6GAAA,WAAW,OAAA;AAKb,uDAA6F;AAApF,sHAAA,kBAAkB,OAAA;AAAE,uHAAA,mBAAmB,OAAA;AAAE,kHAAA,cAAc,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/injection-engine/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAYH,+DAA+D;AAC/D,uCAAoD;AAA3C,kHAAA,sBAAsB,OAAA;AAE/B,SAAS;AACT,+CAAoD;AAA3C,kHAAA,kBAAkB,OAAA;AAC3B,mFAG0C;AAFxC,6IAAA,2BAA2B,OAAA;AAI7B,gFAAgF;AAChF,yEAAoG;AAA3F,yHAAA,iBAAiB,OAAA;AAC1B,6EAI4C;AAH1C,6HAAA,mBAAmB,OAAA;AACnB,yIAAA,+BAA+B,OAAA;AAIjC,6DAOoC;AANlC,6GAAA,WAAW,OAAA;AACX,oHAAA,kBAAkB,OAAA;AAOpB,uDAA8E;AAArE,iHAAA,aAAa,OAAA;AAEtB,8EAA8E;AAC9E,+EAA+E;AAC/E,6DAA6D;AAC7D,uDAA8E;AAArE,iHAAA,aAAa,OAAA;AAEtB,wEAAwE;AACxE,sEAAsE;AACtE,iEAAiE;AACjE,+BAA+B;AAC/B,iDAA8F;AAArF,oHAAA,mBAAmB,OAAA;AAAE,mHAAA,kBAAkB,OAAA;AAEhD,mEAA2F;AAAlF,mHAAA,cAAc,OAAA;AAEvB,2DAA+E;AAAtE,2GAAA,UAAU,OAAA;AAEnB,6EAA6E;AAC7E,0EAA0E;AAC1E,qDAAqD;AACrD,qEAIwC;AAHtC,qHAAA,eAAe,OAAA;AAKjB,4EAA4E;AAC5E,8EAA8E;AAC9E,iDAqCyB;AApCvB,2GAAA,UAAU,OAAA;AACV,4GAAA,WAAW,OAAA;AACX,mFAAmF;AACnF,qFAAqF;AACrF,uFAAuF;AACvF,6BAA6B;AAC7B,8GAAA,aAAa,OAAA;AACb,yHAAA,wBAAwB,OAAA;AA8B1B,mDAO0B;AANxB,+GAAA,aAAa,OAAA;AACb,iHAAA,eAAe,OAAA;AACf,6GAAA,WAAW,OAAA;AAKb,uDAK4B;AAJ1B,sHAAA,kBAAkB,OAAA;AAClB,uHAAA,mBAAmB,OAAA;AACnB,kHAAA,cAAc,OAAA"}
@@ -34,12 +34,15 @@ exports.skillToolNames = skillToolNames;
34
34
  * @param knownToolNames every tool name reachable in the wider graph/agent (lets
35
35
  * the check tell a cross-skill HANDOFF from a typo). Omit to
36
36
  * check a skill in isolation (only its own tools are "known").
37
+ * @param options `knownTools` — baseline tools callable from every skill.
38
+ * See {@link SkillContractOptions}.
37
39
  */
38
- function checkSkillContract(skill, knownToolNames) {
40
+ function checkSkillContract(skill, knownToolNames, options = {}) {
39
41
  const id = skill.id;
40
42
  const body = skill.inject?.systemPrompt ?? '';
41
43
  if (body.length === 0)
42
44
  return [];
45
+ const baseline = new Set(options.knownTools ?? []);
43
46
  const own = new Set(skillToolNames(skill));
44
47
  const known = knownToolNames ?? own;
45
48
  const problems = [];
@@ -50,6 +53,8 @@ function checkSkillContract(skill, knownToolNames) {
50
53
  for (const name of known) {
51
54
  if (own.has(name))
52
55
  continue;
56
+ if (baseline.has(name))
57
+ continue; // callable from every skill — not foreign
53
58
  if (new RegExp(`\\b${escapeRegExp(name)}\\b`).test(body)) {
54
59
  problems.push({
55
60
  kind: 'warning',
@@ -67,7 +72,7 @@ function checkSkillContract(skill, knownToolNames) {
67
72
  const seen = new Set();
68
73
  for (const m of body.matchAll(TOOL_CALL_RE)) {
69
74
  const name = m[1];
70
- if (seen.has(name) || own.has(name) || known.has(name))
75
+ if (seen.has(name) || own.has(name) || known.has(name) || baseline.has(name))
71
76
  continue;
72
77
  seen.add(name);
73
78
  problems.push({
@@ -83,12 +88,14 @@ function checkSkillContract(skill, knownToolNames) {
83
88
  }
84
89
  exports.checkSkillContract = checkSkillContract;
85
90
  /** Run the contract check across many skills with a shared known-tool set. Pure. */
86
- function checkSkillContracts(skills) {
91
+ function checkSkillContracts(skills, options = {}) {
87
92
  const known = new Set();
88
93
  for (const s of skills)
89
94
  for (const n of skillToolNames(s))
90
95
  known.add(n);
91
- return skills.flatMap((s) => checkSkillContract(s, known));
96
+ for (const n of options.knownTools ?? [])
97
+ known.add(n);
98
+ return skills.flatMap((s) => checkSkillContract(s, known, options));
92
99
  }
93
100
  exports.checkSkillContracts = checkSkillContracts;
94
101
  //# sourceMappingURL=skillContract.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"skillContract.js","sourceRoot":"","sources":["../../../src/lib/injection-engine/skillContract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skillContract.js","sourceRoot":"","sources":["../../../src/lib/injection-engine/skillContract.ts"],"names":[],"mappings":"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"}
@@ -48,11 +48,13 @@
48
48
  * per-hop cause, so a model pick was recorded under a declared edge's label).
49
49
  */
50
50
  Object.defineProperty(exports, "__esModule", { value: true });
51
- exports.skillGraph = exports.SKILL_GRAPH_METADATA_KEY = exports.decideSkill = void 0;
51
+ exports.skillGraph = exports.SKILL_GRAPH_METADATA_KEY = exports.decideSkill = exports.formatCheckup = void 0;
52
52
  const footprintjs_1 = require("footprintjs");
53
53
  const entryScorer_js_1 = require("./entryScorer.js");
54
54
  const skillGraphCheckup_js_1 = require("./skillGraphCheckup.js");
55
55
  const skillContract_js_1 = require("./skillContract.js");
56
+ var skillGraphCheckup_js_2 = require("./skillGraphCheckup.js");
57
+ Object.defineProperty(exports, "formatCheckup", { enumerable: true, get: function () { return skillGraphCheckup_js_2.formatCheckup; } });
56
58
  /** Build a decision node. Leaves are skills (an `Injection`); internal nodes are
57
59
  * other `decideSkill(...)` results. (Renamed from `decide` in v7 to avoid
58
60
  * colliding with footprintjs's `decide()`.) */
@@ -190,18 +192,28 @@ function skillGraph(config) {
190
192
  const edges = [];
191
193
  // The build-time check-up — pure over the declared entries/routes/skills,
192
194
  // PLUS the proposal-009 Tier-1 skill-body ↔ tool-contract checks (warnings).
193
- const checkup = () => {
195
+ //
196
+ // `triggerKinds` reads the COMPILED `skills` array (filled below, before any
197
+ // caller can reach this closure) rather than the declaration, because that is
198
+ // where the truth is: `deriveTrigger` returns null for an unwired skill, so the
199
+ // skill keeps whatever trigger it arrived with — and `unreachable-skill`'s
200
+ // sentence about read_skill is only true for `llm-activated`.
201
+ const checkup = (options = {}) => {
194
202
  const wiring = (0, skillGraphCheckup_js_1.checkupGraph)({
195
203
  skillIds: new Set(skillsById.keys()),
196
- entryIds: entries.map((e) => e.id),
204
+ entries: entries.map((e) => ({ id: e.id, conditional: e.when !== undefined })),
197
205
  routes: routes.map((r) => ({
198
206
  fromId: r.fromId,
199
207
  toId: r.toId,
200
208
  deterministic: !!(r.when || r.onToolReturn),
201
209
  })),
202
210
  isTree: treeRoot !== undefined,
211
+ exclusiveEntries: entryScorer !== undefined || entryByReadFlag,
212
+ triggerKinds: new Map(skills.map((s) => [s.id, s.trigger.kind])),
213
+ });
214
+ const contract = (0, skillContract_js_1.checkSkillContracts)([...skillsById.values()], {
215
+ ...(options.knownTools && { knownTools: options.knownTools }),
203
216
  });
204
- const contract = (0, skillContract_js_1.checkSkillContracts)([...skillsById.values()]);
205
217
  const problems = [...wiring.problems, ...contract];
206
218
  return { ok: !problems.some((p) => p.kind === 'error'), problems };
207
219
  };
@@ -301,11 +313,17 @@ function skillGraph(config) {
301
313
  label: r.label ?? (r.onToolReturn ? `on ${String(r.onToolReturn)}` : undefined),
302
314
  })));
303
315
  }
304
- // Run the check-up per the `check` mode (default 'warn'): 'throw' fails loud on
305
- // an error; 'warn' prints in dev mode only (quiet in prod / tests); 'off' skips.
306
- const check = opts.check ?? 'warn';
316
+ // Run the check-up per the `check` mode: 'throw' fails loud on an error; 'warn'
317
+ // prints in dev mode only (quiet in prod / tests) and NEVER throws; 'off' skips.
318
+ //
319
+ // The default is `'throw'` since 8.7.0, matching the object-literal form. It was
320
+ // `'warn'`, which meant a fluent graph with `no-entry` or `unknown-skill` — a
321
+ // graph that cannot start a turn at all — built in silence outside dev mode and
322
+ // surfaced as a run that entered no skill. An explicit `check: 'warn'` still
323
+ // never throws, so the opt-down survives with its name intact.
324
+ const check = opts.check ?? 'throw';
307
325
  if (check !== 'off') {
308
- const result = checkup();
326
+ const result = checkup({ ...(opts.knownTools && { knownTools: opts.knownTools }) });
309
327
  if (check === 'throw' && !result.ok) {
310
328
  throw new Error(`skillGraph: build-time check-up failed:\n${(0, skillGraphCheckup_js_1.formatCheckup)(result)}`);
311
329
  }
@@ -324,7 +342,7 @@ function skillGraph(config) {
324
342
  nextSkill: (ctx) => resolveCursor(ctx).to,
325
343
  explainNextSkill: (ctx) => resolveCursor(ctx),
326
344
  reachableSkills: (currentSkillId) => reachableSkills(currentSkillId),
327
- checkup,
345
+ checkup: (options) => checkup(options),
328
346
  ...(scoreEntries && { scoreEntries }),
329
347
  };
330
348
  },
@@ -360,7 +378,12 @@ function skillGraph(config) {
360
378
  return s;
361
379
  };
362
380
  if (config.tree) {
363
- builder.tree(config.tree);
381
+ // `scopeTools` reaches the compiler here since 8.7.0 — the fluent form's
382
+ // `.tree(root, { scopeTools: false })` had no object-form twin, so this arm
383
+ // silently forced every leaf to `autoActivate: 'currentSkill'`.
384
+ builder.tree(config.tree, {
385
+ ...(config.scopeTools !== undefined && { scopeTools: config.scopeTools }),
386
+ });
364
387
  }
365
388
  else if (config.start !== undefined) {
366
389
  const start = config.start;
@@ -390,7 +413,10 @@ function skillGraph(config) {
390
413
  ...(step.label && { label: step.label }),
391
414
  });
392
415
  }
393
- return builder.build({ check: config.check ?? 'throw' });
416
+ return builder.build({
417
+ check: config.check ?? 'throw',
418
+ ...(config.knownTools && { knownTools: config.knownTools }),
419
+ });
394
420
  }
395
421
  return builder;
396
422
  }
@@ -1 +1 @@
1
- {"version":3,"file":"skillGraph.js","sourceRoot":"","sources":["../../../src/lib/injection-engine/skillGraph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skillGraph.js","sourceRoot":"","sources":["../../../src/lib/injection-engine/skillGraph.ts"],"names":[],"mappings":"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"}