@black-market/sdk 0.12.0 → 0.14.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.
- package/README.md +96 -96
- package/dist/lifecycle/index.d.ts +3 -1
- package/dist/lifecycle/index.d.ts.map +1 -1
- package/dist/lifecycle/index.js +3 -1
- package/dist/lifecycle/index.js.map +1 -1
- package/dist/lifecycle/lens.d.ts +409 -0
- package/dist/lifecycle/lens.d.ts.map +1 -0
- package/dist/lifecycle/lens.js +30 -0
- package/dist/lifecycle/lens.js.map +1 -0
- package/dist/lifecycle/mining.d.ts +47 -0
- package/dist/lifecycle/mining.d.ts.map +1 -0
- package/dist/lifecycle/mining.js +89 -0
- package/dist/lifecycle/mining.js.map +1 -0
- package/dist/lifecycle/planner.d.ts.map +1 -1
- package/dist/lifecycle/planner.js +121 -78
- package/dist/lifecycle/planner.js.map +1 -1
- package/dist/lifecycle/presets.d.ts +3 -0
- package/dist/lifecycle/presets.d.ts.map +1 -1
- package/dist/lifecycle/presets.js +1 -0
- package/dist/lifecycle/presets.js.map +1 -1
- package/dist/lifecycle/progress.d.ts +51 -1
- package/dist/lifecycle/progress.d.ts.map +1 -1
- package/dist/lifecycle/progress.js +149 -73
- package/dist/lifecycle/progress.js.map +1 -1
- package/dist/lifecycle/rpc.d.ts +14 -4
- package/dist/lifecycle/rpc.d.ts.map +1 -1
- package/dist/lifecycle/rpc.js +171 -12
- package/dist/lifecycle/rpc.js.map +1 -1
- package/dist/lifecycle/simulation.d.ts +5 -3
- package/dist/lifecycle/simulation.d.ts.map +1 -1
- package/dist/lifecycle/simulation.js +137 -115
- package/dist/lifecycle/simulation.js.map +1 -1
- package/dist/lifecycle/snapshot.d.ts +8 -0
- package/dist/lifecycle/snapshot.d.ts.map +1 -0
- package/dist/lifecycle/snapshot.js +79 -0
- package/dist/lifecycle/snapshot.js.map +1 -0
- package/dist/lifecycle/types.d.ts +27 -5
- package/dist/lifecycle/types.d.ts.map +1 -1
- package/dist/lifecycle/types.js.map +1 -1
- package/docs/launch-lifecycle.md +627 -1495
- package/docs/reference.md +365 -0
- package/examples/.env.example +3 -2
- package/examples/README.md +171 -552
- package/examples/launch-example-support.ts +11 -3
- package/examples/launch-example.ts +1 -1
- package/examples/launch-lifecycle-smoke.ts +1 -1
- package/package.json +1 -1
- package/src/lifecycle/index.ts +5 -1
- package/src/lifecycle/lens.ts +42 -0
- package/src/lifecycle/mining.ts +80 -0
- package/src/lifecycle/planner.ts +122 -73
- package/src/lifecycle/presets.ts +4 -0
- package/src/lifecycle/progress.ts +132 -59
- package/src/lifecycle/rpc.ts +163 -13
- package/src/lifecycle/simulation.ts +134 -106
- package/src/lifecycle/snapshot.ts +72 -0
- package/src/lifecycle/types.ts +24 -6
package/dist/lifecycle/rpc.d.ts
CHANGED
|
@@ -15,17 +15,27 @@ export declare function lifecyclePinnedRpc(client: LifecycleRpcClient, method: "
|
|
|
15
15
|
/** Explicit SDK-owned static class only; balances and execution calls never use this path. */
|
|
16
16
|
export declare function lifecycleStaticRpc(client: LifecycleRpcClient, method: "eth_call" | "eth_getCode", params: readonly unknown[], block: LifecycleBlock): Promise<unknown>;
|
|
17
17
|
export declare function lifecycleRpc(client: LifecycleRpcClient, method: string, params?: readonly unknown[]): Promise<unknown>;
|
|
18
|
-
/** One invocation's observed identity
|
|
19
|
-
* deliberately use uncached eth_chainId so a switched provider cannot retain proof. */
|
|
18
|
+
/** One invocation's observed identity; wallet submission owns its final chain check. */
|
|
20
19
|
export declare function readLifecycleChainId(client: LifecycleRpcClient): Promise<bigint>;
|
|
20
|
+
/** A single operation-local recommendation, never a session or cross-head quote. */
|
|
21
|
+
export declare function readLifecycleGasPrice(client: LifecycleRpcClient): Promise<unknown>;
|
|
22
|
+
/** Only the reviewed immutable factory identity may use an invocation-wide key. */
|
|
23
|
+
export declare function readLifecycleImmutable<T>(client: LifecycleRpcClient, key: string, work: () => Promise<T>): Promise<T>;
|
|
24
|
+
/** Successful deployment/backend observations live for the caller's session, not one block. */
|
|
25
|
+
export declare function lifecycleSessionRead<T>(client: LifecycleRpcClient, key: string, work: () => Promise<T>): Promise<T>;
|
|
26
|
+
export declare function attestLifecycleMulticall(client: LifecycleRpcClient, block?: LifecycleBlock): Promise<void>;
|
|
27
|
+
/** Installs only SDK-observed wire results from this invocation's aggregate/lens. */
|
|
28
|
+
export declare function seedLifecycleRead(client: LifecycleRpcClient, method: string, params: readonly unknown[], block: LifecycleBlock, value: unknown): void;
|
|
29
|
+
/** Recheck live policy after the owner's final asynchronous canonical guards. */
|
|
30
|
+
export declare function registerLifecycleFinalCheck(client: LifecycleRpcClient, check: () => void): void;
|
|
21
31
|
export declare function rpcObject(value: unknown, label: string): Record<string, unknown>;
|
|
22
32
|
export declare function rpcHex(value: unknown, label: string): Hex;
|
|
23
33
|
export declare function rpcQuantity(value: unknown, label: string): bigint;
|
|
24
34
|
/** Public refusal details contain only fixed text and numeric RPC/HTTP codes, never provider messages. */
|
|
25
35
|
export declare function lifecycleFailureReason(failure: unknown): string;
|
|
26
36
|
export declare function readLifecycleBlock(client: LifecycleRpcClient, tag?: Hex | "latest"): Promise<LifecycleBlock>;
|
|
27
|
-
export declare function assertLifecycleBlock(client: LifecycleRpcClient, block: LifecycleBlock, expectedChainId?: bigint): Promise<void>;
|
|
28
|
-
export declare function readLifecycleContract<T>(client: LifecycleRpcClient, to: Address, abi: Abi, functionName: string, args: readonly unknown[], block: LifecycleBlock, from?: Address, staticRead?: boolean): Promise<T>;
|
|
37
|
+
export declare function assertLifecycleBlock(client: LifecycleRpcClient, block: Pick<LifecycleBlock, "number" | "hash">, expectedChainId?: bigint): Promise<void>;
|
|
38
|
+
export declare function readLifecycleContract<T>(client: LifecycleRpcClient, to: Address, abi: Abi, functionName: string, args: readonly unknown[], block: LifecycleBlock, from?: Address, staticRead?: boolean, independent?: boolean): Promise<T>;
|
|
29
39
|
/** Certification/configuration getters, explicitly selected by their SDK callsite. */
|
|
30
40
|
export declare function readLifecycleStaticContract<T>(client: LifecycleRpcClient, to: Address, abi: Abi, functionName: string, args: readonly unknown[], block: LifecycleBlock, from?: Address): Promise<T>;
|
|
31
41
|
/** A reviewed registry must supply topology; missing selectors never certify a profile. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../src/lifecycle/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../src/lifecycle/rpc.ts"],"names":[],"mappings":"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"}
|
package/dist/lifecycle/rpc.js
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
|
-
import { decodeFunctionResult, encodeFunctionData, isAddress, isHex, parseAbi, toHex } from "viem";
|
|
1
|
+
import { decodeFunctionResult, encodeFunctionData, isAddress, isHex, keccak256, multicall3Abi, parseAbi, toHex } from "viem";
|
|
2
2
|
import { LifecyclePlanningError } from "./types.js";
|
|
3
3
|
import { lifecycleRegistryAbi } from "./abi.js";
|
|
4
|
+
import { robinhoodMainnet } from "../addresses.js";
|
|
5
|
+
// Reviewed chain4663 deployment, independently observed at block 98,136,655.
|
|
6
|
+
const multicall3CodeHash = "0xd5c15df687b16f2ff992fc8d767b4216323184a2bbc6ee2f9c398c318e770891";
|
|
7
|
+
const sessionObservations = new WeakMap();
|
|
8
|
+
const canonicalWireValue = (_key, value) => typeof value === "string" && value.startsWith("0x") ? value.toLowerCase() : value;
|
|
4
9
|
const lifecycleReadConcurrency = 8;
|
|
5
10
|
const diagnosticRpcMethods = {
|
|
6
11
|
eth_chainId: true, eth_getBlockByNumber: true, eth_getBlockByHash: true, eth_getCode: true,
|
|
@@ -56,6 +61,10 @@ class InvocationLifecycleClient {
|
|
|
56
61
|
concurrency;
|
|
57
62
|
diagnosticSequence = 0;
|
|
58
63
|
chainId;
|
|
64
|
+
gasPrice;
|
|
65
|
+
immutableReads = new Map();
|
|
66
|
+
independentReads = new Map();
|
|
67
|
+
finalChecks = new Set();
|
|
59
68
|
limitObservations = new Map();
|
|
60
69
|
session;
|
|
61
70
|
sessionGroup;
|
|
@@ -137,6 +146,80 @@ class InvocationLifecycleClient {
|
|
|
137
146
|
this.assertOpen();
|
|
138
147
|
return this.chainId ??= this.run("eth_chainId", []).then((value) => rpcQuantity(value, "chain ID"));
|
|
139
148
|
}
|
|
149
|
+
observeGasPrice() {
|
|
150
|
+
this.assertOpen();
|
|
151
|
+
return this.gasPrice ??= this.run("eth_gasPrice", []);
|
|
152
|
+
}
|
|
153
|
+
immutableRead(key, work) {
|
|
154
|
+
this.assertOpen();
|
|
155
|
+
let pending = this.immutableReads.get(key);
|
|
156
|
+
if (pending === undefined) {
|
|
157
|
+
pending = work();
|
|
158
|
+
this.immutableReads.set(key, pending);
|
|
159
|
+
const owned = pending;
|
|
160
|
+
void pending.catch(() => { if (this.immutableReads.get(key) === owned)
|
|
161
|
+
this.immutableReads.delete(key); });
|
|
162
|
+
}
|
|
163
|
+
return pending.then((value) => { this.assertOpen(); return value; });
|
|
164
|
+
}
|
|
165
|
+
async finalize() {
|
|
166
|
+
this.assertOpen();
|
|
167
|
+
for (const check of this.finalChecks)
|
|
168
|
+
check();
|
|
169
|
+
}
|
|
170
|
+
independentRead(params, block, staticRead) {
|
|
171
|
+
return this.read("eth_call", params, block, staticRead, () => new Promise((resolve, reject) => {
|
|
172
|
+
const key = `${block.number}:${block.hash.toLowerCase()}`;
|
|
173
|
+
let group = this.independentReads.get(key);
|
|
174
|
+
if (group === undefined) {
|
|
175
|
+
group = { block, reads: [] };
|
|
176
|
+
this.independentReads.set(key, group);
|
|
177
|
+
queueMicrotask(() => {
|
|
178
|
+
this.independentReads.delete(key);
|
|
179
|
+
void this.flushIndependentReads(group);
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
group.reads.push({ params, resolve, reject });
|
|
183
|
+
}));
|
|
184
|
+
}
|
|
185
|
+
async flushIndependentReads(group) {
|
|
186
|
+
const { block, reads } = group;
|
|
187
|
+
try {
|
|
188
|
+
if (await this.observeChainId() !== 4663n) {
|
|
189
|
+
await Promise.all(reads.map(async (read) => {
|
|
190
|
+
try {
|
|
191
|
+
read.resolve(await this.run("eth_call", read.params));
|
|
192
|
+
}
|
|
193
|
+
catch (failure) {
|
|
194
|
+
read.reject(failure);
|
|
195
|
+
}
|
|
196
|
+
}));
|
|
197
|
+
return;
|
|
198
|
+
}
|
|
199
|
+
const to = robinhoodMainnet.contracts.multicall3.address;
|
|
200
|
+
await attestLifecycleMulticall(this, block);
|
|
201
|
+
const calls = reads.map((read) => {
|
|
202
|
+
const request = read.params[0];
|
|
203
|
+
return { target: request.to, allowFailure: true, callData: request.data };
|
|
204
|
+
});
|
|
205
|
+
const data = encodeFunctionData({ abi: multicall3Abi, functionName: "aggregate3", args: [calls] });
|
|
206
|
+
const raw = rpcHex(await this.run("eth_call", [{ to, data }, toHex(block.number)]), "Multicall3 result");
|
|
207
|
+
const results = decodeFunctionResult({ abi: multicall3Abi, functionName: "aggregate3", data: raw });
|
|
208
|
+
if (results.length !== reads.length)
|
|
209
|
+
throw new LifecyclePlanningError("INVALID_RPC_RESPONSE", "Multicall3 omitted independent pinned results");
|
|
210
|
+
for (let index = 0; index < reads.length; index += 1) {
|
|
211
|
+
const result = results[index];
|
|
212
|
+
if (result.success)
|
|
213
|
+
reads[index].resolve(result.returnData);
|
|
214
|
+
else
|
|
215
|
+
reads[index].reject(new LifecyclePlanningError("MULTICALL_READ_FAILED", "An independent pinned getter reverted"));
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
catch (failure) {
|
|
219
|
+
for (const read of reads)
|
|
220
|
+
read.reject(failure);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
140
223
|
observeLimits(context, source) {
|
|
141
224
|
this.assertOpen();
|
|
142
225
|
// A caller callback is live policy, not an immutable pinned observation.
|
|
@@ -164,11 +247,11 @@ class InvocationLifecycleClient {
|
|
|
164
247
|
}
|
|
165
248
|
return observation.then((result) => { this.assertOpen(); result.assertCurrent(); return result; });
|
|
166
249
|
}
|
|
167
|
-
read(method, params, block, staticRead = false) {
|
|
250
|
+
read(method, params, block, staticRead = false, load) {
|
|
168
251
|
this.assertOpen();
|
|
169
252
|
// Source identity is this scope's original client. The complete wire call includes
|
|
170
253
|
// caller, value, gas and any other call fields; no selector-only/ABI-name aliasing.
|
|
171
|
-
const key = JSON.stringify([block.number.toString(), block.hash
|
|
254
|
+
const key = JSON.stringify([block.number.toString(), block.hash, method, params], canonicalWireValue);
|
|
172
255
|
const existing = this.reads.get(key);
|
|
173
256
|
if (existing !== undefined) {
|
|
174
257
|
if (staticRead && this.session !== undefined)
|
|
@@ -189,7 +272,7 @@ class InvocationLifecycleClient {
|
|
|
189
272
|
else {
|
|
190
273
|
if (staticRead && this.session !== undefined)
|
|
191
274
|
this.sessionMisses += 1;
|
|
192
|
-
pending = this.run(method, params);
|
|
275
|
+
pending = load === undefined ? this.run(method, params) : load();
|
|
193
276
|
if (group !== undefined)
|
|
194
277
|
pending = pending.then((value) => {
|
|
195
278
|
// Never share in-flight work or install late results after invalidation/closure.
|
|
@@ -204,11 +287,20 @@ class InvocationLifecycleClient {
|
|
|
204
287
|
this.reads.delete(key); });
|
|
205
288
|
return pending;
|
|
206
289
|
}
|
|
290
|
+
seed(method, params, block, value) {
|
|
291
|
+
this.assertOpen();
|
|
292
|
+
const key = JSON.stringify([block.number.toString(), block.hash, method, params], canonicalWireValue);
|
|
293
|
+
this.reads.set(key, Promise.resolve(value));
|
|
294
|
+
}
|
|
207
295
|
close(success) {
|
|
208
296
|
this.closed = true;
|
|
209
297
|
this.reads.clear();
|
|
210
298
|
this.chainId = undefined;
|
|
211
299
|
this.limitObservations.clear();
|
|
300
|
+
this.gasPrice = undefined;
|
|
301
|
+
this.immutableReads.clear();
|
|
302
|
+
this.independentReads.clear();
|
|
303
|
+
this.finalChecks.clear();
|
|
212
304
|
const listener = this.source.onDiagnostic;
|
|
213
305
|
if (this.session !== undefined && listener !== undefined)
|
|
214
306
|
emitLifecycleDiagnostic(listener, {
|
|
@@ -224,7 +316,16 @@ export async function withLifecycleReadClient(source, work) {
|
|
|
224
316
|
const client = new InvocationLifecycleClient(source);
|
|
225
317
|
let success = false;
|
|
226
318
|
try {
|
|
227
|
-
|
|
319
|
+
let result;
|
|
320
|
+
try {
|
|
321
|
+
result = await work(client);
|
|
322
|
+
}
|
|
323
|
+
catch (failure) {
|
|
324
|
+
// Live policy is rechecked even when exact execution or a source read refuses.
|
|
325
|
+
await client.finalize();
|
|
326
|
+
throw failure;
|
|
327
|
+
}
|
|
328
|
+
await client.finalize();
|
|
228
329
|
success = true;
|
|
229
330
|
return result;
|
|
230
331
|
}
|
|
@@ -281,13 +382,67 @@ export function lifecycleStaticRpc(client, method, params, block) {
|
|
|
281
382
|
export async function lifecycleRpc(client, method, params = []) {
|
|
282
383
|
return client instanceof InvocationLifecycleClient ? client.run(method, params) : client.request({ method, params });
|
|
283
384
|
}
|
|
284
|
-
/** One invocation's observed identity
|
|
285
|
-
* deliberately use uncached eth_chainId so a switched provider cannot retain proof. */
|
|
385
|
+
/** One invocation's observed identity; wallet submission owns its final chain check. */
|
|
286
386
|
export function readLifecycleChainId(client) {
|
|
287
387
|
return client instanceof InvocationLifecycleClient
|
|
288
388
|
? client.observeChainId()
|
|
289
389
|
: lifecycleRpc(client, "eth_chainId").then((value) => rpcQuantity(value, "chain ID"));
|
|
290
390
|
}
|
|
391
|
+
/** A single operation-local recommendation, never a session or cross-head quote. */
|
|
392
|
+
export function readLifecycleGasPrice(client) {
|
|
393
|
+
return client instanceof InvocationLifecycleClient ? client.observeGasPrice() : lifecycleRpc(client, "eth_gasPrice");
|
|
394
|
+
}
|
|
395
|
+
/** Only the reviewed immutable factory identity may use an invocation-wide key. */
|
|
396
|
+
export function readLifecycleImmutable(client, key, work) {
|
|
397
|
+
return (client instanceof InvocationLifecycleClient ? client.immutableRead(key, work) : work());
|
|
398
|
+
}
|
|
399
|
+
/** Successful deployment/backend observations live for the caller's session, not one block. */
|
|
400
|
+
export function lifecycleSessionRead(client, key, work) {
|
|
401
|
+
const source = lifecycleSourceClient(client);
|
|
402
|
+
const owner = source.sessionCache ?? source;
|
|
403
|
+
let values = sessionObservations.get(owner);
|
|
404
|
+
if (values === undefined) {
|
|
405
|
+
values = new Map();
|
|
406
|
+
sessionObservations.set(owner, values);
|
|
407
|
+
}
|
|
408
|
+
let pending = values.get(key);
|
|
409
|
+
if (pending === undefined) {
|
|
410
|
+
pending = work();
|
|
411
|
+
values.set(key, pending);
|
|
412
|
+
const owned = pending;
|
|
413
|
+
void pending.catch(() => { if (values.get(key) === owned)
|
|
414
|
+
values.delete(key); });
|
|
415
|
+
}
|
|
416
|
+
return pending;
|
|
417
|
+
}
|
|
418
|
+
export async function attestLifecycleMulticall(client, block) {
|
|
419
|
+
const to = robinhoodMainnet.contracts.multicall3.address;
|
|
420
|
+
await lifecycleSessionRead(client, `4663:multicall:${to}`, async () => {
|
|
421
|
+
const code = rpcHex(await lifecycleRpc(client, "eth_getCode", [to, block === undefined ? "latest" : toHex(block.number)]), "Multicall3 code");
|
|
422
|
+
if (keccak256(code) !== multicall3CodeHash)
|
|
423
|
+
throw new LifecyclePlanningError("MULTICALL_CODE_MISMATCH", "Multicall3 runtime differs from the reviewed chain4663 deployment");
|
|
424
|
+
});
|
|
425
|
+
}
|
|
426
|
+
/** Installs only SDK-observed wire results from this invocation's aggregate/lens. */
|
|
427
|
+
export function seedLifecycleRead(client, method, params, block, value) {
|
|
428
|
+
if (!(client instanceof InvocationLifecycleClient))
|
|
429
|
+
throw new LifecyclePlanningError("INVALID_READ_CONTEXT", "Snapshot reads require an invocation owner");
|
|
430
|
+
client.observeBlock(block, true);
|
|
431
|
+
client.seed(method, params, block, value);
|
|
432
|
+
}
|
|
433
|
+
/** Recheck live policy after the owner's final asynchronous canonical guards. */
|
|
434
|
+
export function registerLifecycleFinalCheck(client, check) {
|
|
435
|
+
if (client instanceof InvocationLifecycleClient) {
|
|
436
|
+
client.assertOpen();
|
|
437
|
+
client.finalChecks.add(check);
|
|
438
|
+
}
|
|
439
|
+
}
|
|
440
|
+
/** SDK-selected caller-independent getters only; never poster quotes or execution. */
|
|
441
|
+
function lifecycleIndependentRpc(client, params, block, staticRead) {
|
|
442
|
+
return client instanceof InvocationLifecycleClient
|
|
443
|
+
? client.independentRead(params, block, staticRead)
|
|
444
|
+
: lifecyclePinnedRpc(client, "eth_call", params, block, staticRead);
|
|
445
|
+
}
|
|
291
446
|
export function rpcObject(value, label) {
|
|
292
447
|
if (value === null || typeof value !== "object" || Array.isArray(value))
|
|
293
448
|
throw new LifecyclePlanningError("INVALID_RPC_RESPONSE", `${label} must be an object`);
|
|
@@ -336,6 +491,8 @@ export async function readLifecycleBlock(client, tag = "latest") {
|
|
|
336
491
|
return block;
|
|
337
492
|
}
|
|
338
493
|
export async function assertLifecycleBlock(client, block, expectedChainId) {
|
|
494
|
+
if (client instanceof InvocationLifecycleClient)
|
|
495
|
+
return;
|
|
339
496
|
const [chainId, current] = await Promise.all([
|
|
340
497
|
expectedChainId === undefined ? undefined : lifecycleRpc(client, "eth_chainId"),
|
|
341
498
|
readLifecycleBlock(client, toHex(block.number)),
|
|
@@ -351,13 +508,15 @@ export async function assertLifecycleBlock(client, block, expectedChainId) {
|
|
|
351
508
|
throw new LifecyclePlanningError("STATE_REORGED", "Pinned launch state changed during the operation; read canonical progress again");
|
|
352
509
|
}
|
|
353
510
|
}
|
|
354
|
-
export async function readLifecycleContract(client, to, abi, functionName, args, block, from, staticRead = false) {
|
|
511
|
+
export async function readLifecycleContract(client, to, abi, functionName, args, block, from, staticRead = false, independent = false) {
|
|
355
512
|
const data = encodeFunctionData({ abi, functionName, args });
|
|
356
513
|
const request = [{ to, from, data }, toHex(block.number)];
|
|
357
514
|
const getter = abi.some((item) => item.type === "function" && item.name === functionName && (item.stateMutability === "view" || item.stateMutability === "pure"));
|
|
358
|
-
const result = rpcHex(await (
|
|
359
|
-
?
|
|
360
|
-
:
|
|
515
|
+
const result = rpcHex(await (independent
|
|
516
|
+
? lifecycleIndependentRpc(client, request, block, staticRead)
|
|
517
|
+
: getter
|
|
518
|
+
? staticRead ? lifecycleStaticRpc(client, "eth_call", request, block) : lifecyclePinnedRpc(client, "eth_call", request, block)
|
|
519
|
+
: lifecycleRpc(client, "eth_call", request)), functionName);
|
|
361
520
|
// ABI decoding validates scalar widths and tuple layout; T names that exact frozen ABI result.
|
|
362
521
|
const decoded = decodeFunctionResult({ abi, functionName, data: result });
|
|
363
522
|
return decoded;
|
|
@@ -393,7 +552,7 @@ export async function readNitroPosterGas(transaction, context) {
|
|
|
393
552
|
}
|
|
394
553
|
async function readNitroScalar(context, to, abi, functionName) {
|
|
395
554
|
const data = encodeFunctionData({ abi, functionName });
|
|
396
|
-
const result = rpcHex(await
|
|
555
|
+
const result = rpcHex(await lifecycleIndependentRpc(context.client, [{ to, data }, toHex(context.block.number)], context.block, true), functionName);
|
|
397
556
|
if (result.length !== 66)
|
|
398
557
|
throw new LifecyclePlanningError("INVALID_RPC_RESPONSE", `${functionName} must return exactly one ABI word`);
|
|
399
558
|
return decodeFunctionResult({ abi, functionName, data: result });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../src/lifecycle/rpc.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../src/lifecycle/rpc.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,13 +4,15 @@ export type NextTransactionEnvelope = Readonly<{
|
|
|
4
4
|
gas: bigint;
|
|
5
5
|
gasPrice: bigint;
|
|
6
6
|
}>;
|
|
7
|
+
/** Compute-only sizing observations; native poster charges are never included. */
|
|
8
|
+
export type GasSizingHints = ReadonlyMap<string, bigint>;
|
|
7
9
|
export type PreparedLaunchSimulation = ((transactions: readonly LifecycleTransaction[], nextEnvelope?: NextTransactionEnvelope) => Promise<LifecycleSimulation>) & {
|
|
8
|
-
/** Unadmitted diagnostic results only; final
|
|
10
|
+
/** Unadmitted diagnostic results only; final measurement validates exact calldata. */
|
|
9
11
|
measure(transactions: readonly LifecycleTransaction[]): Promise<LifecycleSimulation>;
|
|
10
12
|
close(): void;
|
|
11
13
|
};
|
|
12
14
|
/** Internal continuation owned by one SDK read invocation. Only its positive
|
|
13
15
|
* capability proof is reused; every candidate executes its entire economic sequence. */
|
|
14
|
-
export declare function prepareLaunchSimulation(options: SimulateLaunchPlanOptions, block: LifecycleBlock, hasTransactions?: boolean, reviewedEnvelope?: NextTransactionEnvelope): PreparedLaunchSimulation;
|
|
15
|
-
export declare function simulateLaunchTransactions(options: SimulateLaunchPlanOptions, transactions: readonly LifecycleTransaction[], pinnedBlock?: LifecycleBlock, nextEnvelope?: NextTransactionEnvelope): Promise<LifecycleSimulation>;
|
|
16
|
+
export declare function prepareLaunchSimulation(options: SimulateLaunchPlanOptions, block: LifecycleBlock, hasTransactions?: boolean, reviewedEnvelope?: NextTransactionEnvelope, selectedGasPrice?: bigint, sizing?: GasSizingHints): PreparedLaunchSimulation;
|
|
17
|
+
export declare function simulateLaunchTransactions(options: SimulateLaunchPlanOptions, transactions: readonly LifecycleTransaction[], pinnedBlock?: LifecycleBlock, nextEnvelope?: NextTransactionEnvelope, sizing?: GasSizingHints): Promise<LifecycleSimulation>;
|
|
16
18
|
//# sourceMappingURL=simulation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simulation.d.ts","sourceRoot":"","sources":["../../src/lifecycle/simulation.ts"],"names":[],"mappings":"AAIA,OAAO,EAAwD,KAAK,cAAc,EAAoF,KAAK,mBAAmB,EAAgC,KAAK,oBAAoB,EAAoD,KAAK,yBAAyB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"simulation.d.ts","sourceRoot":"","sources":["../../src/lifecycle/simulation.ts"],"names":[],"mappings":"AAIA,OAAO,EAAwD,KAAK,cAAc,EAAoF,KAAK,mBAAmB,EAAgC,KAAK,oBAAoB,EAAoD,KAAK,yBAAyB,EAAE,MAAM,YAAY,CAAC;AA+S9V,qFAAqF;AACrF,MAAM,MAAM,uBAAuB,GAAG,QAAQ,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAClF,kFAAkF;AAClF,MAAM,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACzD,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,YAAY,EAAE,SAAS,oBAAoB,EAAE,EAAE,YAAY,CAAC,EAAE,uBAAuB,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAC,GAAG;IACjK,sFAAsF;IACtF,OAAO,CAAC,YAAY,EAAE,SAAS,oBAAoB,EAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACrF,KAAK,IAAI,IAAI,CAAC;CACf,CAAC;AAQF;wFACwF;AACxF,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,yBAAyB,EAAE,KAAK,EAAE,cAAc,EAAE,eAAe,UAAO,EAAE,gBAAgB,CAAC,EAAE,uBAAuB,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,wBAAwB,CAgHnP;AAED,wBAAsB,0BAA0B,CAAC,OAAO,EAAE,yBAAyB,EAAE,YAAY,EAAE,SAAS,oBAAoB,EAAE,EAAE,WAAW,CAAC,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,uBAAuB,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAO/P"}
|