@agenticprimitives/account-custody 1.0.0-alpha.46 → 1.0.0-alpha.48
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/abi.d.ts +197 -0
- package/dist/abi.d.ts.map +1 -1
- package/dist/abi.js +24 -0
- package/dist/abi.js.map +1 -1
- package/dist/actions.d.ts +76 -4
- package/dist/actions.d.ts.map +1 -1
- package/dist/actions.js +163 -9
- package/dist/actions.js.map +1 -1
- package/dist/eip712.d.ts +4 -0
- package/dist/eip712.d.ts.map +1 -1
- package/dist/eip712.js +13 -0
- package/dist/eip712.js.map +1 -1
- package/dist/governance.d.ts +59 -6
- package/dist/governance.d.ts.map +1 -1
- package/dist/governance.js +115 -19
- package/dist/governance.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/package.json +3 -2
package/dist/abi.d.ts
CHANGED
|
@@ -165,6 +165,28 @@ export declare const custodyPolicyAbi: readonly [{
|
|
|
165
165
|
readonly outputs: readonly [{
|
|
166
166
|
readonly type: "uint256";
|
|
167
167
|
}];
|
|
168
|
+
}, {
|
|
169
|
+
readonly type: "function";
|
|
170
|
+
readonly name: "scheduledChangeExpiry";
|
|
171
|
+
readonly stateMutability: "view";
|
|
172
|
+
readonly inputs: readonly [{
|
|
173
|
+
readonly name: "account";
|
|
174
|
+
readonly type: "address";
|
|
175
|
+
}, {
|
|
176
|
+
readonly name: "changeId";
|
|
177
|
+
readonly type: "uint256";
|
|
178
|
+
}];
|
|
179
|
+
readonly outputs: readonly [{
|
|
180
|
+
readonly type: "uint64";
|
|
181
|
+
}];
|
|
182
|
+
}, {
|
|
183
|
+
readonly type: "function";
|
|
184
|
+
readonly name: "APPLY_WINDOW";
|
|
185
|
+
readonly stateMutability: "view";
|
|
186
|
+
readonly inputs: readonly [];
|
|
187
|
+
readonly outputs: readonly [{
|
|
188
|
+
readonly type: "uint64";
|
|
189
|
+
}];
|
|
168
190
|
}, {
|
|
169
191
|
readonly type: "function";
|
|
170
192
|
readonly name: "defaultApprovals";
|
|
@@ -276,5 +298,180 @@ export declare const custodyPolicyAbi: readonly [{
|
|
|
276
298
|
readonly type: "uint8";
|
|
277
299
|
readonly indexed: false;
|
|
278
300
|
}];
|
|
301
|
+
}, {
|
|
302
|
+
readonly type: "event";
|
|
303
|
+
readonly name: "CredentialRotated";
|
|
304
|
+
readonly inputs: readonly [{
|
|
305
|
+
readonly name: "account";
|
|
306
|
+
readonly type: "address";
|
|
307
|
+
readonly indexed: true;
|
|
308
|
+
}, {
|
|
309
|
+
readonly name: "reapproved";
|
|
310
|
+
readonly type: "uint256";
|
|
311
|
+
readonly indexed: false;
|
|
312
|
+
}];
|
|
313
|
+
}, {
|
|
314
|
+
readonly type: "event";
|
|
315
|
+
readonly name: "GuardianRemoved";
|
|
316
|
+
readonly inputs: readonly [{
|
|
317
|
+
readonly name: "account";
|
|
318
|
+
readonly type: "address";
|
|
319
|
+
readonly indexed: true;
|
|
320
|
+
}, {
|
|
321
|
+
readonly name: "guardianCommitment";
|
|
322
|
+
readonly type: "bytes32";
|
|
323
|
+
readonly indexed: true;
|
|
324
|
+
}];
|
|
325
|
+
}, {
|
|
326
|
+
readonly type: "event";
|
|
327
|
+
readonly name: "RecoveryThresholdChanged";
|
|
328
|
+
readonly inputs: readonly [{
|
|
329
|
+
readonly name: "account";
|
|
330
|
+
readonly type: "address";
|
|
331
|
+
readonly indexed: true;
|
|
332
|
+
}, {
|
|
333
|
+
readonly name: "oldValue";
|
|
334
|
+
readonly type: "uint8";
|
|
335
|
+
readonly indexed: false;
|
|
336
|
+
}, {
|
|
337
|
+
readonly name: "newValue";
|
|
338
|
+
readonly type: "uint8";
|
|
339
|
+
readonly indexed: false;
|
|
340
|
+
}];
|
|
341
|
+
}, {
|
|
342
|
+
readonly type: "event";
|
|
343
|
+
readonly name: "ThresholdChanged";
|
|
344
|
+
readonly inputs: readonly [{
|
|
345
|
+
readonly name: "account";
|
|
346
|
+
readonly type: "address";
|
|
347
|
+
readonly indexed: true;
|
|
348
|
+
}, {
|
|
349
|
+
readonly name: "tier";
|
|
350
|
+
readonly type: "uint8";
|
|
351
|
+
readonly indexed: true;
|
|
352
|
+
}, {
|
|
353
|
+
readonly name: "oldValue";
|
|
354
|
+
readonly type: "uint8";
|
|
355
|
+
readonly indexed: false;
|
|
356
|
+
}, {
|
|
357
|
+
readonly name: "newValue";
|
|
358
|
+
readonly type: "uint8";
|
|
359
|
+
readonly indexed: false;
|
|
360
|
+
}];
|
|
361
|
+
}, {
|
|
362
|
+
readonly type: "event";
|
|
363
|
+
readonly name: "RotationReaffirmed";
|
|
364
|
+
readonly inputs: readonly [{
|
|
365
|
+
readonly name: "account";
|
|
366
|
+
readonly type: "address";
|
|
367
|
+
readonly indexed: true;
|
|
368
|
+
}, {
|
|
369
|
+
readonly name: "modules";
|
|
370
|
+
readonly type: "uint256";
|
|
371
|
+
readonly indexed: false;
|
|
372
|
+
}, {
|
|
373
|
+
readonly name: "delegationManager";
|
|
374
|
+
readonly type: "bool";
|
|
375
|
+
readonly indexed: false;
|
|
376
|
+
}];
|
|
377
|
+
}, {
|
|
378
|
+
readonly type: "error";
|
|
379
|
+
readonly name: "SystemPaused";
|
|
380
|
+
readonly inputs: readonly [];
|
|
381
|
+
}, {
|
|
382
|
+
readonly type: "error";
|
|
383
|
+
readonly name: "NotInstalledAsExecutorOn";
|
|
384
|
+
readonly inputs: readonly [{
|
|
385
|
+
readonly name: "account";
|
|
386
|
+
readonly type: "address";
|
|
387
|
+
}];
|
|
388
|
+
}, {
|
|
389
|
+
readonly type: "error";
|
|
390
|
+
readonly name: "SafetyDelayBelowFloor";
|
|
391
|
+
readonly inputs: readonly [{
|
|
392
|
+
readonly name: "tier";
|
|
393
|
+
readonly type: "uint8";
|
|
394
|
+
}, {
|
|
395
|
+
readonly name: "provided";
|
|
396
|
+
readonly type: "uint32";
|
|
397
|
+
}, {
|
|
398
|
+
readonly name: "floorSecs";
|
|
399
|
+
readonly type: "uint32";
|
|
400
|
+
}];
|
|
401
|
+
}, {
|
|
402
|
+
readonly type: "error";
|
|
403
|
+
readonly name: "HookNotInstalledOn";
|
|
404
|
+
readonly inputs: readonly [{
|
|
405
|
+
readonly name: "account";
|
|
406
|
+
readonly type: "address";
|
|
407
|
+
}, {
|
|
408
|
+
readonly name: "hook";
|
|
409
|
+
readonly type: "address";
|
|
410
|
+
}];
|
|
411
|
+
}, {
|
|
412
|
+
readonly type: "error";
|
|
413
|
+
readonly name: "CannotUninstallCustodyPolicy";
|
|
414
|
+
readonly inputs: readonly [];
|
|
415
|
+
}, {
|
|
416
|
+
readonly type: "error";
|
|
417
|
+
readonly name: "ProposalExpired";
|
|
418
|
+
readonly inputs: readonly [{
|
|
419
|
+
readonly name: "changeId";
|
|
420
|
+
readonly type: "uint256";
|
|
421
|
+
}, {
|
|
422
|
+
readonly name: "expiresAt";
|
|
423
|
+
readonly type: "uint64";
|
|
424
|
+
}];
|
|
425
|
+
}, {
|
|
426
|
+
readonly type: "error";
|
|
427
|
+
readonly name: "ThresholdUnreachable";
|
|
428
|
+
readonly inputs: readonly [{
|
|
429
|
+
readonly name: "tier";
|
|
430
|
+
readonly type: "uint8";
|
|
431
|
+
}, {
|
|
432
|
+
readonly name: "required";
|
|
433
|
+
readonly type: "uint8";
|
|
434
|
+
}, {
|
|
435
|
+
readonly name: "bound";
|
|
436
|
+
readonly type: "uint256";
|
|
437
|
+
}];
|
|
438
|
+
}, {
|
|
439
|
+
readonly type: "error";
|
|
440
|
+
readonly name: "TrusteesOutsideModeBounds";
|
|
441
|
+
readonly inputs: readonly [{
|
|
442
|
+
readonly name: "mode";
|
|
443
|
+
readonly type: "uint8";
|
|
444
|
+
}, {
|
|
445
|
+
readonly name: "trustees";
|
|
446
|
+
readonly type: "uint256";
|
|
447
|
+
}, {
|
|
448
|
+
readonly name: "recoveryApprovals";
|
|
449
|
+
readonly type: "uint8";
|
|
450
|
+
}];
|
|
451
|
+
}, {
|
|
452
|
+
readonly type: "error";
|
|
453
|
+
readonly name: "MalformedRemovalArgs";
|
|
454
|
+
readonly inputs: readonly [{
|
|
455
|
+
readonly name: "length";
|
|
456
|
+
readonly type: "uint256";
|
|
457
|
+
}];
|
|
458
|
+
}, {
|
|
459
|
+
readonly type: "error";
|
|
460
|
+
readonly name: "InvalidThresholdValue";
|
|
461
|
+
readonly inputs: readonly [{
|
|
462
|
+
readonly name: "thr";
|
|
463
|
+
readonly type: "uint8";
|
|
464
|
+
}];
|
|
465
|
+
}, {
|
|
466
|
+
readonly type: "error";
|
|
467
|
+
readonly name: "InfeasibleOrgConfig";
|
|
468
|
+
readonly inputs: readonly [{
|
|
469
|
+
readonly name: "nSigners";
|
|
470
|
+
readonly type: "uint8";
|
|
471
|
+
}];
|
|
472
|
+
}, {
|
|
473
|
+
readonly type: "error";
|
|
474
|
+
readonly name: "RecoveryRequiresGuardianQuorum";
|
|
475
|
+
readonly inputs: readonly [];
|
|
279
476
|
}];
|
|
280
477
|
//# sourceMappingURL=abi.d.ts.map
|
package/dist/abi.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abi.d.ts","sourceRoot":"","sources":["../src/abi.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"abi.d.ts","sourceRoot":"","sources":["../src/abi.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4HnB,CAAC"}
|
package/dist/abi.js
CHANGED
|
@@ -50,6 +50,9 @@ export const custodyPolicyAbi = [
|
|
|
50
50
|
{ type: 'function', name: 'isTrustee', stateMutability: 'view', inputs: [{ name: 'account', type: 'address' }, { name: 'signer', type: 'address' }], outputs: [{ type: 'bool' }] },
|
|
51
51
|
{ type: 'function', name: 'trusteeCount', stateMutability: 'view', inputs: [{ name: 'account', type: 'address' }], outputs: [{ type: 'uint256' }] },
|
|
52
52
|
{ type: 'function', name: 'scheduledChangeCount', stateMutability: 'view', inputs: [{ name: 'account', type: 'address' }], outputs: [{ type: 'uint256' }] },
|
|
53
|
+
// CUST-6: a scheduled change may be applied only until `eta + APPLY_WINDOW`; 0 for an unknown id.
|
|
54
|
+
{ type: 'function', name: 'scheduledChangeExpiry', stateMutability: 'view', inputs: [{ name: 'account', type: 'address' }, { name: 'changeId', type: 'uint256' }], outputs: [{ type: 'uint64' }] },
|
|
55
|
+
{ type: 'function', name: 'APPLY_WINDOW', stateMutability: 'view', inputs: [], outputs: [{ type: 'uint64' }] },
|
|
53
56
|
{ type: 'function', name: 'defaultApprovals', stateMutability: 'pure', inputs: [{ name: 'nCustodians', type: 'uint8' }, { name: 'tier', type: 'uint8' }], outputs: [{ type: 'uint8' }] },
|
|
54
57
|
{
|
|
55
58
|
type: 'function',
|
|
@@ -103,5 +106,26 @@ export const custodyPolicyAbi = [
|
|
|
103
106
|
{ name: 'recoveryApprovals', type: 'uint8', indexed: false },
|
|
104
107
|
],
|
|
105
108
|
},
|
|
109
|
+
{ type: 'event', name: 'CredentialRotated', inputs: [{ name: 'account', type: 'address', indexed: true }, { name: 'reapproved', type: 'uint256', indexed: false }] },
|
|
110
|
+
// Generation 4 (spec 445 §1.3): emitted by an applied RotateCredential that re-affirmed modules / the manager.
|
|
111
|
+
// CUST-4: a retirement removes the retired credential's trustee seat; the recovery quorum may drop (0 = disabled).
|
|
112
|
+
{ type: 'event', name: 'GuardianRemoved', inputs: [{ name: 'account', type: 'address', indexed: true }, { name: 'guardianCommitment', type: 'bytes32', indexed: true }] },
|
|
113
|
+
{ type: 'event', name: 'RecoveryThresholdChanged', inputs: [{ name: 'account', type: 'address', indexed: true }, { name: 'oldValue', type: 'uint8', indexed: false }, { name: 'newValue', type: 'uint8', indexed: false }] },
|
|
114
|
+
{ type: 'event', name: 'ThresholdChanged', inputs: [{ name: 'account', type: 'address', indexed: true }, { name: 'tier', type: 'uint8', indexed: true }, { name: 'oldValue', type: 'uint8', indexed: false }, { name: 'newValue', type: 'uint8', indexed: false }] },
|
|
115
|
+
{ type: 'event', name: 'RotationReaffirmed', inputs: [{ name: 'account', type: 'address', indexed: true }, { name: 'modules', type: 'uint256', indexed: false }, { name: 'delegationManager', type: 'bool', indexed: false }] },
|
|
116
|
+
// ─── Errors a surface decodes (generation 4 additions + the pause gate) ─────────────────────
|
|
117
|
+
{ type: 'error', name: 'SystemPaused', inputs: [] },
|
|
118
|
+
{ type: 'error', name: 'NotInstalledAsExecutorOn', inputs: [{ name: 'account', type: 'address' }] },
|
|
119
|
+
{ type: 'error', name: 'SafetyDelayBelowFloor', inputs: [{ name: 'tier', type: 'uint8' }, { name: 'provided', type: 'uint32' }, { name: 'floorSecs', type: 'uint32' }] },
|
|
120
|
+
{ type: 'error', name: 'HookNotInstalledOn', inputs: [{ name: 'account', type: 'address' }, { name: 'hook', type: 'address' }] },
|
|
121
|
+
{ type: 'error', name: 'CannotUninstallCustodyPolicy', inputs: [] },
|
|
122
|
+
// Generation 4 custody mediums (A11, audit 2026-11-10 CUST-4/5/6, ACCT-11 remainder).
|
|
123
|
+
{ type: 'error', name: 'ProposalExpired', inputs: [{ name: 'changeId', type: 'uint256' }, { name: 'expiresAt', type: 'uint64' }] },
|
|
124
|
+
{ type: 'error', name: 'ThresholdUnreachable', inputs: [{ name: 'tier', type: 'uint8' }, { name: 'required', type: 'uint8' }, { name: 'bound', type: 'uint256' }] },
|
|
125
|
+
{ type: 'error', name: 'TrusteesOutsideModeBounds', inputs: [{ name: 'mode', type: 'uint8' }, { name: 'trustees', type: 'uint256' }, { name: 'recoveryApprovals', type: 'uint8' }] },
|
|
126
|
+
{ type: 'error', name: 'MalformedRemovalArgs', inputs: [{ name: 'length', type: 'uint256' }] },
|
|
127
|
+
{ type: 'error', name: 'InvalidThresholdValue', inputs: [{ name: 'thr', type: 'uint8' }] },
|
|
128
|
+
{ type: 'error', name: 'InfeasibleOrgConfig', inputs: [{ name: 'nSigners', type: 'uint8' }] },
|
|
129
|
+
{ type: 'error', name: 'RecoveryRequiresGuardianQuorum', inputs: [] },
|
|
106
130
|
];
|
|
107
131
|
//# sourceMappingURL=abi.js.map
|
package/dist/abi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abi.js","sourceRoot":"","sources":["../src/abi.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"abi.js","sourceRoot":"","sources":["../src/abi.ts"],"names":[],"mappings":"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"}
|
package/dist/actions.d.ts
CHANGED
|
@@ -18,10 +18,39 @@ export declare enum CustodyAction {
|
|
|
18
18
|
ChangeApprovalsRequired = 15,
|
|
19
19
|
/** Spec 410 §1.2 (contracts generation 3) — a PLANNED rotation: one credential in, one out, every standing
|
|
20
20
|
* approved-digest wire re-approved under the new custody epoch, in one applied change. T4. */
|
|
21
|
-
RotateCredential = 16
|
|
21
|
+
RotateCredential = 16,
|
|
22
|
+
/** `installModule(type, module, initData)` under the quorum — an executor can act as the account. T5. */
|
|
23
|
+
InstallModule = 17,
|
|
24
|
+
/** `uninstallModule(type, module, deInitData)` under the quorum. T5. Schedulable + applicable under a pause. */
|
|
25
|
+
UninstallModule = 18,
|
|
26
|
+
/** `TreasurySpendPolicy.lowerCeiling(newCeiling)` on an installed hook — can only tighten. T4. */
|
|
27
|
+
LowerSpendCeiling = 19,
|
|
28
|
+
/** `TreasurySpendPolicy.setCeiling(newCeiling)` on an installed hook — may raise. T5. */
|
|
29
|
+
SetSpendCeiling = 20
|
|
22
30
|
}
|
|
31
|
+
/** The base risk tier of each action — a port of `CustodyPolicy._tierFor`. `ChangeApprovalsRequired`'s EFFECTIVE
|
|
32
|
+
* tier can rise with its args (`_effectiveTierFor`: at least the target tier, and T5 for any decrease); this is
|
|
33
|
+
* the floor a surface shows before reading the current thresholds. Likewise a `RemoveCustodian` /
|
|
34
|
+
* `RemovePasskeyCredential` in the 96-byte lowering form (CUST-5) is T5 when either new value is below the current
|
|
35
|
+
* `approvalsRequired(account, 4|5)`. Pinned by `test/actions-generation4.test.ts`. */
|
|
36
|
+
export declare function custodyActionTier(action: CustodyAction): 4 | 5 | 6;
|
|
37
|
+
/** The actions a quorum may still schedule and apply under a system pause (generation 4) — a port of
|
|
38
|
+
* `CustodyPolicy._isPauseExemptAction`: removals only (a removal's CUST-5 lowering included). Every other action
|
|
39
|
+
* reverts `SystemPaused`. On generation ≤ 3 no action is exempt. */
|
|
40
|
+
export declare const PAUSE_EXEMPT_CUSTODY_ACTIONS: readonly CustodyAction[];
|
|
41
|
+
export declare function isPauseExemptCustodyAction(action: CustodyAction): boolean;
|
|
23
42
|
export declare function buildAddCustodianArgs(custodian: Address): Hex;
|
|
24
|
-
|
|
43
|
+
/** The CUST-5 lowering a removal may carry (generation 4): the new T4 / T5 approvals, each ≤ the current value.
|
|
44
|
+
* Omitted (or 0) keeps that tier. After the removal every tier must be reachable by the custodians left (org
|
|
45
|
+
* mode: T4/T5 ≤ floor(n/2)), or the APPLY reverts `ThresholdUnreachable` — compute it before scheduling. */
|
|
46
|
+
export interface RemovalLowering {
|
|
47
|
+
t4?: number;
|
|
48
|
+
t5?: number;
|
|
49
|
+
}
|
|
50
|
+
/** `RemoveCustodian` (1, T4; T5 when it lowers): `abi.encode(address)` — or, when `lowerTo` is passed
|
|
51
|
+
* (generation 4, CUST-5), the 96-byte `abi.encode(address custodian, uint8 newT4, uint8 newT5)` that lowers the
|
|
52
|
+
* thresholds in the same action. Any other length reverts `MalformedRemovalArgs` at schedule. */
|
|
53
|
+
export declare function buildRemoveCustodianArgs(custodian: Address, lowerTo?: RemovalLowering): Hex;
|
|
25
54
|
export declare function buildAddTrusteeArgs(trustee: Address): Hex;
|
|
26
55
|
export declare function buildRemoveTrusteeArgs(trustee: Address): Hex;
|
|
27
56
|
export declare function buildChangeCustodyModeArgs(newMode: 0 | 1 | 2 | 3): Hex;
|
|
@@ -62,8 +91,9 @@ export declare function buildChangeApprovalsRequiredArgs(tier: number, newCount:
|
|
|
62
91
|
* inner userOp (Act 3 'AddPasskey Bob on Org' live debug).
|
|
63
92
|
*/
|
|
64
93
|
export declare function buildAddPasskeyCredentialArgs(credentialIdDigest: Hex, x: bigint, y: bigint, rpIdHash: Hex): Hex;
|
|
65
|
-
/** Encode args for `RemovePasskeyCredential(credentialIdDigest)
|
|
66
|
-
|
|
94
|
+
/** Encode args for `RemovePasskeyCredential(credentialIdDigest)` — or, when `lowerTo` is passed (generation 4,
|
|
95
|
+
* CUST-5), the 96-byte `abi.encode(bytes32 credentialIdDigest, uint8 newT4, uint8 newT5)`. */
|
|
96
|
+
export declare function buildRemovePasskeyCredentialArgs(credentialIdDigest: Hex, lowerTo?: RemovalLowering): Hex;
|
|
67
97
|
/**
|
|
68
98
|
* Encode args for `RotateAllCustodians(addCustodians, removeCustodians)`
|
|
69
99
|
* (Wave 2C C-10). Adds the new set + removes the old in one atomic action;
|
|
@@ -103,6 +133,32 @@ export declare function buildRecoverAccountArgs(args: {
|
|
|
103
133
|
addPasskeys?: readonly RecoveryPasskeyAdd[];
|
|
104
134
|
removePasskeyCredentialIdDigests?: readonly Hex[];
|
|
105
135
|
}): Hex;
|
|
136
|
+
/** `InstallModule` (17, T5): `abi.encode(uint256 moduleTypeId, address module, bytes initData)`. For a treasury
|
|
137
|
+
* ceiling: `(4, treasurySpendPolicy, abi.encode(address asset, uint256 ceiling, uint64 windowSeconds))`. */
|
|
138
|
+
export declare function buildInstallModuleArgs(args: {
|
|
139
|
+
moduleTypeId: bigint | number;
|
|
140
|
+
module: Address;
|
|
141
|
+
initData?: Hex;
|
|
142
|
+
}): Hex;
|
|
143
|
+
/** `UninstallModule` (18, T5, pause-exempt): `abi.encode(uint256 moduleTypeId, address module, bytes deInitData)`.
|
|
144
|
+
* Naming the canonical custody policy reverts `CannotUninstallCustodyPolicy`; a hook uninstall needs ≥ ~206k gas
|
|
145
|
+
* at the callback (`InsufficientGasForHookUninstall`). */
|
|
146
|
+
export declare function buildUninstallModuleArgs(args: {
|
|
147
|
+
moduleTypeId: bigint | number;
|
|
148
|
+
module: Address;
|
|
149
|
+
deInitData?: Hex;
|
|
150
|
+
}): Hex;
|
|
151
|
+
/** `LowerSpendCeiling` (19, T4): `abi.encode(address hook, uint256 newCeiling)`. Reverts at apply unless strictly
|
|
152
|
+
* lower (`NotLower`) or when `hook` is not installed as a HOOK (`HookNotInstalledOn`). */
|
|
153
|
+
export declare function buildLowerSpendCeilingArgs(args: {
|
|
154
|
+
hook: Address;
|
|
155
|
+
newCeiling: bigint;
|
|
156
|
+
}): Hex;
|
|
157
|
+
/** `SetSpendCeiling` (20, T5): `abi.encode(address hook, uint256 newCeiling)` — may raise. */
|
|
158
|
+
export declare function buildSetSpendCeilingArgs(args: {
|
|
159
|
+
hook: Address;
|
|
160
|
+
newCeiling: bigint;
|
|
161
|
+
}): Hex;
|
|
106
162
|
/**
|
|
107
163
|
* Encode args for `RotateCredential(args)` — spec 410 §1.2, contracts generation 3. Exactly one credential
|
|
108
164
|
* is added (`addOwner` XOR `addPasskey`) and exactly one retired (`removeOwner` XOR
|
|
@@ -119,9 +175,21 @@ export declare function buildRecoverAccountArgs(args: {
|
|
|
119
175
|
* address removeOwner;
|
|
120
176
|
* bytes32 removePasskeyCredentialIdDigest;
|
|
121
177
|
* bytes32[] reapprove;
|
|
178
|
+
* address[] reaffirmModules; // generation 4
|
|
179
|
+
* bool reaffirmDelegationManager; // generation 4
|
|
122
180
|
* }
|
|
181
|
+
*
|
|
182
|
+
* GENERATION IS REQUIRED (spec 445 §1.3 / H-2). Generation 4 appended two fields to the struct; a generation-3
|
|
183
|
+
* payload sent to a generation-4 policy SCHEDULES fine (the args ride as a hash) and reverts only at APPLY, a day
|
|
184
|
+
* later. So the caller states the estate's `contractsGeneration` and gets that generation's bytes — never a guess.
|
|
185
|
+
* On generation 4, `reaffirmModules` lists the installed EXECUTOR modules the person keeps (not the canonical
|
|
186
|
+
* custody policy, which is exempt; never hooks, which never lapse) and `reaffirmDelegationManager` is true only
|
|
187
|
+
* when the account's delegation manager is NOT the factory's canonical one and is kept. Anything not listed is
|
|
188
|
+
* expelled by the retirement. Generation 3 has neither field and refuses them.
|
|
123
189
|
*/
|
|
124
190
|
export declare function buildRotateCredentialArgs(args: {
|
|
191
|
+
/** The estate's `contractsGeneration` (3 = spec 410; 4 = spec 445). */
|
|
192
|
+
generation: 3 | 4;
|
|
125
193
|
add: {
|
|
126
194
|
owner: Address;
|
|
127
195
|
} | {
|
|
@@ -133,5 +201,9 @@ export declare function buildRotateCredentialArgs(args: {
|
|
|
133
201
|
passkeyCredentialIdDigest: Hex;
|
|
134
202
|
};
|
|
135
203
|
reapprove: readonly Hex[];
|
|
204
|
+
/** Generation 4: installed EXECUTOR modules the owner keeps (re-stamped under the new epoch). */
|
|
205
|
+
reaffirmModules?: readonly Address[];
|
|
206
|
+
/** Generation 4: keep the current, NON-canonical delegation manager. */
|
|
207
|
+
reaffirmDelegationManager?: boolean;
|
|
136
208
|
}): Hex;
|
|
137
209
|
//# sourceMappingURL=actions.d.ts.map
|
package/dist/actions.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"AAQA,OAAO,EAAuB,KAAK,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AAEnE,oBAAY,aAAa;IACvB,YAAY,IAAI;IAChB,eAAe,IAAI;IACnB,oBAAoB,IAAI;IACxB,uBAAuB,IAAI;IAC3B,UAAU,IAAI;IACd,aAAa,IAAI;IACjB,iBAAiB,IAAI;IACrB,iBAAiB,IAAI;IACrB,uBAAuB,IAAI;IAC3B,eAAe,IAAI;IACnB,mBAAmB,KAAK;IACxB,mBAAmB,KAAK;IACxB,kBAAkB,KAAK;IACvB,oBAAoB,KAAK;IACzB,cAAc,KAAK;IACnB,uBAAuB,KAAK;IAC5B;mGAC+F;IAC/F,gBAAgB,KAAK;
|
|
1
|
+
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}
|
package/dist/actions.js
CHANGED
|
@@ -27,7 +27,53 @@ export var CustodyAction;
|
|
|
27
27
|
/** Spec 410 §1.2 (contracts generation 3) — a PLANNED rotation: one credential in, one out, every standing
|
|
28
28
|
* approved-digest wire re-approved under the new custody epoch, in one applied change. T4. */
|
|
29
29
|
CustodyAction[CustodyAction["RotateCredential"] = 16] = "RotateCredential";
|
|
30
|
+
// ─── Contracts generation 4 (spec 445 §1.5, CUST-3 / ACCT-5) — appended; 0..16 keep their numbers ───
|
|
31
|
+
/** `installModule(type, module, initData)` under the quorum — an executor can act as the account. T5. */
|
|
32
|
+
CustodyAction[CustodyAction["InstallModule"] = 17] = "InstallModule";
|
|
33
|
+
/** `uninstallModule(type, module, deInitData)` under the quorum. T5. Schedulable + applicable under a pause. */
|
|
34
|
+
CustodyAction[CustodyAction["UninstallModule"] = 18] = "UninstallModule";
|
|
35
|
+
/** `TreasurySpendPolicy.lowerCeiling(newCeiling)` on an installed hook — can only tighten. T4. */
|
|
36
|
+
CustodyAction[CustodyAction["LowerSpendCeiling"] = 19] = "LowerSpendCeiling";
|
|
37
|
+
/** `TreasurySpendPolicy.setCeiling(newCeiling)` on an installed hook — may raise. T5. */
|
|
38
|
+
CustodyAction[CustodyAction["SetSpendCeiling"] = 20] = "SetSpendCeiling";
|
|
39
|
+
// 21 is unassigned: a custody-quorum `GovernanceCall` was drafted there and withdrawn by owner decision
|
|
40
|
+
// 2026-11-10 (contracts AUDIT.md 2.27). The policy panics on 21; the next appended action takes it.
|
|
30
41
|
})(CustodyAction || (CustodyAction = {}));
|
|
42
|
+
/** The base risk tier of each action — a port of `CustodyPolicy._tierFor`. `ChangeApprovalsRequired`'s EFFECTIVE
|
|
43
|
+
* tier can rise with its args (`_effectiveTierFor`: at least the target tier, and T5 for any decrease); this is
|
|
44
|
+
* the floor a surface shows before reading the current thresholds. Likewise a `RemoveCustodian` /
|
|
45
|
+
* `RemovePasskeyCredential` in the 96-byte lowering form (CUST-5) is T5 when either new value is below the current
|
|
46
|
+
* `approvalsRequired(account, 4|5)`. Pinned by `test/actions-generation4.test.ts`. */
|
|
47
|
+
export function custodyActionTier(action) {
|
|
48
|
+
switch (action) {
|
|
49
|
+
case CustodyAction.RecoverAccount:
|
|
50
|
+
return 6;
|
|
51
|
+
case CustodyAction.ApplySystemUpdate:
|
|
52
|
+
case CustodyAction.RotateDelegationManager:
|
|
53
|
+
case CustodyAction.RotatePaymaster:
|
|
54
|
+
case CustodyAction.RotateSessionIssuer:
|
|
55
|
+
case CustodyAction.InstallModule:
|
|
56
|
+
case CustodyAction.UninstallModule:
|
|
57
|
+
case CustodyAction.SetSpendCeiling:
|
|
58
|
+
return 5;
|
|
59
|
+
default:
|
|
60
|
+
if (!Number.isInteger(action) || action < 0 || action > CustodyAction.SetSpendCeiling) {
|
|
61
|
+
throw new RangeError(`[custody] not a CustodyAction (${String(action)})`);
|
|
62
|
+
}
|
|
63
|
+
return 4;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
/** The actions a quorum may still schedule and apply under a system pause (generation 4) — a port of
|
|
67
|
+
* `CustodyPolicy._isPauseExemptAction`: removals only (a removal's CUST-5 lowering included). Every other action
|
|
68
|
+
* reverts `SystemPaused`. On generation ≤ 3 no action is exempt. */
|
|
69
|
+
export const PAUSE_EXEMPT_CUSTODY_ACTIONS = Object.freeze([
|
|
70
|
+
CustodyAction.RemoveCustodian,
|
|
71
|
+
CustodyAction.RemovePasskeyCredential,
|
|
72
|
+
CustodyAction.UninstallModule,
|
|
73
|
+
]);
|
|
74
|
+
export function isPauseExemptCustodyAction(action) {
|
|
75
|
+
return PAUSE_EXEMPT_CUSTODY_ACTIONS.includes(action);
|
|
76
|
+
}
|
|
31
77
|
// ─── Range / shape validators ────────────────────────────────────────────
|
|
32
78
|
const ADDRESS_RE = /^0x[0-9a-fA-F]{40}$/;
|
|
33
79
|
const BYTES32_RE = /^0x[0-9a-fA-F]{64}$/;
|
|
@@ -62,9 +108,25 @@ export function buildAddCustodianArgs(custodian) {
|
|
|
62
108
|
assertAddress('AddCustodian.custodian', custodian);
|
|
63
109
|
return encodeAbiParameters([{ type: 'address' }], [custodian]);
|
|
64
110
|
}
|
|
65
|
-
|
|
111
|
+
function removalLoweringValues(label, lowerTo) {
|
|
112
|
+
const t4 = lowerTo.t4 ?? 0;
|
|
113
|
+
const t5 = lowerTo.t5 ?? 0;
|
|
114
|
+
assertUint8(`${label}.lowerTo.t4`, t4);
|
|
115
|
+
assertUint8(`${label}.lowerTo.t5`, t5);
|
|
116
|
+
if (t4 === 0 && t5 === 0) {
|
|
117
|
+
throw new RangeError(`[custody] ${label}.lowerTo: name at least one new threshold (or omit lowerTo for the one-word form)`);
|
|
118
|
+
}
|
|
119
|
+
return [t4, t5];
|
|
120
|
+
}
|
|
121
|
+
/** `RemoveCustodian` (1, T4; T5 when it lowers): `abi.encode(address)` — or, when `lowerTo` is passed
|
|
122
|
+
* (generation 4, CUST-5), the 96-byte `abi.encode(address custodian, uint8 newT4, uint8 newT5)` that lowers the
|
|
123
|
+
* thresholds in the same action. Any other length reverts `MalformedRemovalArgs` at schedule. */
|
|
124
|
+
export function buildRemoveCustodianArgs(custodian, lowerTo) {
|
|
66
125
|
assertAddress('RemoveCustodian.custodian', custodian);
|
|
67
|
-
|
|
126
|
+
if (lowerTo === undefined)
|
|
127
|
+
return encodeAbiParameters([{ type: 'address' }], [custodian]);
|
|
128
|
+
const [t4, t5] = removalLoweringValues('RemoveCustodian', lowerTo);
|
|
129
|
+
return encodeAbiParameters([{ type: 'address' }, { type: 'uint8' }, { type: 'uint8' }], [custodian, t4, t5]);
|
|
68
130
|
}
|
|
69
131
|
export function buildAddTrusteeArgs(trustee) {
|
|
70
132
|
assertAddress('AddTrustee.trustee', trustee);
|
|
@@ -140,10 +202,14 @@ export function buildAddPasskeyCredentialArgs(credentialIdDigest, x, y, rpIdHash
|
|
|
140
202
|
}
|
|
141
203
|
return encodeAbiParameters([{ type: 'bytes32' }, { type: 'uint256' }, { type: 'uint256' }, { type: 'bytes32' }], [credentialIdDigest, x, y, rpIdHash]);
|
|
142
204
|
}
|
|
143
|
-
/** Encode args for `RemovePasskeyCredential(credentialIdDigest)
|
|
144
|
-
|
|
205
|
+
/** Encode args for `RemovePasskeyCredential(credentialIdDigest)` — or, when `lowerTo` is passed (generation 4,
|
|
206
|
+
* CUST-5), the 96-byte `abi.encode(bytes32 credentialIdDigest, uint8 newT4, uint8 newT5)`. */
|
|
207
|
+
export function buildRemovePasskeyCredentialArgs(credentialIdDigest, lowerTo) {
|
|
145
208
|
assertBytes32('RemovePasskeyCredential.credentialIdDigest', credentialIdDigest);
|
|
146
|
-
|
|
209
|
+
if (lowerTo === undefined)
|
|
210
|
+
return encodeAbiParameters([{ type: 'bytes32' }], [credentialIdDigest]);
|
|
211
|
+
const [t4, t5] = removalLoweringValues('RemovePasskeyCredential', lowerTo);
|
|
212
|
+
return encodeAbiParameters([{ type: 'bytes32' }, { type: 'uint8' }, { type: 'uint8' }], [credentialIdDigest, t4, t5]);
|
|
147
213
|
}
|
|
148
214
|
/**
|
|
149
215
|
* Encode args for `RotateAllCustodians(addCustodians, removeCustodians)`
|
|
@@ -229,6 +295,51 @@ export function buildRecoverAccountArgs(args) {
|
|
|
229
295
|
removePasskeyCredentialIdDigests: removePasskeyCredentialIdDigests,
|
|
230
296
|
}]);
|
|
231
297
|
}
|
|
298
|
+
// ─── Generation 4 (spec 445 §1.5) — module / ceiling actions ─────────────────────────────────
|
|
299
|
+
const ZERO_ADDRESS = '0x0000000000000000000000000000000000000000';
|
|
300
|
+
const HEX_RE = /^0x([0-9a-fA-F]{2})*$/;
|
|
301
|
+
function assertNonZeroAddress(label, v) {
|
|
302
|
+
assertAddress(label, v);
|
|
303
|
+
if (v.toLowerCase() === ZERO_ADDRESS)
|
|
304
|
+
throw new RangeError(`[custody] ${label}: must be non-zero`);
|
|
305
|
+
}
|
|
306
|
+
function assertBytes(label, v) {
|
|
307
|
+
if (typeof v !== 'string' || !HEX_RE.test(v))
|
|
308
|
+
throw new RangeError(`[custody] ${label}: not hex bytes (${v})`);
|
|
309
|
+
}
|
|
310
|
+
function moduleArgs(label, moduleTypeId, module, data) {
|
|
311
|
+
const t = BigInt(moduleTypeId);
|
|
312
|
+
if (t !== 1n && t !== 2n && t !== 4n)
|
|
313
|
+
throw new RangeError(`[custody] ${label}.moduleTypeId: must be 1 (validator), 2 (executor) or 4 (hook) (got ${t})`);
|
|
314
|
+
assertNonZeroAddress(`${label}.module`, module);
|
|
315
|
+
assertBytes(`${label}.data`, data);
|
|
316
|
+
return encodeAbiParameters([{ type: 'uint256' }, { type: 'address' }, { type: 'bytes' }], [t, module, data]);
|
|
317
|
+
}
|
|
318
|
+
/** `InstallModule` (17, T5): `abi.encode(uint256 moduleTypeId, address module, bytes initData)`. For a treasury
|
|
319
|
+
* ceiling: `(4, treasurySpendPolicy, abi.encode(address asset, uint256 ceiling, uint64 windowSeconds))`. */
|
|
320
|
+
export function buildInstallModuleArgs(args) {
|
|
321
|
+
return moduleArgs('InstallModule', args.moduleTypeId, args.module, args.initData ?? '0x');
|
|
322
|
+
}
|
|
323
|
+
/** `UninstallModule` (18, T5, pause-exempt): `abi.encode(uint256 moduleTypeId, address module, bytes deInitData)`.
|
|
324
|
+
* Naming the canonical custody policy reverts `CannotUninstallCustodyPolicy`; a hook uninstall needs ≥ ~206k gas
|
|
325
|
+
* at the callback (`InsufficientGasForHookUninstall`). */
|
|
326
|
+
export function buildUninstallModuleArgs(args) {
|
|
327
|
+
return moduleArgs('UninstallModule', args.moduleTypeId, args.module, args.deInitData ?? '0x');
|
|
328
|
+
}
|
|
329
|
+
function ceilingArgs(label, hook, newCeiling) {
|
|
330
|
+
assertNonZeroAddress(`${label}.hook`, hook);
|
|
331
|
+
assertUint256(`${label}.newCeiling`, newCeiling);
|
|
332
|
+
return encodeAbiParameters([{ type: 'address' }, { type: 'uint256' }], [hook, newCeiling]);
|
|
333
|
+
}
|
|
334
|
+
/** `LowerSpendCeiling` (19, T4): `abi.encode(address hook, uint256 newCeiling)`. Reverts at apply unless strictly
|
|
335
|
+
* lower (`NotLower`) or when `hook` is not installed as a HOOK (`HookNotInstalledOn`). */
|
|
336
|
+
export function buildLowerSpendCeilingArgs(args) {
|
|
337
|
+
return ceilingArgs('LowerSpendCeiling', args.hook, args.newCeiling);
|
|
338
|
+
}
|
|
339
|
+
/** `SetSpendCeiling` (20, T5): `abi.encode(address hook, uint256 newCeiling)` — may raise. */
|
|
340
|
+
export function buildSetSpendCeilingArgs(args) {
|
|
341
|
+
return ceilingArgs('SetSpendCeiling', args.hook, args.newCeiling);
|
|
342
|
+
}
|
|
232
343
|
/**
|
|
233
344
|
* Encode args for `RotateCredential(args)` — spec 410 §1.2, contracts generation 3. Exactly one credential
|
|
234
345
|
* is added (`addOwner` XOR `addPasskey`) and exactly one retired (`removeOwner` XOR
|
|
@@ -245,9 +356,22 @@ export function buildRecoverAccountArgs(args) {
|
|
|
245
356
|
* address removeOwner;
|
|
246
357
|
* bytes32 removePasskeyCredentialIdDigest;
|
|
247
358
|
* bytes32[] reapprove;
|
|
359
|
+
* address[] reaffirmModules; // generation 4
|
|
360
|
+
* bool reaffirmDelegationManager; // generation 4
|
|
248
361
|
* }
|
|
362
|
+
*
|
|
363
|
+
* GENERATION IS REQUIRED (spec 445 §1.3 / H-2). Generation 4 appended two fields to the struct; a generation-3
|
|
364
|
+
* payload sent to a generation-4 policy SCHEDULES fine (the args ride as a hash) and reverts only at APPLY, a day
|
|
365
|
+
* later. So the caller states the estate's `contractsGeneration` and gets that generation's bytes — never a guess.
|
|
366
|
+
* On generation 4, `reaffirmModules` lists the installed EXECUTOR modules the person keeps (not the canonical
|
|
367
|
+
* custody policy, which is exempt; never hooks, which never lapse) and `reaffirmDelegationManager` is true only
|
|
368
|
+
* when the account's delegation manager is NOT the factory's canonical one and is kept. Anything not listed is
|
|
369
|
+
* expelled by the retirement. Generation 3 has neither field and refuses them.
|
|
249
370
|
*/
|
|
250
371
|
export function buildRotateCredentialArgs(args) {
|
|
372
|
+
if (args.generation !== 3 && args.generation !== 4) {
|
|
373
|
+
throw new RangeError(`[custody] RotateCredential.generation: must be 3 or 4 (got ${String(args.generation)})`);
|
|
374
|
+
}
|
|
251
375
|
const ZERO32 = ('0x' + '00'.repeat(32));
|
|
252
376
|
const ZERO_ADDR = ('0x' + '00'.repeat(20));
|
|
253
377
|
let addOwner = ZERO_ADDR;
|
|
@@ -286,17 +410,47 @@ export function buildRotateCredentialArgs(args) {
|
|
|
286
410
|
}
|
|
287
411
|
for (const d of args.reapprove)
|
|
288
412
|
assertBytes32('RotateCredential.reapprove', d);
|
|
413
|
+
const passkeyTuple = { name: 'addPasskey', type: 'tuple', components: [
|
|
414
|
+
{ name: 'credentialIdDigest', type: 'bytes32' }, { name: 'x', type: 'uint256' }, { name: 'y', type: 'uint256' }, { name: 'rpIdHash', type: 'bytes32' },
|
|
415
|
+
] };
|
|
416
|
+
if (args.generation === 3) {
|
|
417
|
+
if ((args.reaffirmModules?.length ?? 0) > 0 || args.reaffirmDelegationManager === true) {
|
|
418
|
+
throw new RangeError('[custody] RotateCredential: reaffirmModules / reaffirmDelegationManager need contracts generation 4 (a generation-3 policy cannot decode them)');
|
|
419
|
+
}
|
|
420
|
+
return encodeAbiParameters([{
|
|
421
|
+
type: 'tuple',
|
|
422
|
+
components: [
|
|
423
|
+
{ name: 'addOwner', type: 'address' },
|
|
424
|
+
passkeyTuple,
|
|
425
|
+
{ name: 'removeOwner', type: 'address' },
|
|
426
|
+
{ name: 'removePasskeyCredentialIdDigest', type: 'bytes32' },
|
|
427
|
+
{ name: 'reapprove', type: 'bytes32[]' },
|
|
428
|
+
],
|
|
429
|
+
}], [{ addOwner, addPasskey, removeOwner, removePasskeyCredentialIdDigest, reapprove: [...args.reapprove] }]);
|
|
430
|
+
}
|
|
431
|
+
const reaffirmModules = [...(args.reaffirmModules ?? [])];
|
|
432
|
+
const seen = new Set();
|
|
433
|
+
for (const m of reaffirmModules) {
|
|
434
|
+
assertNonZeroAddress('RotateCredential.reaffirmModules', m);
|
|
435
|
+
const k = m.toLowerCase();
|
|
436
|
+
if (seen.has(k))
|
|
437
|
+
throw new RangeError(`[custody] RotateCredential.reaffirmModules: duplicate module ${m}`);
|
|
438
|
+
seen.add(k);
|
|
439
|
+
}
|
|
440
|
+
const reaffirmDelegationManager = args.reaffirmDelegationManager ?? false;
|
|
441
|
+
if (typeof reaffirmDelegationManager !== 'boolean')
|
|
442
|
+
throw new RangeError('[custody] RotateCredential.reaffirmDelegationManager: must be a boolean');
|
|
289
443
|
return encodeAbiParameters([{
|
|
290
444
|
type: 'tuple',
|
|
291
445
|
components: [
|
|
292
446
|
{ name: 'addOwner', type: 'address' },
|
|
293
|
-
|
|
294
|
-
{ name: 'credentialIdDigest', type: 'bytes32' }, { name: 'x', type: 'uint256' }, { name: 'y', type: 'uint256' }, { name: 'rpIdHash', type: 'bytes32' },
|
|
295
|
-
] },
|
|
447
|
+
passkeyTuple,
|
|
296
448
|
{ name: 'removeOwner', type: 'address' },
|
|
297
449
|
{ name: 'removePasskeyCredentialIdDigest', type: 'bytes32' },
|
|
298
450
|
{ name: 'reapprove', type: 'bytes32[]' },
|
|
451
|
+
{ name: 'reaffirmModules', type: 'address[]' },
|
|
452
|
+
{ name: 'reaffirmDelegationManager', type: 'bool' },
|
|
299
453
|
],
|
|
300
|
-
}], [{ addOwner, addPasskey, removeOwner, removePasskeyCredentialIdDigest, reapprove: [...args.reapprove] }]);
|
|
454
|
+
}], [{ addOwner, addPasskey, removeOwner, removePasskeyCredentialIdDigest, reapprove: [...args.reapprove], reaffirmModules, reaffirmDelegationManager }]);
|
|
301
455
|
}
|
|
302
456
|
//# sourceMappingURL=actions.js.map
|
package/dist/actions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}
|
package/dist/eip712.d.ts
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import type { Address, Hex } from 'viem';
|
|
2
2
|
export declare const CUSTODY_DOMAIN_NAME = "agenticprimitives.CustodyPolicy";
|
|
3
3
|
export declare const CUSTODY_DOMAIN_VERSION = "1";
|
|
4
|
+
/** AUTH-6 (spec 445, 2026-11-10) — a chain id is declared or it is an error. viem drops `chainId` from the
|
|
5
|
+
* EIP712Domain when it is not a number/bigint, so `undefined`, `null` or the string `"34348"` used to give a
|
|
6
|
+
* custody digest with NO chain binding. A positive safe integer, as a number, or a throw — never coerced. */
|
|
7
|
+
export declare function assertChainId(chainId: unknown, where?: string): number;
|
|
4
8
|
export declare function custodyDomain(args: {
|
|
5
9
|
chainId: number;
|
|
6
10
|
verifyingContract: Address;
|
package/dist/eip712.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eip712.d.ts","sourceRoot":"","sources":["../src/eip712.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAEzC,eAAO,MAAM,mBAAmB,oCAAoC,CAAC;AACrE,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAE1C,wBAAgB,aAAa,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,iBAAiB,EAAE,OAAO,CAAA;CAAE;;;;;
|
|
1
|
+
{"version":3,"file":"eip712.d.ts","sourceRoot":"","sources":["../src/eip712.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAEzC,eAAO,MAAM,mBAAmB,oCAAoC,CAAC;AACrE,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAE1C;;8GAE8G;AAC9G,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,SAAoB,GAAG,MAAM,CAKjF;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,iBAAiB,EAAE,OAAO,CAAA;CAAE;;;;;EAWlF;AAED,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;CAO/B,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;CAQ5B,CAAC;AAEX,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;CAQ/B,CAAC;AAEX,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,GAAG,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,yBAA0B,SAAQ,4BAA4B;IAC7E,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,4BAA4B,GAAG,yBAAyB,CAAC"}
|
package/dist/eip712.js
CHANGED
|
@@ -6,7 +6,20 @@
|
|
|
6
6
|
// supplies chainId + the deployed CustodyPolicy address as `verifyingContract`.
|
|
7
7
|
export const CUSTODY_DOMAIN_NAME = 'agenticprimitives.CustodyPolicy';
|
|
8
8
|
export const CUSTODY_DOMAIN_VERSION = '1';
|
|
9
|
+
/** AUTH-6 (spec 445, 2026-11-10) — a chain id is declared or it is an error. viem drops `chainId` from the
|
|
10
|
+
* EIP712Domain when it is not a number/bigint, so `undefined`, `null` or the string `"34348"` used to give a
|
|
11
|
+
* custody digest with NO chain binding. A positive safe integer, as a number, or a throw — never coerced. */
|
|
12
|
+
export function assertChainId(chainId, where = 'account-custody') {
|
|
13
|
+
if (typeof chainId !== 'number' || !Number.isSafeInteger(chainId) || chainId <= 0) {
|
|
14
|
+
throw new Error(`${where}: chainId must be a positive integer (got ${typeof chainId === 'string' ? `the string "${chainId}"` : String(chainId)}) — a digest without a chain binding is never computed`);
|
|
15
|
+
}
|
|
16
|
+
return chainId;
|
|
17
|
+
}
|
|
9
18
|
export function custodyDomain(args) {
|
|
19
|
+
assertChainId(args?.chainId, 'custodyDomain');
|
|
20
|
+
if (typeof args.verifyingContract !== 'string' || !/^0x[0-9a-fA-F]{40}$/.test(args.verifyingContract)) {
|
|
21
|
+
throw new Error('custodyDomain: verifyingContract must be the CustodyPolicy address — a digest without a verifying contract is never computed');
|
|
22
|
+
}
|
|
10
23
|
return {
|
|
11
24
|
name: CUSTODY_DOMAIN_NAME,
|
|
12
25
|
version: CUSTODY_DOMAIN_VERSION,
|
package/dist/eip712.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eip712.js","sourceRoot":"","sources":["../src/eip712.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,0EAA0E;AAC1E,gFAAgF;AAIhF,MAAM,CAAC,MAAM,mBAAmB,GAAG,iCAAiC,CAAC;AACrE,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAE1C,MAAM,UAAU,aAAa,CAAC,IAAqD;IACjF,OAAO;QACL,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,sBAAsB;QAC/B,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;KACjC,CAAC;AACb,CAAC;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,4BAA4B,EAAE;QAC5B,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;QACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE;QACjC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;QACrC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;KACtC;CACO,CAAC;AAEX,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,yBAAyB,EAAE;QACzB,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;QACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE;QACjC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;QACrC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;QACrC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE;KAChC;CACO,CAAC;AAEX,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,4BAA4B,EAAE;QAC5B,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;QACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE;QACjC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;QACrC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;QACrC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE;KAChC;CACO,CAAC"}
|
|
1
|
+
{"version":3,"file":"eip712.js","sourceRoot":"","sources":["../src/eip712.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,0EAA0E;AAC1E,gFAAgF;AAIhF,MAAM,CAAC,MAAM,mBAAmB,GAAG,iCAAiC,CAAC;AACrE,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAE1C;;8GAE8G;AAC9G,MAAM,UAAU,aAAa,CAAC,OAAgB,EAAE,KAAK,GAAG,iBAAiB;IACvE,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;QAClF,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,6CAA6C,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,OAAO,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,wDAAwD,CAAC,CAAC;IAC1M,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAqD;IACjF,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;IAC9C,IAAI,OAAO,IAAI,CAAC,iBAAiB,KAAK,QAAQ,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACtG,MAAM,IAAI,KAAK,CAAC,8HAA8H,CAAC,CAAC;IAClJ,CAAC;IACD,OAAO;QACL,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,sBAAsB;QAC/B,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;KACjC,CAAC;AACb,CAAC;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,4BAA4B,EAAE;QAC5B,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;QACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE;QACjC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;QACrC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;KACtC;CACO,CAAC;AAEX,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,yBAAyB,EAAE;QACzB,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;QACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE;QACjC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;QACrC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;QACrC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE;KAChC;CACO,CAAC;AAEX,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,4BAA4B,EAAE;QAC5B,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;QACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE;QACjC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;QACrC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;QACrC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE;KAChC;CACO,CAAC"}
|
package/dist/governance.d.ts
CHANGED
|
@@ -21,21 +21,37 @@ export declare const TIER: {
|
|
|
21
21
|
export interface CustodyPolicyInstallInput {
|
|
22
22
|
/** 1 hybrid (the Home's person default) · 2 threshold · 3 org. Mode 0 means "no policy" and is never installed. */
|
|
23
23
|
mode: 1 | 2 | 3;
|
|
24
|
-
/** Smart Agent addresses (verified by ERC-1271 in the quorum), never raw keys.
|
|
24
|
+
/** Smart Agent addresses (verified by ERC-1271 in the quorum), never raw keys. At least 1 (mode 2: 2, mode 3: 3)
|
|
25
|
+
* — the factory's rule (`AgentAccountFactory._validateInitParams`). */
|
|
25
26
|
trustees: readonly Address[];
|
|
27
|
+
/** THE ACCOUNT'S CUSTODIAN COUNT at install: external custodians + 1 if it has a passkey (the factory's `nSigners`).
|
|
28
|
+
* REQUIRED for modes 2 and 3 — their T4/T5 are a function of it and are never guessed. For mode 1 it is optional;
|
|
29
|
+
* when given, every threshold is checked against it. */
|
|
30
|
+
custodianCount?: number;
|
|
26
31
|
/** T6 trustee quorum; must be ≤ trustees.length (CP-2). Defaults to a majority: floor(N/2) + 1. */
|
|
27
32
|
recoveryApprovals?: number;
|
|
28
|
-
/** approvalsRequired by tier, index = tier.
|
|
33
|
+
/** approvalsRequired by tier, index = tier. UNSET T4/T5 TAKE THE MODE'S DEFAULT, computed here by the factory's
|
|
34
|
+
* rule (see `custodyApprovalDefaults`): mode 1 → 1/1 (the Home's hybrid person); mode 2 → the spec 207 §5.1 matrix
|
|
35
|
+
* over `custodianCount`; mode 3 → that matrix capped at floor(N/2). A SET T4/T5 must lie between the mode's default
|
|
36
|
+
* (the floor) and what the custodians can satisfy; anything else is refused, never clamped. */
|
|
29
37
|
approvalsByTier?: Partial<Record<1 | 2 | 3 | 4 | 5, number>>;
|
|
30
|
-
/** safety delays in seconds by tier, index = tier. T6
|
|
38
|
+
/** safety delays in seconds by tier, index = tier. Unset T4/T5/T6 take the factory's floors (1h · 24h · 48h); a set
|
|
39
|
+
* value may RAISE a delay, never lower it below the floor (EXT-TL-FLOOR-1). */
|
|
31
40
|
delaysByTier?: Partial<Record<1 | 2 | 3 | 4 | 5 | 6, number>>;
|
|
41
|
+
/** The factory's `relaxedT4Floor` constructor posture (R917-C-5): a LOCAL DEVELOPMENT estate whose factory was
|
|
42
|
+
* deployed with it. Lifts the T4 floor only (T5 24h / T6 48h are never relaxed) and only when said here in so
|
|
43
|
+
* many words — it is never inferred from a chain id. A production install never passes it. */
|
|
44
|
+
relaxedT4Floor?: true;
|
|
32
45
|
/** T3 high-value ceiling in wei. */
|
|
33
46
|
t3HighValueCeiling?: bigint;
|
|
34
47
|
/** Turns on `v = 1` approved-hash quorum slots for this account; zero turns them off. */
|
|
35
48
|
approvedHashRegistry?: Address;
|
|
36
49
|
}
|
|
37
|
-
/** The Home's HYBRID defaults for a person (spec 422 §4.2): her own credential changes keep needing
|
|
38
|
-
* credentials (T4 = 1), and the delays match the factory's floors (T4 1h · T5 24h · T6 48h).
|
|
50
|
+
/** The Home's HYBRID defaults for a person (spec 422 §4.2) — MODE 1 ONLY: her own credential changes keep needing
|
|
51
|
+
* one of her own credentials (T4 = 1), and the delays match the factory's floors (T4 1h · T5 24h · T6 48h).
|
|
52
|
+
* REM-4 (spec 445, 2026-11-10): these were merged into EVERY mode, so an organization that left `approvalsByTier`
|
|
53
|
+
* unset — as the field's own documentation told it to — installed admin = critical = 1-of-N, and because the
|
|
54
|
+
* builder always sent non-zero T4/T5 the contract's CP-1 custodian-count floor never ran. */
|
|
39
55
|
export declare const HOME_HYBRID_DEFAULTS: {
|
|
40
56
|
readonly approvalsByTier: {
|
|
41
57
|
readonly 4: 1;
|
|
@@ -48,8 +64,45 @@ export declare const HOME_HYBRID_DEFAULTS: {
|
|
|
48
64
|
};
|
|
49
65
|
readonly t3HighValueCeiling: 10000000000000000n;
|
|
50
66
|
};
|
|
67
|
+
/** The factory's timelock floors in seconds — `AgentAccountFactory._buildValidatorInitData` (AgentAccountFactory.sol
|
|
68
|
+
* :375 `floor4 = relaxedT4Floor ? 0 : 1 hours`, :388-390 `TimelockBelowFloor` for T4 / T5 24h / T6 48h). */
|
|
69
|
+
export declare const CUSTODY_DELAY_FLOORS: {
|
|
70
|
+
readonly 4: 3600;
|
|
71
|
+
readonly 5: 86400;
|
|
72
|
+
readonly 6: 172800;
|
|
73
|
+
};
|
|
51
74
|
export declare const majorityOf: (n: number) => number;
|
|
52
|
-
/**
|
|
75
|
+
/** Spec 207 §5.1 default-approvals matrix — a port of `CustodyPolicy._defaultApprovals` (CustodyPolicy.sol:1127-1139):
|
|
76
|
+
* T4: N ≤ 3 → N · N ≤ 6 → N−1 · else N−2; T5: N ≤ 5 → N · else N−1; every other tier 0 (the 1-of-N floor).
|
|
77
|
+
* Pinned to the Solidity source by `test/cross-stack-custody-install.test.ts`. */
|
|
78
|
+
export declare function defaultApprovals(nCustodians: number, tier: number): number;
|
|
79
|
+
/** THE T4/T5 A MODE GETS when the caller sets none — what `AgentAccountFactory._buildValidatorInitData` computes
|
|
80
|
+
* (AgentAccountFactory.sol:347-365) for modes 2 and 3, and the Home's spec-422 hybrid for mode 1:
|
|
81
|
+
* mode 2 (threshold): the matrix over N.
|
|
82
|
+
* mode 3 (org): N ≥ 2 (`InfeasibleOrgConfig`), the matrix CAPPED at floor(N/2) — separation of duties needs
|
|
83
|
+
* disjoint propose + apply quorums, so 2×threshold distinct custodians must exist (ACCT-M1).
|
|
84
|
+
* mode 1 (hybrid): 1 / 1. */
|
|
85
|
+
export declare function custodyApprovalDefaults(mode: 1 | 2 | 3, custodianCount: number | undefined): {
|
|
86
|
+
4: number;
|
|
87
|
+
5: number;
|
|
88
|
+
};
|
|
89
|
+
/** What an install will set, in plain values — so a surface shows the signer the policy she is signing (the digest
|
|
90
|
+
* is over `installModule(…, data)`; the bytes say nothing a person can read). */
|
|
91
|
+
export interface ResolvedCustodyPolicyInstall {
|
|
92
|
+
mode: 1 | 2 | 3;
|
|
93
|
+
recoveryApprovals: number;
|
|
94
|
+
trustees: Address[];
|
|
95
|
+
/** index = tier; index 0 and 6 unused (T6 is `recoveryApprovals`). 0 on T1–T3 = the contract's 1-of-N. */
|
|
96
|
+
approvalsByTier: [number, number, number, number, number, number, number];
|
|
97
|
+
/** seconds, index = tier. */
|
|
98
|
+
delaysByTier: [number, number, number, number, number, number, number];
|
|
99
|
+
t3HighValueCeiling: bigint;
|
|
100
|
+
approvedHashRegistry: Address;
|
|
101
|
+
}
|
|
102
|
+
/** Resolve + VALIDATE an install. Refuses what the factory would refuse; substitutes nothing silently. */
|
|
103
|
+
export declare function resolveCustodyPolicyInstall(input: CustodyPolicyInstallInput): ResolvedCustodyPolicyInstall;
|
|
104
|
+
/** `abi.encode(uint8 mode, uint8 recThr, address[] trustees, uint8[7] thresholds, uint32[7] delays, uint256 t3, address reg)`.
|
|
105
|
+
* The values are `resolveCustodyPolicyInstall(input)` — show THOSE to the signer. */
|
|
53
106
|
export declare function buildCustodyPolicyInstallData(input: CustodyPolicyInstallInput): Hex;
|
|
54
107
|
/** `execute(self, installModule(EXECUTOR, custodyPolicy, data))` — the ONE self-call that names a person's trustees.
|
|
55
108
|
* Signed by a credential that signs for her today; after it lands the account is custody-governed. */
|
package/dist/governance.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"governance.d.ts","sourceRoot":"","sources":["../src/governance.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"governance.d.ts","sourceRoot":"","sources":["../src/governance.ts"],"names":[],"mappings":"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"}
|
package/dist/governance.js
CHANGED
|
@@ -6,6 +6,10 @@
|
|
|
6
6
|
// (the factory's floors apply only at deploy). A post-deploy install that left T6 at 0 would succeed and leave
|
|
7
7
|
// `RecoverAccount` unschedulable (`TimelockRequiredForTier(6)`); one that left T4 at 0 would make every credential
|
|
8
8
|
// change immediate. The Home's hybrid install sets them explicitly — proven in `test/Spec422Recovery.t.sol`.
|
|
9
|
+
//
|
|
10
|
+
// THE RULE (REM-4, spec 445): a post-deploy install gets what the FACTORY would have given that mode — the
|
|
11
|
+
// defaults are PER MODE, the factory's floors are enforced here because `onInstall` enforces none of them once it is
|
|
12
|
+
// handed non-zero values, and a configuration the factory would refuse is refused. The hybrid 1/1 is mode 1's only.
|
|
9
13
|
import { encodeAbiParameters, encodeFunctionData, hashTypedData, keccak256 } from 'viem';
|
|
10
14
|
import { custodyPolicyAbi } from './abi.js';
|
|
11
15
|
import { custodyDomain, ScheduleCustodyChangeRequest, ApplyCustodyChangeRequest, CancelScheduledChangeRequest } from './eip712.js';
|
|
@@ -16,41 +20,133 @@ const INSTALL_MODULE_ABI = [
|
|
|
16
20
|
];
|
|
17
21
|
/** Tier indices as the contract's arrays use them (index = tier; index 0 unused). Spec 207 §5. */
|
|
18
22
|
export const TIER = { read: 1, write: 2, value: 3, admin: 4, critical: 5, recovery: 6 };
|
|
19
|
-
/** The Home's HYBRID defaults for a person (spec 422 §4.2): her own credential changes keep needing
|
|
20
|
-
* credentials (T4 = 1), and the delays match the factory's floors (T4 1h · T5 24h · T6 48h).
|
|
23
|
+
/** The Home's HYBRID defaults for a person (spec 422 §4.2) — MODE 1 ONLY: her own credential changes keep needing
|
|
24
|
+
* one of her own credentials (T4 = 1), and the delays match the factory's floors (T4 1h · T5 24h · T6 48h).
|
|
25
|
+
* REM-4 (spec 445, 2026-11-10): these were merged into EVERY mode, so an organization that left `approvalsByTier`
|
|
26
|
+
* unset — as the field's own documentation told it to — installed admin = critical = 1-of-N, and because the
|
|
27
|
+
* builder always sent non-zero T4/T5 the contract's CP-1 custodian-count floor never ran. */
|
|
21
28
|
export const HOME_HYBRID_DEFAULTS = {
|
|
22
29
|
approvalsByTier: { 4: 1, 5: 1 },
|
|
23
30
|
delaysByTier: { 4: 3600, 5: 86_400, 6: 172_800 },
|
|
24
31
|
t3HighValueCeiling: 10000000000000000n, // 0.01 ether, the factory's value
|
|
25
32
|
};
|
|
33
|
+
/** The factory's timelock floors in seconds — `AgentAccountFactory._buildValidatorInitData` (AgentAccountFactory.sol
|
|
34
|
+
* :375 `floor4 = relaxedT4Floor ? 0 : 1 hours`, :388-390 `TimelockBelowFloor` for T4 / T5 24h / T6 48h). */
|
|
35
|
+
export const CUSTODY_DELAY_FLOORS = { 4: 3600, 5: 86_400, 6: 172_800 };
|
|
26
36
|
export const majorityOf = (n) => (n === 0 ? 0 : Math.floor(n / 2) + 1);
|
|
27
|
-
/**
|
|
28
|
-
|
|
37
|
+
/** Spec 207 §5.1 default-approvals matrix — a port of `CustodyPolicy._defaultApprovals` (CustodyPolicy.sol:1127-1139):
|
|
38
|
+
* T4: N ≤ 3 → N · N ≤ 6 → N−1 · else N−2; T5: N ≤ 5 → N · else N−1; every other tier 0 (the 1-of-N floor).
|
|
39
|
+
* Pinned to the Solidity source by `test/cross-stack-custody-install.test.ts`. */
|
|
40
|
+
export function defaultApprovals(nCustodians, tier) {
|
|
41
|
+
if (nCustodians === 0)
|
|
42
|
+
return 0;
|
|
43
|
+
if (tier === 4)
|
|
44
|
+
return nCustodians <= 3 ? nCustodians : nCustodians <= 6 ? nCustodians - 1 : nCustodians - 2;
|
|
45
|
+
if (tier === 5)
|
|
46
|
+
return nCustodians <= 5 ? nCustodians : nCustodians - 1;
|
|
47
|
+
return 0;
|
|
48
|
+
}
|
|
49
|
+
/** THE T4/T5 A MODE GETS when the caller sets none — what `AgentAccountFactory._buildValidatorInitData` computes
|
|
50
|
+
* (AgentAccountFactory.sol:347-365) for modes 2 and 3, and the Home's spec-422 hybrid for mode 1:
|
|
51
|
+
* mode 2 (threshold): the matrix over N.
|
|
52
|
+
* mode 3 (org): N ≥ 2 (`InfeasibleOrgConfig`), the matrix CAPPED at floor(N/2) — separation of duties needs
|
|
53
|
+
* disjoint propose + apply quorums, so 2×threshold distinct custodians must exist (ACCT-M1).
|
|
54
|
+
* mode 1 (hybrid): 1 / 1. */
|
|
55
|
+
export function custodyApprovalDefaults(mode, custodianCount) {
|
|
56
|
+
if (mode === 1)
|
|
57
|
+
return { ...HOME_HYBRID_DEFAULTS.approvalsByTier };
|
|
58
|
+
const n = custodianCount;
|
|
59
|
+
if (n === undefined)
|
|
60
|
+
throw new Error(`custody mode ${mode} needs custodianCount — its admin (T4) and critical (T5) approvals are a function of it and are never defaulted to 1`);
|
|
61
|
+
if (mode === 3) {
|
|
62
|
+
if (n < 2)
|
|
63
|
+
throw new Error(`an organization (mode 3) needs at least 2 custodians to separate duties (got ${n})`);
|
|
64
|
+
const cap = Math.floor(n / 2);
|
|
65
|
+
return { 4: Math.min(defaultApprovals(n, 4), cap), 5: Math.min(defaultApprovals(n, 5), cap) };
|
|
66
|
+
}
|
|
67
|
+
return { 4: defaultApprovals(n, 4), 5: defaultApprovals(n, 5) };
|
|
68
|
+
}
|
|
69
|
+
const isCount = (v, max) => typeof v === 'number' && Number.isInteger(v) && v >= 0 && v <= max;
|
|
70
|
+
/** Resolve + VALIDATE an install. Refuses what the factory would refuse; substitutes nothing silently. */
|
|
71
|
+
export function resolveCustodyPolicyInstall(input) {
|
|
29
72
|
if (![1, 2, 3].includes(input.mode))
|
|
30
73
|
throw new Error(`custody mode must be 1, 2 or 3 (got ${input.mode})`);
|
|
74
|
+
const mode = input.mode;
|
|
31
75
|
const trustees = [...new Set(input.trustees.map((t) => t.toLowerCase()))];
|
|
32
76
|
if (trustees.length !== input.trustees.length)
|
|
33
77
|
throw new Error('duplicate trustee');
|
|
34
|
-
if (trustees.some((t) => /^0x0{40}$/.test(t)))
|
|
78
|
+
if (trustees.some((t) => !/^0x[0-9a-f]{40}$/.test(t) || /^0x0{40}$/.test(t)))
|
|
35
79
|
throw new Error('a trustee must be an address');
|
|
80
|
+
// AgentAccountFactory._validateInitParams (AgentAccountFactory.sol:323-331): a recoverable mode names trustees.
|
|
81
|
+
const minTrustees = mode === 3 ? 3 : mode === 2 ? 2 : 1;
|
|
82
|
+
if (trustees.length < minTrustees)
|
|
83
|
+
throw new Error(`custody mode ${mode} needs at least ${minTrustees} trustee${minTrustees === 1 ? '' : 's'} (got ${trustees.length})`);
|
|
84
|
+
if (trustees.length > 255)
|
|
85
|
+
throw new Error('too many trustees');
|
|
36
86
|
const rec = input.recoveryApprovals ?? majorityOf(trustees.length);
|
|
87
|
+
if (!isCount(rec, 255))
|
|
88
|
+
throw new Error(`recovery approvals must be a whole number (got ${rec})`);
|
|
37
89
|
if (rec > trustees.length)
|
|
38
90
|
throw new Error(`recovery approvals (${rec}) exceed the trustee count (${trustees.length})`);
|
|
39
|
-
if (
|
|
91
|
+
if (rec === 0)
|
|
40
92
|
throw new Error('recovery approvals must be at least 1 when trustees are named');
|
|
41
|
-
const
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
93
|
+
const n = input.custodianCount;
|
|
94
|
+
if (n !== undefined && (!isCount(n, 255) || n < 1))
|
|
95
|
+
throw new Error(`custodianCount must be a whole number from 1 to 255 (got ${n})`);
|
|
96
|
+
const defaults = custodyApprovalDefaults(mode, n); // throws for modes 2/3 without a custodian count
|
|
97
|
+
const approvals = [0, 0, 0, 0, defaults[4], defaults[5], 0];
|
|
98
|
+
for (const [k, v] of Object.entries(input.approvalsByTier ?? {})) {
|
|
99
|
+
const tier = Number(k);
|
|
100
|
+
if (![1, 2, 3, 4, 5].includes(tier))
|
|
101
|
+
throw new Error(`approvalsByTier: tier ${k} is not T1–T5 (T6 is recoveryApprovals)`);
|
|
102
|
+
if (v === undefined)
|
|
103
|
+
continue;
|
|
104
|
+
if (!isCount(v, 255))
|
|
105
|
+
throw new Error(`approvalsByTier[${tier}] must be a whole number (got ${v})`);
|
|
106
|
+
if (n !== undefined && v > n)
|
|
107
|
+
throw new Error(`T${tier} approvals (${v}) exceed the custodian count (${n}) — a threshold nobody can meet locks the account`);
|
|
108
|
+
if (tier >= 4) {
|
|
109
|
+
// CP-1: admin and critical are never 0 (0 would let onInstall's floor — or, with no readable count, the
|
|
110
|
+
// UnconfiguredTier revert — decide instead of the signer).
|
|
111
|
+
if (v === 0)
|
|
112
|
+
throw new Error(`T${tier} approvals must be at least 1 — zero is not "use a default" here; leave it unset for the mode's default`);
|
|
113
|
+
const floor = defaults[tier];
|
|
114
|
+
if (mode !== 1 && v < floor)
|
|
115
|
+
throw new Error(`T${tier} approvals (${v}) are below mode ${mode}'s floor for ${n} custodians (${floor}) — the factory would not deploy this policy`);
|
|
116
|
+
if (mode === 3 && v > Math.floor(n / 2))
|
|
117
|
+
throw new Error(`T${tier} approvals (${v}) cannot be met by disjoint propose and apply quorums of ${n} custodians (at most ${Math.floor(n / 2)})`);
|
|
118
|
+
}
|
|
119
|
+
approvals[tier] = v;
|
|
120
|
+
}
|
|
121
|
+
const delays = [0, 0, 0, 0, input.relaxedT4Floor === true ? 0 : CUSTODY_DELAY_FLOORS[4], CUSTODY_DELAY_FLOORS[5], CUSTODY_DELAY_FLOORS[6]];
|
|
122
|
+
for (const [k, v] of Object.entries(input.delaysByTier ?? {})) {
|
|
123
|
+
const tier = Number(k);
|
|
124
|
+
if (![1, 2, 3, 4, 5, 6].includes(tier))
|
|
125
|
+
throw new Error(`delaysByTier: tier ${k} is not T1–T6`);
|
|
126
|
+
if (v === undefined)
|
|
127
|
+
continue;
|
|
128
|
+
if (!isCount(v, 0xffff_ffff))
|
|
129
|
+
throw new Error(`delaysByTier[${tier}] must be whole seconds (got ${v})`);
|
|
130
|
+
const floor = tier === 4 ? (input.relaxedT4Floor === true ? 0 : CUSTODY_DELAY_FLOORS[4]) : tier === 5 ? CUSTODY_DELAY_FLOORS[5] : tier === 6 ? CUSTODY_DELAY_FLOORS[6] : 0;
|
|
131
|
+
if (v < floor)
|
|
132
|
+
throw new Error(`the T${tier} safety delay (${v}s) is below the floor (${floor}s) — a delay may be raised, never lowered${tier === 6 ? '; generation 4 onInstall refuses it (SafetyDelayBelowFloor), and on older policies a zero makes RecoverAccount unschedulable' : ''}`);
|
|
133
|
+
delays[tier] = v;
|
|
134
|
+
}
|
|
135
|
+
if (input.relaxedT4Floor !== undefined && input.relaxedT4Floor !== true)
|
|
136
|
+
throw new Error('relaxedT4Floor is `true` or absent');
|
|
137
|
+
const registry = input.approvedHashRegistry ?? '0x0000000000000000000000000000000000000000';
|
|
138
|
+
if (!/^0x[0-9a-fA-F]{40}$/.test(registry))
|
|
139
|
+
throw new Error('approvedHashRegistry must be an address');
|
|
140
|
+
const t3 = input.t3HighValueCeiling ?? HOME_HYBRID_DEFAULTS.t3HighValueCeiling;
|
|
141
|
+
if (typeof t3 !== 'bigint' || t3 < 0n)
|
|
142
|
+
throw new Error('t3HighValueCeiling must be a non-negative bigint (wei)');
|
|
143
|
+
return { mode, recoveryApprovals: rec, trustees, approvalsByTier: approvals, delaysByTier: delays, t3HighValueCeiling: t3, approvedHashRegistry: registry };
|
|
144
|
+
}
|
|
145
|
+
/** `abi.encode(uint8 mode, uint8 recThr, address[] trustees, uint8[7] thresholds, uint32[7] delays, uint256 t3, address reg)`.
|
|
146
|
+
* The values are `resolveCustodyPolicyInstall(input)` — show THOSE to the signer. */
|
|
147
|
+
export function buildCustodyPolicyInstallData(input) {
|
|
148
|
+
const r = resolveCustodyPolicyInstall(input);
|
|
149
|
+
return encodeAbiParameters([{ type: 'uint8' }, { type: 'uint8' }, { type: 'address[]' }, { type: 'uint8[7]' }, { type: 'uint32[7]' }, { type: 'uint256' }, { type: 'address' }], [r.mode, r.recoveryApprovals, r.trustees, r.approvalsByTier, r.delaysByTier, r.t3HighValueCeiling, r.approvedHashRegistry]);
|
|
54
150
|
}
|
|
55
151
|
/** `execute(self, installModule(EXECUTOR, custodyPolicy, data))` — the ONE self-call that names a person's trustees.
|
|
56
152
|
* Signed by a credential that signs for her today; after it lands the account is custody-governed. */
|
package/dist/governance.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"governance.js","sourceRoot":"","sources":["../src/governance.ts"],"names":[],"mappings":"AAAA,gHAAgH;AAChH,qHAAqH;AACrH,wEAAwE;AACxE,EAAE;AACF,iHAAiH;AACjH,+GAA+G;AAC/G,mHAAmH;AACnH,6GAA6G;AAC7G,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,aAAa,EAAE,SAAS,EAA0B,MAAM,MAAM,CAAC;AACjH,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,4BAA4B,EAAE,yBAAyB,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAC;AAMnI,8EAA8E;AAC9E,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAEvC,MAAM,kBAAkB,GAAG;IACzB,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;CAC9M,CAAC;AAEX,kGAAkG;AAClG,MAAM,CAAC,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAW,CAAC;AAmBjG;iGACiG;AACjG,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,eAAe,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;IAC/B,YAAY,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE;IAChD,kBAAkB,EAAE,kBAAuB,EAAE,kCAAkC;CACvE,CAAC;AAEX,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAEvF,kIAAkI;AAClI,MAAM,UAAU,6BAA6B,CAAC,KAAgC;IAC5E,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;IAC3G,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAc,CAAC;IACvF,IAAI,QAAQ,CAAC,MAAM,KAAK,KAAK,CAAC,QAAQ,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACpF,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAC/F,MAAM,GAAG,GAAG,KAAK,CAAC,iBAAiB,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnE,IAAI,GAAG,GAAG,QAAQ,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,GAAG,+BAA+B,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IACxH,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IACvH,MAAM,SAAS,GAAG,EAAE,GAAG,oBAAoB,CAAC,eAAe,EAAE,GAAG,CAAC,KAAK,CAAC,eAAe,IAAI,EAAE,CAAC,EAAE,CAAC;IAChG,MAAM,MAAM,GAAG,EAAE,GAAG,oBAAoB,CAAC,YAAY,EAAE,GAAG,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,CAAC;IACvF,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,yHAAyH,CAAC,CAAC;IACjK,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IACpF,MAAM,UAAU,GAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACnD,MAAM,SAAS,GAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;QAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAClF,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAC9E,OAAO,mBAAmB,CACxB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EACpJ,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,UAA0F,EAAE,SAAyF,EAAE,KAAK,CAAC,kBAAkB,IAAI,oBAAoB,CAAC,kBAAkB,EAAE,KAAK,CAAC,oBAAoB,IAAI,4CAA4C,CAAC,CACpW,CAAC;AACJ,CAAC;AAED;uGACuG;AACvG,MAAM,UAAU,wBAAwB,CAAC,OAAgB,EAAE,aAAsB,EAAE,WAAgB;IACjG,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,CAAC,EAAE,GAAG,EAAE,kBAAkB,EAAE,YAAY,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,oBAAoB,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC;AACpL,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,aAAsB,EAAE,KAA8E;IAC9I,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,CAAC,EAAE,GAAG,EAAE,gBAAgB,EAAE,YAAY,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;AACzM,CAAC;AACD,MAAM,UAAU,sBAAsB,CAAC,aAAsB,EAAE,KAA8D;IAC3H,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,CAAC,EAAE,GAAG,EAAE,gBAAgB,EAAE,YAAY,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;AAC5L,CAAC;AACD,MAAM,UAAU,yBAAyB,CAAC,aAAsB,EAAE,KAA8D;IAC9H,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,CAAC,EAAE,GAAG,EAAE,gBAAgB,EAAE,YAAY,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;AAC/L,CAAC;AAID,gHAAgH;AAChH,MAAM,UAAU,2BAA2B,CAAC,CAAqB;IAC/D,OAAO,aAAa,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,EAAE,KAAK,EAAE,4BAA4B,EAAE,WAAW,EAAE,8BAA8B,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AACtS,CAAC;AACD,MAAM,UAAU,wBAAwB,CAAC,CAAuC;IAC9E,OAAO,aAAa,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,WAAW,EAAE,2BAA2B,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAC5S,CAAC;AACD,MAAM,UAAU,2BAA2B,CAAC,CAAuC;IACjF,OAAO,aAAa,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,EAAE,KAAK,EAAE,4BAA4B,EAAE,WAAW,EAAE,8BAA8B,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAClT,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,UAAU,CAAC,OAAe;IACxC,IAAI,OAAO,IAAI,CAAC;QAAE,OAAO,UAAU,CAAC;IACpC,IAAI,OAAO,GAAG,MAAM,KAAK,CAAC,EAAE,CAAC;QAAC,MAAM,CAAC,GAAG,OAAO,GAAG,MAAM,CAAC;QAAC,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IAAC,CAAC;IACnG,IAAI,OAAO,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC;QAAC,MAAM,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC;QAAC,OAAO,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IAAC,CAAC;IAChG,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IAAC,OAAO,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;AAChF,CAAC"}
|
|
1
|
+
{"version":3,"file":"governance.js","sourceRoot":"","sources":["../src/governance.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { custodyPolicyAbi } from './abi.js';
|
|
2
|
-
export { CustodyAction, buildAddCustodianArgs, buildRemoveCustodianArgs, buildAddTrusteeArgs, buildRemoveTrusteeArgs, buildChangeCustodyModeArgs, buildChangeValueCeilingArgs, buildSetRecoveryApprovalsArgs, buildApplySystemUpdateArgs, buildChangeApprovalsRequiredArgs, buildAddPasskeyCredentialArgs, buildRemovePasskeyCredentialArgs, buildRotateAllCustodiansArgs, buildRecoverAccountArgs, buildRotateCredentialArgs, type RecoveryPasskeyAdd, } from './actions.js';
|
|
2
|
+
export { CustodyAction, buildAddCustodianArgs, buildRemoveCustodianArgs, buildAddTrusteeArgs, buildRemoveTrusteeArgs, buildChangeCustodyModeArgs, buildChangeValueCeilingArgs, buildSetRecoveryApprovalsArgs, buildApplySystemUpdateArgs, buildChangeApprovalsRequiredArgs, buildAddPasskeyCredentialArgs, buildRemovePasskeyCredentialArgs, buildRotateAllCustodiansArgs, buildRecoverAccountArgs, buildRotateCredentialArgs, buildInstallModuleArgs, buildUninstallModuleArgs, buildLowerSpendCeilingArgs, buildSetSpendCeilingArgs, custodyActionTier, PAUSE_EXEMPT_CUSTODY_ACTIONS, isPauseExemptCustodyAction, type RecoveryPasskeyAdd, type RemovalLowering, } from './actions.js';
|
|
3
3
|
export { CUSTODY_DOMAIN_NAME, CUSTODY_DOMAIN_VERSION, custodyDomain, ScheduleCustodyChangeRequest, ApplyCustodyChangeRequest, CancelScheduledChangeRequest, type ScheduleCustodyChangeMessage, type ApplyCustodyChangeMessage, type CancelScheduledChangeMessage, } from './eip712.js';
|
|
4
4
|
export { type Custodian, type Trustee, type CustodyCouncil, type ScheduledChange, type CustodyMode, type RiskTier, CUSTODY_MODE_BY_INDEX, } from './types.js';
|
|
5
5
|
export { type EcdsaSlot, type ContractSigSlot, type ApprovedHashSlot, type PasskeySlot, type QuorumSlot, type WebAuthnAssertion, packQuorumSigs, encodePasskeyTailBody, passkeyIdentity, SELF_PASSKEY_TRUSTEE, } from './quorum-slots.js';
|
|
6
|
-
export { type CustodyCall, type CustodyPolicyInstallInput, type CustodyDigestInput, MODULE_TYPE_EXECUTOR, TIER, HOME_HYBRID_DEFAULTS, majorityOf, buildCustodyPolicyInstallData, installCustodyPolicyCall, scheduleCustodyChangeCall, applyCustodyChangeCall, cancelScheduledChangeCall, scheduleCustodyChangeDigest, applyCustodyChangeDigest, cancelScheduledChangeDigest, delayWords, } from './governance.js';
|
|
6
|
+
export { type CustodyCall, type CustodyPolicyInstallInput, type ResolvedCustodyPolicyInstall, type CustodyDigestInput, MODULE_TYPE_EXECUTOR, TIER, HOME_HYBRID_DEFAULTS, majorityOf, CUSTODY_DELAY_FLOORS, defaultApprovals, custodyApprovalDefaults, resolveCustodyPolicyInstall, buildCustodyPolicyInstallData, installCustodyPolicyCall, scheduleCustodyChangeCall, applyCustodyChangeCall, cancelScheduledChangeCall, scheduleCustodyChangeDigest, applyCustodyChangeDigest, cancelScheduledChangeDigest, delayWords, } from './governance.js';
|
|
7
7
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,EAC1B,2BAA2B,EAC3B,6BAA6B,EAC7B,0BAA0B,EAC1B,gCAAgC,EAChC,6BAA6B,EAC7B,gCAAgC,EAChC,4BAA4B,EAC5B,uBAAuB,EACvB,yBAAyB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,EAC1B,2BAA2B,EAC3B,6BAA6B,EAC7B,0BAA0B,EAC1B,gCAAgC,EAChC,6BAA6B,EAC7B,gCAAgC,EAChC,4BAA4B,EAC5B,uBAAuB,EACvB,yBAAyB,EAEzB,sBAAsB,EACtB,wBAAwB,EACxB,0BAA0B,EAC1B,wBAAwB,EACxB,iBAAiB,EACjB,4BAA4B,EAC5B,0BAA0B,EAC1B,KAAK,kBAAkB,EACvB,KAAK,eAAe,GACrB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,aAAa,EACb,4BAA4B,EAC5B,yBAAyB,EACzB,4BAA4B,EAC5B,KAAK,4BAA4B,EACjC,KAAK,yBAAyB,EAC9B,KAAK,4BAA4B,GAClC,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,KAAK,SAAS,EACd,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,QAAQ,EACb,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,yBAAyB,EAC9B,KAAK,4BAA4B,EACjC,KAAK,kBAAkB,EACvB,oBAAoB,EACpB,IAAI,EACJ,oBAAoB,EACpB,UAAU,EAEV,oBAAoB,EACpB,gBAAgB,EAChB,uBAAuB,EACvB,2BAA2B,EAC3B,6BAA6B,EAC7B,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,EACtB,yBAAyB,EACzB,2BAA2B,EAC3B,wBAAwB,EACxB,2BAA2B,EAC3B,UAAU,GACX,MAAM,iBAAiB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -8,11 +8,15 @@
|
|
|
8
8
|
// Delegation / Steward / Caveat concepts belong in @agenticprimitives/delegation.
|
|
9
9
|
// See spec 212 § 2.2 + spec 213 for the vocabulary firewall.
|
|
10
10
|
export { custodyPolicyAbi } from './abi.js';
|
|
11
|
-
export { CustodyAction, buildAddCustodianArgs, buildRemoveCustodianArgs, buildAddTrusteeArgs, buildRemoveTrusteeArgs, buildChangeCustodyModeArgs, buildChangeValueCeilingArgs, buildSetRecoveryApprovalsArgs, buildApplySystemUpdateArgs, buildChangeApprovalsRequiredArgs, buildAddPasskeyCredentialArgs, buildRemovePasskeyCredentialArgs, buildRotateAllCustodiansArgs, buildRecoverAccountArgs, buildRotateCredentialArgs,
|
|
11
|
+
export { CustodyAction, buildAddCustodianArgs, buildRemoveCustodianArgs, buildAddTrusteeArgs, buildRemoveTrusteeArgs, buildChangeCustodyModeArgs, buildChangeValueCeilingArgs, buildSetRecoveryApprovalsArgs, buildApplySystemUpdateArgs, buildChangeApprovalsRequiredArgs, buildAddPasskeyCredentialArgs, buildRemovePasskeyCredentialArgs, buildRotateAllCustodiansArgs, buildRecoverAccountArgs, buildRotateCredentialArgs,
|
|
12
|
+
// Spec 445 / contracts generation 4 — actions 17–20, their tiers, the pause-exempt set
|
|
13
|
+
buildInstallModuleArgs, buildUninstallModuleArgs, buildLowerSpendCeilingArgs, buildSetSpendCeilingArgs, custodyActionTier, PAUSE_EXEMPT_CUSTODY_ACTIONS, isPauseExemptCustodyAction, } from './actions.js';
|
|
12
14
|
export { CUSTODY_DOMAIN_NAME, CUSTODY_DOMAIN_VERSION, custodyDomain, ScheduleCustodyChangeRequest, ApplyCustodyChangeRequest, CancelScheduledChangeRequest, } from './eip712.js';
|
|
13
15
|
export { CUSTODY_MODE_BY_INDEX, } from './types.js';
|
|
14
16
|
export { packQuorumSigs, encodePasskeyTailBody, passkeyIdentity, SELF_PASSKEY_TRUSTEE, } from './quorum-slots.js';
|
|
15
17
|
// Spec 422 §4 — the governance calls a Home makes for a person: install the policy post-deploy (naming trustees),
|
|
16
18
|
// schedule / apply / cancel a change, and the digests a quorum signs.
|
|
17
|
-
export { MODULE_TYPE_EXECUTOR, TIER, HOME_HYBRID_DEFAULTS, majorityOf,
|
|
19
|
+
export { MODULE_TYPE_EXECUTOR, TIER, HOME_HYBRID_DEFAULTS, majorityOf,
|
|
20
|
+
// REM-4 (spec 445) — per-mode defaults by the factory's rule; the resolved policy in plain values
|
|
21
|
+
CUSTODY_DELAY_FLOORS, defaultApprovals, custodyApprovalDefaults, resolveCustodyPolicyInstall, buildCustodyPolicyInstallData, installCustodyPolicyCall, scheduleCustodyChangeCall, applyCustodyChangeCall, cancelScheduledChangeCall, scheduleCustodyChangeDigest, applyCustodyChangeDigest, cancelScheduledChangeDigest, delayWords, } from './governance.js';
|
|
18
22
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,EAAE;AACF,uEAAuE;AACvE,oEAAoE;AACpE,8EAA8E;AAC9E,EAAE;AACF,wEAAwE;AACxE,kFAAkF;AAClF,6DAA6D;AAE7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,EAC1B,2BAA2B,EAC3B,6BAA6B,EAC7B,0BAA0B,EAC1B,gCAAgC,EAChC,6BAA6B,EAC7B,gCAAgC,EAChC,4BAA4B,EAC5B,uBAAuB,EACvB,yBAAyB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,EAAE;AACF,uEAAuE;AACvE,oEAAoE;AACpE,8EAA8E;AAC9E,EAAE;AACF,wEAAwE;AACxE,kFAAkF;AAClF,6DAA6D;AAE7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,EAC1B,2BAA2B,EAC3B,6BAA6B,EAC7B,0BAA0B,EAC1B,gCAAgC,EAChC,6BAA6B,EAC7B,gCAAgC,EAChC,4BAA4B,EAC5B,uBAAuB,EACvB,yBAAyB;AACzB,uFAAuF;AACvF,sBAAsB,EACtB,wBAAwB,EACxB,0BAA0B,EAC1B,wBAAwB,EACxB,iBAAiB,EACjB,4BAA4B,EAC5B,0BAA0B,GAG3B,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,aAAa,EACb,4BAA4B,EAC5B,yBAAyB,EACzB,4BAA4B,GAI7B,MAAM,aAAa,CAAC;AAErB,OAAO,EAOL,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAOL,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAE3B,kHAAkH;AAClH,sEAAsE;AACtE,OAAO,EAKL,oBAAoB,EACpB,IAAI,EACJ,oBAAoB,EACpB,UAAU;AACV,kGAAkG;AAClG,oBAAoB,EACpB,gBAAgB,EAChB,uBAAuB,EACvB,2BAA2B,EAC3B,6BAA6B,EAC7B,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,EACtB,yBAAyB,EACzB,2BAA2B,EAC3B,wBAAwB,EACxB,2BAA2B,EAC3B,UAAU,GACX,MAAM,iBAAiB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agenticprimitives/account-custody",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.48",
|
|
4
4
|
"description": "Custody-layer SDK: CustodyPolicy ABI, CustodyAction enum + arg builders, EIP-712 typed-data helpers, and Custodian/Trustee/CustodyCouncil types. Speaks custody-domain vocabulary only — no delegation / steward / caveat concepts (those belong in @agenticprimitives/delegation).",
|
|
5
5
|
"homepage": "https://agenticprimitives.dev",
|
|
6
6
|
"bugs": {
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
},
|
|
37
37
|
"peerDependencies": {
|
|
38
38
|
"viem": "^2.52.2",
|
|
39
|
-
"@agenticprimitives/types": "^1.0.0-alpha.
|
|
39
|
+
"@agenticprimitives/types": "^1.0.0-alpha.48"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
42
|
"@types/node": "^22.7.0",
|
|
@@ -58,6 +58,7 @@
|
|
|
58
58
|
"build": "tsc -p tsconfig.build.json",
|
|
59
59
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
60
60
|
"test": "vitest run",
|
|
61
|
+
"test:unit": "vitest run",
|
|
61
62
|
"test:watch": "vitest",
|
|
62
63
|
"clean": "rm -rf dist"
|
|
63
64
|
}
|