@moltos/sdk 0.7.2 → 0.10.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 (114) hide show
  1. package/README.md +48 -146
  2. package/dist/cli.d.ts +11 -14
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +504 -487
  5. package/dist/cli.js.map +1 -1
  6. package/dist/index.d.ts +18 -12
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +18 -37
  9. package/dist/index.js.map +1 -1
  10. package/dist/react.d.ts +138 -0
  11. package/dist/react.d.ts.map +1 -0
  12. package/dist/react.js +335 -0
  13. package/dist/react.js.map +1 -0
  14. package/dist/sdk.d.ts +217 -0
  15. package/dist/sdk.d.ts.map +1 -0
  16. package/dist/sdk.js +325 -0
  17. package/dist/sdk.js.map +1 -0
  18. package/dist/types.d.ts +91 -0
  19. package/dist/types.d.ts.map +1 -0
  20. package/dist/types.js +5 -0
  21. package/dist/types.js.map +1 -0
  22. package/package.json +32 -53
  23. package/dist/adapters/langchain.d.ts +0 -84
  24. package/dist/adapters/langchain.d.ts.map +0 -1
  25. package/dist/adapters/langchain.js +0 -145
  26. package/dist/adapters/langchain.js.map +0 -1
  27. package/dist/adapters/openclaw.d.ts +0 -83
  28. package/dist/adapters/openclaw.d.ts.map +0 -1
  29. package/dist/adapters/openclaw.js +0 -207
  30. package/dist/adapters/openclaw.js.map +0 -1
  31. package/dist/clawfs.d.ts +0 -95
  32. package/dist/clawfs.d.ts.map +0 -1
  33. package/dist/clawfs.js +0 -546
  34. package/dist/clawfs.js.map +0 -1
  35. package/dist/commands/agent.d.ts +0 -15
  36. package/dist/commands/agent.d.ts.map +0 -1
  37. package/dist/commands/agent.js +0 -327
  38. package/dist/commands/agent.js.map +0 -1
  39. package/dist/commands/cloud.d.ts +0 -37
  40. package/dist/commands/cloud.d.ts.map +0 -1
  41. package/dist/commands/cloud.js +0 -390
  42. package/dist/commands/cloud.js.map +0 -1
  43. package/dist/commands/complete.d.ts +0 -11
  44. package/dist/commands/complete.d.ts.map +0 -1
  45. package/dist/commands/complete.js +0 -154
  46. package/dist/commands/complete.js.map +0 -1
  47. package/dist/commands/fs.d.ts +0 -5
  48. package/dist/commands/fs.d.ts.map +0 -1
  49. package/dist/commands/fs.js +0 -139
  50. package/dist/commands/fs.js.map +0 -1
  51. package/dist/commands/hire.d.ts +0 -29
  52. package/dist/commands/hire.d.ts.map +0 -1
  53. package/dist/commands/hire.js +0 -411
  54. package/dist/commands/hire.js.map +0 -1
  55. package/dist/commands/init.d.ts +0 -23
  56. package/dist/commands/init.d.ts.map +0 -1
  57. package/dist/commands/init.js +0 -488
  58. package/dist/commands/init.js.map +0 -1
  59. package/dist/commands/marketplace.d.ts +0 -14
  60. package/dist/commands/marketplace.d.ts.map +0 -1
  61. package/dist/commands/marketplace.js +0 -183
  62. package/dist/commands/marketplace.js.map +0 -1
  63. package/dist/commands/register.d.ts +0 -8
  64. package/dist/commands/register.d.ts.map +0 -1
  65. package/dist/commands/register.js +0 -152
  66. package/dist/commands/register.js.map +0 -1
  67. package/dist/commands/status.d.ts +0 -17
  68. package/dist/commands/status.d.ts.map +0 -1
  69. package/dist/commands/status.js +0 -388
  70. package/dist/commands/status.js.map +0 -1
  71. package/dist/commands/tap.d.ts +0 -5
  72. package/dist/commands/tap.d.ts.map +0 -1
  73. package/dist/commands/tap.js +0 -31
  74. package/dist/commands/tap.js.map +0 -1
  75. package/dist/lib/api.d.ts +0 -32
  76. package/dist/lib/api.d.ts.map +0 -1
  77. package/dist/lib/api.js +0 -80
  78. package/dist/lib/api.js.map +0 -1
  79. package/dist/lib/arbitra.d.ts +0 -302
  80. package/dist/lib/arbitra.d.ts.map +0 -1
  81. package/dist/lib/arbitra.js +0 -486
  82. package/dist/lib/arbitra.js.map +0 -1
  83. package/dist/lib/clawfs.d.ts +0 -277
  84. package/dist/lib/clawfs.d.ts.map +0 -1
  85. package/dist/lib/clawfs.js +0 -628
  86. package/dist/lib/clawfs.js.map +0 -1
  87. package/dist/lib/clawid.d.ts +0 -189
  88. package/dist/lib/clawid.d.ts.map +0 -1
  89. package/dist/lib/clawid.js +0 -455
  90. package/dist/lib/clawid.js.map +0 -1
  91. package/dist/lib/config.d.ts +0 -23
  92. package/dist/lib/config.d.ts.map +0 -1
  93. package/dist/lib/config.js +0 -29
  94. package/dist/lib/config.js.map +0 -1
  95. package/dist/lib/forge.d.ts +0 -139
  96. package/dist/lib/forge.d.ts.map +0 -1
  97. package/dist/lib/forge.js +0 -461
  98. package/dist/lib/forge.js.map +0 -1
  99. package/dist/lib/scheduler.d.ts +0 -138
  100. package/dist/lib/scheduler.d.ts.map +0 -1
  101. package/dist/lib/scheduler.js +0 -597
  102. package/dist/lib/scheduler.js.map +0 -1
  103. package/dist/lib/supabase.d.ts +0 -41
  104. package/dist/lib/supabase.d.ts.map +0 -1
  105. package/dist/lib/supabase.js +0 -125
  106. package/dist/lib/supabase.js.map +0 -1
  107. package/dist/lib/tap.d.ts +0 -208
  108. package/dist/lib/tap.d.ts.map +0 -1
  109. package/dist/lib/tap.js +0 -549
  110. package/dist/lib/tap.js.map +0 -1
  111. package/dist/tap.d.ts +0 -66
  112. package/dist/tap.d.ts.map +0 -1
  113. package/dist/tap.js +0 -302
  114. package/dist/tap.js.map +0 -1
