@agirails/sdk 3.5.3 → 4.0.0-beta.1
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.
- package/dist/cli/agirails.d.ts +4 -1
- package/dist/cli/agirails.d.ts.map +1 -1
- package/dist/cli/agirails.js +34 -2
- package/dist/cli/agirails.js.map +1 -1
- package/dist/cli/commands/agent.d.ts.map +1 -1
- package/dist/cli/commands/agent.js +62 -21
- package/dist/cli/commands/agent.js.map +1 -1
- package/dist/cli/commands/negotiate.js +4 -1
- package/dist/cli/commands/negotiate.js.map +1 -1
- package/dist/cli/commands/pay.d.ts +7 -0
- package/dist/cli/commands/pay.d.ts.map +1 -1
- package/dist/cli/commands/pay.js +34 -1
- package/dist/cli/commands/pay.js.map +1 -1
- package/dist/cli/commands/request.d.ts +19 -0
- package/dist/cli/commands/request.d.ts.map +1 -0
- package/dist/cli/commands/request.js +167 -0
- package/dist/cli/commands/request.js.map +1 -0
- package/dist/cli/commands/serve.d.ts +12 -7
- package/dist/cli/commands/serve.d.ts.map +1 -1
- package/dist/cli/commands/serve.js +12 -7
- package/dist/cli/commands/serve.js.map +1 -1
- package/dist/cli/commands/test.d.ts +22 -4
- package/dist/cli/commands/test.d.ts.map +1 -1
- package/dist/cli/commands/test.js +139 -292
- package/dist/cli/commands/test.js.map +1 -1
- package/dist/cli/commands/tx.js +13 -0
- package/dist/cli/commands/tx.js.map +1 -1
- package/dist/cli/index.js +7 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/lib/resolveAgent.d.ts +67 -0
- package/dist/cli/lib/resolveAgent.d.ts.map +1 -0
- package/dist/cli/lib/resolveAgent.js +121 -0
- package/dist/cli/lib/resolveAgent.js.map +1 -0
- package/dist/cli/lib/runRequest.d.ts +114 -0
- package/dist/cli/lib/runRequest.d.ts.map +1 -0
- package/dist/cli/lib/runRequest.js +336 -0
- package/dist/cli/lib/runRequest.js.map +1 -0
- package/dist/cli/lib/serviceNameForHash.d.ts +48 -0
- package/dist/cli/lib/serviceNameForHash.d.ts.map +1 -0
- package/dist/cli/lib/serviceNameForHash.js +62 -0
- package/dist/cli/lib/serviceNameForHash.js.map +1 -0
- package/dist/level0/request.d.ts.map +1 -1
- package/dist/level0/request.js +34 -11
- package/dist/level0/request.js.map +1 -1
- package/dist/level1/Agent.d.ts +72 -8
- package/dist/level1/Agent.d.ts.map +1 -1
- package/dist/level1/Agent.js +242 -110
- package/dist/level1/Agent.js.map +1 -1
- package/dist/negotiation/BuyerOrchestrator.d.ts +24 -2
- package/dist/negotiation/BuyerOrchestrator.d.ts.map +1 -1
- package/dist/negotiation/BuyerOrchestrator.js +100 -14
- package/dist/negotiation/BuyerOrchestrator.js.map +1 -1
- package/dist/protocol/EventMonitor.d.ts +26 -1
- package/dist/protocol/EventMonitor.d.ts.map +1 -1
- package/dist/protocol/EventMonitor.js +18 -4
- package/dist/protocol/EventMonitor.js.map +1 -1
- package/dist/runtime/BlockchainRuntime.d.ts +73 -0
- package/dist/runtime/BlockchainRuntime.d.ts.map +1 -1
- package/dist/runtime/BlockchainRuntime.js +121 -1
- package/dist/runtime/BlockchainRuntime.js.map +1 -1
- package/dist/runtime/IACTPRuntime.d.ts +29 -0
- package/dist/runtime/IACTPRuntime.d.ts.map +1 -1
- package/dist/runtime/MockRuntime.d.ts.map +1 -1
- package/dist/runtime/MockRuntime.js +21 -4
- package/dist/runtime/MockRuntime.js.map +1 -1
- package/dist/runtime/MockStateManager.d.ts.map +1 -1
- package/dist/runtime/MockStateManager.js +18 -0
- package/dist/runtime/MockStateManager.js.map +1 -1
- package/dist/runtime/types/MockState.d.ts +12 -0
- package/dist/runtime/types/MockState.d.ts.map +1 -1
- package/dist/runtime/types/MockState.js.map +1 -1
- package/dist/types/agent.d.ts +6 -1
- package/dist/types/agent.d.ts.map +1 -1
- package/package.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventMonitor.d.ts","sourceRoot":"","sources":["../../src/protocol/EventMonitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAY,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE9C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,YAAY;IAErB,OAAO,CAAC,QAAQ,CAAC,cAAc;gBAAd,cAAc,EAAE,QAAQ,EACzC,eAAe,EAAE,QAAQ;IAG3B;;;OAGG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,MAAM,IAAI;IAe5E;;OAEG;IACG,YAAY,CAChB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,KAAK,EAClB,SAAS,GAAE,MAAc,GACxB,OAAO,CAAC,IAAI,CAAC;IAiBhB
|
|
1
|
+
{"version":3,"file":"EventMonitor.d.ts","sourceRoot":"","sources":["../../src/protocol/EventMonitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAY,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE9C;;;;;;;;;GASG;AACH,MAAM,MAAM,sBAAsB,GAAG,WAAW,GAAG;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,YAAY;IAErB,OAAO,CAAC,QAAQ,CAAC,cAAc;gBAAd,cAAc,EAAE,QAAQ,EACzC,eAAe,EAAE,QAAQ;IAG3B;;;OAGG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,MAAM,IAAI;IAe5E;;OAEG;IACG,YAAY,CAChB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,KAAK,EAClB,SAAS,GAAE,MAAc,GACxB,OAAO,CAAC,IAAI,CAAC;IAiBhB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,qBAAqB,CACzB,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,WAAW,GAAG,UAAwB,EAC5C,KAAK,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAA;KAAE,GAC1D,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAmDpC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,oBAAoB,CAClB,QAAQ,EAAE,CAAC,EAAE,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAClH,MAAM,IAAI;IACb,oBAAoB,CAClB,MAAM,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,EACjD,QAAQ,EAAE,CAAC,EAAE,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAClH,MAAM,IAAI;IA8Cb;;OAEG;IACH,cAAc,CACZ,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,KAAK,IAAI,GACvD,MAAM,IAAI;IAcb;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;CAa/E"}
|
|
@@ -75,21 +75,32 @@ class EventMonitor {
|
|
|
75
75
|
*
|
|
76
76
|
*Security: Use getTransaction() instead of transactions()
|
|
77
77
|
* The kernel contract exposes getTransaction(bytes32) not transactions(bytes32).
|
|
78
|
+
*
|
|
79
|
+
* PRD §5.5: optional `range` lets callers bound the queryFilter scan to a
|
|
80
|
+
* recent block window (e.g., the catch-up sweep in BlockchainRuntime).
|
|
81
|
+
* Returned items are widened with `blockNumber` + `logIndex` from the source
|
|
82
|
+
* event log so consumers can select the newest `limit` deterministically.
|
|
83
|
+
* Backward compatible: `range === undefined` keeps prior genesis→latest scan
|
|
84
|
+
* behavior; existing callers that only read canonical `Transaction` fields
|
|
85
|
+
* compile unchanged.
|
|
78
86
|
*/
|
|
79
|
-
async getTransactionHistory(address, role = 'requester') {
|
|
87
|
+
async getTransactionHistory(address, role = 'requester', range) {
|
|
80
88
|
// TransactionCreated event signature per ABI:
|
|
81
89
|
// (bytes32 indexed transactionId, address indexed requester, address indexed provider, uint256 amount, bytes32 serviceHash)
|
|
82
90
|
// Filter format: TransactionCreated(txId, requester, provider)
|
|
83
91
|
const filter = role === 'requester'
|
|
84
92
|
? this.kernelContract.filters.TransactionCreated(null, address, null) // Match requester (2nd indexed param)
|
|
85
93
|
: this.kernelContract.filters.TransactionCreated(null, null, address); // Match provider (3rd indexed param)
|
|
86
|
-
const events =
|
|
94
|
+
const events = range
|
|
95
|
+
? await this.kernelContract.queryFilter(filter, range.fromBlock, range.toBlock)
|
|
96
|
+
: await this.kernelContract.queryFilter(filter);
|
|
87
97
|
return Promise.all(events.map(async (event) => {
|
|
88
98
|
// ethers v6: EventLog has args, Log does not
|
|
89
99
|
if (!('args' in event)) {
|
|
90
100
|
throw new Error('Event does not contain args (not an EventLog)');
|
|
91
101
|
}
|
|
92
|
-
const
|
|
102
|
+
const eventLog = event;
|
|
103
|
+
const txId = eventLog.args?.transactionId;
|
|
93
104
|
// Security: Use getTransaction() - the actual ABI function
|
|
94
105
|
// Previous code called transactions(txId) which doesn't exist in ABI
|
|
95
106
|
const txData = await this.kernelContract.getTransaction(txId);
|
|
@@ -109,7 +120,10 @@ class EventMonitor {
|
|
|
109
120
|
attestationUID: txData.attestationUID,
|
|
110
121
|
// Use metadata field (quote hash for QUOTED state) if available, fallback to serviceHash
|
|
111
122
|
metadata: txData.metadata || txData.serviceHash,
|
|
112
|
-
platformFeeBpsLocked: Number(txData.platformFeeBpsLocked)
|
|
123
|
+
platformFeeBpsLocked: Number(txData.platformFeeBpsLocked),
|
|
124
|
+
// PRD §5.5: surface source-log ordering metadata for deterministic newest-first selection
|
|
125
|
+
blockNumber: eventLog.blockNumber,
|
|
126
|
+
logIndex: eventLog.index,
|
|
113
127
|
};
|
|
114
128
|
}));
|
|
115
129
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventMonitor.js","sourceRoot":"","sources":["../../src/protocol/EventMonitor.ts"],"names":[],"mappings":";;;AACA,oCAA8C;
|
|
1
|
+
{"version":3,"file":"EventMonitor.js","sourceRoot":"","sources":["../../src/protocol/EventMonitor.ts"],"names":[],"mappings":"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"}
|
|
@@ -66,6 +66,34 @@ export interface BlockchainRuntimeConfig {
|
|
|
66
66
|
* Default: 2 (Base L2 reorg safety). Set to 1 on testnet for speed.
|
|
67
67
|
*/
|
|
68
68
|
confirmations?: number;
|
|
69
|
+
/**
|
|
70
|
+
* Block window for getTransactionsByProvider catch-up sweep.
|
|
71
|
+
* Default: 7200 (~4 h on Base L2 at 2 s/block).
|
|
72
|
+
* PRD-event-driven-provider-listening §5.2.
|
|
73
|
+
*/
|
|
74
|
+
sweepBlockWindow?: number;
|
|
75
|
+
/**
|
|
76
|
+
* ethers JsonRpcProvider polling interval, in milliseconds.
|
|
77
|
+
* Default: 1000 (1 s) — overrides ethers' 4 s default for sub-2 s
|
|
78
|
+
* `job:received` latency on Sentinel-style onboarding.
|
|
79
|
+
* Multi-agent operators sharing one RPC endpoint should set 2000+.
|
|
80
|
+
* Public RPCs (Infura free, Cloudflare) enforce floors of 2–3 s.
|
|
81
|
+
* PRD-event-driven-provider-listening §5.2.
|
|
82
|
+
*/
|
|
83
|
+
pollingInterval?: number;
|
|
84
|
+
/**
|
|
85
|
+
* Subscription transport.
|
|
86
|
+
*
|
|
87
|
+
* 4.0.0 ships only `'http'` — the JsonRpcProvider polling path. The `'wss'`
|
|
88
|
+
* surface is declared so the config shape is locked, but the underlying
|
|
89
|
+
* WebsocketProvider integration is not implemented yet; setting
|
|
90
|
+
* `transport: 'wss'` will throw at construction time. Real WSS support
|
|
91
|
+
* lands in a follow-up release; until then, low-latency operators should
|
|
92
|
+
* lower `pollingInterval` or wait for the WSS feature flag.
|
|
93
|
+
*/
|
|
94
|
+
transport?: 'http' | 'wss';
|
|
95
|
+
/** Reserved for the forthcoming WSS implementation. Ignored when `transport !== 'wss'`. */
|
|
96
|
+
wssUrl?: string;
|
|
69
97
|
}
|
|
70
98
|
/**
|
|
71
99
|
* BlockchainRuntime - Production blockchain implementation
|
|
@@ -109,6 +137,8 @@ export declare class BlockchainRuntime implements IACTPRuntime {
|
|
|
109
137
|
private readonly baseReconnectDelay;
|
|
110
138
|
private lastConnectionCheck;
|
|
111
139
|
private readonly connectionCheckInterval;
|
|
140
|
+
/** Bounded fromBlock window for getTransactionsByProvider catch-up sweep. PRD §5.2. */
|
|
141
|
+
private readonly sweepBlockWindow;
|
|
112
142
|
/**
|
|
113
143
|
* Create new BlockchainRuntime instance
|
|
114
144
|
*
|
|
@@ -235,6 +265,49 @@ export declare class BlockchainRuntime implements IACTPRuntime {
|
|
|
235
265
|
* @returns Promise resolving to array of all transactions
|
|
236
266
|
*/
|
|
237
267
|
getAllTransactions(): Promise<MockTransaction[]>;
|
|
268
|
+
/**
|
|
269
|
+
* Gets transactions filtered by provider address.
|
|
270
|
+
*
|
|
271
|
+
* PRD-event-driven-provider-listening §5.2. Bounded catch-up sweep over a
|
|
272
|
+
* recent block window:
|
|
273
|
+
* 1. queryFilter(TransactionCreated, fromBlock=current-sweepBlockWindow)
|
|
274
|
+
* 2. Sort newest-first by (blockNumber, logIndex) so a busy window doesn't
|
|
275
|
+
* truncate the freshest jobs at `limit`.
|
|
276
|
+
* 3. Hydrate each candidate via getTransaction() and apply state + provider
|
|
277
|
+
* filters (provider re-check defends against false-positive matches if
|
|
278
|
+
* the topic filter is misconfigured upstream).
|
|
279
|
+
* 4. Reverse before returning so consumers (Agent.pollForJobs) process the
|
|
280
|
+
* selected batch oldest-first — matches Mock semantics.
|
|
281
|
+
*
|
|
282
|
+
* Provider comparison is case-insensitive.
|
|
283
|
+
*
|
|
284
|
+
* @param provider - Provider Ethereum address (any case)
|
|
285
|
+
* @param state - Optional state filter (e.g., 'INITIATED')
|
|
286
|
+
* @param limit - Max results (default 100, 0 = unlimited)
|
|
287
|
+
*/
|
|
288
|
+
getTransactionsByProvider(provider: string, state?: TransactionState, limit?: number): Promise<MockTransaction[]>;
|
|
289
|
+
/**
|
|
290
|
+
* Subscribe to live TransactionCreated events for a given provider.
|
|
291
|
+
*
|
|
292
|
+
* Public on the class (NOT on `IACTPRuntime`). Public visibility is
|
|
293
|
+
* intentional so `Agent.subscribeIfBlockchain()` can detect support with a
|
|
294
|
+
* structural `'subscribeProviderJobs' in runtime` check — keeping the
|
|
295
|
+
* runtime contract narrow. `MockRuntime` deliberately does not implement
|
|
296
|
+
* this; mock providers receive jobs through polling against in-memory state.
|
|
297
|
+
*
|
|
298
|
+
* Hydration is best-effort:
|
|
299
|
+
* - tx not yet visible after the event fires (RPC eventual consistency)
|
|
300
|
+
* → log a warning and let the catch-up sweep pick it up next poll.
|
|
301
|
+
* - tx hydrated but no longer in `INITIATED` (cancelled/quoted between
|
|
302
|
+
* event emission and our read) → drop silently. We don't double-process.
|
|
303
|
+
*
|
|
304
|
+
* PRD-event-driven-provider-listening §5.2.
|
|
305
|
+
*
|
|
306
|
+
* @param provider - Provider Ethereum address
|
|
307
|
+
* @param onJob - Callback invoked with the hydrated INITIATED MockTransaction
|
|
308
|
+
* @returns Cleanup function that unsubscribes from the underlying filter
|
|
309
|
+
*/
|
|
310
|
+
subscribeProviderJobs(provider: string, onJob: (tx: MockTransaction) => void): () => void;
|
|
238
311
|
/**
|
|
239
312
|
* Returns DELIVERED transactions for a provider whose dispute window has expired.
|
|
240
313
|
* Used by SettleOnInteract for background settlement sweeps.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlockchainRuntime.d.ts","sourceRoot":"","sources":["../../src/runtime/BlockchainRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAU,MAAM,EAAE,eAAe,EAA0B,MAAM,QAAQ,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAc,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAEtE,OAAO,EAAgB,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAItE,OAAO,EAAE,uBAAuB,EAAgC,MAAM,iCAAiC,CAAC;AACxG,OAAO,EAAE,qBAAqB,EAA8B,MAAM,+BAA+B,CAAC;AAGlG;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,4BAA4B;IAC5B,OAAO,EAAE,cAAc,GAAG,cAAc,CAAC;IACzC,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,QAAQ,EAAE,eAAe,CAAC;IAC1B,0CAA0C;IAC1C,SAAS,CAAC,EAAE;QACV,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC;IACF,4BAA4B;IAC5B,WAAW,CAAC,EAAE;QACZ,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;KAC/B,CAAC;IACF,uFAAuF;IACvF,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"BlockchainRuntime.d.ts","sourceRoot":"","sources":["../../src/runtime/BlockchainRuntime.ts"],"names":[],"mappings":"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"}
|
|
@@ -86,6 +86,21 @@ class BlockchainRuntime {
|
|
|
86
86
|
};
|
|
87
87
|
this.provider = config.provider;
|
|
88
88
|
this.signer = config.signer;
|
|
89
|
+
// PRD §5.2: sub-2-s subscription latency. Multi-agent / public-RPC operators
|
|
90
|
+
// should pass a higher value (see MIGRATION-4.0 bullets 5+6).
|
|
91
|
+
this.provider.pollingInterval = config.pollingInterval ?? 1000;
|
|
92
|
+
// PRD §5.2: bounded catch-up sweep. Default ~4 h on Base L2.
|
|
93
|
+
this.sweepBlockWindow = config.sweepBlockWindow ?? 7200;
|
|
94
|
+
// PRD §5.2: WSS transport is declared in the config shape but not yet
|
|
95
|
+
// implemented. Fail loud at construction time rather than silently
|
|
96
|
+
// ignoring the request and using HTTP polling anyway. When the real
|
|
97
|
+
// WebsocketProvider integration lands, replace this throw with the
|
|
98
|
+
// actual swap and keep the wssUrl validation.
|
|
99
|
+
if (config.transport === 'wss') {
|
|
100
|
+
throw new errors_1.ValidationError("BlockchainRuntimeConfig: transport='wss' is reserved for a future " +
|
|
101
|
+
'release and not yet implemented. Lower `pollingInterval` for ' +
|
|
102
|
+
'tighter HTTP polling, or pin to the 4.x version that ships WSS.', 'transport');
|
|
103
|
+
}
|
|
89
104
|
// Get network configuration
|
|
90
105
|
this.networkConfig = (0, networks_1.getNetwork)(config.network);
|
|
91
106
|
// Apply contract address overrides if provided
|
|
@@ -470,7 +485,12 @@ class BlockchainRuntime {
|
|
|
470
485
|
// On-chain contract still enforces dispute window correctly via _validateSettlementConditions().
|
|
471
486
|
// V2 will implement EventMonitor to track this properly.
|
|
472
487
|
completedAt: 0,
|
|
473
|
-
serviceDescription: '', //
|
|
488
|
+
serviceDescription: '', // Routing keys on serviceHash; no off-chain name resolution in 4.0.0.
|
|
489
|
+
// PRD §5.2 Layer B: surface the on-chain bytes32 service key so
|
|
490
|
+
// Agent.findServiceHandler can route via Map<bytes32, handler>.
|
|
491
|
+
// Fall back to ZeroHash if the kernel return is missing the field
|
|
492
|
+
// (legacy ABI / pre-redeploy) — routing simply finds no handler.
|
|
493
|
+
serviceHash: tx.serviceHash ?? ethers_1.ethers.ZeroHash,
|
|
474
494
|
deliveryProof: '', // V2: Fetch from EAS attestation
|
|
475
495
|
events: [], // V2: Populate via EventMonitor.getTransactionEvents()
|
|
476
496
|
ethTxHash: this.ethTxHashes.get(txId),
|
|
@@ -501,6 +521,106 @@ class BlockchainRuntime {
|
|
|
501
521
|
Logger_1.sdkLogger.warn('getAllTransactions() not implemented - use EventMonitor for event-based queries');
|
|
502
522
|
return [];
|
|
503
523
|
}
|
|
524
|
+
/**
|
|
525
|
+
* Gets transactions filtered by provider address.
|
|
526
|
+
*
|
|
527
|
+
* PRD-event-driven-provider-listening §5.2. Bounded catch-up sweep over a
|
|
528
|
+
* recent block window:
|
|
529
|
+
* 1. queryFilter(TransactionCreated, fromBlock=current-sweepBlockWindow)
|
|
530
|
+
* 2. Sort newest-first by (blockNumber, logIndex) so a busy window doesn't
|
|
531
|
+
* truncate the freshest jobs at `limit`.
|
|
532
|
+
* 3. Hydrate each candidate via getTransaction() and apply state + provider
|
|
533
|
+
* filters (provider re-check defends against false-positive matches if
|
|
534
|
+
* the topic filter is misconfigured upstream).
|
|
535
|
+
* 4. Reverse before returning so consumers (Agent.pollForJobs) process the
|
|
536
|
+
* selected batch oldest-first — matches Mock semantics.
|
|
537
|
+
*
|
|
538
|
+
* Provider comparison is case-insensitive.
|
|
539
|
+
*
|
|
540
|
+
* @param provider - Provider Ethereum address (any case)
|
|
541
|
+
* @param state - Optional state filter (e.g., 'INITIATED')
|
|
542
|
+
* @param limit - Max results (default 100, 0 = unlimited)
|
|
543
|
+
*/
|
|
544
|
+
async getTransactionsByProvider(provider, state, limit = 100) {
|
|
545
|
+
const currentBlock = await this.provider.getBlockNumber();
|
|
546
|
+
const fromBlock = Math.max(0, currentBlock - this.sweepBlockWindow);
|
|
547
|
+
const history = await this.events.getTransactionHistory(provider, 'provider', { fromBlock, toBlock: 'latest' });
|
|
548
|
+
const recentFirst = [...history].sort((a, b) => {
|
|
549
|
+
const blockDiff = (b.blockNumber ?? 0) - (a.blockNumber ?? 0);
|
|
550
|
+
if (blockDiff !== 0)
|
|
551
|
+
return blockDiff;
|
|
552
|
+
return (b.logIndex ?? 0) - (a.logIndex ?? 0);
|
|
553
|
+
});
|
|
554
|
+
const stateMap = {
|
|
555
|
+
0: 'INITIATED', 1: 'QUOTED', 2: 'COMMITTED', 3: 'IN_PROGRESS',
|
|
556
|
+
4: 'DELIVERED', 5: 'SETTLED', 6: 'DISPUTED', 7: 'CANCELLED',
|
|
557
|
+
};
|
|
558
|
+
const target = provider.toLowerCase();
|
|
559
|
+
const results = [];
|
|
560
|
+
for (const h of recentFirst) {
|
|
561
|
+
const mapped = stateMap[h.state];
|
|
562
|
+
if (state !== undefined && mapped !== state)
|
|
563
|
+
continue;
|
|
564
|
+
const hydrated = await this.getTransaction(h.txId);
|
|
565
|
+
if (!hydrated)
|
|
566
|
+
continue;
|
|
567
|
+
// Re-check post-hydration: between the event filter (above) and the
|
|
568
|
+
// contract read (just now), the TX may have moved (e.g.
|
|
569
|
+
// INITIATED → CANCELLED / QUOTED). Returning a stale-state job to
|
|
570
|
+
// Agent.pollForJobs would cause a wrong-state transition on the next
|
|
571
|
+
// linkEscrow. Mirror the guard in subscribeProviderJobs.
|
|
572
|
+
if (state !== undefined && hydrated.state !== state)
|
|
573
|
+
continue;
|
|
574
|
+
if (hydrated.provider.toLowerCase() !== target)
|
|
575
|
+
continue;
|
|
576
|
+
results.push(hydrated);
|
|
577
|
+
if (limit > 0 && results.length >= limit)
|
|
578
|
+
break;
|
|
579
|
+
}
|
|
580
|
+
// Oldest-first matches Mock semantics so downstream Agent.pollForJobs
|
|
581
|
+
// sees the same ordering on both runtimes.
|
|
582
|
+
return results.reverse();
|
|
583
|
+
}
|
|
584
|
+
/**
|
|
585
|
+
* Subscribe to live TransactionCreated events for a given provider.
|
|
586
|
+
*
|
|
587
|
+
* Public on the class (NOT on `IACTPRuntime`). Public visibility is
|
|
588
|
+
* intentional so `Agent.subscribeIfBlockchain()` can detect support with a
|
|
589
|
+
* structural `'subscribeProviderJobs' in runtime` check — keeping the
|
|
590
|
+
* runtime contract narrow. `MockRuntime` deliberately does not implement
|
|
591
|
+
* this; mock providers receive jobs through polling against in-memory state.
|
|
592
|
+
*
|
|
593
|
+
* Hydration is best-effort:
|
|
594
|
+
* - tx not yet visible after the event fires (RPC eventual consistency)
|
|
595
|
+
* → log a warning and let the catch-up sweep pick it up next poll.
|
|
596
|
+
* - tx hydrated but no longer in `INITIATED` (cancelled/quoted between
|
|
597
|
+
* event emission and our read) → drop silently. We don't double-process.
|
|
598
|
+
*
|
|
599
|
+
* PRD-event-driven-provider-listening §5.2.
|
|
600
|
+
*
|
|
601
|
+
* @param provider - Provider Ethereum address
|
|
602
|
+
* @param onJob - Callback invoked with the hydrated INITIATED MockTransaction
|
|
603
|
+
* @returns Cleanup function that unsubscribes from the underlying filter
|
|
604
|
+
*/
|
|
605
|
+
subscribeProviderJobs(provider, onJob) {
|
|
606
|
+
return this.events.onTransactionCreated({ provider }, async ({ txId }) => {
|
|
607
|
+
try {
|
|
608
|
+
const tx = await this.getTransaction(txId);
|
|
609
|
+
if (!tx) {
|
|
610
|
+
Logger_1.sdkLogger.warn('subscribeProviderJobs: tx not yet visible, sweep will retry', { txId });
|
|
611
|
+
return;
|
|
612
|
+
}
|
|
613
|
+
if (tx.state !== 'INITIATED') {
|
|
614
|
+
Logger_1.sdkLogger.debug('subscribeProviderJobs: tx no longer INITIATED, skipping', { txId, state: tx.state });
|
|
615
|
+
return;
|
|
616
|
+
}
|
|
617
|
+
onJob(tx);
|
|
618
|
+
}
|
|
619
|
+
catch (err) {
|
|
620
|
+
Logger_1.sdkLogger.warn('subscribeProviderJobs: hydration error', { txId, err });
|
|
621
|
+
}
|
|
622
|
+
});
|
|
623
|
+
}
|
|
504
624
|
/**
|
|
505
625
|
* Returns DELIVERED transactions for a provider whose dispute window has expired.
|
|
506
626
|
* Used by SettleOnInteract for background settlement sweeps.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlockchainRuntime.js","sourceRoot":"","sources":["../../src/runtime/BlockchainRuntime.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BlockchainRuntime.js","sourceRoot":"","sources":["../../src/runtime/BlockchainRuntime.ts"],"names":[],"mappings":"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"}
|
|
@@ -197,6 +197,35 @@ export interface IACTPRuntime {
|
|
|
197
197
|
* ```
|
|
198
198
|
*/
|
|
199
199
|
getAllTransactions(): Promise<MockTransaction[]>;
|
|
200
|
+
/**
|
|
201
|
+
* Gets transactions filtered by provider address and optional state.
|
|
202
|
+
*
|
|
203
|
+
* Provider comparison is case-insensitive — implementations normalize both
|
|
204
|
+
* the stored and queried addresses to lowercase before comparing, so callers
|
|
205
|
+
* may pass either checksummed or lowercase forms.
|
|
206
|
+
*
|
|
207
|
+
* Implementations:
|
|
208
|
+
* - MockRuntime: queries in-memory state.
|
|
209
|
+
* - BlockchainRuntime: composes EventMonitor.getTransactionHistory over a
|
|
210
|
+
* bounded fromBlock window + hydrates each result via getTransaction()
|
|
211
|
+
* (full implementation lands with §5.2 of PRD-event-driven-provider-listening).
|
|
212
|
+
*
|
|
213
|
+
* @param provider - Provider Ethereum address (any case)
|
|
214
|
+
* @param state - Optional state filter (e.g., 'INITIATED'); omit for all states
|
|
215
|
+
* @param limit - Maximum results (default 100, 0 = unlimited)
|
|
216
|
+
* @returns Promise resolving to filtered transactions
|
|
217
|
+
*
|
|
218
|
+
* @example
|
|
219
|
+
* ```typescript
|
|
220
|
+
* // Get up to 100 INITIATED transactions for this provider
|
|
221
|
+
* const pending = await runtime.getTransactionsByProvider(
|
|
222
|
+
* providerAddress,
|
|
223
|
+
* 'INITIATED',
|
|
224
|
+
* 100
|
|
225
|
+
* );
|
|
226
|
+
* ```
|
|
227
|
+
*/
|
|
228
|
+
getTransactionsByProvider(provider: string, state?: TransactionState, limit?: number): Promise<MockTransaction[]>;
|
|
200
229
|
/**
|
|
201
230
|
* Releases escrow funds to the provider and settles the transaction.
|
|
202
231
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IACTPRuntime.d.ts","sourceRoot":"","sources":["../../src/runtime/IACTPRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,kCAAkC;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,sEAAsE;IACtE,MAAM,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,QAAQ,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2CAA2C;IAC3C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qFAAqF;IACrF,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;;;;;;;;;;;;;;OAkBG;IACH,iBAAiB,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEpE;;;;;;;;;;;;;;;;;OAiBG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE1D;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzF;;;;;;;OAOG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9D;;;;;;;;;;;;;OAaG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IAE9D;;;;;;;;;;;;OAYG;IACH,kBAAkB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAEjD;;;;;;;;;;;;;;;;;OAiBG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExE;;;;;;;;;;;;;OAaG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEpD;;;;;OAKG;IACH,IAAI,EAAE;QACJ,uCAAuC;QACvC,GAAG,IAAI,MAAM,CAAC;KACf,CAAC;IAEF;;;;;;;;;;;;;OAaG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,YAAa,SAAQ,YAAY;IAChD;;;;;;;;;;OAUG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3D;;;;;;;;;;OAUG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE7C;;;;;;;OAOG;IACH,IAAI,EAAE;QACJ,uCAAuC;QACvC,GAAG,IAAI,MAAM,CAAC;QACd,4DAA4D;QAC5D,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5C,2DAA2D;QAC3D,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7C,wEAAwE;QACxE,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KAC3C,CAAC;CACH"}
|
|
1
|
+
{"version":3,"file":"IACTPRuntime.d.ts","sourceRoot":"","sources":["../../src/runtime/IACTPRuntime.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MockRuntime.d.ts","sourceRoot":"","sources":["../../src/runtime/MockRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;
|
|
1
|
+
{"version":3,"file":"MockRuntime.d.ts","sourceRoot":"","sources":["../../src/runtime/MockRuntime.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,10 +43,11 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
43
43
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
44
44
|
exports.MockRuntime = exports.DisputeWindowActiveError = exports.InvalidAmountError = exports.ContractPausedError = exports.DeadlinePassedError = exports.EscrowNotFoundError = exports.InsufficientBalanceError = exports.InvalidStateTransitionError = exports.TransactionNotFoundError = void 0;
|
|
45
45
|
const crypto = __importStar(require("crypto"));
|
|
46
|
+
const ethers_1 = require("ethers");
|
|
46
47
|
const ACTPError_1 = require("../errors/ACTPError");
|
|
47
48
|
const MockStateManager_1 = require("./MockStateManager");
|
|
48
49
|
const QuoteBuilder_1 = require("../builders/QuoteBuilder");
|
|
49
|
-
const
|
|
50
|
+
const ethers_2 = require("ethers");
|
|
50
51
|
const NonceManager_1 = require("../utils/NonceManager");
|
|
51
52
|
// ============================================================================
|
|
52
53
|
// Custom Error Classes
|
|
@@ -374,6 +375,17 @@ class MockRuntime {
|
|
|
374
375
|
}
|
|
375
376
|
// Security: Generate transaction ID with collision check
|
|
376
377
|
const txId = this.generateTransactionIdWithCollisionCheck(state);
|
|
378
|
+
// PRD §5.2 Layer B: derive bytes32 serviceHash for on-chain-compatible
|
|
379
|
+
// routing. Three input shapes are handled:
|
|
380
|
+
// - already a bytes32 hex (0x + 64 chars) → pass through unchanged
|
|
381
|
+
// - any other non-empty string → keccak256(toUtf8Bytes(...))
|
|
382
|
+
// - omitted / empty → ZeroHash (Level 0 pay semantics)
|
|
383
|
+
const desc = params.serviceDescription ?? '';
|
|
384
|
+
const serviceHash = desc === ''
|
|
385
|
+
? ethers_1.ZeroHash
|
|
386
|
+
: /^0x[0-9a-fA-F]{64}$/.test(desc)
|
|
387
|
+
? desc
|
|
388
|
+
: (0, ethers_1.keccak256)((0, ethers_1.toUtf8Bytes)(desc));
|
|
377
389
|
// Create transaction
|
|
378
390
|
const transaction = {
|
|
379
391
|
id: txId,
|
|
@@ -387,7 +399,8 @@ class MockRuntime {
|
|
|
387
399
|
disputeWindow: params.disputeWindow ?? 172800, // Default 2 days
|
|
388
400
|
completedAt: null,
|
|
389
401
|
escrowId: null,
|
|
390
|
-
serviceDescription:
|
|
402
|
+
serviceDescription: desc,
|
|
403
|
+
serviceHash,
|
|
391
404
|
deliveryProof: null,
|
|
392
405
|
events: [],
|
|
393
406
|
agentId: params.agentId,
|
|
@@ -499,8 +512,12 @@ class MockRuntime {
|
|
|
499
512
|
* ```
|
|
500
513
|
*/
|
|
501
514
|
async getTransactionsByProvider(provider, state, limit = 100) {
|
|
515
|
+
// Case-insensitive comparison: stored and queried addresses may use either
|
|
516
|
+
// checksummed or lowercase form. Matches BlockchainRuntime semantics
|
|
517
|
+
// (PRD §5.1 — IACTPRuntime contract).
|
|
518
|
+
const target = provider.toLowerCase();
|
|
502
519
|
return this.stateManager.withLock(async (s) => {
|
|
503
|
-
let txs = Object.values(s.transactions).filter((tx) => tx.provider ===
|
|
520
|
+
let txs = Object.values(s.transactions).filter((tx) => tx.provider.toLowerCase() === target);
|
|
504
521
|
if (state) {
|
|
505
522
|
txs = txs.filter((tx) => tx.state === state);
|
|
506
523
|
}
|
|
@@ -690,7 +707,7 @@ class MockRuntime {
|
|
|
690
707
|
// Use a throwaway QuoteBuilder — computeHash is signer-independent
|
|
691
708
|
// (strips the signature field before hashing) so a random wallet +
|
|
692
709
|
// empty nonce manager yield the same hash any verifier computes.
|
|
693
|
-
const hasher = new QuoteBuilder_1.QuoteBuilder(
|
|
710
|
+
const hasher = new QuoteBuilder_1.QuoteBuilder(ethers_2.Wallet.createRandom(), new NonceManager_1.InMemoryNonceManager());
|
|
694
711
|
const quoteHash = hasher.computeHash(quote);
|
|
695
712
|
// Mock runtime stores the hash on the transaction; on-chain the
|
|
696
713
|
// same bytes land in `agents[msg.sender].metadata` via the
|