@engramx/idl 0.16.0-rc.18 → 0.16.0-rc.19

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.
@@ -15,6 +15,7 @@ export interface About {
15
15
  agentCount: bigint;
16
16
  paidMemoryReadEnabled: boolean;
17
17
  version: string;
18
+ timersPausedSinceDayNs: [] | [bigint];
18
19
  paymentsFrozen: boolean;
19
20
  agentMemoryWrites: bigint;
20
21
  agentMemoryReads: bigint;
@@ -142,7 +143,9 @@ export interface AnchorPushStatus {
142
143
  carrierArmedAtNs: bigint;
143
144
  attemptAtNs: [] | [bigint];
144
145
  skipCursor: bigint;
146
+ timersPauseReason: [] | [string];
145
147
  lastError: string;
148
+ timersPausedAtNs: [] | [bigint];
146
149
  }
147
150
  export interface ApprovalRequest {
148
151
  id: string;
@@ -402,7 +405,7 @@ export interface Engram {
402
405
  * / test/key-replacement.test.mo runs it; this body names no roster gate, because the caller holds
403
406
  * / no role here until the move.
404
407
  */
405
- acceptAgentKeyNomination: ActorMethod<[Principal], Result_82>;
408
+ acceptAgentKeyNomination: ActorMethod<[Principal], Result_83>;
406
409
  /**
407
410
  * / Consensus transform for the alert webhook outcall: collapse the response to status-only so
408
411
  * / replicas agree regardless of response headers/body (we only care that the POST landed 2xx).
@@ -435,7 +438,7 @@ export interface Engram {
435
438
  * / account name). The action must be registered: a destination list belongs to an action, and a
436
439
  * / list for no action would be a value nothing checks. The caller is the owner's app.
437
440
  */
438
- addEip712Destination: ActorMethod<[Uint8Array | number[], string], Result_81>;
441
+ addEip712Destination: ActorMethod<[Uint8Array | number[], string], Result_82>;
439
442
  /**
440
443
  * / Register a typed-data shape as signable. Owner-only, freeze-gated (a registration is a grant
441
444
  * / of FUTURE authority — a frozen engram must not be able to widen what it can sign), and the
@@ -470,7 +473,7 @@ export interface Engram {
470
473
  ackIrrevocable: boolean;
471
474
  },
472
475
  ],
473
- Result_80
476
+ Result_81
474
477
  >;
475
478
  /**
476
479
  * / ⟨0.16.0, L1⟩ THE ROLE-CONFLICT ARM, and why three refusals here are not the same refusal.
@@ -482,7 +485,7 @@ export interface Engram {
482
485
  * / permitted but this engram's state says no — the principal already holds an incompatible role,
483
486
  * / or the roster is full. Only the last is worth an agent's time to resolve.
484
487
  */
485
- addGuardian: ActorMethod<[Principal, string, GuardianPermissions], Result_1>;
488
+ addGuardian: ActorMethod<[Principal, string, GuardianPermissions], Result_2>;
486
489
  /**
487
490
  * / ⟨2026-10-21, the owner's round-11 answer b⟩ OWNER-ONLY: put a note on any entry of this
488
491
  * / engram's record — words, nothing else. Appends a chained `record.note` entry
@@ -493,7 +496,7 @@ export interface Engram {
493
496
  * / holding a line break are `#Invalid`; an id past the head is `#NotFound`; nothing is recorded
494
497
  * / on any refusal.
495
498
  */
496
- addRecordNote: ActorMethod<[bigint, string], Result_13>;
499
+ addRecordNote: ActorMethod<[bigint, string], Result_14>;
497
500
  /**
498
501
  * / Returns the write RECEIPT, not just the version.
499
502
  * /
@@ -528,7 +531,7 @@ export interface Engram {
528
531
  * / is exactly what a guardian pause exists to hold. No action alert is raised: the operation is
529
532
  * / owner-initiated, owner-only, and already chained into the audit log.
530
533
  */
531
- applyCondense: ActorMethod<[bigint], Result_79>;
534
+ applyCondense: ActorMethod<[bigint], Result_80>;
532
535
  /**
533
536
  * / Owner-only: activate a guardian who has registered against an invite.
534
537
  * /
@@ -539,7 +542,7 @@ export interface Engram {
539
542
  * / `#Conflict("Guardian is already active")` when there is nothing to do — the refusal says the
540
543
  * / state the caller asked for is the state that holds, rather than pretending it acted.
541
544
  */
542
- approveGuardian: ActorMethod<[Principal], Result_1>;
545
+ approveGuardian: ActorMethod<[Principal], Result_2>;
543
546
  /**
544
547
  * / Owner-only: approve one pending over-limit request, letting the agent retry the operation
545
548
  * / its policy refused.
@@ -562,13 +565,13 @@ export interface Engram {
562
565
  * / no longer pending — already approved, denied or expired. The status is in the message because
563
566
  * / "not pending" is the one refusal here an owner acts on differently depending on which it is.
564
567
  */
565
- approveRequest: ActorMethod<[string], Result_1>;
568
+ approveRequest: ActorMethod<[string], Result_2>;
566
569
  /**
567
570
  * / Discard a backup started by `backupInit` and never finalized. The way out of a failed upload,
568
571
  * / and the reason a stalled one need not occupy space indefinitely. Same gate as the rest of the
569
572
  * / write half: owner, or an agent holding `canAppendMemory`.
570
573
  */
571
- backupAbort: ActorMethod<[string], Result_1>;
574
+ backupAbort: ActorMethod<[string], Result_2>;
572
575
  /**
573
576
  * / Close a backup started by `backupInit` and mark it usable.
574
577
  * /
@@ -583,7 +586,7 @@ export interface Engram {
583
586
  * / It does NOT verify the `sha256` declared at init; see that method for what the digest is and
584
587
  * / is not.
585
588
  */
586
- backupFinalize: ActorMethod<[string], Result_1>;
589
+ backupFinalize: ActorMethod<[string], Result_2>;
587
590
  /**
588
591
  * / Begin a chunked backup upload. Returns the `backupId` every later call in the sequence needs.
589
592
  * /
@@ -608,7 +611,7 @@ export interface Engram {
608
611
  * /
609
612
  * / The write half also refuses while writes are PAUSED.
610
613
  */
611
- backupInit: ActorMethod<[string, BackupType, [] | [string], string, [] | [string]], Result_52>;
614
+ backupInit: ActorMethod<[string, BackupType, [] | [string], string, [] | [string]], Result_53>;
612
615
  /**
613
616
  * / Read one chunk of a finalized backup, by index.
614
617
  * /
@@ -616,13 +619,13 @@ export interface Engram {
616
619
  * / `canAppendMemory`. Holding one says nothing about the other, deliberately: taking a backup and
617
620
  * / carrying it away are different authorities.
618
621
  */
619
- backupPullChunk: ActorMethod<[string, bigint], Result_68>;
620
- backupPushChunk: ActorMethod<[string, bigint, Uint8Array | number[]], Result_1>;
622
+ backupPullChunk: ActorMethod<[string, bigint], Result_69>;
623
+ backupPushChunk: ActorMethod<[string, bigint, Uint8Array | number[]], Result_2>;
621
624
  /**
622
625
  * / The OWNER cancels an agent's pending key nomination; the agent keeps its current key. Refused
623
626
  * / by name when the agent is unknown or has nothing pending — never a silent success.
624
627
  */
625
- cancelAgentKeyNomination: ActorMethod<[Principal], Result_1>;
628
+ cancelAgentKeyNomination: ActorMethod<[Principal], Result_2>;
626
629
  /**
627
630
  * / Close a session the caller paid for: settle what was consumed, refund the remainder.
628
631
  * /
@@ -630,7 +633,7 @@ export interface Engram {
630
633
  * / and `forceCloseSession` were on the MARKET, which is withheld, and whose escrow subaccount is
631
634
  * / under a different principal entirely, so its close could never have reached these funds.
632
635
  */
633
- closeSession: ActorMethod<[string], Result_1>;
636
+ closeSession: ActorMethod<[string], Result_2>;
634
637
  /**
635
638
  * / Convert the engram's OWN earned ckUSDC/ckUSDT into its OWN cycles, via the cashier — the
636
639
  * / engram-self top-up path. Owner-only; per-call cap + cooldown (irreversible); NOT freeze-gated
@@ -654,7 +657,7 @@ export interface Engram {
654
657
  * / pair — e6 base units of the token named first. A name only: Candid passes arguments by
655
658
  * / position, so nothing on the wire moved.
656
659
  */
657
- convertEarningsToCycles: ActorMethod<[string, bigint], Result_13>;
660
+ convertEarningsToCycles: ActorMethod<[string, bigint], Result_14>;
658
661
  /**
659
662
  * / Owner-only: mint a single-use invite code an agent redeems with `pairAgent`.
660
663
  * /
@@ -674,7 +677,7 @@ export interface Engram {
674
677
  * / A principal that is already a GUARDIAN cannot become an agent — a guardian is an
675
678
  * / independent check on agents, so one wallet must not hold both.
676
679
  */
677
- createAgentInvite: ActorMethod<[string, AgentPermissions], Result_52>;
680
+ createAgentInvite: ActorMethod<[string, AgentPermissions], Result_53>;
678
681
  /**
679
682
  * / Owner-only: mint an invite for a GUARDIAN — an independent check on agents, not a
680
683
  * / co-owner and not a recovery agent.
@@ -698,7 +701,7 @@ export interface Engram {
698
701
  * / So an invite that fails to redeem for that reason is not a bad code. The rule exists because
699
702
  * / a check must be independent of the thing it checks.
700
703
  */
701
- createGuardianInvite: ActorMethod<[string, GuardianPermissions], Result_52>;
704
+ createGuardianInvite: ActorMethod<[string, GuardianPermissions], Result_53>;
702
705
  /**
703
706
  * / OWNER-ONLY deletion of a stored backup.
704
707
  * /
@@ -711,7 +714,7 @@ export interface Engram {
711
714
  * / `backupAbort` is the agent's way out of a failed UPLOAD; it discards something never
712
715
  * / finalized. This removes a finished backup, which is a different act on a different object.
713
716
  */
714
- deleteBackup: ActorMethod<[string], Result_1>;
717
+ deleteBackup: ActorMethod<[string], Result_2>;
715
718
  /**
716
719
  * / ⟨0.16.0, census §10 item 16⟩ RETURNS A REAL RECEIPT, not `R<()>`. The receipt was already
717
720
  * / being computed and written into the audit line — `receiptSuffix(r)` — and then discarded, so
@@ -731,7 +734,7 @@ export interface Engram {
731
734
  * / `#NotFound` for an unknown id and `#Conflict` when the request is no longer pending, and it
732
735
  * / does not change the policy — the next request over the same limit will be raised again.
733
736
  */
734
- denyRequest: ActorMethod<[string, string], Result_1>;
737
+ denyRequest: ActorMethod<[string, string], Result_2>;
735
738
  /**
736
739
  * / ⟨2026-10-21, the owner's round-11 answer c⟩ A NEW GUARDIAN POWER, words only: an ACTIVE
737
740
  * / guardian disputes an agent's write. It never moves money, stops anything or changes a grant.
@@ -749,7 +752,7 @@ export interface Engram {
749
752
  * / revision, or a paid session's append) that succeeded, still held in full by the ring.
750
753
  * / One dispute per guardian per write (`#Conflict`, the first stands).
751
754
  */
752
- disputeAgentWrite: ActorMethod<[bigint, string], Result_13>;
755
+ disputeAgentWrite: ActorMethod<[bigint, string], Result_14>;
753
756
  /**
754
757
  * / Record that log entries [fromSeq, toSeq] were served, and return the root that proves it.
755
758
  * /
@@ -764,7 +767,7 @@ export interface Engram {
764
767
  * / situation rather than a safety measure. It IS gated on requireMemoryAttached: a store that
765
768
  * / failed its integrity check must not attest anything it cannot vouch for.
766
769
  */
767
- exportMemoryRange: ActorMethod<[bigint, bigint, [] | [Principal]], Result_78>;
770
+ exportMemoryRange: ActorMethod<[bigint, bigint, [] | [Principal]], Result_79>;
768
771
  /**
769
772
  * / ⟨0.16.0, L2.2 — renamed from `guardianFreezePayments`⟩ The prefix LIED about who may call it.
770
773
  * / The gate is `requireOwnerOrGuardian`, and an owner freezing their own payments is the ordinary
@@ -798,7 +801,7 @@ export interface Engram {
798
801
  * / ⚠ The three exclusions are a reading of intent, not a ruling: no declaration stated the scope
799
802
  * / before this one. If any of them is wrong, this comment is where the argument should happen.
800
803
  */
801
- freezePayments: ActorMethod<[], Result_1>;
804
+ freezePayments: ActorMethod<[], Result_2>;
802
805
  /**
803
806
  * / ⟨2026-10-21, the owner's round-11 answer d⟩ `freezePayments` with a reason the strip and the
804
807
  * / guardian page show ("Sam froze payments: 'a payment I didn't expect'"). A NEW method, not an
@@ -808,11 +811,11 @@ export interface Engram {
808
811
  * / An empty reason is no reason; a reason too long or holding a line break is `#Invalid` and the
809
812
  * / brake is NOT pulled — the caller pulls it with `freezePayments`, or shortens the words.
810
813
  */
811
- freezePaymentsWithReason: ActorMethod<[string], Result_1>;
814
+ freezePaymentsWithReason: ActorMethod<[string], Result_2>;
812
815
  /**
813
816
  * / Delivery status + config readback. Owner-only (the URL is a secret).
814
817
  */
815
- getActionAlertStatus: ActorMethod<[], Result_66>;
818
+ getActionAlertStatus: ActorMethod<[], Result_67>;
816
819
  /**
817
820
  * / Agents need to know what they may revise, so they can read it too. Whole-value config, same
818
821
  * / carve-out as getProtectedPaths — and kept a SEPARATE method from it deliberately (L2.2): a
@@ -822,7 +825,7 @@ export interface Engram {
822
825
  * / Refusal reason preserved from the trap: a grant is a power, and its absence and its
823
826
  * / concealment are different facts.
824
827
  */
825
- getAgentRevisablePaths: ActorMethod<[], Result_62>;
828
+ getAgentRevisablePaths: ActorMethod<[], Result_63>;
826
829
  /**
827
830
  * / OWNER-ONLY: every engagement's seat weeks on this engram, with the agent's root — the day it
828
831
  * / paired, the days of its first and last payment signature, a 64-week map whose bit 0 is the week
@@ -835,7 +838,7 @@ export interface Engram {
835
838
  * / empty page. Paged; `total` is every engagement ever paired here (a reset keeps the rows).
836
839
  * / Two rows can name one root: an agent paired again after it left is a second engagement.
837
840
  */
838
- getAgentSeatWeeks: ActorMethod<[bigint, bigint], Result_76>;
841
+ getAgentSeatWeeks: ActorMethod<[bigint, bigint], Result_77>;
839
842
  /**
840
843
  * / Owner: everything written into this engram by someone other than the owner since the last
841
844
  * / markAgentWritesReviewed() — agent appends/revisions AND paid-session appends (see
@@ -845,7 +848,7 @@ export interface Engram {
845
848
  * / as a total. `earliest` discloses ring eviction — if cursor < earliest, entries between them
846
849
  * / aged out of the ring (the CHAIN still proves total count; this view can't show their bodies).
847
850
  */
848
- getAgentWriteReview: ActorMethod<[], Result_75>;
851
+ getAgentWriteReview: ActorMethod<[], Result_76>;
849
852
  /**
850
853
  * / Why anchoring is or is not advancing. PUBLIC: ungated on purpose — detecting a stalled
851
854
  * / engram is the point, a gated read would fail-to-empty and hand a third party fabricated zeros,
@@ -868,7 +871,7 @@ export interface Engram {
868
871
  * / was signed rather than asserted.
869
872
  */
870
873
  getAuditHead: ActorMethod<[], AuditHead>;
871
- getBackupMetadata: ActorMethod<[string], Result_74>;
874
+ getBackupMetadata: ActorMethod<[string], Result_75>;
872
875
  /**
873
876
  * / ⟨2026-10-21, the owner's round-11 answer m: a backup-retention getter⟩ How many backups of
874
877
  * / `dbType` each creator keeps, and whether that is the default — the read `setBackupRetention`
@@ -881,7 +884,7 @@ export interface Engram {
881
884
  * / the anonymous caller. A kind the setter would refuse is `#Invalid` here too
882
885
  * / (`Backup.getRetention`). Records nothing (a query).
883
886
  */
884
- getBackupRetention: ActorMethod<[string], Result_73>;
887
+ getBackupRetention: ActorMethod<[string], Result_74>;
885
888
  /**
886
889
  * / The cashier this engram recognises as its rent biller — `null` until the registry pushes one.
887
890
  * /
@@ -900,7 +903,7 @@ export interface Engram {
900
903
  * / (`getCertifiedBirth`, public, revealing only whether a fingerprint is present); the client's
901
904
  * / `verifyBirthChain` checks both. Refused to anyone else by the combinator (`#ownerOnly`).
902
905
  */
903
- getBirthChain: ActorMethod<[], Result_72>;
906
+ getBirthChain: ActorMethod<[], Result_73>;
904
907
  /**
905
908
  * / ⟨2026-10-21, the owner's round-11 answer d⟩ Each brake: on or off, and while on, who pulled it
906
909
  * / LAST (their key and whether as owner or guardian), since when, and the reason they gave — the
@@ -911,7 +914,7 @@ export interface Engram {
911
914
  * / is null for a brake that is off, and for one carried on across the upgrade that added this
912
915
  * / read (who pulled it was not recorded then) — never a guessed pull.
913
916
  */
914
- getBrakes: ActorMethod<[], Result_71>;
917
+ getBrakes: ActorMethod<[], Result_72>;
915
918
  /**
916
919
  * / ⟨0.16.0, L9/L10 — census row⟩ `Wire.CertifiedAuditHead`, not an anonymous record. The
917
920
  * / registry, market and cashier already served the shared type; the engram — the canister that
@@ -938,13 +941,13 @@ export interface Engram {
938
941
  * / recorded nothing while reading as if it did. The refusal is loud in the reply instead. WHAT
939
942
  * / WOULD MAKE THIS WRONG: a reason to record who asked — then this becomes an update that says so.
940
943
  */
941
- getChildAllowance: ActorMethod<[Principal], Result_70>;
944
+ getChildAllowance: ActorMethod<[Principal], Result_71>;
942
945
  /**
943
946
  * / Owner-only, Billing-class: what opening an engram costs this engram, the balance below which an
944
947
  * / agent's request is refused, the balance now, and every agent's allowance. The console's cost
945
948
  * / sentence reads it. Cycles are owner-class information, as on the owner's console read.
946
949
  */
947
- getChildOpening: ActorMethod<[], Result_69>;
950
+ getChildOpening: ActorMethod<[], Result_70>;
948
951
  /**
949
952
  * / Derive the shared memory-encryption key, encrypted under the caller's transport
950
953
  * / public key. Gated to owner + read-agents (the same principals allowed to read
@@ -970,7 +973,7 @@ export interface Engram {
970
973
  * / cost. Stated here because L7 requires the reason be readable from the interface rather than
971
974
  * / inferred by opening the body — which is exactly what had to happen to write this line.
972
975
  */
973
- getEncryptedMemoryKey: ActorMethod<[[] | [bigint], Uint8Array | number[]], Result_68>;
976
+ getEncryptedMemoryKey: ActorMethod<[[] | [bigint], Uint8Array | number[]], Result_69>;
974
977
  /**
975
978
  * / ⟨0.16.0, owner ruling 2026-08-20 — option (a)⟩ `x402Support` REPORTS THE RAIL, not a constant.
976
979
  * /
@@ -1069,7 +1072,7 @@ export interface Engram {
1069
1072
  * / `#Err`, never a record carrying an empty string (ic402's `getEvmAddress` answers `""` on a
1070
1073
  * / failed derivation — that is fail-to-empty on a money surface, and it stops here).
1071
1074
  */
1072
- getEvmAddress: ActorMethod<[], Result_67>;
1075
+ getEvmAddress: ActorMethod<[], Result_68>;
1073
1076
  /**
1074
1077
  * / The owner's OWN EVM address, if they registered one — distinct from `getEvmAddress`, which is
1075
1078
  * / the address this canister derives for itself.
@@ -1088,7 +1091,7 @@ export interface Engram {
1088
1091
  * / cost — stated here because L7 requires the reason be readable from the interface rather than
1089
1092
  * / inferred by opening the body.
1090
1093
  */
1091
- getEvmSignerAddress: ActorMethod<[], Result_52>;
1094
+ getEvmSignerAddress: ActorMethod<[], Result_53>;
1092
1095
  /**
1093
1096
  * / PUBLIC: where this chain begins, for the stranger deciding whether to trust it.
1094
1097
  * /
@@ -1101,7 +1104,7 @@ export interface Engram {
1101
1104
  /**
1102
1105
  * / A guardian's own channel status (their URL is their secret — each guardian sees only theirs).
1103
1106
  */
1104
- getGuardianAlertStatus: ActorMethod<[], Result_66>;
1107
+ getGuardianAlertStatus: ActorMethod<[], Result_67>;
1105
1108
  /**
1106
1109
  * / The market this engram will accept signing requests from — `null` until the registry pushes
1107
1110
  * / one at spawn, which is why `requireMarket` refuses fleet-wide today.
@@ -1134,7 +1137,7 @@ export interface Engram {
1134
1137
  * / never renumbered: the next page starts at the last version returned plus one. Defaults
1135
1138
  * / return the whole history of any file a pre-FD engram could have held.
1136
1139
  */
1137
- getMemoryHistory: ActorMethod<[string, [] | [bigint], [] | [bigint]], Result_65>;
1140
+ getMemoryHistory: ActorMethod<[string, [] | [bigint], [] | [bigint]], Result_66>;
1138
1141
  /**
1139
1142
  * / PUBLIC: the epoch alone, and deliberately nothing else (rotation study D4). A `rotatedAt[]`
1140
1143
  * / history would be a public, fleet-enumerable feed of when each owner terminated a trust
@@ -1183,7 +1186,7 @@ export interface Engram {
1183
1186
  * / forever" — a claim about what this engram will DESTROY — and an empty guard list reads as
1184
1187
  * / "nothing is held back".
1185
1188
  */
1186
- getMemoryRetentionPolicy: ActorMethod<[], Result_64>;
1189
+ getMemoryRetentionPolicy: ActorMethod<[], Result_65>;
1187
1190
  /**
1188
1191
  * / The metrics reader this engram answers — `null` until the spawning registry names one.
1189
1192
  * /
@@ -1200,7 +1203,7 @@ export interface Engram {
1200
1203
  * / a fact about the caller, told to the caller. There is nothing to leak by omission — which is
1201
1204
  * / the test the #NotFound arm sets.
1202
1205
  */
1203
- getMyGuardianStatus: ActorMethod<[], Result_16>;
1206
+ getMyGuardianStatus: ActorMethod<[], Result_17>;
1204
1207
  /**
1205
1208
  * / ⟨0.16.0, NEW⟩ The gated half of the status() split.
1206
1209
  * /
@@ -1212,7 +1215,7 @@ export interface Engram {
1212
1215
  * / client (rule 4) and bought a masked answer nobody had asked for — the census could not even
1213
1216
  * / find a consumer that read the masked `0`. Behind a gate there is nobody to mask it from.
1214
1217
  */
1215
- getOwnerConsole: ActorMethod<[], Result_63>;
1218
+ getOwnerConsole: ActorMethod<[], Result_64>;
1216
1219
  /**
1217
1220
  * / Owner + agents only (agents need it to avoid writing protected paths).
1218
1221
  * /
@@ -1226,7 +1229,7 @@ export interface Engram {
1226
1229
  * / writing one — so a fabricated empty here does not merely misinform, it invites the write the
1227
1230
  * / list exists to prevent.
1228
1231
  */
1229
- getProtectedPaths: ActorMethod<[], Result_62>;
1232
+ getProtectedPaths: ActorMethod<[], Result_63>;
1230
1233
  /**
1231
1234
  * / Whether the metrics reader's read is answered — `true` from birth.
1232
1235
  * /
@@ -1239,7 +1242,7 @@ export interface Engram {
1239
1242
  * / payment signatures the balance carries above the floor before `signX402Payment` is refused by
1240
1243
  * / name. The same numbers the check uses, so Billing can say only what the engram enforces.
1241
1244
  */
1242
- getSigningFloor: ActorMethod<[], Result_61>;
1245
+ getSigningFloor: ActorMethod<[], Result_62>;
1243
1246
  /**
1244
1247
  * / The registry that spawned this engram, if it recorded one.
1245
1248
  * /
@@ -1260,7 +1263,7 @@ export interface Engram {
1260
1263
  * / A refusal names this method (`Gated.gatedResult`) rather than answering null/0 — a ceiling of
1261
1264
  * / "none" and a spend of 0 are both real answers, so a fabricated one would be read as fact.
1262
1265
  */
1263
- getSpendCeiling: ActorMethod<[], Result_60>;
1266
+ getSpendCeiling: ActorMethod<[], Result_61>;
1264
1267
  /**
1265
1268
  * / Read the caps in force for a caller.
1266
1269
  * /
@@ -1270,8 +1273,8 @@ export interface Engram {
1270
1273
  * / configuration, and publishing them would tell any caller exactly how large a signing request
1271
1274
  * / can be before it needs an approval nobody is watching for.
1272
1275
  */
1273
- getSpendPolicy: ActorMethod<[[] | [Principal]], Result_59>;
1274
- getStorageStats: ActorMethod<[], Result_58>;
1276
+ getSpendPolicy: ActorMethod<[[] | [Principal]], Result_60>;
1277
+ getStorageStats: ActorMethod<[], Result_59>;
1275
1278
  /**
1276
1279
  * / Timer arm-state. PUBLIC and deliberately so: these timers are self-arming to save cycles,
1277
1280
  * / and an optimisation nobody can verify is an optimisation nobody should trust. Cheap to read,
@@ -1309,6 +1312,10 @@ export interface Engram {
1309
1312
  * / PUBLIC: the same standing as the two liveness reads above. Booleans and timestamps about this
1310
1313
  * / canister's own timers — nothing about content, callers or money — and a liveness signal only
1311
1314
  * / its owner can read cannot tell a third party that the engram is still running.
1315
+ * / ⟨2026-10-28, the owner's ruling "1"⟩ The three ic402 flags read FALSE WHILE THE TIMERS ARE PAUSED.
1316
+ * / The pause's id sweep cancels ic402's sweeps, but ic402 keeps their stale ids, so its own
1317
+ * / "armed" reads would answer true for a timer that no longer exists (a fabricated answer,
1318
+ * / ADR-0002). `alertTimerArmed` needs no guard: the sweep nulls `alertTimerId` itself.
1312
1319
  */
1313
1320
  getTimerHealth: ActorMethod<[], TimerHealth>;
1314
1321
  /**
@@ -1344,14 +1351,14 @@ export interface Engram {
1344
1351
  * / UPDATE, marked per L7: it awaits three ICRC-1 ledgers". It was marked in prose and invisible
1345
1352
  * / to any gate; the glyph is what `scripts/check-update-for-read.mjs` matches.
1346
1353
  */
1347
- getWalletBalances: ActorMethod<[], Result_57>;
1354
+ getWalletBalances: ActorMethod<[], Result_58>;
1348
1355
  /**
1349
1356
  * / Refusal reason preserved, and it is the clearest case of why a masked read is worse than no
1350
1357
  * / read: three empty strings with `configured = false` is a VALID-LOOKING answer meaning "this
1351
1358
  * / engram has no World ID configuration" — handed to a caller who merely lacks a grant. The
1352
1359
  * / fabrication is indistinguishable from the truth by construction.
1353
1360
  */
1354
- getWorldIdConfig: ActorMethod<[], Result_56>;
1361
+ getWorldIdConfig: ActorMethod<[], Result_57>;
1355
1362
  /**
1356
1363
  * / ⟨L7⟩ UPDATE, NOT QUERY: this awaits THREE system calls — `raw_rand()` for the nonce,
1357
1364
  * / `Call.signWithEcdsa` for the signature, and `worldIdRpPublicKey()` for the derived key. A
@@ -1362,7 +1369,7 @@ export interface Engram {
1362
1369
  * / the World Developer Portal. Short-lived (300s TTL, idkit-server's default) and single-purpose —
1363
1370
  * / it authorizes opening one verification request, nothing else.
1364
1371
  */
1365
- getWorldIdRpContext: ActorMethod<[], Result_55>;
1372
+ getWorldIdRpContext: ActorMethod<[], Result_56>;
1366
1373
  /**
1367
1374
  * / Owner-only: the EVM address derived from the engram's dedicated World ID RP signing key (the
1368
1375
  * / "worldid-rp" tECDSA path). Register THIS address as the rp_id's signer in the World Developer
@@ -1374,7 +1381,7 @@ export interface Engram {
1374
1381
  * / refusal — a state write, which a query cannot perform. So even if the key were cached this
1375
1382
  * / could not become a query without silently retiring its denial record (ADR-0002's class).
1376
1383
  */
1377
- getWorldIdRpSignerAddress: ActorMethod<[], Result_52>;
1384
+ getWorldIdRpSignerAddress: ActorMethod<[], Result_53>;
1378
1385
  /**
1379
1386
  * / The verified IDKitResult, verbatim, as World's /api/v4/verify accepted it — the re-checkable
1380
1387
  * / artifact behind verifiedHuman. Role-gated because it carries the NULLIFIER.
@@ -1395,7 +1402,7 @@ export interface Engram {
1395
1402
  * / canister does not serve. The tombstones below and at `about()` are historical and correct as
1396
1403
  * / written; this one was present tense, which is the difference that matters.⟩
1397
1404
  */
1398
- getWorldIdVerification: ActorMethod<[], Result_54>;
1405
+ getWorldIdVerification: ActorMethod<[], Result_55>;
1399
1406
  /**
1400
1407
  * / ⟨0.16.0, L1⟩ THE EMERGENCY FAMILY. Every refusal below is `#Refused` or `#NotFound`, and the
1401
1408
  * / absence of a `#Conflict` here is the point: these are the calls someone makes while something
@@ -1403,7 +1410,7 @@ export interface Engram {
1403
1410
  * / nothing by that name". A missing PERMISSION is `#Refused` rather than `#Conflict` — the
1404
1411
  * / guardian's standing is what fell short, and no change to engram state would let them through.
1405
1412
  */
1406
- guardianRevokeAgent: ActorMethod<[Principal], Result_1>;
1413
+ guardianRevokeAgent: ActorMethod<[Principal], Result_2>;
1407
1414
  /**
1408
1415
  * / The HTTP surface: canister-info JSON, OAuth discovery documents, and the MCP route's query
1409
1416
  * / half. See the `http_request_update` twin below for what upgrades and why.
@@ -1479,7 +1486,7 @@ export interface Engram {
1479
1486
  * / Owner-gated because it reports on custody posture, and answered as a Result so that a
1480
1487
  * / wrong-identity caller gets a refusal rather than a bare `false` that reads as "no address yet".
1481
1488
  */
1482
- isEvmAddressCached: ActorMethod<[], Result_53>;
1489
+ isEvmAddressCached: ActorMethod<[], Result_54>;
1483
1490
  /**
1484
1491
  * / Issue an OAuth authorization code. Called by an OAuth client's sign-in bridge
1485
1492
  * / (an `/auth/connector`-style route) after II authentication. The client then
@@ -1488,7 +1495,7 @@ export interface Engram {
1488
1495
  * /
1489
1496
  * / Owner-only: only the engram owner can authorize a Connector install.
1490
1497
  */
1491
- issueAuthCode: ActorMethod<[string, string, string, [] | [string]], Result_52>;
1498
+ issueAuthCode: ActorMethod<[string, string, string, [] | [string]], Result_53>;
1492
1499
  /**
1493
1500
  * / ⟨0.16.0⟩ `getCycleSnapshotSource` DELETED — folded into `CycleSnapshot.source`, one label per
1494
1501
  * / ROW. A single label for a whole ring misattributes every row recorded under the other source,
@@ -1504,7 +1511,7 @@ export interface Engram {
1504
1511
  * / DORMANT engram and corrupts retention math — a fabricated empty here does not just misinform a
1505
1512
  * / reader, it feeds a wrong number into a decision about destroying data.
1506
1513
  */
1507
- listActivitySnapshots: ActorMethod<[bigint, bigint], Result_51>;
1514
+ listActivitySnapshots: ActorMethod<[bigint, bigint], Result_52>;
1508
1515
  /**
1509
1516
  * / ⟨2026-10-21, round 11 item l — the owner's answer "round 11: a, b, c, d, e, f, g, h, i, j, k, l,
1510
1517
  * / m."⟩ OWNER-ONLY: what each agent has spent today, beside the daily limit in force for it, so the
@@ -1523,7 +1530,7 @@ export interface Engram {
1523
1530
  * / WHAT WOULD MAKE THIS WRONG: `x402SignFor` keeping the per-caller total by something other than
1524
1531
  * / the calling key, or under another day boundary.
1525
1532
  */
1526
- listAgentSpendToday: ActorMethod<[bigint, bigint], Result_50>;
1533
+ listAgentSpendToday: ActorMethod<[bigint, bigint], Result_51>;
1527
1534
  /**
1528
1535
  * / ⟨0.16.0⟩ THE PAGE EXEMPLAR. Trap → `#Refused`, bare array → `Result<Page<T>>` (L1 + L3).
1529
1536
  * /
@@ -1540,7 +1547,7 @@ export interface Engram {
1540
1547
  * / `withheld` is 0: this roster is owner-only in whole, so there is no partial-visibility case.
1541
1548
  * / A method that filters rows by caller sets it — see L1's row-level honesty rule.
1542
1549
  */
1543
- listAgents: ActorMethod<[bigint, bigint], Result_49>;
1550
+ listAgents: ActorMethod<[bigint, bigint], Result_50>;
1544
1551
  /**
1545
1552
  * / The GUARDIAN-audience projection of the agent roster — three fields, not the full record.
1546
1553
  * /
@@ -1554,7 +1561,7 @@ export interface Engram {
1554
1561
  * / guardian consults BEFORE REVOKING ONE. A fabricated empty here does not merely misinform —
1555
1562
  * / it tells someone acting under emergency powers that there is nothing to act on.
1556
1563
  */
1557
- listAgentsForGuardian: ActorMethod<[bigint, bigint], Result_48>;
1564
+ listAgentsForGuardian: ActorMethod<[bigint, bigint], Result_49>;
1558
1565
  /**
1559
1566
  * / Owner-only: rows carry caller, amount, operation and free-text rationale. The SDK omits it.
1560
1567
  * /
@@ -1568,7 +1575,7 @@ export interface Engram {
1568
1575
  * /
1569
1576
  * / Refusal reason preserved: `[]` reads as "nothing is awaiting the owner's decision".
1570
1577
  */
1571
- listApprovalRequests: ActorMethod<[[] | [ApprovalStatus], bigint, bigint], Result_34>;
1578
+ listApprovalRequests: ActorMethod<[[] | [ApprovalStatus], bigint, bigint], Result_35>;
1572
1579
  /**
1573
1580
  * / ⟨0.16.0⟩ `total` IS THE HEAD COUNTER, and on this method that is the entire point.
1574
1581
  * /
@@ -1604,7 +1611,7 @@ export interface Engram {
1604
1611
  * / at read time; nothing new is stored. WHAT WOULD MAKE THIS WRONG: a sealed row carrying any part
1605
1612
  * / of a body, or a stranger reaching `items` (test/record-view.test.mo pins both).
1606
1613
  */
1607
- listAuditEntries: ActorMethod<[bigint, bigint], Result_47>;
1614
+ listAuditEntries: ActorMethod<[bigint, bigint], Result_48>;
1608
1615
  /**
1609
1616
  * / ⟨0.16.0, L1 + L3 — census-ruled⟩ THE TWO-MECHANISM EXCEPTION DISSOLVES.
1610
1617
  * /
@@ -1630,7 +1637,7 @@ export interface Engram {
1630
1637
  * / keeps its optional filter and applies it to the page, so no caller loses the ability to ask
1631
1638
  * / "backups of this database" — it stops being a thing the canister has to page around.
1632
1639
  */
1633
- listBackups: ActorMethod<[bigint, bigint], Result_46>;
1640
+ listBackups: ActorMethod<[bigint, bigint], Result_47>;
1634
1641
  /**
1635
1642
  * / List all bearer tokens — Active, Revoked, and Expired. Owner uses this in
1636
1643
  * / the dashboard to show installed Connectors (claude.ai, Claude Desktop, etc.).
@@ -1642,7 +1649,7 @@ export interface Engram {
1642
1649
  * / merely stopped being used is reported `#Expired`, not a stale `#Active`), so the page carries
1643
1650
  * / the same honesty the store gained on 2026-08-17.
1644
1651
  */
1645
- listBearerTokens: ActorMethod<[bigint, bigint], Result_45>;
1652
+ listBearerTokens: ActorMethod<[bigint, bigint], Result_46>;
1646
1653
  /**
1647
1654
  * / The condense checkpoints in the retained log at or above `startSeq`, oldest first.
1648
1655
  * /
@@ -1654,7 +1661,7 @@ export interface Engram {
1654
1661
  * / Owner-only like every other archive surface, and for the same structural reason: these rows
1655
1662
  * / carry the chain positions and roots of entries whose paths were inside the hash preimage.
1656
1663
  */
1657
- listCondenseCheckpoints: ActorMethod<[bigint, bigint], Result_44>;
1664
+ listCondenseCheckpoints: ActorMethod<[bigint, bigint], Result_45>;
1658
1665
  /**
1659
1666
  * / ⟨0.16.0⟩ `metrics()` DELETED — absorbed by `about()`.
1660
1667
  * /
@@ -1663,13 +1670,13 @@ export interface Engram {
1663
1670
  * / both and know which one owned each field. Every field here survives on `about()`, day-flooring
1664
1671
  * / included.
1665
1672
  */
1666
- listCycleSnapshots: ActorMethod<[bigint, bigint], Result_43>;
1673
+ listCycleSnapshots: ActorMethod<[bigint, bigint], Result_44>;
1667
1674
  /**
1668
1675
  * / Same `withheld` treatment as listMemoryFiles — the tombstone listing filtered reserved paths
1669
1676
  * / for non-owners just as silently, and a caller could not tell a filtered tombstone list from a
1670
1677
  * / complete one. Counted before slicing, so policy-hidden rows never blur into paging.
1671
1678
  */
1672
- listDeletedMemoryFiles: ActorMethod<[bigint, bigint], Result_42>;
1679
+ listDeletedMemoryFiles: ActorMethod<[bigint, bigint], Result_43>;
1673
1680
  /**
1674
1681
  * / Stays on the engram under B1 (hybrid): withdrawal custody does not leave.
1675
1682
  * /
@@ -1685,7 +1692,7 @@ export interface Engram {
1685
1692
  * / The item's field is `value`, not `address`: a list may hold a venue value that is no address.
1686
1693
  * / Readable by the owner, an active agent or an active guardian, as the old list was.
1687
1694
  */
1688
- listEip712Destinations: ActorMethod<[Uint8Array | number[], bigint, bigint], Result_41>;
1695
+ listEip712Destinations: ActorMethod<[Uint8Array | number[], bigint, bigint], Result_42>;
1689
1696
  /**
1690
1697
  * / The registered shapes — E3: encodeTypeString is the display artifact, verbatim.
1691
1698
  * / Stays on the engram under B1 (hybrid): EIP-712 signing is custody, and custody does not leave.
@@ -1698,7 +1705,7 @@ export interface Engram {
1698
1705
  * / from `eip712FieldRules` — they are part of what the type authorises, so a reader of the list must
1699
1706
  * / not have to make a second call to learn them. The row type is `Eip712TypeView`.
1700
1707
  */
1701
- listEip712Types: ActorMethod<[bigint, bigint], Result_40>;
1708
+ listEip712Types: ActorMethod<[bigint, bigint], Result_41>;
1702
1709
  /**
1703
1710
  * / ⟨2026-10-21, round 11 c⟩ Guardians' disputes, oldest first. Same visibility as
1704
1711
  * / `listRepudiations` and `listRecordNotes`: the owner and ACTIVE guardians read the rows; an
@@ -1706,7 +1713,7 @@ export interface Engram {
1706
1713
  * / guardian's entry, not the agent's); a stranger, a pending guardian and the anonymous caller are
1707
1714
  * / refused.
1708
1715
  */
1709
- listGuardianDisputes: ActorMethod<[bigint, bigint], Result_39>;
1716
+ listGuardianDisputes: ActorMethod<[bigint, bigint], Result_40>;
1710
1717
  /**
1711
1718
  * / Accessible by owner and guardians.
1712
1719
  * /
@@ -1715,7 +1722,7 @@ export interface Engram {
1715
1722
  * / pause writes" — a claim about who can STOP it. A caller who cannot tell that from "you may not
1716
1723
  * / see the roster" has been told the engram is unguarded when it may be fully guarded.
1717
1724
  */
1718
- listGuardians: ActorMethod<[bigint, bigint], Result_38>;
1725
+ listGuardians: ActorMethod<[bigint, bigint], Result_39>;
1719
1726
  /**
1720
1727
  * / The export receipts in the retained log at or above `startSeq`, oldest first.
1721
1728
  * /
@@ -1733,7 +1740,7 @@ export interface Engram {
1733
1740
  * / Read `MemoryRouter.ReceiptPage` before reading `page.total` as a receipt count. It is not one;
1734
1741
  * / it is the chain's length, and the declaration says why.
1735
1742
  */
1736
- listMemoryExportReceipts: ActorMethod<[bigint, bigint], Result_37>;
1743
+ listMemoryExportReceipts: ActorMethod<[bigint, bigint], Result_38>;
1737
1744
  /**
1738
1745
  * / ⟨0.16.0⟩ THE `withheld` EXEMPLAR — L1 names this exact method as the defect it fixes.
1739
1746
  * /
@@ -1760,7 +1767,7 @@ export interface Engram {
1760
1767
  * / row served, never one per file stored. A WIDENED REPLY: a reader that decodes the row by
1761
1768
  * / position rather than by field name breaks — none in this repository does.
1762
1769
  */
1763
- listMemoryFiles: ActorMethod<[bigint, bigint], Result_36>;
1770
+ listMemoryFiles: ActorMethod<[bigint, bigint], Result_37>;
1764
1771
  /**
1765
1772
  * / One page of the memory log, seq-ordered, optionally narrowed to one author.
1766
1773
  * /
@@ -1787,7 +1794,7 @@ export interface Engram {
1787
1794
  * / with the disclosures that make the page verifiable — the hidden-bound defect the census itself
1788
1795
  * / names on previewCondense's row.
1789
1796
  */
1790
- listMemoryLog: ActorMethod<[bigint, bigint, [] | [Principal]], Result_35>;
1797
+ listMemoryLog: ActorMethod<[bigint, bigint, [] | [Principal]], Result_36>;
1791
1798
  /**
1792
1799
  * / The caller's OWN spend-approval requests. ⟨0.16.0, L1 + L3 — fixed 2026-08-18⟩
1793
1800
  * /
@@ -1806,7 +1813,7 @@ export interface Engram {
1806
1813
  * / (The unbounded MAP is filed separately — pruning an approval record destroys evidence of what
1807
1814
  * / was asked, which is a retention ruling rather than a shape fix.)
1808
1815
  */
1809
- listMyApprovalRequests: ActorMethod<[bigint, bigint], Result_34>;
1816
+ listMyApprovalRequests: ActorMethod<[bigint, bigint], Result_35>;
1810
1817
  /**
1811
1818
  * / The payer's own sessions, live ones first. PAYER-SCOPED: a caller sees only their own, which
1812
1819
  * / is why this needs no role — a session id is not a secret from the person who paid for it.
@@ -1817,7 +1824,7 @@ export interface Engram {
1817
1824
  * / client would break on — the market paged its own pending withdrawals before its cut for the
1818
1825
  * / same reason. The order is the order sessions were opened.
1819
1826
  */
1820
- listMySessions: ActorMethod<[bigint, bigint], Result_33>;
1827
+ listMySessions: ActorMethod<[bigint, bigint], Result_34>;
1821
1828
  /**
1822
1829
  * /
1823
1830
  * / ⟨0.16.0, L3⟩ Paged and enveloped like every other `list*`, and the envelope here is uniformity
@@ -1832,7 +1839,7 @@ export interface Engram {
1832
1839
  * / IT recorded, so this chain is what a caller composes with when currency matters — which it
1833
1840
  * / cannot do if it needs a role here.
1834
1841
  */
1835
- listOwnershipTransfers: ActorMethod<[bigint, bigint], Result_32>;
1842
+ listOwnershipTransfers: ActorMethod<[bigint, bigint], Result_33>;
1836
1843
  /**
1837
1844
  * / ⟨2026-09-29, the platform's question from the build review⟩ OWNER-ONLY: how many payment
1838
1845
  * / signatures each agent has obtained today, and the daily limit (200, `PaymentSignCap`). The
@@ -1850,7 +1857,7 @@ export interface Engram {
1850
1857
  * / engram enforces for it — beside the agents, never a row among them
1851
1858
  * / (`PaymentSignCap.marketplaceRow`). Null when no marketplace is set.
1852
1859
  */
1853
- listPaymentSignatureCounts: ActorMethod<[bigint, bigint], Result_31>;
1860
+ listPaymentSignatureCounts: ActorMethod<[bigint, bigint], Result_32>;
1854
1861
  /**
1855
1862
  * / Agent records removed by a reset. Each row is a NAMED record with the fields `principal`,
1856
1863
  * / `name`, `registeredAt` and `purgedAt` — read them BY NAME, never by position.
@@ -1892,7 +1899,7 @@ export interface Engram {
1892
1899
  * / earlier ending, or the reset) — the facts `resyncAgentEdges` re-sends. The stored rows are
1893
1900
  * / served as they are.
1894
1901
  */
1895
- listPurgedAgents: ActorMethod<[bigint, bigint], Result_30>;
1902
+ listPurgedAgents: ActorMethod<[bigint, bigint], Result_31>;
1896
1903
  /**
1897
1904
  * / ⟨0.16.0⟩ ONE ACCESSOR, folding `readReadLog` and `getDenialLog` — and the fold only became
1898
1905
  * / safe because of a change made earlier in this same leg.
@@ -1955,7 +1962,7 @@ export interface Engram {
1955
1962
  * / on the chained record — the same `RecordView` filter, and `withheld` counts what it removed
1956
1963
  * / together with what `successFilter` removed. WHAT WOULD MAKE THIS WRONG: see `listAuditEntries`.
1957
1964
  */
1958
- listReadLog: ActorMethod<[[] | [boolean], bigint, bigint], Result_29>;
1965
+ listReadLog: ActorMethod<[[] | [boolean], bigint, bigint], Result_30>;
1959
1966
  /**
1960
1967
  * / ⟨2026-10-21, round 11 b⟩ The owner's notes, oldest first. Same visibility as
1961
1968
  * / `listRepudiations`, for the same reason: the owner and ACTIVE guardians read the rows; an agent
@@ -1963,7 +1970,7 @@ export interface Engram {
1963
1970
  * / gets an empty page whose `withheld` counts the notes in its window — never "there are none". A
1964
1971
  * / stranger, a pending guardian and the anonymous caller are refused.
1965
1972
  */
1966
- listRecordNotes: ActorMethod<[bigint, bigint], Result_28>;
1973
+ listRecordNotes: ActorMethod<[bigint, bigint], Result_29>;
1967
1974
  /**
1968
1975
  * / Same visibility as listAuditEntries: the owner, this engram's agents, and ACTIVE guardians
1969
1976
  * / see disputes. An unauthorized read REFUSES — it does not return an empty list, because an
@@ -1980,7 +1987,7 @@ export interface Engram {
1980
1987
  * / WOULD MAKE THIS WRONG: a ruling that an agent may see the disputes of its own writes; this would
1981
1988
  * / then have to look up each disputed version's writer, which it does not do today.
1982
1989
  */
1983
- listRepudiations: ActorMethod<[bigint, bigint], Result_27>;
1990
+ listRepudiations: ActorMethod<[bigint, bigint], Result_28>;
1984
1991
  /**
1985
1992
  * / ⟨2026-10-21, the owner's round-11 answer f⟩ OWNER-ONLY: the sign-ins, each with the name its app
1986
1993
  * / registered. The same tokens, in the same order and paged the same way, as `listBearerTokens`,
@@ -1991,7 +1998,7 @@ export interface Engram {
1991
1998
  * / and `listBearerTokens`' reply is shipped (never widened). An agent, a guardian, a stranger and
1992
1999
  * / the anonymous caller are refused, by `listBearerTokens`' own gate and for its reason.
1993
2000
  */
1994
- listSignIns: ActorMethod<[bigint, bigint], Result_26>;
2001
+ listSignIns: ActorMethod<[bigint, bigint], Result_27>;
1995
2002
  /**
1996
2003
  * / Owner: advance the review cursor — "I have seen everything up to and including uptoAuditId"
1997
2004
  * / (null = everything at the current head). Bounded so the attestation can never cover entries
@@ -2003,7 +2010,7 @@ export interface Engram {
2003
2010
  * / and this never inspects an operation or a role. Widening what the review shows therefore
2004
2011
  * / changes only which ids the console can pass here — it cannot desynchronise the cursor.
2005
2012
  */
2006
- markAgentWritesReviewed: ActorMethod<[[] | [bigint]], Result_13>;
2013
+ markAgentWritesReviewed: ActorMethod<[[] | [bigint]], Result_14>;
2007
2014
  /**
2008
2015
  * / ⟨2026-10-21, the owner's round-11 answer g⟩ AN AGENT READS ITS OWN GRANT — to the calling key
2009
2016
  * / only (`People.AgentGrant`): what it may read, where it may write, its rate, and the payment
@@ -2016,7 +2023,7 @@ export interface Engram {
2016
2023
  * / "Agent has resigned" — an ended agent may do nothing, and its old grant would read as powers),
2017
2024
  * / a guardian and a stranger ("Not authorized"), the anonymous caller. A query: it writes nothing.
2018
2025
  */
2019
- myGrant: ActorMethod<[], Result_25>;
2026
+ myGrant: ActorMethod<[], Result_26>;
2020
2027
  /**
2021
2028
  * / The AGENT's current key nominates the key that will replace it. Nothing moves yet: the new
2022
2029
  * / key must accept, by its own call, within 24 hours (`acceptAgentKeyNomination`). One pending
@@ -2024,7 +2031,7 @@ export interface Engram {
2024
2031
  * / with nothing changed, for a caller that is not an active agent here and for a key that could
2025
2032
  * / not hold the record (`KeyReplacement.nomineeRefusal`).
2026
2033
  */
2027
- nominateAgentKey: ActorMethod<[Principal], Result_1>;
2034
+ nominateAgentKey: ActorMethod<[Principal], Result_2>;
2028
2035
  /**
2029
2036
  * / An AGENT paired here asks this engram to open an engram of its own. This engram attaches 1.3 T of
2030
2037
  * / its own cycles to the registry's `sysSpawnChild`; the agent's lasting key owns what is opened, and
@@ -2055,8 +2062,8 @@ export interface Engram {
2055
2062
  * / WHAT WOULD MAKE THIS WRONG: an await added between `ChildAllowance.take` and the registry call; the
2056
2063
  * / registry's `CHILD_MIN_ATTACHED_CYCLES` moving without `CHILD_ATTACH_CYCLES`.
2057
2064
  */
2058
- openChildEngram: ActorMethod<[], Result_24>;
2059
- openSession: ActorMethod<[SessionConfig, PaymentSignature], Result_23>;
2065
+ openChildEngram: ActorMethod<[], Result_25>;
2066
+ openSession: ActorMethod<[SessionConfig, PaymentSignature], Result_24>;
2060
2067
  /**
2061
2068
  * / Withdraw tokens to the owner's principal. This is the ONLY way to
2062
2069
  * / move tokens out of the engram to an external address, and the
@@ -2064,7 +2071,7 @@ export interface Engram {
2064
2071
  * / NOT freeze-gated: the owner always controls their own funds.
2065
2072
  * / Guardian freeze only blocks agent/public operations.
2066
2073
  */
2067
- ownerWithdraw: ActorMethod<[TokenAmount, [] | [ActionAuth]], Result_13>;
2074
+ ownerWithdraw: ActorMethod<[TokenAmount, [] | [ActionAuth]], Result_14>;
2068
2075
  /**
2069
2076
  * / ⟨0.16.0⟩ `payRentFromEarnings` DELETED — ruled TWICE (B1 and B2), and it was the single
2070
2077
  * / clearest violation of the OSS/platform split in this repo.
@@ -2121,17 +2128,17 @@ export interface Engram {
2121
2128
  * / engagement on the agent's track record, and what to do. Before, the reply was `#Ok` with the
2122
2129
  * / record alone even when the registry had refused the start, so the agent was never told.
2123
2130
  */
2124
- pairAgent: ActorMethod<[{ enrolment: Enrolment; code: string }], Result_22>;
2131
+ pairAgent: ActorMethod<[{ enrolment: Enrolment; code: string }], Result_23>;
2125
2132
  /**
2126
2133
  * / ⟨0.16.0, L2.2 — renamed from `guardianPauseWrites`⟩ Same correction as freezePayments above:
2127
2134
  * / owner-or-guardian, and `resumeWrites` never carried the prefix either.
2128
2135
  */
2129
- pauseWrites: ActorMethod<[], Result_1>;
2136
+ pauseWrites: ActorMethod<[], Result_2>;
2130
2137
  /**
2131
2138
  * / ⟨2026-10-21, the owner's round-11 answer d⟩ `pauseWrites` with a reason; everything said of
2132
2139
  * / `freezePaymentsWithReason` holds, with `canPauseWrites` as the guardian's grant.
2133
2140
  */
2134
- pauseWritesWithReason: ActorMethod<[string], Result_1>;
2141
+ pauseWritesWithReason: ActorMethod<[string], Result_2>;
2135
2142
  /**
2136
2143
  * / What condensing through `toSeq` would do, and whether it is unlocked. COMMITS NOTHING — it is
2137
2144
  * / a query, so it structurally cannot; a preview that wrote would be its own trap.
@@ -2152,7 +2159,7 @@ export interface Engram {
2152
2159
  * / `unlocked` is the export-receipt gate ONLY. It is not a promise the condense will land: the
2153
2160
  * / history-budget delta is checked at commit time and can still refuse a short prefix.
2154
2161
  */
2155
- previewCondense: ActorMethod<[bigint], Result_21>;
2162
+ previewCondense: ActorMethod<[bigint], Result_22>;
2156
2163
  /**
2157
2164
  * / A quote for a session this caller has not opened and is not committed to — the intent a
2158
2165
  * / buyer signs against. Pure dry run, no state, no funds.
@@ -2201,7 +2208,7 @@ export interface Engram {
2201
2208
  * / HONEST WHEN CUT SHORT: `complete = false` when the planning budget
2202
2209
  * / (`MemoryRouter.PREVIEW_MAX_DROPS`) ran out — the totals are then a floor, and say so.
2203
2210
  */
2204
- previewRetention: ActorMethod<[Array<[string, RetentionClassSpec]>], Result_20>;
2211
+ previewRetention: ActorMethod<[Array<[string, RetentionClassSpec]>], Result_21>;
2205
2212
  /**
2206
2213
  * / Read one memory file at its current version.
2207
2214
  * /
@@ -2218,7 +2225,7 @@ export interface Engram {
2218
2225
  * / (`sessionReadContext` and the MCP reads). A caller measuring engram usage from this method
2219
2226
  * / will measure nothing.
2220
2227
  */
2221
- readMemory: ActorMethod<[string], Result_11>;
2228
+ readMemory: ActorMethod<[string], Result_12>;
2222
2229
  /**
2223
2230
  * / Read many paths in one call. Per-path Results are KEPT — partial success is the point, and
2224
2231
  * / one unreadable path must not fail the other nine.
@@ -2236,7 +2243,7 @@ export interface Engram {
2236
2243
  * / path, each with its own Result — a refused RESERVED path sits beside a readable one, which is
2237
2244
  * / a genuine per-path fact.
2238
2245
  */
2239
- readMemoryBatch: ActorMethod<[Array<string>], Result_19>;
2246
+ readMemoryBatch: ActorMethod<[Array<string>], Result_20>;
2240
2247
  /**
2241
2248
  * / ⟨0.16.0⟩ `getMemoryRetentionGuards` DELETED — folded into `getMemoryRetentionPolicy` above.
2242
2249
  * / It was the second L2.1 array-returning `get*`, and separating it from the policy it modifies
@@ -2248,7 +2255,7 @@ export interface Engram {
2248
2255
  * / see it cannot know whether it has the whole range, which is how silent truncation gets
2249
2256
  * / reintroduced. Loop while `more` is true, advancing by the bytes actually returned.
2250
2257
  */
2251
- readMemoryBytes: ActorMethod<[string, bigint, bigint, [] | [bigint]], Result_18>;
2258
+ readMemoryBytes: ActorMethod<[string, bigint, bigint, [] | [bigint]], Result_19>;
2252
2259
  /**
2253
2260
  * / The escrow exit for a session whose settle cannot pay.
2254
2261
  * /
@@ -2313,7 +2320,7 @@ export interface Engram {
2313
2320
  * / the amount can be read back — a session closed in the same moment as the recovery and cleaned up
2314
2321
  * / during its transfer — it answers `#Other` naming the block, never a guessed amount.
2315
2322
  */
2316
- recoverEscrow: ActorMethod<[string, bigint], Result_17>;
2323
+ recoverEscrow: ActorMethod<[string, bigint], Result_18>;
2317
2324
  /**
2318
2325
  * / ⟨0.16.0, L1⟩ A REDEMPTION PATH, where the arm choice is a disclosure decision.
2319
2326
  * /
@@ -2329,7 +2336,7 @@ export interface Engram {
2329
2336
  * / owner's invite gave them and that they cannot act until approved; before, that took a second
2330
2337
  * / read they had no reason to know to make.
2331
2338
  */
2332
- registerGuardian: ActorMethod<[string], Result_16>;
2339
+ registerGuardian: ActorMethod<[string], Result_17>;
2333
2340
  /**
2334
2341
  * / Remove a per-caller override so that caller reverts to — and keeps TRACKING — the global caps.
2335
2342
  * /
@@ -2337,12 +2344,12 @@ export interface Engram {
2337
2344
  * / override is to overwrite it with a frozen copy of the global policy, which then stops
2338
2345
  * / following later changes. That makes every override permanent in effect.
2339
2346
  */
2340
- removeCallerSpendPolicy: ActorMethod<[Principal], Result_1>;
2347
+ removeCallerSpendPolicy: ActorMethod<[Principal], Result_2>;
2341
2348
  /**
2342
2349
  * / ⟨2026-10-14, 4A⟩ Remove a destination from one action's list. Instant, and NOT freeze-gated:
2343
2350
  * / removal TIGHTENS, and a frozen engram must still be able to shrink what it could sign to.
2344
2351
  */
2345
- removeEip712Destination: ActorMethod<[Uint8Array | number[], string], Result_1>;
2352
+ removeEip712Destination: ActorMethod<[Uint8Array | number[], string], Result_2>;
2346
2353
  /**
2347
2354
  * / De-register a type that has NEVER SIGNED. Exists because of a hazard the first external
2348
2355
  * / validation found within hours (consumer report, 2026-08-06): a bare-name #standard registration —
@@ -2356,7 +2363,7 @@ export interface Engram {
2356
2363
  * / ⟨2026-10-14⟩ `removeEvmWithdrawDestination` is now `removeEip712Destination` (ruling 4A); same
2357
2364
  * / reasoning. Removing a type now also drops its rules and its own destination list.
2358
2365
  */
2359
- removeEip712Type: ActorMethod<[Uint8Array | number[]], Result_1>;
2366
+ removeEip712Type: ActorMethod<[Uint8Array | number[]], Result_2>;
2360
2367
  /**
2361
2368
  * / Owner-only: remove a guardian from the roster.
2362
2369
  * /
@@ -2367,7 +2374,7 @@ export interface Engram {
2367
2374
  * / `#NotFound` rather than `#Refused` when there is no such guardian: only the owner reaches this
2368
2375
  * / line, so the roster is theirs and its contents are not a secret being withheld from them.
2369
2376
  */
2370
- removeGuardian: ActorMethod<[Principal], Result_1>;
2377
+ removeGuardian: ActorMethod<[Principal], Result_2>;
2371
2378
  /**
2372
2379
  * / ⟨2026-10-21, the owner's round-11 answer a⟩ OWNER-ONLY: give an agent a new name. A name was
2373
2380
  * / fixed at the invite, and two agents both called "agent" is how the 2026-10-20 session started.
@@ -2380,13 +2387,13 @@ export interface Engram {
2380
2387
  * / current name is `#Conflict`. Nothing changes on any refusal. Not alerted: the owner is the one
2381
2388
  * / renaming (`ActionAlerts.classify` answers null for `agent.rename`).
2382
2389
  */
2383
- renameAgent: ActorMethod<[Principal, string], Result_1>;
2390
+ renameAgent: ActorMethod<[Principal, string], Result_2>;
2384
2391
  /**
2385
2392
  * / Owner disavows a specific memory write, in the open. Marks — never deletes: the content and
2386
2393
  * / the original audit entry stay exactly where they were; this appends a chained
2387
2394
  * / `memory.repudiate` entry and lists the (path, version) so readers can see the dispute.
2388
2395
  */
2389
- repudiateMemoryWrite: ActorMethod<[string, bigint, string], Result_13>;
2396
+ repudiateMemoryWrite: ActorMethod<[string, bigint, string], Result_14>;
2390
2397
  /**
2391
2398
  * / ⚠ OWNER-ONLY BULK RESET. Destructive, and wider than its name suggests.
2392
2399
  * /
@@ -2416,7 +2423,7 @@ export interface Engram {
2416
2423
  * / long-lived enough for the rent model to apply, the reset entry is not guaranteed to still be
2417
2424
  * / there. `agentPurgeLog` is the evidence that does not age out — which is why it exists.
2418
2425
  */
2419
- resetEngram: ActorMethod<[], Result_15>;
2426
+ resetEngram: ActorMethod<[], Result_16>;
2420
2427
  /**
2421
2428
  * / ⟨2026-09-28, owner decision: an agent can resign from an engram, and the resignation is
2422
2429
  * / recorded⟩ The AGENT ends its own engagement with this engram.
@@ -2437,13 +2444,13 @@ export interface Engram {
2437
2444
  * / that is down cannot leave the agent half-resigned; a missed notice is logged by
2438
2445
  * / `notifyRegistryAgentEdge`. WHAT WOULD MAKE THIS WRONG: a second path that sets `#Resigned`.
2439
2446
  */
2440
- resignAgent: ActorMethod<[], Result_1>;
2447
+ resignAgent: ActorMethod<[], Result_2>;
2441
2448
  /**
2442
2449
  * / OWNER-ONLY release of the write pause, with the same one-way shape as `unfreezePayments`: a
2443
2450
  * / guardian holding `canPauseWrites` can stop writes without the owner and cannot restart them,
2444
2451
  * / and the owner can always restart them. A tripwire rather than a lock.
2445
2452
  */
2446
- resumeWrites: ActorMethod<[], Result_1>;
2453
+ resumeWrites: ActorMethod<[], Result_2>;
2447
2454
  /**
2448
2455
  * / Self-heal: re-send every ACTIVE agent's start to the spawning registry (idempotent — the
2449
2456
  * / registry mints no duplicate for an open engagement), for when a notice was missed. Owner-only.
@@ -2468,13 +2475,13 @@ export interface Engram {
2468
2475
  * / each such engagement under `cannotBeRecorded` (key, root, invite, and how and when it ended),
2469
2476
  * / apart from `notRecorded`, so the owner sees them rather than silence.
2470
2477
  */
2471
- resyncAgentEdges: ActorMethod<[], Result_14>;
2478
+ resyncAgentEdges: ActorMethod<[], Result_15>;
2472
2479
  /**
2473
2480
  * / Return to managed custody: the engram adds the registry back as a controller ALONGSIDE the
2474
2481
  * / owner — it does not remove the owner. The inverse of `claimSovereignty`, and the reason
2475
2482
  * / sovereignty is not a one-way door.
2476
2483
  */
2477
- returnToManaged: ActorMethod<[], Result_1>;
2484
+ returnToManaged: ActorMethod<[], Result_2>;
2478
2485
  /**
2479
2486
  * / Replace the whole content of an EXISTING file.
2480
2487
  * /
@@ -2511,7 +2518,7 @@ export interface Engram {
2511
2518
  * /
2512
2519
  * / To narrow what an agent may do rather than end its access, use `setAgentPermissions`.
2513
2520
  */
2514
- revokeAgent: ActorMethod<[Principal], Result_1>;
2521
+ revokeAgent: ActorMethod<[Principal], Result_2>;
2515
2522
  /**
2516
2523
  * / Owner-only panic button: revoke EVERY active agent at once. Returns how many were revoked.
2517
2524
  * /
@@ -2530,7 +2537,7 @@ export interface Engram {
2530
2537
  * / that fails leaves the agents revoked here regardless — a partial notify is not a partial
2531
2538
  * / revocation, which is the direction that matters for a panic button.
2532
2539
  */
2533
- revokeAllAgents: ActorMethod<[], Result_13>;
2540
+ revokeAllAgents: ActorMethod<[], Result_14>;
2534
2541
  /**
2535
2542
  * / Owner-only panic button: revoke every connector bearer token at once. Returns how many.
2536
2543
  * /
@@ -2541,7 +2548,7 @@ export interface Engram {
2541
2548
  * /
2542
2549
  * / Tokens are re-issuable: revoking them is not permanent the way revoking an agent is.
2543
2550
  */
2544
- revokeAllBearerTokens: ActorMethod<[], Result_13>;
2551
+ revokeAllBearerTokens: ActorMethod<[], Result_14>;
2545
2552
  /**
2546
2553
  * / ⟨0.16.0⟩ `removeAllGuardians` DELETED — test-only (L6), and verified NOT part of KILL-SWITCH's
2547
2554
  * / mass-revoke set. The destructive phase-07 suite iterates `removeGuardian` instead, so nothing
@@ -2555,12 +2562,12 @@ export interface Engram {
2555
2562
  * / Unlike revoking an agent, this costs nothing permanently — an invite is a one-time code,
2556
2563
  * / so voiding it and minting a fresh one is the ordinary path.
2557
2564
  */
2558
- revokeAllInvites: ActorMethod<[], Result_13>;
2565
+ revokeAllInvites: ActorMethod<[], Result_14>;
2559
2566
  /**
2560
2567
  * / Revoke a bearer token by its public tokenId. Idempotent.
2561
2568
  * / Subsequent /mcp requests using this token will be rejected.
2562
2569
  */
2563
- revokeBearerToken: ActorMethod<[string], Result_1>;
2570
+ revokeBearerToken: ActorMethod<[string], Result_2>;
2564
2571
  /**
2565
2572
  * / ⟨0.16.0, census §10 item 16⟩ RETURNS A REAL RECEIPT, not `R<()>` — same reason as the delete
2566
2573
  * / above, and sharper here: a rollback WRITES A NEW VERSION, so the caller's next question is
@@ -2587,7 +2594,7 @@ export interface Engram {
2587
2594
  * / agent on that record, so its standing is not the problem — the record's state is. An
2588
2595
  * / agent reading `#Refused` would go looking for a permission that was never missing.
2589
2596
  */
2590
- rotateAgentKeyHash: ActorMethod<[string], Result_1>;
2597
+ rotateAgentKeyHash: ActorMethod<[string], Result_2>;
2591
2598
  /**
2592
2599
  * / Append to a memory file against a PAID x402 session voucher — the write half of the paid rail,
2593
2600
  * / authorized by the voucher rather than by a role.
@@ -2634,7 +2641,7 @@ export interface Engram {
2634
2641
  * / CIPHERTEXT; the key-holding SDK decrypts it. A caller without the key gets bytes it cannot
2635
2642
  * / read, not an error.
2636
2643
  */
2637
- sessionReadContext: ActorMethod<[string], Result_12>;
2644
+ sessionReadContext: ActorMethod<[string], Result_13>;
2638
2645
  /**
2639
2646
  * / Read one memory file against a PAID x402 session voucher. No role, no invite — the voucher is
2640
2647
  * / the authorization, which is what makes this the engram's one rail a stranger can pay to use.
@@ -2666,7 +2673,7 @@ export interface Engram {
2666
2673
  * / cent voucher could read `secrets/*`.
2667
2674
  * / · Payments are frozen on this engram.
2668
2675
  */
2669
- sessionReadMemory: ActorMethod<[Voucher, string], Result_11>;
2676
+ sessionReadMemory: ActorMethod<[Voucher, string], Result_12>;
2670
2677
  /**
2671
2678
  * / Configure action alerts: an https webhook that receives new chained-audit entries matching the
2672
2679
  * / enabled event classes (money / approvals / guardian / agentWrites), batched, at most one
@@ -2675,7 +2682,7 @@ export interface Engram {
2675
2682
  * / jumps to the current end of the log so history is not replayed. Passing url = null disables.
2676
2683
  * / The URL itself is never written to the audit log (webhook URLs often embed secret tokens).
2677
2684
  */
2678
- setActionAlertConfig: ActorMethod<[AlertConfig], Result_1>;
2685
+ setActionAlertConfig: ActorMethod<[AlertConfig], Result_2>;
2679
2686
  /**
2680
2687
  * / Owner-only: replace an existing agent's permission set. The way to NARROW what an agent
2681
2688
  * / may do without ending their access — `revokeAgent` is terminal for that principal, this is
@@ -2692,7 +2699,7 @@ export interface Engram {
2692
2699
  * / forward is to grant read to your own agents instead, or to switch to Connected mode first —
2693
2700
  * / both of which the message says.
2694
2701
  */
2695
- setAgentPermissions: ActorMethod<[Principal, AgentPermissions], Result_1>;
2702
+ setAgentPermissions: ActorMethod<[Principal, AgentPermissions], Result_2>;
2696
2703
  /**
2697
2704
  * / Paths an agent holding a grant may REVISE rather than only append to.
2698
2705
  * /
@@ -2702,7 +2709,7 @@ export interface Engram {
2702
2709
  * / for that. What a bare prefix would do — "MEMORY.md" also matching "MEMORY.md.bak" — is the
2703
2710
  * / kind of accident a permission surface must not have.
2704
2711
  */
2705
- setAgentRevisablePaths: ActorMethod<[Array<string>], Result_1>;
2712
+ setAgentRevisablePaths: ActorMethod<[Array<string>], Result_2>;
2706
2713
  /**
2707
2714
  * / ⟨0.16.0 — census row⟩ Returns the APPLIED config, which is how this closes the
2708
2715
  * / setter-without-a-getter gap without adding a method: the write is the read.
@@ -2719,11 +2726,11 @@ export interface Engram {
2719
2726
  * / across all of them. "The write is the read" above went stale for a second phone, which never
2720
2727
  * / made the write: `getBackupRetention` is the read.
2721
2728
  */
2722
- setBackupRetention: ActorMethod<[string, bigint], Result_10>;
2729
+ setBackupRetention: ActorMethod<[string, bigint], Result_11>;
2723
2730
  /**
2724
2731
  * / Override the caps for ONE caller — an agent this owner trusts more, or less, than the rest.
2725
2732
  */
2726
- setCallerSpendPolicy: ActorMethod<[Principal, SpendingPolicy], Result_1>;
2733
+ setCallerSpendPolicy: ActorMethod<[Principal, SpendingPolicy], Result_2>;
2727
2734
  /**
2728
2735
  * / Owner-only: set how many engrams `agentPrincipal`'s agent may open of its own through this
2729
2736
  * / engram. Kept by the agent's lasting key, so it carries over a key replacement. Any count is
@@ -2736,7 +2743,7 @@ export interface Engram {
2736
2743
  * / alerts' money class (`ActionAlerts.classify`), so an owner or guardian with an alert channel
2737
2744
  * / hears of it.
2738
2745
  */
2739
- setChildAllowance: ActorMethod<[Principal, bigint], Result_1>;
2746
+ setChildAllowance: ActorMethod<[Principal, bigint], Result_2>;
2740
2747
  /**
2741
2748
  * / ⟨0.16.0⟩ `getEncryptedMemoryKeyForEpoch` DELETED — folded into `getEncryptedMemoryKey`'s epoch
2742
2749
  * / argument — see that method for the fold and the `null`-means-CURRENT rule.
@@ -2761,7 +2768,7 @@ export interface Engram {
2761
2768
  * / Private mode also closes the paid read rail by construction: a paid session holds no key, so
2762
2769
  * / `sessionReadMemory` refuses on an encrypted engram whatever `setPaidMemoryReadEnabled` says.
2763
2770
  */
2764
- setEncryptionEnabled: ActorMethod<[boolean], Result_1>;
2771
+ setEncryptionEnabled: ActorMethod<[boolean], Result_2>;
2765
2772
  /**
2766
2773
  * / Register the owner's EVM address for withdrawals.
2767
2774
  * /
@@ -2774,14 +2781,14 @@ export interface Engram {
2774
2781
  * / The guardian doesn't approve the change — the owner is sovereign.
2775
2782
  * / The guardian's existence is the gate, not their active consent.
2776
2783
  */
2777
- setEvmOwnerAddress: ActorMethod<[string], Result_1>;
2784
+ setEvmOwnerAddress: ActorMethod<[string], Result_2>;
2778
2785
  /**
2779
2786
  * / A guardian arms their OWN webhook over the guarded engram's audit stream (same event
2780
2787
  * / classes and payload as the owner channel — audit metadata, never memory file contents;
2781
2788
  * / the guardian honesty rail: integrity, not content). Active guardians only. Arming starts
2782
2789
  * / from NOW (no history replay); url = null disarms and frees the slot.
2783
2790
  */
2784
- setGuardianAlertConfig: ActorMethod<[AlertConfig], Result_1>;
2791
+ setGuardianAlertConfig: ActorMethod<[AlertConfig], Result_2>;
2785
2792
  /**
2786
2793
  * / Per-prefix retention policy. The longest rule that covers a path wins; anything uncovered
2787
2794
  * / keeps everything.
@@ -2797,7 +2804,7 @@ export interface Engram {
2797
2804
  * / (RetentionPolicy.mo) guards any change it sees. That is the conservative reading, and its
2798
2805
  * / only cost is a delay on keeping MORE, which destroys nothing.
2799
2806
  */
2800
- setMemoryRetentionPolicy: ActorMethod<[Array<[string, RetentionClassSpec]>], Result_1>;
2807
+ setMemoryRetentionPolicy: ActorMethod<[Array<[string, RetentionClassSpec]>], Result_2>;
2801
2808
  /**
2802
2809
  * / Owner-only: open or close the monetized read rail. When disabled (the default), sessionReadMemory
2803
2810
  * / fails closed for every voucher-bearer — selling the owner's memory is opt-in, not the default.
@@ -2810,7 +2817,7 @@ export interface Engram {
2810
2817
  * / `getEngramCard`'s `x402Support` reports THIS flag, so a buyer can read the rail's state before
2811
2818
  * / paying rather than discovering it in a refusal.
2812
2819
  */
2813
- setPaidMemoryReadEnabled: ActorMethod<[boolean], Result_1>;
2820
+ setPaidMemoryReadEnabled: ActorMethod<[boolean], Result_2>;
2814
2821
  /**
2815
2822
  * / Open or close the paid-memory WRITE rail (RB4). Owner-only, like its read twin.
2816
2823
  * /
@@ -2819,7 +2826,7 @@ export interface Engram {
2819
2826
  * / the larger permission ride in on the smaller one. Two flags is the shape that lets an owner
2820
2827
  * / say yes to one and no to the other, which is the common case.
2821
2828
  */
2822
- setPaidMemoryWriteEnabled: ActorMethod<[boolean], Result_1>;
2829
+ setPaidMemoryWriteEnabled: ActorMethod<[boolean], Result_2>;
2823
2830
  /**
2824
2831
  * / ⟨0.16.0, L1⟩ Every validation refusal here is `#Invalid` and the cap is `#Conflict`, and the
2825
2832
  * / split is worth stating once for the whole whole-value-config family below: a malformed path is
@@ -2827,7 +2834,7 @@ export interface Engram {
2827
2834
  * / this engram that no argument gets around. A caller that cannot tell those apart either edits
2828
2835
  * / forever or gives up on a request that was one character from valid.
2829
2836
  */
2830
- setProtectedPaths: ActorMethod<[Array<string>], Result_1>;
2837
+ setProtectedPaths: ActorMethod<[Array<string>], Result_2>;
2831
2838
  /**
2832
2839
  * / OWNER-ONLY: switch the metrics reader's read of the seat weeks off (`false`) or back on (`true`).
2833
2840
  * / On from birth, by the owner's ruling of 2026-10-02. Off, `sysGetAgentSeatWeeks` refuses the
@@ -2835,7 +2842,7 @@ export interface Engram {
2835
2842
  * / call is a chained record entry (`metrics.setSeatWeeksReadEnabled`, the new and the old value), so
2836
2843
  * / when the read was on or off is part of the record. Anyone else is refused by name.
2837
2844
  */
2838
- setSeatWeeksReadEnabled: ActorMethod<[boolean], Result_1>;
2845
+ setSeatWeeksReadEnabled: ActorMethod<[boolean], Result_2>;
2839
2846
  /**
2840
2847
  * / Set the most this engram may spend per day ACROSS EVERY CALLER — five agents, the owner and the
2841
2848
  * / marketplace together. `null` removes the ceiling. ⟨2026-09-28⟩
@@ -2879,7 +2886,7 @@ export interface Engram {
2879
2886
  * / distinguishable from a tightening afterwards — the reason `spend.setPolicy` records its limits.
2880
2887
  * / Not blocked by a payments freeze, like `setSpendPolicy`: setting a limit moves no money.
2881
2888
  */
2882
- setSpendCeiling: ActorMethod<[[] | [bigint]], Result_1>;
2889
+ setSpendCeiling: ActorMethod<[[] | [bigint]], Result_2>;
2883
2890
  /**
2884
2891
  * / Set this engram's spending caps.
2885
2892
  * /
@@ -2891,7 +2898,7 @@ export interface Engram {
2891
2898
  * / the escalation an agent starts when it hits a limit, and without it the queue is a place
2892
2899
  * / requests go to expire.
2893
2900
  */
2894
- setSpendPolicy: ActorMethod<[SpendingPolicy], Result_1>;
2901
+ setSpendPolicy: ActorMethod<[SpendingPolicy], Result_2>;
2895
2902
  /**
2896
2903
  * / Owner-only: set YOUR OWN safety rails on the funding path — a per-top-up ckUSDC ceiling and a
2897
2904
  * / minimum gap between top-ups. Read them back with `getTopUpLimits`.
@@ -2913,14 +2920,14 @@ export interface Engram {
2913
2920
  * / `{ cooldownSeconds; maxCkusdcE6s }`. Setter and getter now share one shape, so read-modify-
2914
2921
  * / write is expressible and neither side can drift from the other without the compiler saying so.
2915
2922
  */
2916
- setTopUpLimits: ActorMethod<[{ cooldownSeconds: bigint; maxCkusdcE6s: bigint }], Result_1>;
2923
+ setTopUpLimits: ActorMethod<[{ cooldownSeconds: bigint; maxCkusdcE6s: bigint }], Result_2>;
2917
2924
  /**
2918
2925
  * / Owner sets the World ID app_id + action + rp_id from their World Developer Portal (rp_id appears
2919
2926
  * / after "Enable World ID 4.0" on a production app). The action MUST be configured there with
2920
2927
  * / max_verifications = Unlimited (idempotent /verify → survives IC consensus). After setting this,
2921
2928
  * / register getWorldIdRpSignerAddress() as the rp_id's signer address in the Portal.
2922
2929
  */
2923
- setWorldIdConfig: ActorMethod<[string, string, string], Result_1>;
2930
+ setWorldIdConfig: ActorMethod<[string, string, string], Result_2>;
2924
2931
  /**
2925
2932
  * / Submit a verified-human proof: the IDKitResult from the frontend's World ID flow, forwarded
2926
2933
  * / VERBATIM (compact JSON, as JSON.stringify emits) to World's /api/v4/verify/{rp_id} over an HTTPS
@@ -2931,7 +2938,7 @@ export interface Engram {
2931
2938
  * / (selfie is farmable, passport/mnc are document identity — a different tier). Sets worldIdVerified
2932
2939
  * / and stores the result ONLY on a real verification success — never self-asserted.
2933
2940
  */
2934
- setWorldIdProof: ActorMethod<[string, string], Result_1>;
2941
+ setWorldIdProof: ActorMethod<[string, string], Result_2>;
2935
2942
  /**
2936
2943
  * / Sign a registered type. ONE call, owner-only, freeze-gated — the delay lives on registration
2937
2944
  * / (D2), never here: an emergency withdrawal must not need two owner round-trips.
@@ -2940,7 +2947,7 @@ export interface Engram {
2940
2947
  * / not lose the ability to sign because a marketplace gained it, and the two share every control
2941
2948
  * / below the caller gate.
2942
2949
  */
2943
- signEip712: ActorMethod<[Uint8Array | number[], Array<[string, Eip712Value]>], Result_4>;
2950
+ signEip712: ActorMethod<[Uint8Array | number[], Array<[string, Eip712Value]>], Result_5>;
2944
2951
  /**
2945
2952
  * / Sign the engram's own ERC-8004 registration tx for client-side broadcast: the engram signs, the client
2946
2953
  * / broadcasts and keeps the resulting registration id.
@@ -2980,7 +2987,7 @@ export interface Engram {
2980
2987
  maxPriorityFeePerGas: bigint;
2981
2988
  },
2982
2989
  ],
2983
- Result_9
2990
+ Result_10
2984
2991
  >;
2985
2992
  /**
2986
2993
  * / Sign an EIP-3009 authorization for x402 payment. Agent-accessible.
@@ -3017,7 +3024,7 @@ export interface Engram {
3017
3024
  amount: bigint;
3018
3025
  },
3019
3026
  ],
3020
- Result_3
3027
+ Result_4
3021
3028
  >;
3022
3029
  /**
3023
3030
  * / ⟨2026-10-21, the owner's round-11 answer e⟩ A GUARDIAN STEPS DOWN: the caller ends their own
@@ -3040,7 +3047,7 @@ export interface Engram {
3040
3047
  * / disputes stay on the record. Like `removeGuardian`, it is not terminal: the owner may invite
3041
3048
  * / the same person again.
3042
3049
  */
3043
- stepDownAsGuardian: ActorMethod<[], Result_1>;
3050
+ stepDownAsGuardian: ActorMethod<[], Result_2>;
3044
3051
  /**
3045
3052
  * / OWNER force-close, for a session the payer abandoned.
3046
3053
  * /
@@ -3062,7 +3069,7 @@ export interface Engram {
3062
3069
  * / and a break after it, and it also moves `packages/client/README.md` and
3063
3070
  * / `docs/AGENT-ONBOARDING.md`, which name it.
3064
3071
  */
3065
- sysForceCloseSession: ActorMethod<[string], Result_1>;
3072
+ sysForceCloseSession: ActorMethod<[string], Result_2>;
3066
3073
  /**
3067
3074
  * / The metrics reader the registry designated reads every engagement's seat weeks, in one call.
3068
3075
  * /
@@ -3081,7 +3088,7 @@ export interface Engram {
3081
3088
  * / class (`SeatWeeks.readRefusal`), never an empty list: an empty list is a real answer ("no agent
3082
3089
  * / has paired here"), and a fabricated one would be counted as one.
3083
3090
  */
3084
- sysGetAgentSeatWeeks: ActorMethod<[], Result_8>;
3091
+ sysGetAgentSeatWeeks: ActorMethod<[], Result_9>;
3085
3092
  /**
3086
3093
  * / The metrics reader the registry designated reads this engram's paid-rail health, in one call:
3087
3094
  * / the balance and the line it must stay above, the memory that line is computed from, the sessions
@@ -3105,7 +3112,7 @@ export interface Engram {
3105
3112
  * / to freeze. Called by another canister, a query runs replicated and this engram pays for it —
3106
3113
  * / a few million cycles an hour, the cost of being watched.
3107
3114
  */
3108
- sysGetRailHealth: ActorMethod<[], Result_7>;
3115
+ sysGetRailHealth: ActorMethod<[], Result_8>;
3109
3116
  /**
3110
3117
  * / The cashier reads how many signatures this engram has produced, per caller and in total.
3111
3118
  * / ⟨2026-09-28⟩ The owner's decision of that date: a running counter on the engram, exported to
@@ -3130,7 +3137,7 @@ export interface Engram {
3130
3137
  * / only engrams the registry confirms run published code, and read a lower count than last time as
3131
3138
  * / a reinstall — the reasoning is at `signaturesByCaller`.
3132
3139
  */
3133
- sysGetSignatureCounts: ActorMethod<[], Result_6>;
3140
+ sysGetSignatureCounts: ActorMethod<[], Result_7>;
3134
3141
  /**
3135
3142
  * / Note a restart the registry just made: what this engram owes for it, the floor a repayment may
3136
3143
  * / not go under, and until when to keep its timers quiet.
@@ -3142,7 +3149,7 @@ export interface Engram {
3142
3149
  */
3143
3150
  sysNoteRestart: ActorMethod<
3144
3151
  [{ keepCycles: bigint; loan: bigint; quietUntilNs: bigint }],
3145
- Result_1
3152
+ Result_2
3146
3153
  >;
3147
3154
  /**
3148
3155
  * / Rent lifecycle notice — how the OWNER (not the agent) learns their subscription lapsed. D6
@@ -3156,7 +3163,7 @@ export interface Engram {
3156
3163
  * / OBSERVES the transition, so it is the only thing that can report it. The state whitelist is
3157
3164
  * / closed — this is a lifecycle feed, not a free-text push surface into the owner's audit chain.
3158
3165
  */
3159
- sysNotifyRentLifecycle: ActorMethod<[string, string], Result_1>;
3166
+ sysNotifyRentLifecycle: ActorMethod<[string, string], Result_2>;
3160
3167
  /**
3161
3168
  * / ⟨0.16.0⟩ `getWalletActivation()` DELETED — folded to `about().walletActivatedAtNs`, with its
3162
3169
  * / custody-posture rationale carried onto the field. "Can this thing hold money" is a question a
@@ -3190,7 +3197,7 @@ export interface Engram {
3190
3197
  * / the origin: only the configured market can pass that value, so the line cannot be produced by
3191
3198
  * / any other caller.
3192
3199
  */
3193
- sysNotifyWalletActivity: ActorMethod<[string], Result_1>;
3200
+ sysNotifyWalletActivity: ActorMethod<[string], Result_2>;
3194
3201
  /**
3195
3202
  * / The rent RECEIPT seam (B2): the cashier tells this engram that money moved on its behalf, and
3196
3203
  * / the engram appends a `fee.recorded` line to its own audit chain. It computes nothing.
@@ -3230,7 +3237,7 @@ export interface Engram {
3230
3237
  scheduleVersion: [] | [string];
3231
3238
  },
3232
3239
  ],
3233
- Result_1
3240
+ Result_2
3234
3241
  >;
3235
3242
  /**
3236
3243
  * / Give back what a paid security update advanced this engram and the install did not use.
@@ -3240,6 +3247,9 @@ export interface Engram {
3240
3247
  * / above its balance before the update, and what sits above its 30-day reserve plus send headroom
3241
3248
  * / (`RestartRepay.giveBack`) — attached to the registry's `sysRepayUpgradeAdvance`, which accepts no
3242
3249
  * / more than it advanced. The registry writes off what is not returned; nothing is owed after.
3250
+ * / ⟨CORRECTED 2026-10-28, beside "its 30-day reserve" above — the owner's ruling "1"⟩ The reserve is
3251
+ * / this engram's freezing reserve at its own setting (`freezeReservation` = `lineEstimate`), not a
3252
+ * / 30-day figure: about 430B more at a ~305-day setting.
3243
3253
  * / ⟨2026-10-26, the owner's review choice 1B: "take back only what we added; anything left over goes
3244
3254
  * / to the 90-day write-off"⟩ The registry now names the ONE advance it is asking for (`advanceId`,
3245
3255
  * / the one its deposit for this install put on its ledger) and `advance` is that advance's amount
@@ -3252,7 +3262,7 @@ export interface Engram {
3252
3262
  */
3253
3263
  sysReturnUpgradeAdvance: ActorMethod<
3254
3264
  [{ balanceBefore: bigint; advanceId: bigint; advance: bigint }],
3255
- Result_5
3265
+ Result_6
3256
3266
  >;
3257
3267
  /**
3258
3268
  * / Point this engram at the biller that converts its tokens → cycles. Settable, not hardcoded:
@@ -3271,7 +3281,7 @@ export interface Engram {
3271
3281
  * / nobody but the spawning registry can fix it. That refusal therefore names the real remedy
3272
3282
  * / rather than telling an owner to run a call they can no longer make.
3273
3283
  */
3274
- sysSetBillerId: ActorMethod<[Principal], Result_1>;
3284
+ sysSetBillerId: ActorMethod<[Principal], Result_2>;
3275
3285
  /**
3276
3286
  * / Give this engram its BIRTH CHAIN: its ancestors' birth records and its own, root first, its own
3277
3287
  * / last ⟨2026-10-26, the owner's lineage rulings L2C-lite and L3A⟩.
@@ -3288,7 +3298,7 @@ export interface Engram {
3288
3298
  * / it checks only that the chain ends with its own record. The fingerprints are the registry's to
3289
3299
  * / certify and the client's `verifyBirthChain` to check.
3290
3300
  */
3291
- sysSetBirthChain: ActorMethod<[Array<BirthRecord>], Result_1>;
3301
+ sysSetBirthChain: ActorMethod<[Array<BirthRecord>], Result_2>;
3292
3302
  /**
3293
3303
  * / Point this engram at the commerce satellite allowed to ask it for signatures. ⟨0.16.0, B1⟩
3294
3304
  * /
@@ -3302,7 +3312,7 @@ export interface Engram {
3302
3312
  * / against a null pointer and their refusals name the registry as the remedy rather than telling
3303
3313
  * / an owner to run a call they cannot make.
3304
3314
  */
3305
- sysSetMarketId: ActorMethod<[Principal], Result_1>;
3315
+ sysSetMarketId: ActorMethod<[Principal], Result_2>;
3306
3316
  /**
3307
3317
  * / Name the metrics reader allowed to read this engram's seat weeks (`sysGetAgentSeatWeeks`).
3308
3318
  * / ⟨2026-10-02, the owner's ruling of that day⟩
@@ -3324,7 +3334,7 @@ export interface Engram {
3324
3334
  * / (`AccessControl.setOnce` says why). Still never cleared. The chained record entry
3325
3335
  * / (`metrics.sysSetMetricsReaderId`) is the evidence of when the read was granted, and to whom.
3326
3336
  */
3327
- sysSetMetricsReaderId: ActorMethod<[Principal], Result_1>;
3337
+ sysSetMetricsReaderId: ActorMethod<[Principal], Result_2>;
3328
3338
  /**
3329
3339
  * / The market asks this engram to sign a registered type — B1's seam, settlement leg. ⟨0.16.0⟩
3330
3340
  * /
@@ -3340,7 +3350,7 @@ export interface Engram {
3340
3350
  * / That is what "signatures only" means in code, and it is why this method needs no new authority
3341
3351
  * / model: an unregistered typeId is refused for the market exactly as it is for the owner.
3342
3352
  */
3343
- sysSignEip712: ActorMethod<[Uint8Array | number[], Array<[string, Eip712Value]>], Result_4>;
3353
+ sysSignEip712: ActorMethod<[Uint8Array | number[], Array<[string, Eip712Value]>], Result_5>;
3344
3354
  /**
3345
3355
  * / The market asks this engram to sign an x402 payment — B1's seam, the paid-request leg. ⟨0.16.0⟩
3346
3356
  * /
@@ -3359,19 +3369,19 @@ export interface Engram {
3359
3369
  */
3360
3370
  sysSignX402Payment: ActorMethod<
3361
3371
  [bigint, string, string, bigint, string, string, [] | [string], [] | [string]],
3362
- Result_3
3372
+ Result_4
3363
3373
  >;
3364
3374
  /**
3365
3375
  * / Write an `alerts.test` entry into the audit log; the drain timer delivers it to the webhook
3366
3376
  * / within ~60s. Owner-only; requires a configured URL so the test can actually go somewhere.
3367
3377
  */
3368
- testActionAlert: ActorMethod<[], Result_1>;
3378
+ testActionAlert: ActorMethod<[], Result_2>;
3369
3379
  /**
3370
3380
  * / Guardian test alert — an audited guardian action (`alerts.test`, role Guardian) that every
3371
3381
  * / armed channel (owner + guardians) receives within ~60s. Requires the caller's own channel
3372
3382
  * / to be armed so the test has somewhere to land for them.
3373
3383
  */
3374
- testGuardianAlert: ActorMethod<[], Result_1>;
3384
+ testGuardianAlert: ActorMethod<[], Result_2>;
3375
3385
  /**
3376
3386
  * / RENAMED from `init` (L2.4). This is the OWNERSHIP-TRANSFER method — the most consequential
3377
3387
  * / owner-facing operation on the canister — and it was named for first-time setup, colliding with
@@ -3411,7 +3421,7 @@ export interface Engram {
3411
3421
  * / `listOwnershipTransfers` (until this day it wrote one from the owner to themselves, a hand-on
3412
3422
  * / that did not happen). The record entry says it was a report. `ControlHandover.isReport`.
3413
3423
  */
3414
- transferOwnership: ActorMethod<[Principal], Result_2>;
3424
+ transferOwnership: ActorMethod<[Principal], Result_3>;
3415
3425
  /**
3416
3426
  * / OWNER-ONLY release of the payment freeze — and the asymmetry with `freezePayments` is the
3417
3427
  * / governance design, not an oversight.
@@ -3425,7 +3435,20 @@ export interface Engram {
3425
3435
  * / So a guardian's freeze is a TRIPWIRE, not a lock — it buys the time it takes the owner to
3426
3436
  * / look, and no more.
3427
3437
  */
3428
- unfreezePayments: ActorMethod<[], Result_1>;
3438
+ unfreezePayments: ActorMethod<[], Result_2>;
3439
+ /**
3440
+ * / Wake this engram's timers after it paused them to save compute near its freezing line. Owner
3441
+ * / only. Refused, by name, below the room the hourly check-in needs; then nothing is armed.
3442
+ * /
3443
+ * / CALLER: the engram's owner, from the owner's app (its status line and its compute page), and
3444
+ * / nobody else (ADR-0020). ⟨2026-10-28, the owner's ruling "1": "it wakes on the next payment, agent
3445
+ * / request or your Wake"⟩ The automatic doors (the biller's receipt, Convert, an agent's MCP request)
3446
+ * / wake it when compute lands with room; this is the owner's door, for compute that arrived with no
3447
+ * / receipt (a bare top-up). It always reads the engram's own balance (no rate limit, no free filter),
3448
+ * / so a refusal states what the engram measured. Both figures in a refusal are its own READING above
3449
+ * / its line, which runs ~82B below the true figure, so the engram never calls it the gap.
3450
+ */
3451
+ wakeTimers: ActorMethod<[], Result_1>;
3429
3452
  /**
3430
3453
  * / Consensus transform for the World ID /verify outcall. Replicas each call independently, so the raw
3431
3454
  * / response (timestamps, `uses`, request-id headers) is non-deterministic. Collapse it to a single
@@ -3979,87 +4002,88 @@ export interface ResetReport {
3979
4002
  filesCleared: bigint;
3980
4003
  }
3981
4004
  export type Result = { Ok: WriteReceipt } | { Err: Error };
3982
- export type Result_1 = { Ok: null } | { Err: Error };
3983
- export type Result_10 = { Ok: BackupRetentionReport } | { Err: Error };
3984
- export type Result_11 = { Ok: MemoryFile } | { Err: Error };
3985
- export type Result_12 = { Ok: SessionContext } | { Err: Error };
3986
- export type Result_13 = { Ok: bigint } | { Err: Error };
3987
- export type Result_14 = { Ok: ResyncReport } | { Err: Error };
3988
- export type Result_15 = { Ok: ResetReport } | { Err: Error };
3989
- export type Result_16 = { Ok: GuardianRecord } | { Err: Error };
3990
- export type Result_17 = { Ok: EngramEscrowRecovery } | { Err: Error };
3991
- export type Result_18 = { Ok: MemoryByteChunk } | { Err: Error };
3992
- export type Result_19 = { Ok: Array<BatchReadItem> } | { Err: Error };
3993
- export type Result_2 = { Ok: ControlHandover } | { Err: Error };
3994
- export type Result_20 = { Ok: RetentionPreview } | { Err: Error };
3995
- export type Result_21 = { Ok: CondensePreview } | { Err: Error };
3996
- export type Result_22 = { Ok: Pairing } | { Err: Error };
3997
- export type Result_23 = { Ok: EngramSessionState } | { Err: Error };
3998
- export type Result_24 = { Ok: Principal } | { Err: Error };
3999
- export type Result_25 = { Ok: AgentGrant } | { Err: Error };
4000
- export type Result_26 = { Ok: Page } | { Err: Error };
4001
- export type Result_27 = { Ok: Page_1 } | { Err: Error };
4002
- export type Result_28 = { Ok: Page_2 } | { Err: Error };
4003
- export type Result_29 = { Ok: Page_3 } | { Err: Error };
4004
- export type Result_3 = { Ok: X402SignOutcome } | { Err: Error };
4005
- export type Result_30 = { Ok: Page_4 } | { Err: Error };
4006
- export type Result_31 = { Ok: PaymentSignatureCounts } | { Err: Error };
4007
- export type Result_32 = { Ok: Page_6 } | { Err: Error };
4008
- export type Result_33 = { Ok: Page_7 } | { Err: Error };
4009
- export type Result_34 = { Ok: Page_8 } | { Err: Error };
4010
- export type Result_35 = { Ok: LogPage } | { Err: Error };
4011
- export type Result_36 = { Ok: Page_10 } | { Err: Error };
4012
- export type Result_37 = { Ok: ReceiptPage } | { Err: Error };
4013
- export type Result_38 = { Ok: Page_12 } | { Err: Error };
4014
- export type Result_39 = { Ok: Page_13 } | { Err: Error };
4015
- export type Result_4 = { Ok: Eip712SignatureOut } | { Err: Error };
4016
- export type Result_40 = { Ok: Page_14 } | { Err: Error };
4017
- export type Result_41 = { Ok: Page_15 } | { Err: Error };
4018
- export type Result_42 = { Ok: Page_16 } | { Err: Error };
4019
- export type Result_43 = { Ok: Page_17 } | { Err: Error };
4020
- export type Result_44 = { Ok: CheckpointPage } | { Err: Error };
4021
- export type Result_45 = { Ok: Page_19 } | { Err: Error };
4022
- export type Result_46 = { Ok: Page_20 } | { Err: Error };
4023
- export type Result_47 = { Ok: RecordPage } | { Err: Error };
4024
- export type Result_48 = { Ok: Page_21 } | { Err: Error };
4025
- export type Result_49 = { Ok: Page_22 } | { Err: Error };
4026
- export type Result_5 = { Ok: { returned: bigint } } | { Err: Error };
4027
- export type Result_50 = { Ok: AgentSpendToday } | { Err: Error };
4028
- export type Result_51 = { Ok: Page_24 } | { Err: Error };
4029
- export type Result_52 = { Ok: string } | { Err: Error };
4030
- export type Result_53 = { Ok: boolean } | { Err: Error };
4031
- export type Result_54 = { Ok: [] | [string] } | { Err: Error };
4032
- export type Result_55 = { Ok: WorldIdRpContext } | { Err: Error };
4033
- export type Result_56 = { Ok: WorldIdConfig } | { Err: Error };
4034
- export type Result_57 = { Ok: WalletBalances } | { Err: Error };
4035
- export type Result_58 = { Ok: StorageReport } | { Err: Error };
4036
- export type Result_59 = { Ok: SpendingPolicy } | { Err: Error };
4037
- export type Result_6 = { Ok: SignatureCounts } | { Err: Error };
4038
- export type Result_60 = { Ok: SpendCeiling } | { Err: Error };
4039
- export type Result_61 = { Ok: SigningFloorStatus } | { Err: Error };
4040
- export type Result_62 = { Ok: { paths: Array<string> } } | { Err: Error };
4041
- export type Result_63 = { Ok: OwnerConsole } | { Err: Error };
4042
- export type Result_64 = { Ok: MemoryRetentionPolicy } | { Err: Error };
4043
- export type Result_65 = { Ok: MemoryHistory } | { Err: Error };
4044
- export type Result_66 = { Ok: AlertStatus } | { Err: Error };
4045
- export type Result_67 = { Ok: EvmAddresses } | { Err: Error };
4046
- export type Result_68 = { Ok: Uint8Array | number[] } | { Err: Error };
4047
- export type Result_69 = { Ok: ChildOpening } | { Err: Error };
4048
- export type Result_7 = { Ok: RailHealth } | { Err: Error };
4049
- export type Result_70 = { Ok: ChildAllowanceRow } | { Err: Error };
4050
- export type Result_71 = { Ok: Brakes } | { Err: Error };
4051
- export type Result_72 = { Ok: Array<BirthRecord> } | { Err: Error };
4052
- export type Result_73 = { Ok: BackupRetention } | { Err: Error };
4053
- export type Result_74 = { Ok: BackupMetadata } | { Err: Error };
4054
- export type Result_75 = { Ok: AgentWriteReview } | { Err: Error };
4055
- export type Result_76 = { Ok: Page_25 } | { Err: Error };
4056
- export type Result_78 = { Ok: MemoryRangeExport } | { Err: Error };
4057
- export type Result_79 = { Ok: CondenseResult } | { Err: Error };
4058
- export type Result_8 = { Ok: Array<Seat> } | { Err: Error };
4059
- export type Result_80 = { Ok: Eip712Registration } | { Err: Error };
4060
- export type Result_81 = { Ok: { activatesAtNs: bigint } } | { Err: Error };
4061
- export type Result_82 = { Ok: AgentRecord } | { Err: Error };
4062
- export type Result_9 = { Ok: SignedTransaction } | { Err: Error };
4005
+ export type Result_1 = { Ok: TimersWake } | { Err: Error };
4006
+ export type Result_10 = { Ok: SignedTransaction } | { Err: Error };
4007
+ export type Result_11 = { Ok: BackupRetentionReport } | { Err: Error };
4008
+ export type Result_12 = { Ok: MemoryFile } | { Err: Error };
4009
+ export type Result_13 = { Ok: SessionContext } | { Err: Error };
4010
+ export type Result_14 = { Ok: bigint } | { Err: Error };
4011
+ export type Result_15 = { Ok: ResyncReport } | { Err: Error };
4012
+ export type Result_16 = { Ok: ResetReport } | { Err: Error };
4013
+ export type Result_17 = { Ok: GuardianRecord } | { Err: Error };
4014
+ export type Result_18 = { Ok: EngramEscrowRecovery } | { Err: Error };
4015
+ export type Result_19 = { Ok: MemoryByteChunk } | { Err: Error };
4016
+ export type Result_2 = { Ok: null } | { Err: Error };
4017
+ export type Result_20 = { Ok: Array<BatchReadItem> } | { Err: Error };
4018
+ export type Result_21 = { Ok: RetentionPreview } | { Err: Error };
4019
+ export type Result_22 = { Ok: CondensePreview } | { Err: Error };
4020
+ export type Result_23 = { Ok: Pairing } | { Err: Error };
4021
+ export type Result_24 = { Ok: EngramSessionState } | { Err: Error };
4022
+ export type Result_25 = { Ok: Principal } | { Err: Error };
4023
+ export type Result_26 = { Ok: AgentGrant } | { Err: Error };
4024
+ export type Result_27 = { Ok: Page } | { Err: Error };
4025
+ export type Result_28 = { Ok: Page_1 } | { Err: Error };
4026
+ export type Result_29 = { Ok: Page_2 } | { Err: Error };
4027
+ export type Result_3 = { Ok: ControlHandover } | { Err: Error };
4028
+ export type Result_30 = { Ok: Page_3 } | { Err: Error };
4029
+ export type Result_31 = { Ok: Page_4 } | { Err: Error };
4030
+ export type Result_32 = { Ok: PaymentSignatureCounts } | { Err: Error };
4031
+ export type Result_33 = { Ok: Page_6 } | { Err: Error };
4032
+ export type Result_34 = { Ok: Page_7 } | { Err: Error };
4033
+ export type Result_35 = { Ok: Page_8 } | { Err: Error };
4034
+ export type Result_36 = { Ok: LogPage } | { Err: Error };
4035
+ export type Result_37 = { Ok: Page_10 } | { Err: Error };
4036
+ export type Result_38 = { Ok: ReceiptPage } | { Err: Error };
4037
+ export type Result_39 = { Ok: Page_12 } | { Err: Error };
4038
+ export type Result_4 = { Ok: X402SignOutcome } | { Err: Error };
4039
+ export type Result_40 = { Ok: Page_13 } | { Err: Error };
4040
+ export type Result_41 = { Ok: Page_14 } | { Err: Error };
4041
+ export type Result_42 = { Ok: Page_15 } | { Err: Error };
4042
+ export type Result_43 = { Ok: Page_16 } | { Err: Error };
4043
+ export type Result_44 = { Ok: Page_17 } | { Err: Error };
4044
+ export type Result_45 = { Ok: CheckpointPage } | { Err: Error };
4045
+ export type Result_46 = { Ok: Page_19 } | { Err: Error };
4046
+ export type Result_47 = { Ok: Page_20 } | { Err: Error };
4047
+ export type Result_48 = { Ok: RecordPage } | { Err: Error };
4048
+ export type Result_49 = { Ok: Page_21 } | { Err: Error };
4049
+ export type Result_5 = { Ok: Eip712SignatureOut } | { Err: Error };
4050
+ export type Result_50 = { Ok: Page_22 } | { Err: Error };
4051
+ export type Result_51 = { Ok: AgentSpendToday } | { Err: Error };
4052
+ export type Result_52 = { Ok: Page_24 } | { Err: Error };
4053
+ export type Result_53 = { Ok: string } | { Err: Error };
4054
+ export type Result_54 = { Ok: boolean } | { Err: Error };
4055
+ export type Result_55 = { Ok: [] | [string] } | { Err: Error };
4056
+ export type Result_56 = { Ok: WorldIdRpContext } | { Err: Error };
4057
+ export type Result_57 = { Ok: WorldIdConfig } | { Err: Error };
4058
+ export type Result_58 = { Ok: WalletBalances } | { Err: Error };
4059
+ export type Result_59 = { Ok: StorageReport } | { Err: Error };
4060
+ export type Result_6 = { Ok: { returned: bigint } } | { Err: Error };
4061
+ export type Result_60 = { Ok: SpendingPolicy } | { Err: Error };
4062
+ export type Result_61 = { Ok: SpendCeiling } | { Err: Error };
4063
+ export type Result_62 = { Ok: SigningFloorStatus } | { Err: Error };
4064
+ export type Result_63 = { Ok: { paths: Array<string> } } | { Err: Error };
4065
+ export type Result_64 = { Ok: OwnerConsole } | { Err: Error };
4066
+ export type Result_65 = { Ok: MemoryRetentionPolicy } | { Err: Error };
4067
+ export type Result_66 = { Ok: MemoryHistory } | { Err: Error };
4068
+ export type Result_67 = { Ok: AlertStatus } | { Err: Error };
4069
+ export type Result_68 = { Ok: EvmAddresses } | { Err: Error };
4070
+ export type Result_69 = { Ok: Uint8Array | number[] } | { Err: Error };
4071
+ export type Result_7 = { Ok: SignatureCounts } | { Err: Error };
4072
+ export type Result_70 = { Ok: ChildOpening } | { Err: Error };
4073
+ export type Result_71 = { Ok: ChildAllowanceRow } | { Err: Error };
4074
+ export type Result_72 = { Ok: Brakes } | { Err: Error };
4075
+ export type Result_73 = { Ok: Array<BirthRecord> } | { Err: Error };
4076
+ export type Result_74 = { Ok: BackupRetention } | { Err: Error };
4077
+ export type Result_75 = { Ok: BackupMetadata } | { Err: Error };
4078
+ export type Result_76 = { Ok: AgentWriteReview } | { Err: Error };
4079
+ export type Result_77 = { Ok: Page_25 } | { Err: Error };
4080
+ export type Result_79 = { Ok: MemoryRangeExport } | { Err: Error };
4081
+ export type Result_8 = { Ok: RailHealth } | { Err: Error };
4082
+ export type Result_80 = { Ok: CondenseResult } | { Err: Error };
4083
+ export type Result_81 = { Ok: Eip712Registration } | { Err: Error };
4084
+ export type Result_82 = { Ok: { activatesAtNs: bigint } } | { Err: Error };
4085
+ export type Result_83 = { Ok: AgentRecord } | { Err: Error };
4086
+ export type Result_9 = { Ok: Array<Seat> } | { Err: Error };
4063
4087
  export interface ResyncReport {
4064
4088
  startsAcknowledged: bigint;
4065
4089
  cannotBeRecorded: Array<UnrecordableEngagement>;
@@ -4216,6 +4240,10 @@ export interface TimerHealth {
4216
4240
  alertTimerArmed: boolean;
4217
4241
  sessionExpiryArmed: boolean;
4218
4242
  }
4243
+ export interface TimersWake {
4244
+ gap: bigint;
4245
+ needed: bigint;
4246
+ }
4219
4247
  export type TokenAmount = { Icp: bigint } | { Ckusdc: bigint } | { Ckusdt: bigint };
4220
4248
  export type TrackRecordNotice = { Recorded: null } | { NotRecorded: string };
4221
4249
  export interface UnrecordableEngagement {