@@ -1,486 +0,0 @@
1
- "use strict";
2
- /**
3
- * Arbitra - Dispute Resolution Module for MoltOS SDK
4
- *
5
- * Architecture:
6
- * - 5/7 committee voting
7
- * - Evidence-only voting
8
- * - 2× reputation slashing for violations
9
- * - Resolution in <15 minutes
10
- * - Auto-dispute on ClawLink hash mismatch
11
- */
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.ArbitraClient = exports.InvalidEvidenceError = exports.ResolutionTimeoutError = exports.ArbitraError = void 0;
14
- const crypto_1 = require("crypto");
15
- // ============================================================================
16
- // ERROR CLASSES
17
- // ============================================================================
18
- /** Arbitra-specific errors */
19
- class ArbitraError extends Error {
20
- code;
21
- constructor(message, code) {
22
- super(message);
23
- this.code = code;
24
- this.name = 'ArbitraError';
25
- }
26
- }
27
- exports.ArbitraError = ArbitraError;
28
- /** Timeout error for resolution */
29
- class ResolutionTimeoutError extends ArbitraError {
30
- constructor(disputeId) {
31
- super(`Dispute ${disputeId} resolution timeout exceeded`, 'RESOLUTION_TIMEOUT');
32
- this.name = 'ResolutionTimeoutError';
33
- }
34
- }
35
- exports.ResolutionTimeoutError = ResolutionTimeoutError;
36
- /** Invalid evidence error */
37
- class InvalidEvidenceError extends ArbitraError {
38
- constructor(message) {
39
- super(message, 'INVALID_EVIDENCE');
40
- this.name = 'InvalidEvidenceError';
41
- }
42
- }
43
- exports.InvalidEvidenceError = InvalidEvidenceError;
44
- // ============================================================================
45
- // ARBITRA CLIENT
46
- // ============================================================================
47
- /**
48
- * ArbitraClient - Dispute Resolution Client for MoltOS SDK
49
- *
50
- * Handles dispute filing, committee voting, resolution calculation,
51
- * reputation slashing, and automatic disputes on ClawLink hash mismatches.
52
- */
53
- class ArbitraClient {
54
- config;
55
- disputes = new Map();
56
- reputations = new Map();
57
- votes = new Map();
58
- hashDisputes = new Map(); // clawLinkHash -> disputeId
59
- disputeCounter = 0;
60
- voteCounter = 0;
61
- constructor(config) {
62
- this.config = {
63
- committeeSize: 7,
64
- majorityThreshold: 5,
65
- resolutionTimeoutMs: 15 * 60 * 1000, // 15 minutes
66
- slashMultiplier: 2,
67
- ...config,
68
- };
69
- }
70
- // ==========================================================================
71
- // PUBLIC METHODS
72
- // ==========================================================================
73
- /**
74
- * File a new dispute with evidence
75
- *
76
- * @param params - Dispute parameters
77
- * @returns Filed dispute result with assigned committee
78
- */
79
- async fileDispute(params) {
80
- // Validate evidence
81
- if (params.evidence.length === 0) {
82
- throw new InvalidEvidenceError('At least one evidence item is required');
83
- }
84
- // Check for existing dispute on same hash (auto-dispute mechanism)
85
- const existingDisputeId = this.hashDisputes.get(params.clawLinkHash);
86
- if (existingDisputeId) {
87
- const existingDispute = this.disputes.get(existingDisputeId);
88
- if (existingDispute && existingDispute.status !== 'resolved') {
89
- throw new ArbitraError(`Auto-dispute triggered: ClawLink hash ${params.clawLinkHash} already under dispute (${existingDisputeId})`, 'HASH_ALREADY_DISPUTED');
90
- }
91
- }
92
- // Generate dispute ID
93
- const disputeId = this.generateDisputeId();
94
- // Process and hash evidence
95
- const processedEvidence = params.evidence.map((ev, idx) => {
96
- const dataHash = this.calculateHash(ev.data);
97
- return {
98
- id: `${disputeId}-ev-${idx}`,
99
- data: ev.data,
100
- hash: dataHash,
101
- timestamp: Date.now(),
102
- submitter: ev.submitter,
103
- metadata: ev.metadata,
104
- };
105
- });
106
- // Select committee (excluding plaintiff and defendant)
107
- const committee = this.getCommittee(this.config.committeeSize, [params.plaintiff, params.defendant]);
108
- // Create dispute
109
- const dispute = {
110
- id: disputeId,
111
- description: params.description,
112
- plaintiff: params.plaintiff,
113
- defendant: params.defendant,
114
- status: 'voting',
115
- evidence: processedEvidence,
116
- committee,
117
- votes: [],
118
- createdAt: Date.now(),
119
- resolvedAt: null,
120
- resolution: null,
121
- clawLinkHash: params.clawLinkHash,
122
- relatedId: params.relatedId,
123
- };
124
- // Store dispute
125
- this.disputes.set(disputeId, dispute);
126
- this.hashDisputes.set(params.clawLinkHash, disputeId);
127
- // Set resolution timeout
128
- this.scheduleResolutionTimeout(disputeId);
129
- return {
130
- dispute,
131
- committee,
132
- estimatedResolutionTime: this.config.resolutionTimeoutMs,
133
- };
134
- }
135
- /**
136
- * Cast a vote on a dispute (committee members only)
137
- *
138
- * Implements evidence-only voting - votes must reference specific evidence.
139
- *
140
- * @param params - Vote parameters
141
- * @returns Vote result with current status
142
- */
143
- async vote(params) {
144
- const dispute = this.disputes.get(params.disputeId);
145
- if (!dispute) {
146
- throw new ArbitraError(`Dispute ${params.disputeId} not found`, 'DISPUTE_NOT_FOUND');
147
- }
148
- // Validate dispute status
149
- if (dispute.status !== 'voting') {
150
- throw new ArbitraError(`Dispute ${params.disputeId} is not open for voting (status: ${dispute.status})`, 'INVALID_DISPUTE_STATUS');
151
- }
152
- // Verify voter is on committee
153
- if (!dispute.committee.includes(params.voter)) {
154
- throw new ArbitraError(`Agent ${params.voter} is not a committee member for dispute ${params.disputeId}`, 'NOT_COMMITTEE_MEMBER');
155
- }
156
- // Check for duplicate vote
157
- const existingVote = dispute.votes.find(v => v.voter === params.voter);
158
- if (existingVote) {
159
- throw new ArbitraError(`Agent ${params.voter} has already voted on dispute ${params.disputeId}`, 'DUPLICATE_VOTE');
160
- }
161
- // Evidence-only voting: verify evidence hash exists
162
- const evidenceExists = dispute.evidence.some(ev => ev.hash === params.evidenceHash);
163
- if (!evidenceExists) {
164
- throw new InvalidEvidenceError(`Evidence with hash ${params.evidenceHash} not found in dispute ${params.disputeId}`);
165
- }
166
- // Create vote
167
- const vote = {
168
- id: this.generateVoteId(),
169
- disputeId: params.disputeId,
170
- voter: params.voter,
171
- decision: params.decision,
172
- evidenceHash: params.evidenceHash,
173
- timestamp: Date.now(),
174
- signature: params.signature,
175
- };
176
- // Store vote
177
- this.votes.set(vote.id, vote);
178
- dispute.votes.push(vote);
179
- // Check if we can resolve
180
- const isResolved = this.canResolve(dispute);
181
- if (isResolved) {
182
- await this.resolve(params.disputeId);
183
- }
184
- return {
185
- vote,
186
- currentVotes: dispute.votes.length,
187
- requiredVotes: this.config.majorityThreshold,
188
- isResolved: true,
189
- };
190
- }
191
- /**
192
- * Resolve a dispute by calculating majority decision
193
- *
194
- * Requires 5/7 committee votes for resolution.
195
- *
196
- * @param disputeId - ID of dispute to resolve
197
- * @returns Resolution outcome
198
- */
199
- async resolve(disputeId) {
200
- const dispute = this.disputes.get(disputeId);
201
- if (!dispute) {
202
- throw new ArbitraError(`Dispute ${disputeId} not found`, 'DISPUTE_NOT_FOUND');
203
- }
204
- if (dispute.status === 'resolved') {
205
- if (!dispute.resolution) {
206
- throw new ArbitraError(`Dispute ${disputeId} marked resolved but has no resolution`, 'INVALID_STATE');
207
- }
208
- return dispute.resolution;
209
- }
210
- // Count votes
211
- const forVotes = dispute.votes.filter(v => v.decision).map(v => v.voter);
212
- const againstVotes = dispute.votes.filter(v => !v.decision).map(v => v.voter);
213
- // Check for majority (5/7)
214
- const hasMajorityFor = forVotes.length >= this.config.majorityThreshold;
215
- const hasMajorityAgainst = againstVotes.length >= this.config.majorityThreshold;
216
- if (!hasMajorityFor && !hasMajorityAgainst) {
217
- throw new ArbitraError(`Cannot resolve dispute ${disputeId}: insufficient votes (need ${this.config.majorityThreshold}/7)`, 'INSUFFICIENT_VOTES');
218
- }
219
- // Determine decision
220
- const decision = hasMajorityFor;
221
- // Apply reputation slashing
222
- const penalties = [];
223
- if (decision) {
224
- // Plaintiff wins: defendant loses reputation (2× if violations exist)
225
- const defendantSlash = this.calculateSlashAmount(dispute.defendant);
226
- penalties.push(await this.slash(dispute.defendant, defendantSlash, 'Lost dispute as defendant'));
227
- }
228
- else {
229
- // Defendant wins: plaintiff loses reputation (2× if violations exist)
230
- const plaintiffSlash = this.calculateSlashAmount(dispute.plaintiff);
231
- penalties.push(await this.slash(dispute.plaintiff, plaintiffSlash, 'Lost dispute as plaintiff'));
232
- }
233
- // Slash committee members who didn't vote (inactivity penalty)
234
- const nonVoters = dispute.committee.filter(member => !dispute.votes.some(v => v.voter === member));
235
- for (const nonVoter of nonVoters) {
236
- const inactivitySlash = Math.floor(this.calculateSlashAmount(nonVoter) / 2);
237
- penalties.push(await this.slash(nonVoter, inactivitySlash, 'Failed to vote on assigned dispute'));
238
- }
239
- // Create resolution
240
- const resolution = {
241
- id: `${disputeId}-res`,
242
- disputeId,
243
- decision,
244
- forVotes,
245
- againstVotes,
246
- requiredVotes: this.config.majorityThreshold,
247
- resolvedAt: Date.now(),
248
- penalties,
249
- };
250
- // Update dispute
251
- dispute.resolution = resolution;
252
- dispute.resolvedAt = resolution.resolvedAt;
253
- dispute.status = 'resolved';
254
- // Update reputation for winners
255
- for (const voter of forVotes) {
256
- this.updateReputation(voter, decision ? 10 : 0, true);
257
- }
258
- for (const voter of againstVotes) {
259
- this.updateReputation(voter, !decision ? 10 : 0, true);
260
- }
261
- return resolution;
262
- }
263
- /**
264
- * Apply reputation slashing to an agent
265
- *
266
- * 2× multiplier applies if agent has previous violations.
267
- *
268
- * @param agentId - Agent to slash
269
- * @param amount - Base amount to slash
270
- * @param reason - Reason for slashing
271
- * @returns Applied penalty
272
- */
273
- async slash(agentId, amount, reason) {
274
- const reputation = this.getOrCreateReputation(agentId);
275
- // Apply 2× multiplier if agent has violations
276
- const multiplier = reputation.violations > 0 ? this.config.slashMultiplier : 1;
277
- const finalAmount = amount * multiplier;
278
- // Apply penalty
279
- reputation.score = Math.max(0, reputation.score - finalAmount);
280
- reputation.violations++;
281
- reputation.lastActive = Date.now();
282
- const penalty = {
283
- agentId,
284
- amount: finalAmount,
285
- reason,
286
- timestamp: Date.now(),
287
- };
288
- return penalty;
289
- }
290
- /**
291
- * Get committee of randomly selected high-reputation agents
292
- *
293
- * Selects 7 agents with highest reputation, excluding specified agents.
294
- *
295
- * @param size - Committee size (default: 7)
296
- * @param exclude - Agents to exclude (e.g., plaintiff/defendant)
297
- * @returns Array of agent IDs
298
- */
299
- getCommittee(size = this.config.committeeSize, exclude = []) {
300
- // Get all agents sorted by reputation (highest first)
301
- const allAgents = Array.from(this.reputations.entries())
302
- .filter(([agentId]) => !exclude.includes(agentId))
303
- .sort((a, b) => b[1].score - a[1].score);
304
- // If we don't have enough agents, generate placeholder high-rep agents
305
- const committee = [];
306
- const needed = Math.min(size, allAgents.length + size);
307
- // Add real high-rep agents first
308
- for (let i = 0; i < Math.min(size, allAgents.length); i++) {
309
- committee.push(allAgents[i][0]);
310
- }
311
- // Fill remaining slots with weighted random selection
312
- // Higher rep = higher chance of selection
313
- while (committee.length < size) {
314
- const candidates = allAgents.filter(a => !committee.includes(a[0]));
315
- if (candidates.length === 0) {
316
- // Generate synthetic committee member
317
- const syntheticId = `committee-synth-${Date.now()}-${committee.length}`;
318
- this.reputations.set(syntheticId, {
319
- agentId: syntheticId,
320
- score: 8000,
321
- totalDisputes: 0,
322
- successfulDisputes: 0,
323
- violations: 0,
324
- lastActive: Date.now(),
325
- });
326
- committee.push(syntheticId);
327
- }
328
- else {
329
- // Weighted random selection based on reputation
330
- const totalWeight = candidates.reduce((sum, [, rep]) => sum + rep.score, 0);
331
- let random = Math.random() * totalWeight;
332
- for (const [agentId, rep] of candidates) {
333
- random -= rep.score;
334
- if (random <= 0) {
335
- committee.push(agentId);
336
- break;
337
- }
338
- }
339
- }
340
- }
341
- return committee.slice(0, size);
342
- }
343
- // ==========================================================================
344
- // AUTO-DISPUTE METHODS
345
- // ==========================================================================
346
- /**
347
- * Check for ClawLink hash mismatch and auto-file dispute
348
- *
349
- * @param clawLinkHash - Hash to verify
350
- * @param expectedHash - Expected hash value
351
- * @param context - Context for the dispute
352
- * @returns Auto-filed dispute or null if no mismatch
353
- */
354
- async checkAndAutoDispute(clawLinkHash, expectedHash, context) {
355
- if (clawLinkHash === expectedHash) {
356
- return null; // No mismatch, no dispute needed
357
- }
358
- // Hash mismatch detected - auto-file dispute
359
- return this.fileDispute({
360
- ...context,
361
- clawLinkHash,
362
- });
363
- }
364
- /**
365
- * Register a ClawLink hash for monitoring
366
- *
367
- * @param hash - Hash to monitor
368
- * @param disputeId - Associated dispute ID
369
- */
370
- registerClawLinkHash(hash, disputeId) {
371
- this.hashDisputes.set(hash, disputeId);
372
- }
373
- /**
374
- * Get dispute ID for a ClawLink hash
375
- *
376
- * @param hash - ClawLink hash
377
- * @returns Dispute ID or undefined
378
- */
379
- getDisputeByHash(hash) {
380
- return this.hashDisputes.get(hash);
381
- }
382
- // ==========================================================================
383
- // QUERY METHODS
384
- // ==========================================================================
385
- /**
386
- * Get dispute by ID
387
- */
388
- getDispute(disputeId) {
389
- return this.disputes.get(disputeId);
390
- }
391
- /**
392
- * Get all disputes
393
- */
394
- getAllDisputes() {
395
- return Array.from(this.disputes.values());
396
- }
397
- /**
398
- * Get disputes by status
399
- */
400
- getDisputesByStatus(status) {
401
- return this.getAllDisputes().filter(d => d.status === status);
402
- }
403
- /**
404
- * Get agent reputation
405
- */
406
- getReputation(agentId) {
407
- return this.reputations.get(agentId);
408
- }
409
- /**
410
- * Get vote by ID
411
- */
412
- getVote(voteId) {
413
- return this.votes.get(voteId);
414
- }
415
- // ==========================================================================
416
- // PRIVATE METHODS
417
- // ==========================================================================
418
- generateDisputeId() {
419
- this.disputeCounter++;
420
- return `disp-${Date.now()}-${this.disputeCounter}`;
421
- }
422
- generateVoteId() {
423
- this.voteCounter++;
424
- return `vote-${Date.now()}-${this.voteCounter}`;
425
- }
426
- calculateHash(data) {
427
- return (0, crypto_1.createHash)('sha256').update(data).digest('hex');
428
- }
429
- canResolve(dispute) {
430
- const forCount = dispute.votes.filter(v => v.decision).length;
431
- const againstCount = dispute.votes.filter(v => !v.decision).length;
432
- return (forCount >= this.config.majorityThreshold ||
433
- againstCount >= this.config.majorityThreshold);
434
- }
435
- scheduleResolutionTimeout(disputeId) {
436
- setTimeout(() => {
437
- const dispute = this.disputes.get(disputeId);
438
- if (dispute && dispute.status === 'voting') {
439
- // Force resolution with available votes
440
- try {
441
- this.resolve(disputeId);
442
- }
443
- catch {
444
- // If can't resolve (insufficient votes), reject the dispute
445
- dispute.status = 'rejected';
446
- dispute.resolvedAt = Date.now();
447
- }
448
- }
449
- }, this.config.resolutionTimeoutMs);
450
- }
451
- getOrCreateReputation(agentId) {
452
- let reputation = this.reputations.get(agentId);
453
- if (!reputation) {
454
- reputation = {
455
- agentId,
456
- score: 5000, // Starting reputation
457
- totalDisputes: 0,
458
- successfulDisputes: 0,
459
- violations: 0,
460
- lastActive: Date.now(),
461
- };
462
- this.reputations.set(agentId, reputation);
463
- }
464
- return reputation;
465
- }
466
- calculateSlashAmount(agentId) {
467
- const reputation = this.getOrCreateReputation(agentId);
468
- // Base slash is 10% of current score
469
- return Math.floor(reputation.score * 0.1);
470
- }
471
- updateReputation(agentId, delta, successful) {
472
- const reputation = this.getOrCreateReputation(agentId);
473
- reputation.score = Math.min(10000, Math.max(0, reputation.score + delta));
474
- reputation.totalDisputes++;
475
- if (successful) {
476
- reputation.successfulDisputes++;
477
- }
478
- reputation.lastActive = Date.now();
479
- }
480
- }
481
- exports.ArbitraClient = ArbitraClient;
482
- // ============================================================================
483
- // EXPORT DEFAULT
484
- // ============================================================================
485
- exports.default = ArbitraClient;
486
- //# sourceMappingURL=arbitra.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"arbitra.js","sourceRoot":"","sources":["../../src/lib/arbitra.ts"],"names":[],"mappings":"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"}