agent-passport-system 1.45.0 → 2.0.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 (268) hide show
  1. package/README.md +4 -4
  2. package/dist/src/adapters/a2a.d.ts +7 -24
  3. package/dist/src/adapters/a2a.d.ts.map +1 -1
  4. package/dist/src/adapters/a2a.js +20 -49
  5. package/dist/src/adapters/a2a.js.map +1 -1
  6. package/dist/src/adapters/adk.d.ts +16 -14
  7. package/dist/src/adapters/adk.d.ts.map +1 -1
  8. package/dist/src/adapters/adk.js +20 -41
  9. package/dist/src/adapters/adk.js.map +1 -1
  10. package/dist/src/adapters/crewai.d.ts +4 -41
  11. package/dist/src/adapters/crewai.d.ts.map +1 -1
  12. package/dist/src/adapters/crewai.js +4 -59
  13. package/dist/src/adapters/crewai.js.map +1 -1
  14. package/dist/src/adapters/gateway-reporter.d.ts +12 -16
  15. package/dist/src/adapters/gateway-reporter.d.ts.map +1 -1
  16. package/dist/src/adapters/gateway-reporter.js +14 -44
  17. package/dist/src/adapters/gateway-reporter.js.map +1 -1
  18. package/dist/src/adapters/gonka.d.ts +0 -2
  19. package/dist/src/adapters/gonka.d.ts.map +1 -1
  20. package/dist/src/adapters/gonka.js +0 -7
  21. package/dist/src/adapters/gonka.js.map +1 -1
  22. package/dist/src/adapters/governance-hook.d.ts +11 -87
  23. package/dist/src/adapters/governance-hook.d.ts.map +1 -1
  24. package/dist/src/adapters/governance-hook.js +8 -114
  25. package/dist/src/adapters/governance-hook.js.map +1 -1
  26. package/dist/src/adapters/ibac.d.ts +0 -2
  27. package/dist/src/adapters/ibac.d.ts.map +1 -1
  28. package/dist/src/adapters/ibac.js +0 -3
  29. package/dist/src/adapters/ibac.js.map +1 -1
  30. package/dist/src/adapters/langchain.d.ts +4 -23
  31. package/dist/src/adapters/langchain.d.ts.map +1 -1
  32. package/dist/src/adapters/langchain.js +4 -73
  33. package/dist/src/adapters/langchain.js.map +1 -1
  34. package/dist/src/adapters/mcp.d.ts +0 -2
  35. package/dist/src/adapters/mcp.d.ts.map +1 -1
  36. package/dist/src/adapters/mcp.js +0 -9
  37. package/dist/src/adapters/mcp.js.map +1 -1
  38. package/dist/src/conformance/suite.d.ts.map +1 -1
  39. package/dist/src/conformance/suite.js +13 -18
  40. package/dist/src/conformance/suite.js.map +1 -1
  41. package/dist/src/contract.d.ts +3 -4
  42. package/dist/src/contract.d.ts.map +1 -1
  43. package/dist/src/contract.js +4 -25
  44. package/dist/src/contract.js.map +1 -1
  45. package/dist/src/core/attribution.d.ts +4 -42
  46. package/dist/src/core/attribution.d.ts.map +1 -1
  47. package/dist/src/core/attribution.js +25 -131
  48. package/dist/src/core/attribution.js.map +1 -1
  49. package/dist/src/core/commerce.d.ts +34 -19
  50. package/dist/src/core/commerce.d.ts.map +1 -1
  51. package/dist/src/core/commerce.js +90 -276
  52. package/dist/src/core/commerce.js.map +1 -1
  53. package/dist/src/core/context.d.ts +13 -70
  54. package/dist/src/core/context.d.ts.map +1 -1
  55. package/dist/src/core/context.js +15 -358
  56. package/dist/src/core/context.js.map +1 -1
  57. package/dist/src/core/data-contribution.d.ts +16 -15
  58. package/dist/src/core/data-contribution.d.ts.map +1 -1
  59. package/dist/src/core/data-contribution.js +17 -214
  60. package/dist/src/core/data-contribution.js.map +1 -1
  61. package/dist/src/core/data-enforcement.d.ts +16 -22
  62. package/dist/src/core/data-enforcement.d.ts.map +1 -1
  63. package/dist/src/core/data-enforcement.js +21 -128
  64. package/dist/src/core/data-enforcement.js.map +1 -1
  65. package/dist/src/core/data-gateway.d.ts +22 -35
  66. package/dist/src/core/data-gateway.d.ts.map +1 -1
  67. package/dist/src/core/data-gateway.js +26 -118
  68. package/dist/src/core/data-gateway.js.map +1 -1
  69. package/dist/src/core/data-settlement.d.ts +12 -9
  70. package/dist/src/core/data-settlement.d.ts.map +1 -1
  71. package/dist/src/core/data-settlement.js +14 -191
  72. package/dist/src/core/data-settlement.js.map +1 -1
  73. package/dist/src/core/data-source-attribution.d.ts +1 -0
  74. package/dist/src/core/data-source-attribution.d.ts.map +1 -1
  75. package/dist/src/core/data-source-attribution.js +35 -58
  76. package/dist/src/core/data-source-attribution.js.map +1 -1
  77. package/dist/src/core/delegation.d.ts +18 -50
  78. package/dist/src/core/delegation.d.ts.map +1 -1
  79. package/dist/src/core/delegation.js +89 -366
  80. package/dist/src/core/delegation.js.map +1 -1
  81. package/dist/src/core/entity-verification.d.ts +26 -23
  82. package/dist/src/core/entity-verification.d.ts.map +1 -1
  83. package/dist/src/core/entity-verification.js +42 -68
  84. package/dist/src/core/entity-verification.js.map +1 -1
  85. package/dist/src/core/euaiact.d.ts +14 -40
  86. package/dist/src/core/euaiact.d.ts.map +1 -1
  87. package/dist/src/core/euaiact.js +16 -197
  88. package/dist/src/core/euaiact.js.map +1 -1
  89. package/dist/src/core/gateway-wiring.d.ts +0 -2
  90. package/dist/src/core/gateway-wiring.d.ts.map +1 -1
  91. package/dist/src/core/gateway-wiring.js +2 -2
  92. package/dist/src/core/gateway-wiring.js.map +1 -1
  93. package/dist/src/core/gateway.d.ts +1 -182
  94. package/dist/src/core/gateway.d.ts.map +1 -1
  95. package/dist/src/core/gateway.js +4 -2030
  96. package/dist/src/core/gateway.js.map +1 -1
  97. package/dist/src/core/governance-posture.d.ts +8 -14
  98. package/dist/src/core/governance-posture.d.ts.map +1 -1
  99. package/dist/src/core/governance-posture.js +25 -91
  100. package/dist/src/core/governance-posture.js.map +1 -1
  101. package/dist/src/core/integration.d.ts +19 -112
  102. package/dist/src/core/integration.d.ts.map +1 -1
  103. package/dist/src/core/integration.js +18 -234
  104. package/dist/src/core/integration.js.map +1 -1
  105. package/dist/src/core/intent-network.d.ts +21 -51
  106. package/dist/src/core/intent-network.d.ts.map +1 -1
  107. package/dist/src/core/intent-network.js +23 -284
  108. package/dist/src/core/intent-network.js.map +1 -1
  109. package/dist/src/core/key-rotation.d.ts +8 -1
  110. package/dist/src/core/key-rotation.d.ts.map +1 -1
  111. package/dist/src/core/key-rotation.js +9 -1
  112. package/dist/src/core/key-rotation.js.map +1 -1
  113. package/dist/src/core/receipt-ledger.d.ts +1 -1
  114. package/dist/src/core/receipt-ledger.d.ts.map +1 -1
  115. package/dist/src/core/receipt-ledger.js +16 -39
  116. package/dist/src/core/receipt-ledger.js.map +1 -1
  117. package/dist/src/core/reputation-authority.d.ts +8 -155
  118. package/dist/src/core/reputation-authority.d.ts.map +1 -1
  119. package/dist/src/core/reputation-authority.js +24 -264
  120. package/dist/src/core/reputation-authority.js.map +1 -1
  121. package/dist/src/core/time.d.ts +9 -2
  122. package/dist/src/core/time.d.ts.map +1 -1
  123. package/dist/src/core/time.js +24 -5
  124. package/dist/src/core/time.js.map +1 -1
  125. package/dist/src/core/training-attribution.d.ts +24 -104
  126. package/dist/src/core/training-attribution.d.ts.map +1 -1
  127. package/dist/src/core/training-attribution.js +19 -225
  128. package/dist/src/core/training-attribution.js.map +1 -1
  129. package/dist/src/core-exports.d.ts +0 -2
  130. package/dist/src/core-exports.d.ts.map +1 -1
  131. package/dist/src/core-exports.js +1 -3
  132. package/dist/src/core-exports.js.map +1 -1
  133. package/dist/src/index.d.ts +23 -32
  134. package/dist/src/index.d.ts.map +1 -1
  135. package/dist/src/index.js +47 -35
  136. package/dist/src/index.js.map +1 -1
  137. package/dist/src/types/health.d.ts +0 -2
  138. package/dist/src/types/health.d.ts.map +1 -1
  139. package/dist/src/types/health.js +4 -13
  140. package/dist/src/types/health.js.map +1 -1
  141. package/dist/src/v2/affected-party.d.ts +1 -52
  142. package/dist/src/v2/affected-party.d.ts.map +1 -1
  143. package/dist/src/v2/affected-party.js +6 -79
  144. package/dist/src/v2/affected-party.js.map +1 -1
  145. package/dist/src/v2/amendment.d.ts +1 -39
  146. package/dist/src/v2/amendment.d.ts.map +1 -1
  147. package/dist/src/v2/amendment.js +6 -68
  148. package/dist/src/v2/amendment.js.map +1 -1
  149. package/dist/src/v2/anomaly-v2.d.ts +7 -12
  150. package/dist/src/v2/anomaly-v2.d.ts.map +1 -1
  151. package/dist/src/v2/anomaly-v2.js +39 -105
  152. package/dist/src/v2/anomaly-v2.js.map +1 -1
  153. package/dist/src/v2/approval-fatigue.d.ts +0 -35
  154. package/dist/src/v2/approval-fatigue.d.ts.map +1 -1
  155. package/dist/src/v2/approval-fatigue.js +6 -205
  156. package/dist/src/v2/approval-fatigue.js.map +1 -1
  157. package/dist/src/v2/attestation-v2.d.ts +23 -9
  158. package/dist/src/v2/attestation-v2.d.ts.map +1 -1
  159. package/dist/src/v2/attestation-v2.js +50 -25
  160. package/dist/src/v2/attestation-v2.js.map +1 -1
  161. package/dist/src/v2/attribution-settlement/aggregate.d.ts +30 -0
  162. package/dist/src/v2/attribution-settlement/aggregate.d.ts.map +1 -0
  163. package/dist/src/v2/attribution-settlement/aggregate.js +306 -0
  164. package/dist/src/v2/attribution-settlement/aggregate.js.map +1 -0
  165. package/dist/src/v2/attribution-settlement/contributor-query.d.ts +21 -0
  166. package/dist/src/v2/attribution-settlement/contributor-query.d.ts.map +1 -0
  167. package/dist/src/v2/attribution-settlement/contributor-query.js +147 -0
  168. package/dist/src/v2/attribution-settlement/contributor-query.js.map +1 -0
  169. package/dist/src/v2/attribution-settlement/index.d.ts +9 -0
  170. package/dist/src/v2/attribution-settlement/index.d.ts.map +1 -0
  171. package/dist/src/v2/attribution-settlement/index.js +14 -0
  172. package/dist/src/v2/attribution-settlement/index.js.map +1 -0
  173. package/dist/src/v2/attribution-settlement/merkle.d.ts +20 -0
  174. package/dist/src/v2/attribution-settlement/merkle.d.ts.map +1 -0
  175. package/dist/src/v2/attribution-settlement/merkle.js +100 -0
  176. package/dist/src/v2/attribution-settlement/merkle.js.map +1 -0
  177. package/dist/src/v2/attribution-settlement/sign.d.ts +16 -0
  178. package/dist/src/v2/attribution-settlement/sign.d.ts.map +1 -0
  179. package/dist/src/v2/attribution-settlement/sign.js +55 -0
  180. package/dist/src/v2/attribution-settlement/sign.js.map +1 -0
  181. package/dist/src/v2/attribution-settlement/types.d.ts +127 -0
  182. package/dist/src/v2/attribution-settlement/types.d.ts.map +1 -0
  183. package/dist/src/v2/attribution-settlement/types.js +11 -0
  184. package/dist/src/v2/attribution-settlement/types.js.map +1 -0
  185. package/dist/src/v2/attribution-settlement/verify.d.ts +17 -0
  186. package/dist/src/v2/attribution-settlement/verify.d.ts.map +1 -0
  187. package/dist/src/v2/attribution-settlement/verify.js +227 -0
  188. package/dist/src/v2/attribution-settlement/verify.js.map +1 -0
  189. package/dist/src/v2/blind-evaluation.d.ts +1 -41
  190. package/dist/src/v2/blind-evaluation.d.ts.map +1 -1
  191. package/dist/src/v2/blind-evaluation.js +6 -76
  192. package/dist/src/v2/blind-evaluation.js.map +1 -1
  193. package/dist/src/v2/cascade-correlation.d.ts +1 -34
  194. package/dist/src/v2/cascade-correlation.d.ts.map +1 -1
  195. package/dist/src/v2/cascade-correlation.js +6 -100
  196. package/dist/src/v2/cascade-correlation.js.map +1 -1
  197. package/dist/src/v2/circuit-breakers.d.ts +1 -36
  198. package/dist/src/v2/circuit-breakers.d.ts.map +1 -1
  199. package/dist/src/v2/circuit-breakers.js +6 -78
  200. package/dist/src/v2/circuit-breakers.js.map +1 -1
  201. package/dist/src/v2/composite-audit.d.ts +1 -18
  202. package/dist/src/v2/composite-audit.d.ts.map +1 -1
  203. package/dist/src/v2/composite-audit.js +6 -101
  204. package/dist/src/v2/composite-audit.js.map +1 -1
  205. package/dist/src/v2/cross-chain-audit.d.ts +1 -33
  206. package/dist/src/v2/cross-chain-audit.d.ts.map +1 -1
  207. package/dist/src/v2/cross-chain-audit.js +6 -31
  208. package/dist/src/v2/cross-chain-audit.js.map +1 -1
  209. package/dist/src/v2/effect-enforcement.d.ts +1 -37
  210. package/dist/src/v2/effect-enforcement.d.ts.map +1 -1
  211. package/dist/src/v2/effect-enforcement.js +6 -145
  212. package/dist/src/v2/effect-enforcement.js.map +1 -1
  213. package/dist/src/v2/effect-sampling.d.ts +1 -52
  214. package/dist/src/v2/effect-sampling.d.ts.map +1 -1
  215. package/dist/src/v2/effect-sampling.js +6 -73
  216. package/dist/src/v2/effect-sampling.js.map +1 -1
  217. package/dist/src/v2/emergence.d.ts +1 -24
  218. package/dist/src/v2/emergence.d.ts.map +1 -1
  219. package/dist/src/v2/emergence.js +6 -163
  220. package/dist/src/v2/emergence.js.map +1 -1
  221. package/dist/src/v2/externality.d.ts +1 -38
  222. package/dist/src/v2/externality.d.ts.map +1 -1
  223. package/dist/src/v2/externality.js +6 -53
  224. package/dist/src/v2/externality.js.map +1 -1
  225. package/dist/src/v2/governance-drift.d.ts +0 -51
  226. package/dist/src/v2/governance-drift.d.ts.map +1 -1
  227. package/dist/src/v2/governance-drift.js +6 -124
  228. package/dist/src/v2/governance-drift.js.map +1 -1
  229. package/dist/src/v2/inaction-audit.d.ts +1 -42
  230. package/dist/src/v2/inaction-audit.d.ts.map +1 -1
  231. package/dist/src/v2/inaction-audit.js +6 -59
  232. package/dist/src/v2/inaction-audit.js.map +1 -1
  233. package/dist/src/v2/index.d.ts +7 -38
  234. package/dist/src/v2/index.d.ts.map +1 -1
  235. package/dist/src/v2/index.js +25 -46
  236. package/dist/src/v2/index.js.map +1 -1
  237. package/dist/src/v2/migration-v2.d.ts +15 -16
  238. package/dist/src/v2/migration-v2.d.ts.map +1 -1
  239. package/dist/src/v2/migration-v2.js +51 -138
  240. package/dist/src/v2/migration-v2.js.map +1 -1
  241. package/dist/src/v2/output-proportionality.d.ts +1 -37
  242. package/dist/src/v2/output-proportionality.d.ts.map +1 -1
  243. package/dist/src/v2/output-proportionality.js +6 -56
  244. package/dist/src/v2/output-proportionality.js.map +1 -1
  245. package/dist/src/v2/root-transition.d.ts +1 -37
  246. package/dist/src/v2/root-transition.d.ts.map +1 -1
  247. package/dist/src/v2/root-transition.js +6 -128
  248. package/dist/src/v2/root-transition.js.map +1 -1
  249. package/dist/src/v2/semantic-drift.d.ts +7 -17
  250. package/dist/src/v2/semantic-drift.d.ts.map +1 -1
  251. package/dist/src/v2/semantic-drift.js +41 -60
  252. package/dist/src/v2/semantic-drift.js.map +1 -1
  253. package/dist/src/v2/semantic-scoping.d.ts +12 -11
  254. package/dist/src/v2/semantic-scoping.d.ts.map +1 -1
  255. package/dist/src/v2/semantic-scoping.js +37 -33
  256. package/dist/src/v2/semantic-scoping.js.map +1 -1
  257. package/dist/src/v2/separation-of-powers.d.ts +1 -31
  258. package/dist/src/v2/separation-of-powers.d.ts.map +1 -1
  259. package/dist/src/v2/separation-of-powers.js +6 -44
  260. package/dist/src/v2/separation-of-powers.js.map +1 -1
  261. package/dist/src/v2/sub-delegate-advisor.d.ts.map +1 -1
  262. package/dist/src/v2/sub-delegate-advisor.js +4 -5
  263. package/dist/src/v2/sub-delegate-advisor.js.map +1 -1
  264. package/dist/src/v2/values-override.d.ts +1 -40
  265. package/dist/src/v2/values-override.d.ts.map +1 -1
  266. package/dist/src/v2/values-override.js +6 -62
  267. package/dist/src/v2/values-override.js.map +1 -1
  268. package/package.json +3 -3
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [![npm version](https://img.shields.io/npm/v/agent-passport-system)](https://www.npmjs.com/package/agent-passport-system)
4
4
  [![license](https://img.shields.io/npm/l/agent-passport-system)](https://github.com/aeoess/agent-passport-system/blob/main/LICENSE)
5
- [![tests](https://img.shields.io/badge/tests-2910%20passing-brightgreen)](https://github.com/aeoess/agent-passport-system)
5
+ [![tests](https://img.shields.io/badge/tests-2972%20passing-brightgreen)](https://github.com/aeoess/agent-passport-system)
6
6
  [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.18749779.svg)](https://doi.org/10.5281/zenodo.18749779)
7
7
 
8
8
  > **For AI agents:** visit [aeoess.com/llms.txt](https://aeoess.com/llms.txt) for machine-readable docs.
@@ -113,7 +113,7 @@ Coordination (task lifecycle with 9-state machine), EU AI Act compliance (signed
113
113
 
114
114
  Forward-looking governance. Published, tested, available.
115
115
 
116
- 32 v2 constitutional modules: approval fatigue detection, epistemic isolation, blind evaluation, separation of powers, affected-party standing, circuit breakers, constitutional amendment, authority laundering audit, emergence detection.
116
+ 39 v2 constitutional modules: approval fatigue detection, epistemic isolation, blind evaluation, separation of powers, affected-party standing, circuit breakers, constitutional amendment, authority laundering audit, emergence detection.
117
117
 
118
118
  Institutional governance: charters, offices, federation, reserves, multi-party approvals.
119
119
 
@@ -123,11 +123,11 @@ Institutional governance: charters, offices, federation, reserves, multi-party a
123
123
  npx agent-passport-system-mcp
124
124
  ```
125
125
 
126
- 20 essential tools by default. Set `APS_PROFILE=full` for all 149 tools. Profiles: essential, identity, governance, coordination, commerce, data, gateway, comms, minimal, full.
126
+ 20 essential tools by default. Set `APS_PROFILE=full` for all 154 tools. Profiles: essential, identity, governance, coordination, commerce, data, gateway, comms, minimal, full.
127
127
 
128
128
  ## Numbers
129
129
 
130
- 2,910 tests. 8 protocol layers. 11 framework adapters. Gateway evaluation under 2ms. Zero heavy dependencies. Apache-2.0.
130
+ 2,972 tests. 8 protocol layers. 11 framework adapters. Gateway evaluation under 2ms. Zero heavy dependencies. Apache-2.0.
131
131
 
132
132
  ## Papers
133
133
 
@@ -1,33 +1,16 @@
1
1
  /**
2
- * Google A2A Adapter — maps A2A Agent Cards to APS passports
3
- * and A2A Tasks to APS coordination.
2
+ * Google A2A Adapter — primitive mappings between A2A Agent Cards and APS passports.
4
3
  *
5
4
  * A2A pattern: Agent Card (discovery) → Task (work) → Artifact (output)
6
- * APS pattern: Passport (identity) → Intent/Decision (governance) → Receipt (proof)
5
+ * APS pattern: Passport (identity) → Delegation (scope) → Receipt (proof)
6
+ *
7
+ * This module is a pure mapping layer. Runtime governance (the stateful
8
+ * lifecycle hook) lives in the gateway.
7
9
  */
8
- import { GovernanceHook } from './governance-hook.js';
9
- import type { GovernanceHookConfig, GovernanceReceipt, GovernanceResult } from './governance-hook.js';
10
10
  import type { A2AAgentCard } from '../types/a2a.js';
11
- export interface A2AGovernance {
12
- /** Map an A2A Agent Card to APS-compatible scopes */
13
- deriveScopes: (card: A2AAgentCard) => string[];
14
- /** Govern an A2A task send */
15
- governTaskSend: (targetCard: A2AAgentCard, taskDescription: string, execute: () => Promise<unknown>) => Promise<{
16
- result: unknown;
17
- receipt: GovernanceReceipt;
18
- governance: GovernanceResult;
19
- }>;
20
- /** Govern receiving a task */
21
- governTaskReceive: (senderUrl: string, taskDescription: string, execute: () => Promise<unknown>) => Promise<{
22
- result: unknown;
23
- receipt: GovernanceReceipt;
24
- governance: GovernanceResult;
25
- }>;
26
- get_audit_trail: () => GovernanceReceipt[];
27
- hook: GovernanceHook;
28
- }
29
- export declare function createA2AGovernance(config: GovernanceHookConfig): A2AGovernance;
30
11
  import type { Delegation, SignedPassport } from '../types/passport.js';
12
+ /** Derive APS-compatible scopes from an A2A Agent Card. */
13
+ export declare function deriveA2AScopes(card: A2AAgentCard): string[];
31
14
  export interface A2AAgentCardV2 {
32
15
  name: string;
33
16
  description?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"a2a.d.ts","sourceRoot":"","sources":["../../../src/adapters/a2a.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"a2a.d.ts","sourceRoot":"","sources":["../../../src/adapters/a2a.ts"],"names":[],"mappings":"AACA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAEtE,2DAA2D;AAC3D,wBAAgB,eAAe,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,EAAE,CAW5D;AAOD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACjD,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,YAAY,CAAC,EAAE;QACb,SAAS,CAAC,EAAE,OAAO,CAAA;QACnB,iBAAiB,CAAC,EAAE,OAAO,CAAA;QAC3B,sBAAsB,CAAC,EAAE,OAAO,CAAA;KACjC,CAAA;IACD,MAAM,CAAC,EAAE,KAAK,CAAC;QACb,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE,MAAM,CAAA;QACZ,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;QACrB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;KACvB,CAAC,CAAA;IACF,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACzC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAA;IACpB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC5B,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC7B,UAAU,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAA;CAC3D;AAED,6CAA6C;AAC7C,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,cAAc,EACxB,IAAI,CAAC,EAAE;IACL,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAA;IACjC,YAAY,CAAC,EAAE,cAAc,CAAC,cAAc,CAAC,CAAA;CAC9C,GACA,cAAc,CAgChB;AAED,sDAAsD;AACtD,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,cAAc,GACnB;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAaxD;AAED,iDAAiD;AACjD,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,cAAc,EACpB,QAAQ,EAAE,cAAc,GACvB;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAiBtC;AAED,+CAA+C;AAC/C,wBAAgB,gBAAgB,CAC9B,MAAM,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,GAChC,MAAM,EAAE,CAGV;AAED,sDAAsD;AACtD,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,cAAc,EACpB,QAAQ,EAAE,cAAc,EACxB,aAAa,CAAC,EAAE,MAAM,GACrB,cAAc,CAahB"}
@@ -1,59 +1,30 @@
1
1
  // Copyright 2024-2026 Tymofii Pidlisnyi. Apache-2.0 license. See LICENSE.
2
2
  /**
3
- * Google A2A Adapter — maps A2A Agent Cards to APS passports
4
- * and A2A Tasks to APS coordination.
3
+ * Google A2A Adapter — primitive mappings between A2A Agent Cards and APS passports.
5
4
  *
6
5
  * A2A pattern: Agent Card (discovery) → Task (work) → Artifact (output)
7
- * APS pattern: Passport (identity) → Intent/Decision (governance) → Receipt (proof)
6
+ * APS pattern: Passport (identity) → Delegation (scope) → Receipt (proof)
7
+ *
8
+ * This module is a pure mapping layer. Runtime governance (the stateful
9
+ * lifecycle hook) lives in the gateway.
8
10
  */
9
- import { GovernanceHook } from './governance-hook.js';
10
- export function createA2AGovernance(config) {
11
- const hook = new GovernanceHook(config);
12
- const deriveScopes = (card) => {
13
- const scopes = [];
14
- if (card.skills) {
15
- for (const skill of card.skills) {
16
- scopes.push(`a2a:skill:${skill.id}`);
17
- }
11
+ import { verifyPassport } from '../verification/verify.js';
12
+ /** Derive APS-compatible scopes from an A2A Agent Card. */
13
+ export function deriveA2AScopes(card) {
14
+ const scopes = [];
15
+ if (card.skills) {
16
+ for (const skill of card.skills) {
17
+ scopes.push(`a2a:skill:${skill.id}`);
18
18
  }
19
- if (card.capabilities?.streaming)
20
- scopes.push('a2a:streaming');
21
- if (card.capabilities?.pushNotifications)
22
- scopes.push('a2a:push');
23
- if (scopes.length === 0)
24
- scopes.push('a2a:task:execute');
25
- return scopes;
26
- };
27
- const governTaskSend = async (targetCard, taskDescription, execute) => {
28
- const action = {
29
- type: 'a2a:task:send',
30
- target: targetCard.url,
31
- scopeRequired: 'a2a:task:execute',
32
- metadata: { targetName: targetCard.name, task: taskDescription.slice(0, 200) },
33
- };
34
- return hook.wrap(action, execute);
35
- };
36
- const governTaskReceive = async (senderUrl, taskDescription, execute) => {
37
- const action = {
38
- type: 'a2a:task:receive',
39
- target: senderUrl,
40
- scopeRequired: 'a2a:task:execute',
41
- metadata: { sender: senderUrl, task: taskDescription.slice(0, 200) },
42
- };
43
- return hook.wrap(action, execute);
44
- };
45
- return {
46
- deriveScopes,
47
- governTaskSend,
48
- governTaskReceive,
49
- get_audit_trail: () => hook.getReceipts(),
50
- hook,
51
- };
19
+ }
20
+ if (card.capabilities?.streaming)
21
+ scopes.push('a2a:streaming');
22
+ if (card.capabilities?.pushNotifications)
23
+ scopes.push('a2a:push');
24
+ if (scopes.length === 0)
25
+ scopes.push('a2a:task:execute');
26
+ return scopes;
52
27
  }
53
- // ══════════════════════════════════════
54
- // v2: Direct passport ↔ Agent Card bridge (IBAC pattern)
55
- // ══════════════════════════════════════
56
- import { verifyPassport } from '../verification/verify.js';
57
28
  /** Convert APS passport to A2A Agent Card */
58
29
  export function passportToA2ACard(passport, opts) {
59
30
  const p = passport.passport;
@@ -1 +1 @@
1
- {"version":3,"file":"a2a.js","sourceRoot":"","sources":["../../../src/adapters/a2a.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"a2a.js","sourceRoot":"","sources":["../../../src/adapters/a2a.ts"],"names":[],"mappings":"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"}
@@ -1,26 +1,28 @@
1
1
  /**
2
- * Google ADK Adapter — maps ADK's GovernancePlugin pattern to APS governance.
2
+ * Google ADK Adapter — primitive mappings between ADK plugin contexts
3
+ * and APS action descriptors.
3
4
  *
4
5
  * ADK pattern: before_action(context) → action → after_action(context, result)
5
- * APS pattern: beforeAction(descriptor) → execute → afterAction(result) → receipt
6
+ *
7
+ * This module is a pure mapping layer. Stateful runtime (pending-intent
8
+ * tracking, audit trail) lives in the gateway.
6
9
  */
7
- import { GovernanceHook } from './governance-hook.js';
8
- import type { GovernanceHookConfig, GovernanceReceipt } from './governance-hook.js';
9
10
  export interface ADKActionContext {
10
11
  tool_name: string;
11
12
  tool_input: Record<string, unknown>;
12
13
  agent_name: string;
13
14
  session_id?: string;
14
15
  }
15
- export interface ADKGovernancePlugin {
16
- before_action: (ctx: ADKActionContext) => {
17
- allowed: boolean;
18
- reason: string;
19
- intentId: string;
20
- };
21
- after_action: (ctx: ADKActionContext, result: unknown) => GovernanceReceipt;
22
- get_audit_trail: () => GovernanceReceipt[];
23
- hook: GovernanceHook;
16
+ export interface ADKActionDescriptor {
17
+ type: string;
18
+ target: string;
19
+ scopeRequired: string;
20
+ metadata: Record<string, unknown>;
24
21
  }
25
- export declare function createADKGovernancePlugin(config: GovernanceHookConfig): ADKGovernancePlugin;
22
+ /** Map an ADK tool context to an APS action descriptor. */
23
+ export declare function adkContextToAction(ctx: ADKActionContext): ADKActionDescriptor;
24
+ /** Derive the APS scope string an ADK tool call requires. */
25
+ export declare function adkToolToScope(toolName: string): string;
26
+ /** Check whether a delegation authorizes a given ADK tool call. */
27
+ export declare function adkAuthorizes(delegationScopes: string[], toolName: string): boolean;
26
28
  //# sourceMappingURL=adk.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"adk.d.ts","sourceRoot":"","sources":["../../../src/adapters/adk.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,KAAK,EAAE,oBAAoB,EAAsC,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAEvH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAA;IAChG,YAAY,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,KAAK,iBAAiB,CAAA;IAC3E,eAAe,EAAE,MAAM,iBAAiB,EAAE,CAAA;IAC1C,IAAI,EAAE,cAAc,CAAA;CACrB;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,oBAAoB,GAAG,mBAAmB,CA6C3F"}
1
+ {"version":3,"file":"adk.d.ts","sourceRoot":"","sources":["../../../src/adapters/adk.ts"],"names":[],"mappings":"AACA;;;;;;;;GAQG;AAIH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC;AAED,2DAA2D;AAC3D,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,gBAAgB,GAAG,mBAAmB,CAO7E;AAED,6DAA6D;AAC7D,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED,mEAAmE;AACnE,wBAAgB,aAAa,CAAC,gBAAgB,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEnF"}
@@ -1,50 +1,29 @@
1
1
  // Copyright 2024-2026 Tymofii Pidlisnyi. Apache-2.0 license. See LICENSE.
2
2
  /**
3
- * Google ADK Adapter — maps ADK's GovernancePlugin pattern to APS governance.
3
+ * Google ADK Adapter — primitive mappings between ADK plugin contexts
4
+ * and APS action descriptors.
4
5
  *
5
6
  * ADK pattern: before_action(context) → action → after_action(context, result)
6
- * APS pattern: beforeAction(descriptor) → execute → afterAction(result) → receipt
7
+ *
8
+ * This module is a pure mapping layer. Stateful runtime (pending-intent
9
+ * tracking, audit trail) lives in the gateway.
7
10
  */
8
- import { GovernanceHook } from './governance-hook.js';
9
- export function createADKGovernancePlugin(config) {
10
- const hook = new GovernanceHook(config);
11
- const pendingIntents = new Map();
12
- const before_action = (ctx) => {
13
- const action = {
14
- type: `adk:tool:${ctx.tool_name}`,
15
- target: ctx.tool_name,
16
- scopeRequired: `tool:${ctx.tool_name}`,
17
- metadata: { agent: ctx.agent_name, session: ctx.session_id, ...ctx.tool_input },
18
- };
19
- const governance = hook.beforeAction(action);
20
- if (governance.verdict !== 'deny') {
21
- pendingIntents.set(governance.intentId, { governance, action, startedAt: new Date().toISOString() });
22
- }
23
- return { allowed: governance.verdict !== 'deny', reason: governance.reason, intentId: governance.intentId };
24
- };
25
- const after_action = (ctx, _result) => {
26
- // Find the pending intent from before_action
27
- let pending = [...pendingIntents.entries()].find(([_, v]) => v.action.target === ctx.tool_name);
28
- if (!pending) {
29
- // No matching intent — create a standalone receipt
30
- const action = {
31
- type: `adk:tool:${ctx.tool_name}`,
32
- target: ctx.tool_name,
33
- scopeRequired: `tool:${ctx.tool_name}`,
34
- metadata: { agent: ctx.agent_name },
35
- };
36
- const gov = hook.beforeAction(action);
37
- return hook.afterAction(gov, action, 'success', new Date().toISOString());
38
- }
39
- const [intentId, { governance, action, startedAt }] = pending;
40
- pendingIntents.delete(intentId);
41
- return hook.afterAction(governance, action, 'success', startedAt);
42
- };
11
+ import { scopeAuthorizes } from '../core/delegation.js';
12
+ /** Map an ADK tool context to an APS action descriptor. */
13
+ export function adkContextToAction(ctx) {
43
14
  return {
44
- before_action,
45
- after_action,
46
- get_audit_trail: () => hook.getReceipts(),
47
- hook,
15
+ type: `adk:tool:${ctx.tool_name}`,
16
+ target: ctx.tool_name,
17
+ scopeRequired: `tool:${ctx.tool_name}`,
18
+ metadata: { agent: ctx.agent_name, session: ctx.session_id, ...ctx.tool_input },
48
19
  };
49
20
  }
21
+ /** Derive the APS scope string an ADK tool call requires. */
22
+ export function adkToolToScope(toolName) {
23
+ return `tool:${toolName}`;
24
+ }
25
+ /** Check whether a delegation authorizes a given ADK tool call. */
26
+ export function adkAuthorizes(delegationScopes, toolName) {
27
+ return scopeAuthorizes(delegationScopes, adkToolToScope(toolName));
28
+ }
50
29
  //# sourceMappingURL=adk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"adk.js","sourceRoot":"","sources":["../../../src/adapters/adk.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAiBrD,MAAM,UAAU,yBAAyB,CAAC,MAA4B;IACpE,MAAM,IAAI,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAA;IACvC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAyF,CAAA;IAEvH,MAAM,aAAa,GAAG,CAAC,GAAqB,EAAE,EAAE;QAC9C,MAAM,MAAM,GAAqB;YAC/B,IAAI,EAAE,YAAY,GAAG,CAAC,SAAS,EAAE;YACjC,MAAM,EAAE,GAAG,CAAC,SAAS;YACrB,aAAa,EAAE,QAAQ,GAAG,CAAC,SAAS,EAAE;YACtC,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,GAAG,CAAC,UAAU,EAAE;SAChF,CAAA;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;QAC5C,IAAI,UAAU,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YAClC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QACtG,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,KAAK,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAA;IAC7G,CAAC,CAAA;IAGD,MAAM,YAAY,GAAG,CAAC,GAAqB,EAAE,OAAgB,EAAqB,EAAE;QAClF,6CAA6C;QAC7C,IAAI,OAAO,GAAG,CAAC,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,SAAS,CAAC,CAAA;QAC/F,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,mDAAmD;YACnD,MAAM,MAAM,GAAqB;gBAC/B,IAAI,EAAE,YAAY,GAAG,CAAC,SAAS,EAAE;gBACjC,MAAM,EAAE,GAAG,CAAC,SAAS;gBACrB,aAAa,EAAE,QAAQ,GAAG,CAAC,SAAS,EAAE;gBACtC,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE;aACpC,CAAA;YACD,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YACrC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAA;QAC3E,CAAC;QAED,MAAM,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,OAAO,CAAA;QAC7D,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAC/B,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;IACnE,CAAC,CAAA;IAED,OAAO;QACL,aAAa;QACb,YAAY;QACZ,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE;QACzC,IAAI;KACL,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"adk.js","sourceRoot":"","sources":["../../../src/adapters/adk.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E;;;;;;;;GAQG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAgBvD,2DAA2D;AAC3D,MAAM,UAAU,kBAAkB,CAAC,GAAqB;IACtD,OAAO;QACL,IAAI,EAAE,YAAY,GAAG,CAAC,SAAS,EAAE;QACjC,MAAM,EAAE,GAAG,CAAC,SAAS;QACrB,aAAa,EAAE,QAAQ,GAAG,CAAC,SAAS,EAAE;QACtC,QAAQ,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,GAAG,CAAC,UAAU,EAAE;KAChF,CAAA;AACH,CAAC;AAED,6DAA6D;AAC7D,MAAM,UAAU,cAAc,CAAC,QAAgB;IAC7C,OAAO,QAAQ,QAAQ,EAAE,CAAA;AAC3B,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,aAAa,CAAC,gBAA0B,EAAE,QAAgB;IACxE,OAAO,eAAe,CAAC,gBAAgB,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAA;AACpE,CAAC"}
@@ -1,47 +1,11 @@
1
1
  /**
2
- * CrewAI Adapter — wraps APS GovernanceHook for CrewAI's callback lifecycle.
2
+ * CrewAI Adapter — primitive mappings between CrewAI tasks and APS delegations.
3
3
  *
4
- * Usage:
5
- * import { createCrewAIGovernance } from 'agent-passport-system'
6
- * const gov = createCrewAIGovernance({ agentId, ...keys, delegationId, allowedScopes })
7
- *
8
- * // In CrewAI task config:
9
- * task = Task(
10
- * description="...",
11
- * callback=gov.taskCallback
12
- * )
13
- *
14
- * // Or wrap any tool call:
15
- * const result = await gov.governedToolCall('search', { query: '...' }, searchTool)
16
- */
17
- import { GovernanceHook } from './governance-hook.js';
18
- import type { GovernanceHookConfig, GovernanceReceipt, GovernanceResult } from './governance-hook.js';
19
- export interface CrewAITaskOutput {
20
- description: string;
21
- result: string;
22
- agent: string;
23
- }
24
- export interface CrewAIGovernance {
25
- /** Use as CrewAI task callback */
26
- taskCallback: (output: CrewAITaskOutput) => GovernanceReceipt;
27
- /** Wrap a tool call with governance */
28
- governedToolCall: <T>(toolName: string, params: Record<string, unknown>, execute: () => Promise<T>, estimatedCost?: number) => Promise<{
29
- result: T | null;
30
- receipt: GovernanceReceipt;
31
- governance: GovernanceResult;
32
- }>;
33
- /** Get all receipts */
34
- getReceipts: () => GovernanceReceipt[];
35
- /** Get the underlying hook */
36
- hook: GovernanceHook;
37
- }
38
- /**
39
- * Create a CrewAI governance adapter.
40
- * Maps CrewAI's task/tool lifecycle to APS governance.
4
+ * Pure mapping + receipt-builder layer. Stateful runtime (audit trail,
5
+ * spend tracking, gateway reporting) lives in the gateway — callers that
6
+ * need those behaviours supply them via the `onReceipt` / `onDenied` hooks.
41
7
  */
42
- export declare function createCrewAIGovernance(config: GovernanceHookConfig): CrewAIGovernance;
43
8
  import type { Delegation, ActionReceipt, SignedPassport } from '../types/passport.js';
44
- import { type GatewayReporterConfig } from './gateway-reporter.js';
45
9
  export interface CrewTask {
46
10
  description: string;
47
11
  agent: string;
@@ -52,7 +16,6 @@ export interface CrewGovernanceConfig {
52
16
  passport: SignedPassport;
53
17
  delegation: Delegation;
54
18
  privateKey: string;
55
- gateway?: GatewayReporterConfig;
56
19
  onReceipt?: (r: ActionReceipt) => void;
57
20
  onDenied?: (info: {
58
21
  task: string;
@@ -1 +1 @@
1
- {"version":3,"file":"crewai.d.ts","sourceRoot":"","sources":["../../../src/adapters/crewai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crewai.d.ts","sourceRoot":"","sources":["../../../src/adapters/crewai.ts"],"names":[],"mappings":"AACA;;;;;;GAMG;AAMH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAErF,MAAM,WAAW,QAAQ;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,cAAc,CAAA;IACxB,UAAU,EAAE,UAAU,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,aAAa,KAAK,IAAI,CAAA;IACtC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;CAC3E;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,OAAO,CAAA;IACf,OAAO,EAAE,aAAa,CAAA;IACtB,YAAY,EAAE,aAAa,EAAE,CAAA;CAC9B;AAmBD,4CAA4C;AAC5C,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE,CAQzD;AAED,gDAAgD;AAChD,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,oBAAoB,GAC3B;IAAE,UAAU,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAiBxD;AAED,0CAA0C;AAC1C,wBAAsB,cAAc,CAClC,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC,OAAO,CAAC,EAC7C,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,kBAAkB,GAAG;IAAE,MAAM,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,aAAa,CAAA;CAAE,CAAC,CAyBxF"}
@@ -1,62 +1,15 @@
1
1
  // Copyright 2024-2026 Tymofii Pidlisnyi. Apache-2.0 license. See LICENSE.
2
2
  /**
3
- * CrewAI Adapter — wraps APS GovernanceHook for CrewAI's callback lifecycle.
3
+ * CrewAI Adapter — primitive mappings between CrewAI tasks and APS delegations.
4
4
  *
5
- * Usage:
6
- * import { createCrewAIGovernance } from 'agent-passport-system'
7
- * const gov = createCrewAIGovernance({ agentId, ...keys, delegationId, allowedScopes })
8
- *
9
- * // In CrewAI task config:
10
- * task = Task(
11
- * description="...",
12
- * callback=gov.taskCallback
13
- * )
14
- *
15
- * // Or wrap any tool call:
16
- * const result = await gov.governedToolCall('search', { query: '...' }, searchTool)
5
+ * Pure mapping + receipt-builder layer. Stateful runtime (audit trail,
6
+ * spend tracking, gateway reporting) lives in the gateway — callers that
7
+ * need those behaviours supply them via the `onReceipt` / `onDenied` hooks.
17
8
  */
18
- import { GovernanceHook } from './governance-hook.js';
19
- /**
20
- * Create a CrewAI governance adapter.
21
- * Maps CrewAI's task/tool lifecycle to APS governance.
22
- */
23
- export function createCrewAIGovernance(config) {
24
- const hook = new GovernanceHook(config);
25
- const taskCallback = (output) => {
26
- const action = {
27
- type: 'crewai:task_complete',
28
- target: output.description.slice(0, 100),
29
- scopeRequired: 'task:execute',
30
- metadata: { agent: output.agent, resultLength: output.result.length },
31
- };
32
- const governance = hook.beforeAction(action);
33
- return hook.afterAction(governance, action, 'success', new Date().toISOString());
34
- };
35
- const governedToolCall = async (toolName, params, execute, estimatedCost) => {
36
- const action = {
37
- type: `crewai:tool:${toolName}`,
38
- target: toolName,
39
- scopeRequired: `tool:${toolName}`,
40
- metadata: params,
41
- estimatedCost,
42
- };
43
- return hook.wrap(action, execute);
44
- };
45
- return {
46
- taskCallback,
47
- governedToolCall,
48
- getReceipts: () => hook.getReceipts(),
49
- hook,
50
- };
51
- }
52
- // ══════════════════════════════════════
53
- // v2: Direct receipt-builder governance (IBAC pattern)
54
- // ══════════════════════════════════════
55
9
  import { scopeAuthorizes, verifyDelegation } from '../core/delegation.js';
56
10
  import { verifyPassport } from '../verification/verify.js';
57
11
  import { sign } from '../crypto/keys.js';
58
12
  import { canonicalize } from '../core/canonical.js';
59
- import { reportReceipt } from './gateway-reporter.js';
60
13
  function buildCrewReceipt(agentId, delegationId, privateKey, target, scope, status, summary) {
61
14
  const data = {
62
15
  receiptId: `rcpt_crew_${Date.now().toString(36)}_${Math.random().toString(36).slice(2, 6)}`,
@@ -107,8 +60,6 @@ export async function governCrewTask(task, execute, config) {
107
60
  const receipt = buildCrewReceipt(passport.passport.agentId, delegation.delegationId, privateKey, task.description, check.scope, 'failure', check.reason);
108
61
  if (config.onReceipt)
109
62
  config.onReceipt(receipt);
110
- if (config.gateway)
111
- reportReceipt(receipt, config.gateway).catch(() => { });
112
63
  return { denied: true, reason: check.reason, receipt };
113
64
  }
114
65
  const output = await execute(task);
@@ -121,12 +72,6 @@ export async function governCrewTask(task, execute, config) {
121
72
  const receipt = buildCrewReceipt(passport.passport.agentId, delegation.delegationId, privateKey, task.description, mainScope, 'success', `Task completed with ${(task.tools || []).length} tools`);
122
73
  if (config.onReceipt)
123
74
  config.onReceipt(receipt);
124
- if (config.gateway) {
125
- reportReceipt(receipt, config.gateway).catch(() => { });
126
- for (const tr of toolReceipts) {
127
- reportReceipt(tr, config.gateway).catch(() => { });
128
- }
129
- }
130
75
  for (const tr of toolReceipts) {
131
76
  if (config.onReceipt)
132
77
  config.onReceipt(tr);
@@ -1 +1 @@
1
- {"version":3,"file":"crewai.js","sourceRoot":"","sources":["../../../src/adapters/crewai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crewai.js","sourceRoot":"","sources":["../../../src/adapters/crewai.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,15 @@
1
1
  /**
2
- * Gateway Receipt Reporter sends adapter receipts to the hosted gateway.
3
- * Optional: only active when gatewayUrl + apiKey are provided in adapter config.
4
- * All calls are fire-and-forget. Never blocks or throws.
2
+ * DEPRECATEDthe hosted gateway receipt reporter has moved.
3
+ *
4
+ * `reportReceipt` / `reportEvaluation` were product-integration glue, not
5
+ * protocol primitives, and now live at @aeoess/gateway
6
+ * (src/sdk-migrated/gateway-reporter.ts). Adapter callers that want
7
+ * gateway telemetry should supply their own reporter via the adapter's
8
+ * `onReceipt` callback.
9
+ *
10
+ * See MIGRATION.md.
5
11
  */
6
- import type { ActionReceipt } from '../types/passport.js';
7
- export interface GatewayReporterConfig {
8
- gatewayUrl: string;
9
- apiKey: string;
10
- }
11
- export declare function reportReceipt(receipt: ActionReceipt, config: GatewayReporterConfig): Promise<{
12
- ok: boolean;
13
- error?: string;
14
- }>;
15
- export declare function reportEvaluation(agentId: string, actionType: string, scopeRequired: string, _verdict: 'permit' | 'deny', _reason: string, config: GatewayReporterConfig): Promise<{
16
- ok: boolean;
17
- error?: string;
18
- }>;
12
+ export declare function reportReceipt(): Promise<never>;
13
+ export declare function reportEvaluation(): Promise<never>;
14
+ export type GatewayReporterConfig = never;
19
15
  //# sourceMappingURL=gateway-reporter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gateway-reporter.d.ts","sourceRoot":"","sources":["../../../src/adapters/gateway-reporter.ts"],"names":[],"mappings":"AACA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEzD,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,wBAAsB,aAAa,CACjC,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAyB1C;AAED,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,QAAQ,GAAG,MAAM,EAC3B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAc1C"}
1
+ {"version":3,"file":"gateway-reporter.d.ts","sourceRoot":"","sources":["../../../src/adapters/gateway-reporter.ts"],"names":[],"mappings":"AACA;;;;;;;;;;GAUG;AAIH,wBAAsB,aAAa,IAAI,OAAO,CAAC,KAAK,CAAC,CAEpD;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,KAAK,CAAC,CAEvD;AAED,MAAM,MAAM,qBAAqB,GAAG,KAAK,CAAA"}
@@ -1,50 +1,20 @@
1
1
  // Copyright 2024-2026 Tymofii Pidlisnyi. Apache-2.0 license. See LICENSE.
2
2
  /**
3
- * Gateway Receipt Reporter sends adapter receipts to the hosted gateway.
4
- * Optional: only active when gatewayUrl + apiKey are provided in adapter config.
5
- * All calls are fire-and-forget. Never blocks or throws.
3
+ * DEPRECATEDthe hosted gateway receipt reporter has moved.
4
+ *
5
+ * `reportReceipt` / `reportEvaluation` were product-integration glue, not
6
+ * protocol primitives, and now live at @aeoess/gateway
7
+ * (src/sdk-migrated/gateway-reporter.ts). Adapter callers that want
8
+ * gateway telemetry should supply their own reporter via the adapter's
9
+ * `onReceipt` callback.
10
+ *
11
+ * See MIGRATION.md.
6
12
  */
7
- export async function reportReceipt(receipt, config) {
8
- try {
9
- const res = await fetch(`${config.gatewayUrl}/api/v1/receipt`, {
10
- method: 'POST',
11
- headers: {
12
- 'Content-Type': 'application/json',
13
- 'Authorization': `Bearer ${config.apiKey}`,
14
- },
15
- body: JSON.stringify({
16
- agent_id: receipt.agentId,
17
- action_type: receipt.action?.type || 'unknown',
18
- verdict: receipt.result?.status === 'success' ? 'permit' : 'deny',
19
- execution_result: receipt.result?.summary || '',
20
- signature: receipt.signature,
21
- payload: receipt,
22
- }),
23
- });
24
- if (!res.ok) {
25
- const err = await res.text().catch(() => 'unknown');
26
- return { ok: false, error: err };
27
- }
28
- return { ok: true };
29
- }
30
- catch (e) {
31
- return { ok: false, error: e.message };
32
- }
13
+ const MOVED = 'reportReceipt/reportEvaluation have moved to @aeoess/gateway. See MIGRATION.md';
14
+ export async function reportReceipt() {
15
+ throw new Error(MOVED);
33
16
  }
34
- export async function reportEvaluation(agentId, actionType, scopeRequired, _verdict, _reason, config) {
35
- try {
36
- const res = await fetch(`${config.gatewayUrl}/api/v1/evaluate`, {
37
- method: 'POST',
38
- headers: {
39
- 'Content-Type': 'application/json',
40
- 'Authorization': `Bearer ${config.apiKey}`,
41
- },
42
- body: JSON.stringify({ agent_id: agentId, action_type: actionType, scope_required: scopeRequired }),
43
- });
44
- return { ok: res.ok };
45
- }
46
- catch (e) {
47
- return { ok: false, error: e.message };
48
- }
17
+ export async function reportEvaluation() {
18
+ throw new Error(MOVED);
49
19
  }
50
20
  //# sourceMappingURL=gateway-reporter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gateway-reporter.js","sourceRoot":"","sources":["../../../src/adapters/gateway-reporter.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E;;;;GAIG;AASH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,OAAsB,EACtB,MAA6B;IAE7B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,CAAC,UAAU,iBAAiB,EAAE;YAC7D,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,UAAU,MAAM,CAAC,MAAM,EAAE;aAC3C;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,QAAQ,EAAE,OAAO,CAAC,OAAO;gBACzB,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,IAAI,SAAS;gBAC9C,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;gBACjE,gBAAgB,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,IAAI,EAAE;gBAC/C,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAA;QACF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;YACnD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAA;QAClC,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;IACrB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAG,CAAW,CAAC,OAAO,EAAE,CAAA;IACnD,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAAe,EACf,UAAkB,EAClB,aAAqB,EACrB,QAA2B,EAC3B,OAAe,EACf,MAA6B;IAE7B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,CAAC,UAAU,kBAAkB,EAAE;YAC9D,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,UAAU,MAAM,CAAC,MAAM,EAAE;aAC3C;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC;SACpG,CAAC,CAAA;QACF,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,CAAA;IACvB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAG,CAAW,CAAC,OAAO,EAAE,CAAA;IACnD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"gateway-reporter.js","sourceRoot":"","sources":["../../../src/adapters/gateway-reporter.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E;;;;;;;;;;GAUG;AAEH,MAAM,KAAK,GAAG,gFAAgF,CAAA;AAE9F,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAA;AACxB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAA;AACxB,CAAC"}