@agentic-trust/agentic-trust-sdk 1.0.43

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 (78) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +213 -0
  3. package/abis/BaseRegistrarImplementation.json +1013 -0
  4. package/abis/ETHRegistrarController.json +1004 -0
  5. package/abis/IdentityRegistry.json +1044 -0
  6. package/abis/NameWrapper.json +2026 -0
  7. package/abis/PublicResolver.json +1772 -0
  8. package/abis/ReputationRegistry.json +701 -0
  9. package/abis/ValidationRegistry.json +505 -0
  10. package/dist/AIAgentAssociationClient.d.ts +58 -0
  11. package/dist/AIAgentAssociationClient.d.ts.map +1 -0
  12. package/dist/AIAgentAssociationClient.js +100 -0
  13. package/dist/AIAgentAssociationClient.js.map +1 -0
  14. package/dist/AIAgentDiscoveryClient.d.ts +673 -0
  15. package/dist/AIAgentDiscoveryClient.d.ts.map +1 -0
  16. package/dist/AIAgentDiscoveryClient.js +3184 -0
  17. package/dist/AIAgentDiscoveryClient.js.map +1 -0
  18. package/dist/AIAgentENSClient.d.ts +149 -0
  19. package/dist/AIAgentENSClient.d.ts.map +1 -0
  20. package/dist/AIAgentENSClient.js +958 -0
  21. package/dist/AIAgentENSClient.js.map +1 -0
  22. package/dist/AIAgentIdentityClient.d.ts +159 -0
  23. package/dist/AIAgentIdentityClient.d.ts.map +1 -0
  24. package/dist/AIAgentIdentityClient.js +660 -0
  25. package/dist/AIAgentIdentityClient.js.map +1 -0
  26. package/dist/AIAgentL2ENSDurenClient.d.ts +120 -0
  27. package/dist/AIAgentL2ENSDurenClient.d.ts.map +1 -0
  28. package/dist/AIAgentL2ENSDurenClient.js +735 -0
  29. package/dist/AIAgentL2ENSDurenClient.js.map +1 -0
  30. package/dist/AIAgentL2ENSNamespaceClient.d.ts +58 -0
  31. package/dist/AIAgentL2ENSNamespaceClient.d.ts.map +1 -0
  32. package/dist/AIAgentL2ENSNamespaceClient.js +214 -0
  33. package/dist/AIAgentL2ENSNamespaceClient.js.map +1 -0
  34. package/dist/AIAgentReputationClient.d.ts +69 -0
  35. package/dist/AIAgentReputationClient.d.ts.map +1 -0
  36. package/dist/AIAgentReputationClient.js +203 -0
  37. package/dist/AIAgentReputationClient.js.map +1 -0
  38. package/dist/AIAgentValidationClient.d.ts +60 -0
  39. package/dist/AIAgentValidationClient.d.ts.map +1 -0
  40. package/dist/AIAgentValidationClient.js +123 -0
  41. package/dist/AIAgentValidationClient.js.map +1 -0
  42. package/dist/OrgIdentityClient.d.ts +27 -0
  43. package/dist/OrgIdentityClient.d.ts.map +1 -0
  44. package/dist/OrgIdentityClient.js +169 -0
  45. package/dist/OrgIdentityClient.js.map +1 -0
  46. package/dist/abis/BaseRegistrarImplementation.json +1013 -0
  47. package/dist/abis/ETHRegistrarController.json +1004 -0
  48. package/dist/abis/IdentityRegistry.json +1044 -0
  49. package/dist/abis/NameWrapper.json +2026 -0
  50. package/dist/abis/PublicResolver.json +1772 -0
  51. package/dist/abis/ReputationRegistry.json +701 -0
  52. package/dist/abis/ValidationRegistry.json +505 -0
  53. package/dist/index.d.ts +25 -0
  54. package/dist/index.d.ts.map +1 -0
  55. package/dist/index.js +24 -0
  56. package/dist/index.js.map +1 -0
  57. package/dist/schema.d.ts +13 -0
  58. package/dist/schema.d.ts.map +1 -0
  59. package/dist/schema.js +696 -0
  60. package/dist/schema.js.map +1 -0
  61. package/dist/schemaKb.d.ts +12 -0
  62. package/dist/schemaKb.d.ts.map +1 -0
  63. package/dist/schemaKb.js +593 -0
  64. package/dist/schemaKb.js.map +1 -0
  65. package/dist/tsconfig.tsbuildinfo +1 -0
  66. package/dist/utils/did8004.d.ts +57 -0
  67. package/dist/utils/did8004.d.ts.map +1 -0
  68. package/dist/utils/did8004.js +127 -0
  69. package/dist/utils/did8004.js.map +1 -0
  70. package/dist/utils/didEns.d.ts +46 -0
  71. package/dist/utils/didEns.d.ts.map +1 -0
  72. package/dist/utils/didEns.js +107 -0
  73. package/dist/utils/didEns.js.map +1 -0
  74. package/dist/utils/didEthr.d.ts +40 -0
  75. package/dist/utils/didEthr.d.ts.map +1 -0
  76. package/dist/utils/didEthr.js +87 -0
  77. package/dist/utils/didEthr.js.map +1 -0
  78. package/package.json +79 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AIAgentL2ENSDurenClient.js","sourceRoot":"","sources":["../AIAgentL2ENSDurenClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ import { AIAgentENSClient } from './AIAgentENSClient';
2
+ export declare class AIAgentL2ENSNamespaceClient extends AIAgentENSClient {
3
+ private namespaceClient;
4
+ constructor(chain: any, rpcUrl: string, adapter: any, ensRegistryAddress: `0x${string}`, ensResolverAddress: `0x${string}`, identityRegistryAddress: `0x${string}`);
5
+ /**
6
+ * Override to ensure L2 client always returns true for isL2()
7
+ */
8
+ isL2(): boolean;
9
+ /**
10
+ * Override to ensure L2 client always returns false for isL1()
11
+ */
12
+ isL1(): boolean;
13
+ /**
14
+ * Override to ensure L2 client always returns 'L2'
15
+ */
16
+ getChainType(): 'L1' | 'L2';
17
+ private initializeNamespaceClient;
18
+ getAgentUrlByName(name: string): Promise<string | null>;
19
+ /**
20
+ * Override getAgentAccountByName to use namespace.ninja for L2 availability checking
21
+ */
22
+ getAgentAccountByName(name: string): Promise<`0x${string}` | null>;
23
+ /**
24
+ * Get the namespace client instance
25
+ */
26
+ getNamespaceClient(): any;
27
+ /**
28
+ * Note: getAgentEoaByAgentAccount is not a method of AIAgentENSClient
29
+ * This method is actually in AIAgentIdentityClient, so we don't need to override it here.
30
+ * The ownership detection logic is handled in the UI layer (AddAgentModal.tsx)
31
+ */
32
+ /**
33
+ * Override hasAgentNameOwner to use namespace.ninja for L2 availability checking
34
+ */
35
+ hasAgentNameOwner(orgName: string, agentName: string): Promise<boolean>;
36
+ /**
37
+ * Override prepareAddAgentNameToOrgCalls to use namespace.ninja SDK for L2
38
+ */
39
+ prepareAddAgentNameToOrgCalls(params: {
40
+ agentAddress: `0x${string}`;
41
+ orgName: string;
42
+ agentName: string;
43
+ agentUrl: string;
44
+ }): Promise<{
45
+ calls: {
46
+ to: `0x${string}`;
47
+ data: `0x${string}`;
48
+ value?: bigint;
49
+ }[];
50
+ }>;
51
+ prepareSetNameUriCalls(name: string, uri: string): Promise<{
52
+ calls: {
53
+ to: `0x${string}`;
54
+ data: `0x${string}`;
55
+ }[];
56
+ }>;
57
+ }
58
+ //# sourceMappingURL=AIAgentL2ENSNamespaceClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AIAgentL2ENSNamespaceClient.d.ts","sourceRoot":"","sources":["../AIAgentL2ENSNamespaceClient.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAMtD,qBAAa,2BAA4B,SAAQ,gBAAgB;IAC/D,OAAO,CAAC,eAAe,CAAa;gBAGlC,KAAK,EAAE,GAAG,EACV,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,GAAG,EACZ,kBAAkB,EAAE,KAAK,MAAM,EAAE,EACjC,kBAAkB,EAAE,KAAK,MAAM,EAAE,EACjC,uBAAuB,EAAE,KAAK,MAAM,EAAE;IAMxC;;OAEG;IACH,IAAI,IAAI,OAAO;IAIf;;OAEG;IACH,IAAI,IAAI,OAAO;IAIf;;OAEG;IACH,YAAY,IAAI,IAAI,GAAG,IAAI;IAI3B,OAAO,CAAC,yBAAyB;IAkB3B,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA8B7D;;OAEG;IACG,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,MAAM,EAAE,GAAG,IAAI,CAAC;IA8BxE;;OAEG;IACH,kBAAkB,IAAI,GAAG;IAIzB;;;;OAIG;IAEH;;OAEG;IACG,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAyB7E;;OAEG;IACG,6BAA6B,CAAC,MAAM,EAAE;QAC1C,YAAY,EAAE,KAAK,MAAM,EAAE,CAAC;QAC5B,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAA;KACjB,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE;YAAE,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;YAAC,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAAE,CAAC;IAwE9E,sBAAsB,CAC1B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,GACV,OAAO,CAAC;QAAE,KAAK,EAAE;YAAE,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;YAAC,IAAI,EAAE,KAAK,MAAM,EAAE,CAAA;SAAE,EAAE,CAAA;KAAE,CAAC;CASpE"}
@@ -0,0 +1,214 @@
1
+ /**
2
+ * L2 ENS Client for Base Sepolia and Optimism Sepolia
3
+ * Extends AIAgentENSClient with namespace.ninja integration for L2 subname operations
4
+ */
5
+ import { encodeFunctionData, namehash } from 'viem';
6
+ import { AIAgentENSClient } from './AIAgentENSClient';
7
+ // @ts-ignore - @thenamespace/mint-manager doesn't have type definitions
8
+ import { createMintClient } from '@thenamespace/mint-manager';
9
+ import { createIndexerClient } from '@thenamespace/indexer';
10
+ import { sepolia, baseSepolia, optimismSepolia } from 'viem/chains';
11
+ export class AIAgentL2ENSNamespaceClient extends AIAgentENSClient {
12
+ namespaceClient = null;
13
+ constructor(chain, rpcUrl, adapter, ensRegistryAddress, ensResolverAddress, identityRegistryAddress) {
14
+ super(chain, rpcUrl, adapter, ensRegistryAddress, ensResolverAddress, identityRegistryAddress);
15
+ this.initializeNamespaceClient();
16
+ }
17
+ /**
18
+ * Override to ensure L2 client always returns true for isL2()
19
+ */
20
+ isL2() {
21
+ return true; // This is always an L2 client
22
+ }
23
+ /**
24
+ * Override to ensure L2 client always returns false for isL1()
25
+ */
26
+ isL1() {
27
+ return false; // This is never an L1 client
28
+ }
29
+ /**
30
+ * Override to ensure L2 client always returns 'L2'
31
+ */
32
+ getChainType() {
33
+ return 'L2';
34
+ }
35
+ initializeNamespaceClient() {
36
+ try {
37
+ const client = createMintClient({
38
+ isTestnet: true, // Use testnet (sepolia)
39
+ cursomRpcUrls: {
40
+ [sepolia.id]: process.env.ETH_SEPOLIA_RPC_URL || '',
41
+ [baseSepolia.id]: process.env.BASE_SEPOLIA_RPC_URL || '',
42
+ [optimismSepolia.id]: process.env.OP_SEPOLIA_RPC_URL || '',
43
+ }
44
+ });
45
+ this.namespaceClient = client;
46
+ console.info('Namespace.ninja L2 client initialized successfully');
47
+ }
48
+ catch (error) {
49
+ console.error('Failed to initialize namespace.ninja L2 client:', error);
50
+ }
51
+ }
52
+ async getAgentUrlByName(name) {
53
+ // If standard lookup fails and we have namespace client, try L2 lookup
54
+ if (this.namespaceClient) {
55
+ try {
56
+ const chainId = this.chain.id;
57
+ const isAvailable = await this.namespaceClient.isL2SubnameAvailable(name, chainId);
58
+ if (!isAvailable) {
59
+ const client = createIndexerClient();
60
+ const subname = await client.getL2Subname({
61
+ chainId: this.chain.id,
62
+ nameOrNamehash: namehash(name)
63
+ });
64
+ console.info("subname for name: ", name, " is: ", subname);
65
+ if (subname) {
66
+ if (subname.records?.texts?.url) {
67
+ const url = subname.records?.texts?.url;
68
+ return url;
69
+ }
70
+ }
71
+ return null;
72
+ }
73
+ }
74
+ catch (error) {
75
+ console.error('Error checking L2 subname availability 1:', error);
76
+ }
77
+ }
78
+ return null;
79
+ }
80
+ /**
81
+ * Override getAgentAccountByName to use namespace.ninja for L2 availability checking
82
+ */
83
+ async getAgentAccountByName(name) {
84
+ console.info("AIAgentL2ENSClient.getAgentAccountByName: ", name);
85
+ // If standard lookup fails and we have namespace client, try L2 lookup
86
+ if (this.namespaceClient) {
87
+ try {
88
+ const chainId = this.chain.id;
89
+ const isAvailable = await this.namespaceClient.isL2SubnameAvailable(name, chainId);
90
+ if (!isAvailable) {
91
+ console.info("AIAgentL2ENSClient.getAgentAccountByName: not available");
92
+ const client = createIndexerClient();
93
+ const subname = await client.getL2Subname({
94
+ chainId: this.chain.id,
95
+ nameOrNamehash: namehash(name)
96
+ });
97
+ console.info("AIAgentL2ENSClient.getAgentAccountByName: subname: ", subname);
98
+ if (subname) {
99
+ console.info("AIAgentL2ENSClient.getAgentAccountByName: subname.owner: ", subname.owner);
100
+ return subname.owner;
101
+ }
102
+ return null;
103
+ }
104
+ }
105
+ catch (error) {
106
+ console.error('Error checking L2 subname availability 2:', error);
107
+ }
108
+ }
109
+ return null;
110
+ }
111
+ /**
112
+ * Get the namespace client instance
113
+ */
114
+ getNamespaceClient() {
115
+ return this.namespaceClient;
116
+ }
117
+ /**
118
+ * Note: getAgentEoaByAgentAccount is not a method of AIAgentENSClient
119
+ * This method is actually in AIAgentIdentityClient, so we don't need to override it here.
120
+ * The ownership detection logic is handled in the UI layer (AddAgentModal.tsx)
121
+ */
122
+ /**
123
+ * Override hasAgentNameOwner to use namespace.ninja for L2 availability checking
124
+ */
125
+ async hasAgentNameOwner(orgName, agentName) {
126
+ console.info("AIAgentL2ENSNamespaceClient.hasAgentNameOwner");
127
+ const clean = (s) => (s || '').trim().toLowerCase();
128
+ const parent = clean(orgName) + ".eth";
129
+ const label = clean(agentName).replace(/\s+/g, '-');
130
+ const fullSubname = `${label}.${parent}`;
131
+ // Use namespace.ninja to check if subname exists
132
+ if (this.namespaceClient) {
133
+ try {
134
+ const chainId = this.chain.id;
135
+ const isAvailable = await this.namespaceClient.isL2SubnameAvailable(fullSubname, chainId);
136
+ const hasOwner = !isAvailable; // If not available, it has an owner
137
+ console.info(`AIAgentL2ENSNamespaceClient.hasAgentNameOwner: "${fullSubname}" ${hasOwner ? 'HAS owner' : 'has NO owner'}`);
138
+ return hasOwner;
139
+ }
140
+ catch (error) {
141
+ console.error('Error checking agent name owner:', error);
142
+ return false;
143
+ }
144
+ }
145
+ return false;
146
+ }
147
+ /**
148
+ * Override prepareAddAgentNameToOrgCalls to use namespace.ninja SDK for L2
149
+ */
150
+ async prepareAddAgentNameToOrgCalls(params) {
151
+ console.log("AIAgentL2ENSClient.prepareAddAgentNameToOrgCalls");
152
+ console.log("orgName: ", params.orgName);
153
+ console.log("agentName: ", params.agentName);
154
+ console.log("agentAddress: ", params.agentAddress);
155
+ const clean = (s) => (s || '').trim().toLowerCase();
156
+ const parent = clean(params.orgName) + ".eth";
157
+ const label = clean(params.agentName).replace(/\s+/g, '-');
158
+ const fullSubname = `${label}.${parent}.eth`;
159
+ const agentAddress = params.agentAddress;
160
+ const agentUrl = params.agentUrl;
161
+ const chainName = this.chain.name.toLowerCase().replace(/\s+/g, '-');
162
+ console.info("parent: ", parent);
163
+ console.info("label: ", label);
164
+ console.info("agentAddress: ", agentAddress);
165
+ console.info("chainName: ", chainName);
166
+ console.info("agentUrl: ", agentUrl);
167
+ // Prepare mint transaction parameters using namespace.ninja SDK
168
+ const mintRequest = {
169
+ parentName: parent, // e.g., "theorg.eth"
170
+ label: label, // e.g., "atl-test-1"
171
+ owner: agentAddress,
172
+ minterAddress: agentAddress,
173
+ records: {
174
+ texts: [
175
+ { key: 'name', value: label },
176
+ { key: 'url', value: agentUrl },
177
+ { key: 'description', value: `Agent: ${label}` },
178
+ { key: 'chain', value: chainName },
179
+ { key: 'agent-account', value: agentAddress },
180
+ ],
181
+ addresses: [
182
+ {
183
+ chain: 60, // Ethereum coin type
184
+ value: agentAddress
185
+ },
186
+ ],
187
+ }
188
+ };
189
+ console.info("mintRequest: ", mintRequest);
190
+ const mintParams = await this.namespaceClient.getMintTransactionParameters(mintRequest);
191
+ console.info("mintParams: ", mintParams);
192
+ const { to, data, value } = {
193
+ to: mintParams.contractAddress,
194
+ data: encodeFunctionData({
195
+ abi: mintParams.abi,
196
+ functionName: mintParams.functionName,
197
+ args: mintParams.args,
198
+ }),
199
+ value: mintParams.value || 0n
200
+ };
201
+ const rtnCalls = [{
202
+ to: to,
203
+ data: data,
204
+ value: value,
205
+ }];
206
+ // Return the mint transaction parameters as calls
207
+ return { calls: rtnCalls };
208
+ }
209
+ async prepareSetNameUriCalls(name, uri) {
210
+ const calls = [];
211
+ return { calls };
212
+ }
213
+ }
214
+ //# sourceMappingURL=AIAgentL2ENSNamespaceClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AIAgentL2ENSNamespaceClient.js","sourceRoot":"","sources":["../AIAgentL2ENSNamespaceClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,69 @@
1
+ import { ReputationClient as BaseReputationClient, AccountProvider, type TxRequest } from '@agentic-trust/8004-sdk';
2
+ import type { MetadataEntry } from '@agentic-trust/8004-sdk';
3
+ export interface GiveFeedbackParams {
4
+ agent: string;
5
+ score: number;
6
+ feedback: string;
7
+ metadata?: MetadataEntry[];
8
+ tag1?: string;
9
+ tag2?: string;
10
+ endpoint?: string;
11
+ feedbackHash?: string;
12
+ feedbackUri?: string;
13
+ agentId?: string;
14
+ feedbackAuth?: string;
15
+ }
16
+ export interface AppendToFeedbackParams {
17
+ agentId: string | number | bigint;
18
+ clientAddress: `0x${string}`;
19
+ feedbackIndex: string | number | bigint;
20
+ responseUri?: string;
21
+ responseHash?: `0x${string}`;
22
+ }
23
+ export declare class AIAgentReputationClient extends BaseReputationClient {
24
+ private chain;
25
+ private accountProvider;
26
+ private ensRegistryAddress;
27
+ private reputationAddress;
28
+ private publicClient;
29
+ constructor(accountProvider: AccountProvider, registrationRegistryAddress: `0x${string}`, identityRegistryAddress: `0x${string}`, ensRegistryAddress: `0x${string}`);
30
+ getIdentityRegistry(): Promise<string>;
31
+ getLastIndex(agentId: bigint, clientAddress: string): Promise<bigint>;
32
+ createFeedbackAuth(agentId: bigint, clientAddress: string, indexLimit: bigint, expiry: bigint, chainId: bigint, signerAddress: string): any;
33
+ signFeedbackAuth(auth: any): Promise<string>;
34
+ static create(accountProvider: AccountProvider, identityRegistryAddress: `0x${string}`, registrationRegistryAddress: `0x${string}`, ensRegistryAddress: `0x${string}`): Promise<AIAgentReputationClient>;
35
+ /**
36
+ * Submit feedback for an agent
37
+ * Updated ABI:
38
+ * giveFeedback(uint256 agentId, uint8 score, string tag1, string tag2, string endpoint, string feedbackURI, bytes32 feedbackHash)
39
+ *
40
+ * @param params - Feedback parameters (score is MUST, others are OPTIONAL)
41
+ * @returns Transaction result
42
+ */
43
+ giveClientFeedback(params: GiveFeedbackParams): Promise<{
44
+ txHash: string;
45
+ }>;
46
+ /**
47
+ * Prepare the giveFeedback transaction data without sending it.
48
+ */
49
+ prepareGiveFeedbackTx(params: GiveFeedbackParams): Promise<TxRequest>;
50
+ /**
51
+ * Append a response to an existing feedback entry for an agent.
52
+ *
53
+ * Wraps the ReputationRegistry `appendResponse(agentId, clientAddress, feedbackIndex, responseUri, responseHash)`
54
+ * function using the same AccountProvider / ClientApp wiring as giveClientFeedback.
55
+ */
56
+ appendToFeedback(params: AppendToFeedbackParams): Promise<{
57
+ txHash: string;
58
+ }>;
59
+ /**
60
+ * Revoke a previously submitted feedback entry for an agent.
61
+ *
62
+ * This wraps the ReputationRegistry `revokeFeedback(uint256 tokenId, uint256 feedbackIndex)`
63
+ * function using the same AccountProvider / ClientApp wiring as giveClientFeedback.
64
+ */
65
+ revokeFeedback(agentId: bigint, feedbackIndex: bigint): Promise<{
66
+ txHash: string;
67
+ }>;
68
+ }
69
+ //# sourceMappingURL=AIAgentReputationClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AIAgentReputationClient.d.ts","sourceRoot":"","sources":["../AIAgentReputationClient.ts"],"names":[],"mappings":"AASA,OAAO,EACL,gBAAgB,IAAI,oBAAoB,EACxC,eAAe,EACf,KAAK,SAAS,EACf,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAClC,aAAa,EAAE,KAAK,MAAM,EAAE,CAAC;IAC7B,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;CAC9B;AAED,qBAAa,uBAAwB,SAAQ,oBAAoB;IAC/D,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,OAAO,CAAC,iBAAiB,CAAgB;IACzC,OAAO,CAAC,YAAY,CAA6B;gBAG/C,eAAe,EAAE,eAAe,EAChC,2BAA2B,EAAE,KAAK,MAAM,EAAE,EAC1C,uBAAuB,EAAE,KAAK,MAAM,EAAE,EACtC,kBAAkB,EAAE,KAAK,MAAM,EAAE;IAuCnC,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC;IAGtC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAGrE,kBAAkB,CAChB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,GACpB,GAAG;IAaN,gBAAgB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;WAK/B,MAAM,CACjB,eAAe,EAAE,eAAe,EAChC,uBAAuB,EAAE,KAAK,MAAM,EAAE,EACtC,2BAA2B,EAAE,KAAK,MAAM,EAAE,EAC1C,kBAAkB,EAAE,KAAK,MAAM,EAAE,GAChC,OAAO,CAAC,uBAAuB,CAAC;IAUnC;;;;;;;OAOG;IACG,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAwDjF;;OAEG;IACG,qBAAqB,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC;IAoC3E;;;;;OAKG;IACG,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IA4BnF;;;;;OAKG;IACG,cAAc,CAClB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAmB/B"}
@@ -0,0 +1,203 @@
1
+ import { ethers } from 'ethers';
2
+ import { sepolia } from 'viem/chains';
3
+ import { ReputationClient as BaseReputationClient, } from '@agentic-trust/8004-sdk';
4
+ import ReputationRegistryABI from './abis/ReputationRegistry.json';
5
+ export class AIAgentReputationClient extends BaseReputationClient {
6
+ chain;
7
+ accountProvider;
8
+ ensRegistryAddress;
9
+ reputationAddress;
10
+ publicClient = null;
11
+ constructor(accountProvider, registrationRegistryAddress, identityRegistryAddress, ensRegistryAddress) {
12
+ // For now, we still need to pass a BlockchainAdapter to BaseReputationClient
13
+ // TODO: Update BaseReputationClient to use AccountProvider
14
+ // We'll create a minimal adapter wrapper for compatibility
15
+ const minimalAdapter = {
16
+ call: async (to, abi, functionName, args) => {
17
+ return accountProvider?.call({ to: to, abi, functionName, args });
18
+ },
19
+ send: async (to, abi, functionName, args) => {
20
+ const data = await accountProvider?.encodeFunctionData({ abi, functionName, args: args || [] });
21
+ if (data) {
22
+ const tx = { to: to, data };
23
+ const result = await accountProvider?.send(tx);
24
+ return { hash: result?.hash, txHash: result?.hash };
25
+ }
26
+ return { hash: undefined, txHash: undefined };
27
+ },
28
+ signMessage: async (message) => {
29
+ return accountProvider?.signMessage(message);
30
+ },
31
+ };
32
+ super(minimalAdapter, registrationRegistryAddress, identityRegistryAddress);
33
+ this.chain = sepolia;
34
+ this.accountProvider = accountProvider;
35
+ this.reputationAddress = registrationRegistryAddress;
36
+ this.ensRegistryAddress = ensRegistryAddress;
37
+ // Try to extract publicClient from AccountProvider if it's a ViemAccountProvider
38
+ const viemProvider = accountProvider;
39
+ if (viemProvider.publicClient) {
40
+ this.publicClient = viemProvider.publicClient;
41
+ }
42
+ }
43
+ // Expose base-class methods so TypeScript recognizes them on this subclass
44
+ getIdentityRegistry() {
45
+ return BaseReputationClient.prototype.getIdentityRegistry.call(this);
46
+ }
47
+ getLastIndex(agentId, clientAddress) {
48
+ return BaseReputationClient.prototype.getLastIndex.call(this, agentId, clientAddress);
49
+ }
50
+ createFeedbackAuth(agentId, clientAddress, indexLimit, expiry, chainId, signerAddress) {
51
+ console.info("----------> createFeedbackAuth", agentId, clientAddress, indexLimit, expiry, chainId, signerAddress);
52
+ return BaseReputationClient.prototype.createFeedbackAuth.call(this, agentId, clientAddress, indexLimit, expiry, chainId, signerAddress);
53
+ }
54
+ signFeedbackAuth(auth) {
55
+ return BaseReputationClient.prototype.signFeedbackAuth.call(this, auth);
56
+ }
57
+ // Factory: resolve identityRegistry from reputation/registration registry before constructing
58
+ static async create(accountProvider, identityRegistryAddress, registrationRegistryAddress, ensRegistryAddress) {
59
+ return new AIAgentReputationClient(accountProvider, registrationRegistryAddress, identityRegistryAddress, ensRegistryAddress);
60
+ }
61
+ /**
62
+ * Submit feedback for an agent
63
+ * Updated ABI:
64
+ * giveFeedback(uint256 agentId, uint8 score, string tag1, string tag2, string endpoint, string feedbackURI, bytes32 feedbackHash)
65
+ *
66
+ * @param params - Feedback parameters (score is MUST, others are OPTIONAL)
67
+ * @returns Transaction result
68
+ */
69
+ async giveClientFeedback(params) {
70
+ // Validate score is 0-100 (MUST per spec)
71
+ if (params.score < 0 || params.score > 100) {
72
+ throw new Error('Score MUST be between 0 and 100');
73
+ }
74
+ const tag1 = params.tag1 || '';
75
+ const tag2 = params.tag2 || '';
76
+ const endpoint = params.endpoint || '';
77
+ const feedbackHash = params.feedbackHash || ethers.ZeroHash;
78
+ const feedbackUri = params.feedbackUri || '';
79
+ // Convert agentId to bigint (contract expects uint256)
80
+ if (!params.agentId) {
81
+ throw new Error('agentId is required');
82
+ }
83
+ const agentId = BigInt(params.agentId);
84
+ console.info("params.feedbackAuth", JSON.stringify(params.feedbackAuth, null, 2));
85
+ console.info("this.reputationAddress", this.reputationAddress);
86
+ console.info("agentId", agentId.toString());
87
+ console.info("score", params.score);
88
+ console.info("tag1", tag1);
89
+ console.info("tag2", tag2);
90
+ console.info("feedbackUri", feedbackUri);
91
+ console.info("feedbackHash", feedbackHash);
92
+ // Encode function data using AccountProvider
93
+ const data = await this.accountProvider?.encodeFunctionData({
94
+ abi: ReputationRegistryABI,
95
+ functionName: 'giveFeedback',
96
+ args: [
97
+ agentId,
98
+ params.score,
99
+ tag1,
100
+ tag2,
101
+ endpoint,
102
+ feedbackUri,
103
+ feedbackHash,
104
+ ],
105
+ });
106
+ // Send transaction using AccountProvider
107
+ const tx = {
108
+ to: this.reputationAddress,
109
+ data: data || '0x',
110
+ value: 0n,
111
+ };
112
+ const result = await this.accountProvider?.send(tx, {
113
+ simulation: true,
114
+ });
115
+ return { txHash: result?.hash || '' };
116
+ }
117
+ /**
118
+ * Prepare the giveFeedback transaction data without sending it.
119
+ */
120
+ async prepareGiveFeedbackTx(params) {
121
+ if (params.score < 0 || params.score > 100) {
122
+ throw new Error('Score MUST be between 0 and 100');
123
+ }
124
+ if (!params.agentId) {
125
+ throw new Error('agentId is required');
126
+ }
127
+ const tag1 = params.tag1 || '';
128
+ const tag2 = params.tag2 || '';
129
+ const endpoint = params.endpoint || '';
130
+ const feedbackHash = params.feedbackHash || ethers.ZeroHash;
131
+ const feedbackUri = params.feedbackUri || '';
132
+ const agentId = BigInt(params.agentId);
133
+ const data = await this.accountProvider?.encodeFunctionData({
134
+ abi: ReputationRegistryABI,
135
+ functionName: 'giveFeedback',
136
+ args: [
137
+ agentId,
138
+ params.score,
139
+ tag1,
140
+ tag2,
141
+ endpoint,
142
+ feedbackUri,
143
+ feedbackHash,
144
+ ],
145
+ });
146
+ return {
147
+ to: this.reputationAddress,
148
+ data: data || '0x',
149
+ value: 0n,
150
+ };
151
+ }
152
+ /**
153
+ * Append a response to an existing feedback entry for an agent.
154
+ *
155
+ * Wraps the ReputationRegistry `appendResponse(agentId, clientAddress, feedbackIndex, responseUri, responseHash)`
156
+ * function using the same AccountProvider / ClientApp wiring as giveClientFeedback.
157
+ */
158
+ async appendToFeedback(params) {
159
+ const agentId = BigInt(params.agentId);
160
+ const feedbackIndex = BigInt(params.feedbackIndex);
161
+ const responseUri = params.responseUri || '';
162
+ const responseHash = params.responseHash && params.responseHash.length === 66
163
+ ? params.responseHash
164
+ : ethers.ZeroHash;
165
+ const data = await this.accountProvider?.encodeFunctionData({
166
+ abi: ReputationRegistryABI,
167
+ functionName: 'appendResponse',
168
+ args: [agentId, params.clientAddress, feedbackIndex, responseUri, responseHash],
169
+ });
170
+ const tx = {
171
+ to: this.reputationAddress,
172
+ data: data || '0x',
173
+ value: 0n,
174
+ };
175
+ const result = await this.accountProvider?.send(tx, {
176
+ simulation: true,
177
+ });
178
+ return { txHash: result?.hash || '' };
179
+ }
180
+ /**
181
+ * Revoke a previously submitted feedback entry for an agent.
182
+ *
183
+ * This wraps the ReputationRegistry `revokeFeedback(uint256 tokenId, uint256 feedbackIndex)`
184
+ * function using the same AccountProvider / ClientApp wiring as giveClientFeedback.
185
+ */
186
+ async revokeFeedback(agentId, feedbackIndex) {
187
+ const data = await this.accountProvider?.encodeFunctionData({
188
+ abi: ReputationRegistryABI,
189
+ functionName: 'revokeFeedback',
190
+ args: [agentId, feedbackIndex],
191
+ });
192
+ const tx = {
193
+ to: this.reputationAddress,
194
+ data: data || '0x',
195
+ value: 0n,
196
+ };
197
+ const result = await this.accountProvider?.send(tx, {
198
+ simulation: true,
199
+ });
200
+ return { txHash: result?.hash || '' };
201
+ }
202
+ }
203
+ //# sourceMappingURL=AIAgentReputationClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AIAgentReputationClient.js","sourceRoot":"","sources":["../AIAgentReputationClient.ts"],"names":[],"mappings":"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"}