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

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.
@@ -220,6 +220,15 @@ export interface BearerToken {
220
220
  issuedBy: Principal;
221
221
  }
222
222
  export type BearerTokenStatus = { Active: null } | { Revoked: null } | { Expired: null };
223
+ export interface BirthRecord {
224
+ bornAtNs: bigint;
225
+ parentFingerprint: [] | [Uint8Array | number[]];
226
+ child: Principal;
227
+ secret: Uint8Array | number[];
228
+ version: bigint;
229
+ number: bigint;
230
+ parent: [] | [Principal];
231
+ }
223
232
  export interface BrakePull {
224
233
  by: Principal;
225
234
  atNs: bigint;
@@ -393,7 +402,7 @@ export interface Engram {
393
402
  * / test/key-replacement.test.mo runs it; this body names no roster gate, because the caller holds
394
403
  * / no role here until the move.
395
404
  */
396
- acceptAgentKeyNomination: ActorMethod<[Principal], Result_80>;
405
+ acceptAgentKeyNomination: ActorMethod<[Principal], Result_82>;
397
406
  /**
398
407
  * / Consensus transform for the alert webhook outcall: collapse the response to status-only so
399
408
  * / replicas agree regardless of response headers/body (we only care that the POST landed 2xx).
@@ -426,7 +435,7 @@ export interface Engram {
426
435
  * / account name). The action must be registered: a destination list belongs to an action, and a
427
436
  * / list for no action would be a value nothing checks. The caller is the owner's app.
428
437
  */
429
- addEip712Destination: ActorMethod<[Uint8Array | number[], string], Result_79>;
438
+ addEip712Destination: ActorMethod<[Uint8Array | number[], string], Result_81>;
430
439
  /**
431
440
  * / Register a typed-data shape as signable. Owner-only, freeze-gated (a registration is a grant
432
441
  * / of FUTURE authority — a frozen engram must not be able to widen what it can sign), and the
@@ -461,7 +470,7 @@ export interface Engram {
461
470
  ackIrrevocable: boolean;
462
471
  },
463
472
  ],
464
- Result_78
473
+ Result_80
465
474
  >;
466
475
  /**
467
476
  * / ⟨0.16.0, L1⟩ THE ROLE-CONFLICT ARM, and why three refusals here are not the same refusal.
@@ -484,7 +493,7 @@ export interface Engram {
484
493
  * / holding a line break are `#Invalid`; an id past the head is `#NotFound`; nothing is recorded
485
494
  * / on any refusal.
486
495
  */
487
- addRecordNote: ActorMethod<[bigint, string], Result_12>;
496
+ addRecordNote: ActorMethod<[bigint, string], Result_13>;
488
497
  /**
489
498
  * / Returns the write RECEIPT, not just the version.
490
499
  * /
@@ -519,7 +528,7 @@ export interface Engram {
519
528
  * / is exactly what a guardian pause exists to hold. No action alert is raised: the operation is
520
529
  * / owner-initiated, owner-only, and already chained into the audit log.
521
530
  */
522
- applyCondense: ActorMethod<[bigint], Result_77>;
531
+ applyCondense: ActorMethod<[bigint], Result_79>;
523
532
  /**
524
533
  * / Owner-only: activate a guardian who has registered against an invite.
525
534
  * /
@@ -599,7 +608,7 @@ export interface Engram {
599
608
  * /
600
609
  * / The write half also refuses while writes are PAUSED.
601
610
  */
602
- backupInit: ActorMethod<[string, BackupType, [] | [string], string, [] | [string]], Result_51>;
611
+ backupInit: ActorMethod<[string, BackupType, [] | [string], string, [] | [string]], Result_52>;
603
612
  /**
604
613
  * / Read one chunk of a finalized backup, by index.
605
614
  * /
@@ -607,7 +616,7 @@ export interface Engram {
607
616
  * / `canAppendMemory`. Holding one says nothing about the other, deliberately: taking a backup and
608
617
  * / carrying it away are different authorities.
609
618
  */
610
- backupPullChunk: ActorMethod<[string, bigint], Result_67>;
619
+ backupPullChunk: ActorMethod<[string, bigint], Result_68>;
611
620
  backupPushChunk: ActorMethod<[string, bigint, Uint8Array | number[]], Result_1>;
612
621
  /**
613
622
  * / The OWNER cancels an agent's pending key nomination; the agent keeps its current key. Refused
@@ -645,7 +654,7 @@ export interface Engram {
645
654
  * / pair — e6 base units of the token named first. A name only: Candid passes arguments by
646
655
  * / position, so nothing on the wire moved.
647
656
  */
648
- convertEarningsToCycles: ActorMethod<[string, bigint], Result_12>;
657
+ convertEarningsToCycles: ActorMethod<[string, bigint], Result_13>;
649
658
  /**
650
659
  * / Owner-only: mint a single-use invite code an agent redeems with `pairAgent`.
651
660
  * /
@@ -665,7 +674,7 @@ export interface Engram {
665
674
  * / A principal that is already a GUARDIAN cannot become an agent — a guardian is an
666
675
  * / independent check on agents, so one wallet must not hold both.
667
676
  */
668
- createAgentInvite: ActorMethod<[string, AgentPermissions], Result_51>;
677
+ createAgentInvite: ActorMethod<[string, AgentPermissions], Result_52>;
669
678
  /**
670
679
  * / Owner-only: mint an invite for a GUARDIAN — an independent check on agents, not a
671
680
  * / co-owner and not a recovery agent.
@@ -689,7 +698,7 @@ export interface Engram {
689
698
  * / So an invite that fails to redeem for that reason is not a bad code. The rule exists because
690
699
  * / a check must be independent of the thing it checks.
691
700
  */
692
- createGuardianInvite: ActorMethod<[string, GuardianPermissions], Result_51>;
701
+ createGuardianInvite: ActorMethod<[string, GuardianPermissions], Result_52>;
693
702
  /**
694
703
  * / OWNER-ONLY deletion of a stored backup.
695
704
  * /
@@ -740,7 +749,7 @@ export interface Engram {
740
749
  * / revision, or a paid session's append) that succeeded, still held in full by the ring.
741
750
  * / One dispute per guardian per write (`#Conflict`, the first stands).
742
751
  */
743
- disputeAgentWrite: ActorMethod<[bigint, string], Result_12>;
752
+ disputeAgentWrite: ActorMethod<[bigint, string], Result_13>;
744
753
  /**
745
754
  * / Record that log entries [fromSeq, toSeq] were served, and return the root that proves it.
746
755
  * /
@@ -755,7 +764,7 @@ export interface Engram {
755
764
  * / situation rather than a safety measure. It IS gated on requireMemoryAttached: a store that
756
765
  * / failed its integrity check must not attest anything it cannot vouch for.
757
766
  */
758
- exportMemoryRange: ActorMethod<[bigint, bigint, [] | [Principal]], Result_76>;
767
+ exportMemoryRange: ActorMethod<[bigint, bigint, [] | [Principal]], Result_78>;
759
768
  /**
760
769
  * / ⟨0.16.0, L2.2 — renamed from `guardianFreezePayments`⟩ The prefix LIED about who may call it.
761
770
  * / The gate is `requireOwnerOrGuardian`, and an owner freezing their own payments is the ordinary
@@ -803,7 +812,7 @@ export interface Engram {
803
812
  /**
804
813
  * / Delivery status + config readback. Owner-only (the URL is a secret).
805
814
  */
806
- getActionAlertStatus: ActorMethod<[], Result_65>;
815
+ getActionAlertStatus: ActorMethod<[], Result_66>;
807
816
  /**
808
817
  * / Agents need to know what they may revise, so they can read it too. Whole-value config, same
809
818
  * / carve-out as getProtectedPaths — and kept a SEPARATE method from it deliberately (L2.2): a
@@ -813,7 +822,7 @@ export interface Engram {
813
822
  * / Refusal reason preserved from the trap: a grant is a power, and its absence and its
814
823
  * / concealment are different facts.
815
824
  */
816
- getAgentRevisablePaths: ActorMethod<[], Result_61>;
825
+ getAgentRevisablePaths: ActorMethod<[], Result_62>;
817
826
  /**
818
827
  * / OWNER-ONLY: every engagement's seat weeks on this engram, with the agent's root — the day it
819
828
  * / paired, the days of its first and last payment signature, a 64-week map whose bit 0 is the week
@@ -826,7 +835,7 @@ export interface Engram {
826
835
  * / empty page. Paged; `total` is every engagement ever paired here (a reset keeps the rows).
827
836
  * / Two rows can name one root: an agent paired again after it left is a second engagement.
828
837
  */
829
- getAgentSeatWeeks: ActorMethod<[bigint, bigint], Result_74>;
838
+ getAgentSeatWeeks: ActorMethod<[bigint, bigint], Result_76>;
830
839
  /**
831
840
  * / Owner: everything written into this engram by someone other than the owner since the last
832
841
  * / markAgentWritesReviewed() — agent appends/revisions AND paid-session appends (see
@@ -836,7 +845,7 @@ export interface Engram {
836
845
  * / as a total. `earliest` discloses ring eviction — if cursor < earliest, entries between them
837
846
  * / aged out of the ring (the CHAIN still proves total count; this view can't show their bodies).
838
847
  */
839
- getAgentWriteReview: ActorMethod<[], Result_73>;
848
+ getAgentWriteReview: ActorMethod<[], Result_75>;
840
849
  /**
841
850
  * / Why anchoring is or is not advancing. PUBLIC: ungated on purpose — detecting a stalled
842
851
  * / engram is the point, a gated read would fail-to-empty and hand a third party fabricated zeros,
@@ -859,7 +868,7 @@ export interface Engram {
859
868
  * / was signed rather than asserted.
860
869
  */
861
870
  getAuditHead: ActorMethod<[], AuditHead>;
862
- getBackupMetadata: ActorMethod<[string], Result_72>;
871
+ getBackupMetadata: ActorMethod<[string], Result_74>;
863
872
  /**
864
873
  * / ⟨2026-10-21, the owner's round-11 answer m: a backup-retention getter⟩ How many backups of
865
874
  * / `dbType` each creator keeps, and whether that is the default — the read `setBackupRetention`
@@ -872,7 +881,7 @@ export interface Engram {
872
881
  * / the anonymous caller. A kind the setter would refuse is `#Invalid` here too
873
882
  * / (`Backup.getRetention`). Records nothing (a query).
874
883
  */
875
- getBackupRetention: ActorMethod<[string], Result_71>;
884
+ getBackupRetention: ActorMethod<[string], Result_73>;
876
885
  /**
877
886
  * / The cashier this engram recognises as its rent biller — `null` until the registry pushes one.
878
887
  * /
@@ -882,6 +891,16 @@ export interface Engram {
882
891
  * / too is what lets the two be COMPARED, which is the only way to catch a mismatch.
883
892
  */
884
893
  getBillerId: ActorMethod<[], [] | [Principal]>;
894
+ /**
895
+ * / This engram's BIRTH CHAIN, root first: its own record last, its parent's before it, and so on
896
+ * / ⟨2026-10-26, the owner's lineage ruling L3A⟩.
897
+ * /
898
+ * / OWNER ONLY. The owner decides whom to show it to — the chain names the engrams this one descends
899
+ * / from, which is the owner's to disclose, not the registry's. The certified half is at the registry
900
+ * / (`getCertifiedBirth`, public, revealing only whether a fingerprint is present); the client's
901
+ * / `verifyBirthChain` checks both. Refused to anyone else by the combinator (`#ownerOnly`).
902
+ */
903
+ getBirthChain: ActorMethod<[], Result_72>;
885
904
  /**
886
905
  * / ⟨2026-10-21, the owner's round-11 answer d⟩ Each brake: on or off, and while on, who pulled it
887
906
  * / LAST (their key and whether as owner or guardian), since when, and the reason they gave — the
@@ -892,7 +911,7 @@ export interface Engram {
892
911
  * / is null for a brake that is off, and for one carried on across the upgrade that added this
893
912
  * / read (who pulled it was not recorded then) — never a guessed pull.
894
913
  */
895
- getBrakes: ActorMethod<[], Result_70>;
914
+ getBrakes: ActorMethod<[], Result_71>;
896
915
  /**
897
916
  * / ⟨0.16.0, L9/L10 — census row⟩ `Wire.CertifiedAuditHead`, not an anonymous record. The
898
917
  * / registry, market and cashier already served the shared type; the engram — the canister that
@@ -919,13 +938,13 @@ export interface Engram {
919
938
  * / recorded nothing while reading as if it did. The refusal is loud in the reply instead. WHAT
920
939
  * / WOULD MAKE THIS WRONG: a reason to record who asked — then this becomes an update that says so.
921
940
  */
922
- getChildAllowance: ActorMethod<[Principal], Result_69>;
941
+ getChildAllowance: ActorMethod<[Principal], Result_70>;
923
942
  /**
924
943
  * / Owner-only, Billing-class: what opening an engram costs this engram, the balance below which an
925
944
  * / agent's request is refused, the balance now, and every agent's allowance. The console's cost
926
945
  * / sentence reads it. Cycles are owner-class information, as on the owner's console read.
927
946
  */
928
- getChildOpening: ActorMethod<[], Result_68>;
947
+ getChildOpening: ActorMethod<[], Result_69>;
929
948
  /**
930
949
  * / Derive the shared memory-encryption key, encrypted under the caller's transport
931
950
  * / public key. Gated to owner + read-agents (the same principals allowed to read
@@ -951,7 +970,7 @@ export interface Engram {
951
970
  * / cost. Stated here because L7 requires the reason be readable from the interface rather than
952
971
  * / inferred by opening the body — which is exactly what had to happen to write this line.
953
972
  */
954
- getEncryptedMemoryKey: ActorMethod<[[] | [bigint], Uint8Array | number[]], Result_67>;
973
+ getEncryptedMemoryKey: ActorMethod<[[] | [bigint], Uint8Array | number[]], Result_68>;
955
974
  /**
956
975
  * / ⟨0.16.0, owner ruling 2026-08-20 — option (a)⟩ `x402Support` REPORTS THE RAIL, not a constant.
957
976
  * /
@@ -1050,7 +1069,7 @@ export interface Engram {
1050
1069
  * / `#Err`, never a record carrying an empty string (ic402's `getEvmAddress` answers `""` on a
1051
1070
  * / failed derivation — that is fail-to-empty on a money surface, and it stops here).
1052
1071
  */
1053
- getEvmAddress: ActorMethod<[], Result_66>;
1072
+ getEvmAddress: ActorMethod<[], Result_67>;
1054
1073
  /**
1055
1074
  * / The owner's OWN EVM address, if they registered one — distinct from `getEvmAddress`, which is
1056
1075
  * / the address this canister derives for itself.
@@ -1069,7 +1088,7 @@ export interface Engram {
1069
1088
  * / cost — stated here because L7 requires the reason be readable from the interface rather than
1070
1089
  * / inferred by opening the body.
1071
1090
  */
1072
- getEvmSignerAddress: ActorMethod<[], Result_51>;
1091
+ getEvmSignerAddress: ActorMethod<[], Result_52>;
1073
1092
  /**
1074
1093
  * / PUBLIC: where this chain begins, for the stranger deciding whether to trust it.
1075
1094
  * /
@@ -1082,7 +1101,7 @@ export interface Engram {
1082
1101
  /**
1083
1102
  * / A guardian's own channel status (their URL is their secret — each guardian sees only theirs).
1084
1103
  */
1085
- getGuardianAlertStatus: ActorMethod<[], Result_65>;
1104
+ getGuardianAlertStatus: ActorMethod<[], Result_66>;
1086
1105
  /**
1087
1106
  * / The market this engram will accept signing requests from — `null` until the registry pushes
1088
1107
  * / one at spawn, which is why `requireMarket` refuses fleet-wide today.
@@ -1115,7 +1134,7 @@ export interface Engram {
1115
1134
  * / never renumbered: the next page starts at the last version returned plus one. Defaults
1116
1135
  * / return the whole history of any file a pre-FD engram could have held.
1117
1136
  */
1118
- getMemoryHistory: ActorMethod<[string, [] | [bigint], [] | [bigint]], Result_64>;
1137
+ getMemoryHistory: ActorMethod<[string, [] | [bigint], [] | [bigint]], Result_65>;
1119
1138
  /**
1120
1139
  * / PUBLIC: the epoch alone, and deliberately nothing else (rotation study D4). A `rotatedAt[]`
1121
1140
  * / history would be a public, fleet-enumerable feed of when each owner terminated a trust
@@ -1164,7 +1183,7 @@ export interface Engram {
1164
1183
  * / forever" — a claim about what this engram will DESTROY — and an empty guard list reads as
1165
1184
  * / "nothing is held back".
1166
1185
  */
1167
- getMemoryRetentionPolicy: ActorMethod<[], Result_63>;
1186
+ getMemoryRetentionPolicy: ActorMethod<[], Result_64>;
1168
1187
  /**
1169
1188
  * / The metrics reader this engram answers — `null` until the spawning registry names one.
1170
1189
  * /
@@ -1181,7 +1200,7 @@ export interface Engram {
1181
1200
  * / a fact about the caller, told to the caller. There is nothing to leak by omission — which is
1182
1201
  * / the test the #NotFound arm sets.
1183
1202
  */
1184
- getMyGuardianStatus: ActorMethod<[], Result_15>;
1203
+ getMyGuardianStatus: ActorMethod<[], Result_16>;
1185
1204
  /**
1186
1205
  * / ⟨0.16.0, NEW⟩ The gated half of the status() split.
1187
1206
  * /
@@ -1193,7 +1212,7 @@ export interface Engram {
1193
1212
  * / client (rule 4) and bought a masked answer nobody had asked for — the census could not even
1194
1213
  * / find a consumer that read the masked `0`. Behind a gate there is nobody to mask it from.
1195
1214
  */
1196
- getOwnerConsole: ActorMethod<[], Result_62>;
1215
+ getOwnerConsole: ActorMethod<[], Result_63>;
1197
1216
  /**
1198
1217
  * / Owner + agents only (agents need it to avoid writing protected paths).
1199
1218
  * /
@@ -1207,7 +1226,7 @@ export interface Engram {
1207
1226
  * / writing one — so a fabricated empty here does not merely misinform, it invites the write the
1208
1227
  * / list exists to prevent.
1209
1228
  */
1210
- getProtectedPaths: ActorMethod<[], Result_61>;
1229
+ getProtectedPaths: ActorMethod<[], Result_62>;
1211
1230
  /**
1212
1231
  * / Whether the metrics reader's read is answered — `true` from birth.
1213
1232
  * /
@@ -1220,7 +1239,7 @@ export interface Engram {
1220
1239
  * / payment signatures the balance carries above the floor before `signX402Payment` is refused by
1221
1240
  * / name. The same numbers the check uses, so Billing can say only what the engram enforces.
1222
1241
  */
1223
- getSigningFloor: ActorMethod<[], Result_60>;
1242
+ getSigningFloor: ActorMethod<[], Result_61>;
1224
1243
  /**
1225
1244
  * / The registry that spawned this engram, if it recorded one.
1226
1245
  * /
@@ -1241,7 +1260,7 @@ export interface Engram {
1241
1260
  * / A refusal names this method (`Gated.gatedResult`) rather than answering null/0 — a ceiling of
1242
1261
  * / "none" and a spend of 0 are both real answers, so a fabricated one would be read as fact.
1243
1262
  */
1244
- getSpendCeiling: ActorMethod<[], Result_59>;
1263
+ getSpendCeiling: ActorMethod<[], Result_60>;
1245
1264
  /**
1246
1265
  * / Read the caps in force for a caller.
1247
1266
  * /
@@ -1251,8 +1270,8 @@ export interface Engram {
1251
1270
  * / configuration, and publishing them would tell any caller exactly how large a signing request
1252
1271
  * / can be before it needs an approval nobody is watching for.
1253
1272
  */
1254
- getSpendPolicy: ActorMethod<[[] | [Principal]], Result_58>;
1255
- getStorageStats: ActorMethod<[], Result_57>;
1273
+ getSpendPolicy: ActorMethod<[[] | [Principal]], Result_59>;
1274
+ getStorageStats: ActorMethod<[], Result_58>;
1256
1275
  /**
1257
1276
  * / Timer arm-state. PUBLIC and deliberately so: these timers are self-arming to save cycles,
1258
1277
  * / and an optimisation nobody can verify is an optimisation nobody should trust. Cheap to read,
@@ -1325,14 +1344,14 @@ export interface Engram {
1325
1344
  * / UPDATE, marked per L7: it awaits three ICRC-1 ledgers". It was marked in prose and invisible
1326
1345
  * / to any gate; the glyph is what `scripts/check-update-for-read.mjs` matches.
1327
1346
  */
1328
- getWalletBalances: ActorMethod<[], Result_56>;
1347
+ getWalletBalances: ActorMethod<[], Result_57>;
1329
1348
  /**
1330
1349
  * / Refusal reason preserved, and it is the clearest case of why a masked read is worse than no
1331
1350
  * / read: three empty strings with `configured = false` is a VALID-LOOKING answer meaning "this
1332
1351
  * / engram has no World ID configuration" — handed to a caller who merely lacks a grant. The
1333
1352
  * / fabrication is indistinguishable from the truth by construction.
1334
1353
  */
1335
- getWorldIdConfig: ActorMethod<[], Result_55>;
1354
+ getWorldIdConfig: ActorMethod<[], Result_56>;
1336
1355
  /**
1337
1356
  * / ⟨L7⟩ UPDATE, NOT QUERY: this awaits THREE system calls — `raw_rand()` for the nonce,
1338
1357
  * / `Call.signWithEcdsa` for the signature, and `worldIdRpPublicKey()` for the derived key. A
@@ -1343,7 +1362,7 @@ export interface Engram {
1343
1362
  * / the World Developer Portal. Short-lived (300s TTL, idkit-server's default) and single-purpose —
1344
1363
  * / it authorizes opening one verification request, nothing else.
1345
1364
  */
1346
- getWorldIdRpContext: ActorMethod<[], Result_54>;
1365
+ getWorldIdRpContext: ActorMethod<[], Result_55>;
1347
1366
  /**
1348
1367
  * / Owner-only: the EVM address derived from the engram's dedicated World ID RP signing key (the
1349
1368
  * / "worldid-rp" tECDSA path). Register THIS address as the rp_id's signer in the World Developer
@@ -1355,7 +1374,7 @@ export interface Engram {
1355
1374
  * / refusal — a state write, which a query cannot perform. So even if the key were cached this
1356
1375
  * / could not become a query without silently retiring its denial record (ADR-0002's class).
1357
1376
  */
1358
- getWorldIdRpSignerAddress: ActorMethod<[], Result_51>;
1377
+ getWorldIdRpSignerAddress: ActorMethod<[], Result_52>;
1359
1378
  /**
1360
1379
  * / The verified IDKitResult, verbatim, as World's /api/v4/verify accepted it — the re-checkable
1361
1380
  * / artifact behind verifiedHuman. Role-gated because it carries the NULLIFIER.
@@ -1376,7 +1395,7 @@ export interface Engram {
1376
1395
  * / canister does not serve. The tombstones below and at `about()` are historical and correct as
1377
1396
  * / written; this one was present tense, which is the difference that matters.⟩
1378
1397
  */
1379
- getWorldIdVerification: ActorMethod<[], Result_53>;
1398
+ getWorldIdVerification: ActorMethod<[], Result_54>;
1380
1399
  /**
1381
1400
  * / ⟨0.16.0, L1⟩ THE EMERGENCY FAMILY. Every refusal below is `#Refused` or `#NotFound`, and the
1382
1401
  * / absence of a `#Conflict` here is the point: these are the calls someone makes while something
@@ -1460,7 +1479,7 @@ export interface Engram {
1460
1479
  * / Owner-gated because it reports on custody posture, and answered as a Result so that a
1461
1480
  * / wrong-identity caller gets a refusal rather than a bare `false` that reads as "no address yet".
1462
1481
  */
1463
- isEvmAddressCached: ActorMethod<[], Result_52>;
1482
+ isEvmAddressCached: ActorMethod<[], Result_53>;
1464
1483
  /**
1465
1484
  * / Issue an OAuth authorization code. Called by an OAuth client's sign-in bridge
1466
1485
  * / (an `/auth/connector`-style route) after II authentication. The client then
@@ -1469,7 +1488,7 @@ export interface Engram {
1469
1488
  * /
1470
1489
  * / Owner-only: only the engram owner can authorize a Connector install.
1471
1490
  */
1472
- issueAuthCode: ActorMethod<[string, string, string, [] | [string]], Result_51>;
1491
+ issueAuthCode: ActorMethod<[string, string, string, [] | [string]], Result_52>;
1473
1492
  /**
1474
1493
  * / ⟨0.16.0⟩ `getCycleSnapshotSource` DELETED — folded into `CycleSnapshot.source`, one label per
1475
1494
  * / ROW. A single label for a whole ring misattributes every row recorded under the other source,
@@ -1485,7 +1504,7 @@ export interface Engram {
1485
1504
  * / DORMANT engram and corrupts retention math — a fabricated empty here does not just misinform a
1486
1505
  * / reader, it feeds a wrong number into a decision about destroying data.
1487
1506
  */
1488
- listActivitySnapshots: ActorMethod<[bigint, bigint], Result_50>;
1507
+ listActivitySnapshots: ActorMethod<[bigint, bigint], Result_51>;
1489
1508
  /**
1490
1509
  * / ⟨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,
1491
1510
  * / m."⟩ OWNER-ONLY: what each agent has spent today, beside the daily limit in force for it, so the
@@ -1504,7 +1523,7 @@ export interface Engram {
1504
1523
  * / WHAT WOULD MAKE THIS WRONG: `x402SignFor` keeping the per-caller total by something other than
1505
1524
  * / the calling key, or under another day boundary.
1506
1525
  */
1507
- listAgentSpendToday: ActorMethod<[bigint, bigint], Result_49>;
1526
+ listAgentSpendToday: ActorMethod<[bigint, bigint], Result_50>;
1508
1527
  /**
1509
1528
  * / ⟨0.16.0⟩ THE PAGE EXEMPLAR. Trap → `#Refused`, bare array → `Result<Page<T>>` (L1 + L3).
1510
1529
  * /
@@ -1521,7 +1540,7 @@ export interface Engram {
1521
1540
  * / `withheld` is 0: this roster is owner-only in whole, so there is no partial-visibility case.
1522
1541
  * / A method that filters rows by caller sets it — see L1's row-level honesty rule.
1523
1542
  */
1524
- listAgents: ActorMethod<[bigint, bigint], Result_48>;
1543
+ listAgents: ActorMethod<[bigint, bigint], Result_49>;
1525
1544
  /**
1526
1545
  * / The GUARDIAN-audience projection of the agent roster — three fields, not the full record.
1527
1546
  * /
@@ -1535,7 +1554,7 @@ export interface Engram {
1535
1554
  * / guardian consults BEFORE REVOKING ONE. A fabricated empty here does not merely misinform —
1536
1555
  * / it tells someone acting under emergency powers that there is nothing to act on.
1537
1556
  */
1538
- listAgentsForGuardian: ActorMethod<[bigint, bigint], Result_47>;
1557
+ listAgentsForGuardian: ActorMethod<[bigint, bigint], Result_48>;
1539
1558
  /**
1540
1559
  * / Owner-only: rows carry caller, amount, operation and free-text rationale. The SDK omits it.
1541
1560
  * /
@@ -1549,7 +1568,7 @@ export interface Engram {
1549
1568
  * /
1550
1569
  * / Refusal reason preserved: `[]` reads as "nothing is awaiting the owner's decision".
1551
1570
  */
1552
- listApprovalRequests: ActorMethod<[[] | [ApprovalStatus], bigint, bigint], Result_33>;
1571
+ listApprovalRequests: ActorMethod<[[] | [ApprovalStatus], bigint, bigint], Result_34>;
1553
1572
  /**
1554
1573
  * / ⟨0.16.0⟩ `total` IS THE HEAD COUNTER, and on this method that is the entire point.
1555
1574
  * /
@@ -1585,7 +1604,7 @@ export interface Engram {
1585
1604
  * / at read time; nothing new is stored. WHAT WOULD MAKE THIS WRONG: a sealed row carrying any part
1586
1605
  * / of a body, or a stranger reaching `items` (test/record-view.test.mo pins both).
1587
1606
  */
1588
- listAuditEntries: ActorMethod<[bigint, bigint], Result_46>;
1607
+ listAuditEntries: ActorMethod<[bigint, bigint], Result_47>;
1589
1608
  /**
1590
1609
  * / ⟨0.16.0, L1 + L3 — census-ruled⟩ THE TWO-MECHANISM EXCEPTION DISSOLVES.
1591
1610
  * /
@@ -1611,7 +1630,7 @@ export interface Engram {
1611
1630
  * / keeps its optional filter and applies it to the page, so no caller loses the ability to ask
1612
1631
  * / "backups of this database" — it stops being a thing the canister has to page around.
1613
1632
  */
1614
- listBackups: ActorMethod<[bigint, bigint], Result_45>;
1633
+ listBackups: ActorMethod<[bigint, bigint], Result_46>;
1615
1634
  /**
1616
1635
  * / List all bearer tokens — Active, Revoked, and Expired. Owner uses this in
1617
1636
  * / the dashboard to show installed Connectors (claude.ai, Claude Desktop, etc.).
@@ -1623,7 +1642,7 @@ export interface Engram {
1623
1642
  * / merely stopped being used is reported `#Expired`, not a stale `#Active`), so the page carries
1624
1643
  * / the same honesty the store gained on 2026-08-17.
1625
1644
  */
1626
- listBearerTokens: ActorMethod<[bigint, bigint], Result_44>;
1645
+ listBearerTokens: ActorMethod<[bigint, bigint], Result_45>;
1627
1646
  /**
1628
1647
  * / The condense checkpoints in the retained log at or above `startSeq`, oldest first.
1629
1648
  * /
@@ -1635,7 +1654,7 @@ export interface Engram {
1635
1654
  * / Owner-only like every other archive surface, and for the same structural reason: these rows
1636
1655
  * / carry the chain positions and roots of entries whose paths were inside the hash preimage.
1637
1656
  */
1638
- listCondenseCheckpoints: ActorMethod<[bigint, bigint], Result_43>;
1657
+ listCondenseCheckpoints: ActorMethod<[bigint, bigint], Result_44>;
1639
1658
  /**
1640
1659
  * / ⟨0.16.0⟩ `metrics()` DELETED — absorbed by `about()`.
1641
1660
  * /
@@ -1644,13 +1663,13 @@ export interface Engram {
1644
1663
  * / both and know which one owned each field. Every field here survives on `about()`, day-flooring
1645
1664
  * / included.
1646
1665
  */
1647
- listCycleSnapshots: ActorMethod<[bigint, bigint], Result_42>;
1666
+ listCycleSnapshots: ActorMethod<[bigint, bigint], Result_43>;
1648
1667
  /**
1649
1668
  * / Same `withheld` treatment as listMemoryFiles — the tombstone listing filtered reserved paths
1650
1669
  * / for non-owners just as silently, and a caller could not tell a filtered tombstone list from a
1651
1670
  * / complete one. Counted before slicing, so policy-hidden rows never blur into paging.
1652
1671
  */
1653
- listDeletedMemoryFiles: ActorMethod<[bigint, bigint], Result_41>;
1672
+ listDeletedMemoryFiles: ActorMethod<[bigint, bigint], Result_42>;
1654
1673
  /**
1655
1674
  * / Stays on the engram under B1 (hybrid): withdrawal custody does not leave.
1656
1675
  * /
@@ -1666,7 +1685,7 @@ export interface Engram {
1666
1685
  * / The item's field is `value`, not `address`: a list may hold a venue value that is no address.
1667
1686
  * / Readable by the owner, an active agent or an active guardian, as the old list was.
1668
1687
  */
1669
- listEip712Destinations: ActorMethod<[Uint8Array | number[], bigint, bigint], Result_40>;
1688
+ listEip712Destinations: ActorMethod<[Uint8Array | number[], bigint, bigint], Result_41>;
1670
1689
  /**
1671
1690
  * / The registered shapes — E3: encodeTypeString is the display artifact, verbatim.
1672
1691
  * / Stays on the engram under B1 (hybrid): EIP-712 signing is custody, and custody does not leave.
@@ -1679,7 +1698,7 @@ export interface Engram {
1679
1698
  * / from `eip712FieldRules` — they are part of what the type authorises, so a reader of the list must
1680
1699
  * / not have to make a second call to learn them. The row type is `Eip712TypeView`.
1681
1700
  */
1682
- listEip712Types: ActorMethod<[bigint, bigint], Result_39>;
1701
+ listEip712Types: ActorMethod<[bigint, bigint], Result_40>;
1683
1702
  /**
1684
1703
  * / ⟨2026-10-21, round 11 c⟩ Guardians' disputes, oldest first. Same visibility as
1685
1704
  * / `listRepudiations` and `listRecordNotes`: the owner and ACTIVE guardians read the rows; an
@@ -1687,7 +1706,7 @@ export interface Engram {
1687
1706
  * / guardian's entry, not the agent's); a stranger, a pending guardian and the anonymous caller are
1688
1707
  * / refused.
1689
1708
  */
1690
- listGuardianDisputes: ActorMethod<[bigint, bigint], Result_38>;
1709
+ listGuardianDisputes: ActorMethod<[bigint, bigint], Result_39>;
1691
1710
  /**
1692
1711
  * / Accessible by owner and guardians.
1693
1712
  * /
@@ -1696,7 +1715,7 @@ export interface Engram {
1696
1715
  * / pause writes" — a claim about who can STOP it. A caller who cannot tell that from "you may not
1697
1716
  * / see the roster" has been told the engram is unguarded when it may be fully guarded.
1698
1717
  */
1699
- listGuardians: ActorMethod<[bigint, bigint], Result_37>;
1718
+ listGuardians: ActorMethod<[bigint, bigint], Result_38>;
1700
1719
  /**
1701
1720
  * / The export receipts in the retained log at or above `startSeq`, oldest first.
1702
1721
  * /
@@ -1714,7 +1733,7 @@ export interface Engram {
1714
1733
  * / Read `MemoryRouter.ReceiptPage` before reading `page.total` as a receipt count. It is not one;
1715
1734
  * / it is the chain's length, and the declaration says why.
1716
1735
  */
1717
- listMemoryExportReceipts: ActorMethod<[bigint, bigint], Result_36>;
1736
+ listMemoryExportReceipts: ActorMethod<[bigint, bigint], Result_37>;
1718
1737
  /**
1719
1738
  * / ⟨0.16.0⟩ THE `withheld` EXEMPLAR — L1 names this exact method as the defect it fixes.
1720
1739
  * /
@@ -1741,7 +1760,7 @@ export interface Engram {
1741
1760
  * / row served, never one per file stored. A WIDENED REPLY: a reader that decodes the row by
1742
1761
  * / position rather than by field name breaks — none in this repository does.
1743
1762
  */
1744
- listMemoryFiles: ActorMethod<[bigint, bigint], Result_35>;
1763
+ listMemoryFiles: ActorMethod<[bigint, bigint], Result_36>;
1745
1764
  /**
1746
1765
  * / One page of the memory log, seq-ordered, optionally narrowed to one author.
1747
1766
  * /
@@ -1768,7 +1787,7 @@ export interface Engram {
1768
1787
  * / with the disclosures that make the page verifiable — the hidden-bound defect the census itself
1769
1788
  * / names on previewCondense's row.
1770
1789
  */
1771
- listMemoryLog: ActorMethod<[bigint, bigint, [] | [Principal]], Result_34>;
1790
+ listMemoryLog: ActorMethod<[bigint, bigint, [] | [Principal]], Result_35>;
1772
1791
  /**
1773
1792
  * / The caller's OWN spend-approval requests. ⟨0.16.0, L1 + L3 — fixed 2026-08-18⟩
1774
1793
  * /
@@ -1787,7 +1806,7 @@ export interface Engram {
1787
1806
  * / (The unbounded MAP is filed separately — pruning an approval record destroys evidence of what
1788
1807
  * / was asked, which is a retention ruling rather than a shape fix.)
1789
1808
  */
1790
- listMyApprovalRequests: ActorMethod<[bigint, bigint], Result_33>;
1809
+ listMyApprovalRequests: ActorMethod<[bigint, bigint], Result_34>;
1791
1810
  /**
1792
1811
  * / The payer's own sessions, live ones first. PAYER-SCOPED: a caller sees only their own, which
1793
1812
  * / is why this needs no role — a session id is not a secret from the person who paid for it.
@@ -1798,7 +1817,7 @@ export interface Engram {
1798
1817
  * / client would break on — the market paged its own pending withdrawals before its cut for the
1799
1818
  * / same reason. The order is the order sessions were opened.
1800
1819
  */
1801
- listMySessions: ActorMethod<[bigint, bigint], Result_32>;
1820
+ listMySessions: ActorMethod<[bigint, bigint], Result_33>;
1802
1821
  /**
1803
1822
  * /
1804
1823
  * / ⟨0.16.0, L3⟩ Paged and enveloped like every other `list*`, and the envelope here is uniformity
@@ -1813,7 +1832,7 @@ export interface Engram {
1813
1832
  * / IT recorded, so this chain is what a caller composes with when currency matters — which it
1814
1833
  * / cannot do if it needs a role here.
1815
1834
  */
1816
- listOwnershipTransfers: ActorMethod<[bigint, bigint], Result_31>;
1835
+ listOwnershipTransfers: ActorMethod<[bigint, bigint], Result_32>;
1817
1836
  /**
1818
1837
  * / ⟨2026-09-29, the platform's question from the build review⟩ OWNER-ONLY: how many payment
1819
1838
  * / signatures each agent has obtained today, and the daily limit (200, `PaymentSignCap`). The
@@ -1831,7 +1850,7 @@ export interface Engram {
1831
1850
  * / engram enforces for it — beside the agents, never a row among them
1832
1851
  * / (`PaymentSignCap.marketplaceRow`). Null when no marketplace is set.
1833
1852
  */
1834
- listPaymentSignatureCounts: ActorMethod<[bigint, bigint], Result_30>;
1853
+ listPaymentSignatureCounts: ActorMethod<[bigint, bigint], Result_31>;
1835
1854
  /**
1836
1855
  * / Agent records removed by a reset. Each row is a NAMED record with the fields `principal`,
1837
1856
  * / `name`, `registeredAt` and `purgedAt` — read them BY NAME, never by position.
@@ -1873,7 +1892,7 @@ export interface Engram {
1873
1892
  * / earlier ending, or the reset) — the facts `resyncAgentEdges` re-sends. The stored rows are
1874
1893
  * / served as they are.
1875
1894
  */
1876
- listPurgedAgents: ActorMethod<[bigint, bigint], Result_29>;
1895
+ listPurgedAgents: ActorMethod<[bigint, bigint], Result_30>;
1877
1896
  /**
1878
1897
  * / ⟨0.16.0⟩ ONE ACCESSOR, folding `readReadLog` and `getDenialLog` — and the fold only became
1879
1898
  * / safe because of a change made earlier in this same leg.
@@ -1936,7 +1955,7 @@ export interface Engram {
1936
1955
  * / on the chained record — the same `RecordView` filter, and `withheld` counts what it removed
1937
1956
  * / together with what `successFilter` removed. WHAT WOULD MAKE THIS WRONG: see `listAuditEntries`.
1938
1957
  */
1939
- listReadLog: ActorMethod<[[] | [boolean], bigint, bigint], Result_28>;
1958
+ listReadLog: ActorMethod<[[] | [boolean], bigint, bigint], Result_29>;
1940
1959
  /**
1941
1960
  * / ⟨2026-10-21, round 11 b⟩ The owner's notes, oldest first. Same visibility as
1942
1961
  * / `listRepudiations`, for the same reason: the owner and ACTIVE guardians read the rows; an agent
@@ -1944,7 +1963,7 @@ export interface Engram {
1944
1963
  * / gets an empty page whose `withheld` counts the notes in its window — never "there are none". A
1945
1964
  * / stranger, a pending guardian and the anonymous caller are refused.
1946
1965
  */
1947
- listRecordNotes: ActorMethod<[bigint, bigint], Result_27>;
1966
+ listRecordNotes: ActorMethod<[bigint, bigint], Result_28>;
1948
1967
  /**
1949
1968
  * / Same visibility as listAuditEntries: the owner, this engram's agents, and ACTIVE guardians
1950
1969
  * / see disputes. An unauthorized read REFUSES — it does not return an empty list, because an
@@ -1961,7 +1980,7 @@ export interface Engram {
1961
1980
  * / WOULD MAKE THIS WRONG: a ruling that an agent may see the disputes of its own writes; this would
1962
1981
  * / then have to look up each disputed version's writer, which it does not do today.
1963
1982
  */
1964
- listRepudiations: ActorMethod<[bigint, bigint], Result_26>;
1983
+ listRepudiations: ActorMethod<[bigint, bigint], Result_27>;
1965
1984
  /**
1966
1985
  * / ⟨2026-10-21, the owner's round-11 answer f⟩ OWNER-ONLY: the sign-ins, each with the name its app
1967
1986
  * / registered. The same tokens, in the same order and paged the same way, as `listBearerTokens`,
@@ -1972,7 +1991,7 @@ export interface Engram {
1972
1991
  * / and `listBearerTokens`' reply is shipped (never widened). An agent, a guardian, a stranger and
1973
1992
  * / the anonymous caller are refused, by `listBearerTokens`' own gate and for its reason.
1974
1993
  */
1975
- listSignIns: ActorMethod<[bigint, bigint], Result_25>;
1994
+ listSignIns: ActorMethod<[bigint, bigint], Result_26>;
1976
1995
  /**
1977
1996
  * / Owner: advance the review cursor — "I have seen everything up to and including uptoAuditId"
1978
1997
  * / (null = everything at the current head). Bounded so the attestation can never cover entries
@@ -1984,7 +2003,7 @@ export interface Engram {
1984
2003
  * / and this never inspects an operation or a role. Widening what the review shows therefore
1985
2004
  * / changes only which ids the console can pass here — it cannot desynchronise the cursor.
1986
2005
  */
1987
- markAgentWritesReviewed: ActorMethod<[[] | [bigint]], Result_12>;
2006
+ markAgentWritesReviewed: ActorMethod<[[] | [bigint]], Result_13>;
1988
2007
  /**
1989
2008
  * / ⟨2026-10-21, the owner's round-11 answer g⟩ AN AGENT READS ITS OWN GRANT — to the calling key
1990
2009
  * / only (`People.AgentGrant`): what it may read, where it may write, its rate, and the payment
@@ -1997,7 +2016,7 @@ export interface Engram {
1997
2016
  * / "Agent has resigned" — an ended agent may do nothing, and its old grant would read as powers),
1998
2017
  * / a guardian and a stranger ("Not authorized"), the anonymous caller. A query: it writes nothing.
1999
2018
  */
2000
- myGrant: ActorMethod<[], Result_24>;
2019
+ myGrant: ActorMethod<[], Result_25>;
2001
2020
  /**
2002
2021
  * / The AGENT's current key nominates the key that will replace it. Nothing moves yet: the new
2003
2022
  * / key must accept, by its own call, within 24 hours (`acceptAgentKeyNomination`). One pending
@@ -2036,8 +2055,8 @@ export interface Engram {
2036
2055
  * / WHAT WOULD MAKE THIS WRONG: an await added between `ChildAllowance.take` and the registry call; the
2037
2056
  * / registry's `CHILD_MIN_ATTACHED_CYCLES` moving without `CHILD_ATTACH_CYCLES`.
2038
2057
  */
2039
- openChildEngram: ActorMethod<[], Result_23>;
2040
- openSession: ActorMethod<[SessionConfig, PaymentSignature], Result_22>;
2058
+ openChildEngram: ActorMethod<[], Result_24>;
2059
+ openSession: ActorMethod<[SessionConfig, PaymentSignature], Result_23>;
2041
2060
  /**
2042
2061
  * / Withdraw tokens to the owner's principal. This is the ONLY way to
2043
2062
  * / move tokens out of the engram to an external address, and the
@@ -2045,7 +2064,7 @@ export interface Engram {
2045
2064
  * / NOT freeze-gated: the owner always controls their own funds.
2046
2065
  * / Guardian freeze only blocks agent/public operations.
2047
2066
  */
2048
- ownerWithdraw: ActorMethod<[TokenAmount, [] | [ActionAuth]], Result_12>;
2067
+ ownerWithdraw: ActorMethod<[TokenAmount, [] | [ActionAuth]], Result_13>;
2049
2068
  /**
2050
2069
  * / ⟨0.16.0⟩ `payRentFromEarnings` DELETED — ruled TWICE (B1 and B2), and it was the single
2051
2070
  * / clearest violation of the OSS/platform split in this repo.
@@ -2102,7 +2121,7 @@ export interface Engram {
2102
2121
  * / engagement on the agent's track record, and what to do. Before, the reply was `#Ok` with the
2103
2122
  * / record alone even when the registry had refused the start, so the agent was never told.
2104
2123
  */
2105
- pairAgent: ActorMethod<[{ enrolment: Enrolment; code: string }], Result_21>;
2124
+ pairAgent: ActorMethod<[{ enrolment: Enrolment; code: string }], Result_22>;
2106
2125
  /**
2107
2126
  * / ⟨0.16.0, L2.2 — renamed from `guardianPauseWrites`⟩ Same correction as freezePayments above:
2108
2127
  * / owner-or-guardian, and `resumeWrites` never carried the prefix either.
@@ -2133,7 +2152,7 @@ export interface Engram {
2133
2152
  * / `unlocked` is the export-receipt gate ONLY. It is not a promise the condense will land: the
2134
2153
  * / history-budget delta is checked at commit time and can still refuse a short prefix.
2135
2154
  */
2136
- previewCondense: ActorMethod<[bigint], Result_20>;
2155
+ previewCondense: ActorMethod<[bigint], Result_21>;
2137
2156
  /**
2138
2157
  * / A quote for a session this caller has not opened and is not committed to — the intent a
2139
2158
  * / buyer signs against. Pure dry run, no state, no funds.
@@ -2182,7 +2201,7 @@ export interface Engram {
2182
2201
  * / HONEST WHEN CUT SHORT: `complete = false` when the planning budget
2183
2202
  * / (`MemoryRouter.PREVIEW_MAX_DROPS`) ran out — the totals are then a floor, and say so.
2184
2203
  */
2185
- previewRetention: ActorMethod<[Array<[string, RetentionClassSpec]>], Result_19>;
2204
+ previewRetention: ActorMethod<[Array<[string, RetentionClassSpec]>], Result_20>;
2186
2205
  /**
2187
2206
  * / Read one memory file at its current version.
2188
2207
  * /
@@ -2199,7 +2218,7 @@ export interface Engram {
2199
2218
  * / (`sessionReadContext` and the MCP reads). A caller measuring engram usage from this method
2200
2219
  * / will measure nothing.
2201
2220
  */
2202
- readMemory: ActorMethod<[string], Result_10>;
2221
+ readMemory: ActorMethod<[string], Result_11>;
2203
2222
  /**
2204
2223
  * / Read many paths in one call. Per-path Results are KEPT — partial success is the point, and
2205
2224
  * / one unreadable path must not fail the other nine.
@@ -2217,7 +2236,7 @@ export interface Engram {
2217
2236
  * / path, each with its own Result — a refused RESERVED path sits beside a readable one, which is
2218
2237
  * / a genuine per-path fact.
2219
2238
  */
2220
- readMemoryBatch: ActorMethod<[Array<string>], Result_18>;
2239
+ readMemoryBatch: ActorMethod<[Array<string>], Result_19>;
2221
2240
  /**
2222
2241
  * / ⟨0.16.0⟩ `getMemoryRetentionGuards` DELETED — folded into `getMemoryRetentionPolicy` above.
2223
2242
  * / It was the second L2.1 array-returning `get*`, and separating it from the policy it modifies
@@ -2229,7 +2248,7 @@ export interface Engram {
2229
2248
  * / see it cannot know whether it has the whole range, which is how silent truncation gets
2230
2249
  * / reintroduced. Loop while `more` is true, advancing by the bytes actually returned.
2231
2250
  */
2232
- readMemoryBytes: ActorMethod<[string, bigint, bigint, [] | [bigint]], Result_17>;
2251
+ readMemoryBytes: ActorMethod<[string, bigint, bigint, [] | [bigint]], Result_18>;
2233
2252
  /**
2234
2253
  * / The escrow exit for a session whose settle cannot pay.
2235
2254
  * /
@@ -2294,7 +2313,7 @@ export interface Engram {
2294
2313
  * / the amount can be read back — a session closed in the same moment as the recovery and cleaned up
2295
2314
  * / during its transfer — it answers `#Other` naming the block, never a guessed amount.
2296
2315
  */
2297
- recoverEscrow: ActorMethod<[string, bigint], Result_16>;
2316
+ recoverEscrow: ActorMethod<[string, bigint], Result_17>;
2298
2317
  /**
2299
2318
  * / ⟨0.16.0, L1⟩ A REDEMPTION PATH, where the arm choice is a disclosure decision.
2300
2319
  * /
@@ -2310,7 +2329,7 @@ export interface Engram {
2310
2329
  * / owner's invite gave them and that they cannot act until approved; before, that took a second
2311
2330
  * / read they had no reason to know to make.
2312
2331
  */
2313
- registerGuardian: ActorMethod<[string], Result_15>;
2332
+ registerGuardian: ActorMethod<[string], Result_16>;
2314
2333
  /**
2315
2334
  * / Remove a per-caller override so that caller reverts to — and keeps TRACKING — the global caps.
2316
2335
  * /
@@ -2367,7 +2386,7 @@ export interface Engram {
2367
2386
  * / the original audit entry stay exactly where they were; this appends a chained
2368
2387
  * / `memory.repudiate` entry and lists the (path, version) so readers can see the dispute.
2369
2388
  */
2370
- repudiateMemoryWrite: ActorMethod<[string, bigint, string], Result_12>;
2389
+ repudiateMemoryWrite: ActorMethod<[string, bigint, string], Result_13>;
2371
2390
  /**
2372
2391
  * / ⚠ OWNER-ONLY BULK RESET. Destructive, and wider than its name suggests.
2373
2392
  * /
@@ -2397,7 +2416,7 @@ export interface Engram {
2397
2416
  * / long-lived enough for the rent model to apply, the reset entry is not guaranteed to still be
2398
2417
  * / there. `agentPurgeLog` is the evidence that does not age out — which is why it exists.
2399
2418
  */
2400
- resetEngram: ActorMethod<[], Result_14>;
2419
+ resetEngram: ActorMethod<[], Result_15>;
2401
2420
  /**
2402
2421
  * / ⟨2026-09-28, owner decision: an agent can resign from an engram, and the resignation is
2403
2422
  * / recorded⟩ The AGENT ends its own engagement with this engram.
@@ -2449,7 +2468,7 @@ export interface Engram {
2449
2468
  * / each such engagement under `cannotBeRecorded` (key, root, invite, and how and when it ended),
2450
2469
  * / apart from `notRecorded`, so the owner sees them rather than silence.
2451
2470
  */
2452
- resyncAgentEdges: ActorMethod<[], Result_13>;
2471
+ resyncAgentEdges: ActorMethod<[], Result_14>;
2453
2472
  /**
2454
2473
  * / Return to managed custody: the engram adds the registry back as a controller ALONGSIDE the
2455
2474
  * / owner — it does not remove the owner. The inverse of `claimSovereignty`, and the reason
@@ -2511,7 +2530,7 @@ export interface Engram {
2511
2530
  * / that fails leaves the agents revoked here regardless — a partial notify is not a partial
2512
2531
  * / revocation, which is the direction that matters for a panic button.
2513
2532
  */
2514
- revokeAllAgents: ActorMethod<[], Result_12>;
2533
+ revokeAllAgents: ActorMethod<[], Result_13>;
2515
2534
  /**
2516
2535
  * / Owner-only panic button: revoke every connector bearer token at once. Returns how many.
2517
2536
  * /
@@ -2522,7 +2541,7 @@ export interface Engram {
2522
2541
  * /
2523
2542
  * / Tokens are re-issuable: revoking them is not permanent the way revoking an agent is.
2524
2543
  */
2525
- revokeAllBearerTokens: ActorMethod<[], Result_12>;
2544
+ revokeAllBearerTokens: ActorMethod<[], Result_13>;
2526
2545
  /**
2527
2546
  * / ⟨0.16.0⟩ `removeAllGuardians` DELETED — test-only (L6), and verified NOT part of KILL-SWITCH's
2528
2547
  * / mass-revoke set. The destructive phase-07 suite iterates `removeGuardian` instead, so nothing
@@ -2536,7 +2555,7 @@ export interface Engram {
2536
2555
  * / Unlike revoking an agent, this costs nothing permanently — an invite is a one-time code,
2537
2556
  * / so voiding it and minting a fresh one is the ordinary path.
2538
2557
  */
2539
- revokeAllInvites: ActorMethod<[], Result_12>;
2558
+ revokeAllInvites: ActorMethod<[], Result_13>;
2540
2559
  /**
2541
2560
  * / Revoke a bearer token by its public tokenId. Idempotent.
2542
2561
  * / Subsequent /mcp requests using this token will be rejected.
@@ -2615,7 +2634,7 @@ export interface Engram {
2615
2634
  * / CIPHERTEXT; the key-holding SDK decrypts it. A caller without the key gets bytes it cannot
2616
2635
  * / read, not an error.
2617
2636
  */
2618
- sessionReadContext: ActorMethod<[string], Result_11>;
2637
+ sessionReadContext: ActorMethod<[string], Result_12>;
2619
2638
  /**
2620
2639
  * / Read one memory file against a PAID x402 session voucher. No role, no invite — the voucher is
2621
2640
  * / the authorization, which is what makes this the engram's one rail a stranger can pay to use.
@@ -2647,7 +2666,7 @@ export interface Engram {
2647
2666
  * / cent voucher could read `secrets/*`.
2648
2667
  * / · Payments are frozen on this engram.
2649
2668
  */
2650
- sessionReadMemory: ActorMethod<[Voucher, string], Result_10>;
2669
+ sessionReadMemory: ActorMethod<[Voucher, string], Result_11>;
2651
2670
  /**
2652
2671
  * / Configure action alerts: an https webhook that receives new chained-audit entries matching the
2653
2672
  * / enabled event classes (money / approvals / guardian / agentWrites), batched, at most one
@@ -2700,7 +2719,7 @@ export interface Engram {
2700
2719
  * / across all of them. "The write is the read" above went stale for a second phone, which never
2701
2720
  * / made the write: `getBackupRetention` is the read.
2702
2721
  */
2703
- setBackupRetention: ActorMethod<[string, bigint], Result_9>;
2722
+ setBackupRetention: ActorMethod<[string, bigint], Result_10>;
2704
2723
  /**
2705
2724
  * / Override the caps for ONE caller — an agent this owner trusts more, or less, than the rest.
2706
2725
  */
@@ -2961,7 +2980,7 @@ export interface Engram {
2961
2980
  maxPriorityFeePerGas: bigint;
2962
2981
  },
2963
2982
  ],
2964
- Result_8
2983
+ Result_9
2965
2984
  >;
2966
2985
  /**
2967
2986
  * / Sign an EIP-3009 authorization for x402 payment. Agent-accessible.
@@ -3062,7 +3081,7 @@ export interface Engram {
3062
3081
  * / class (`SeatWeeks.readRefusal`), never an empty list: an empty list is a real answer ("no agent
3063
3082
  * / has paired here"), and a fabricated one would be counted as one.
3064
3083
  */
3065
- sysGetAgentSeatWeeks: ActorMethod<[], Result_7>;
3084
+ sysGetAgentSeatWeeks: ActorMethod<[], Result_8>;
3066
3085
  /**
3067
3086
  * / The metrics reader the registry designated reads this engram's paid-rail health, in one call:
3068
3087
  * / the balance and the line it must stay above, the memory that line is computed from, the sessions
@@ -3086,7 +3105,7 @@ export interface Engram {
3086
3105
  * / to freeze. Called by another canister, a query runs replicated and this engram pays for it —
3087
3106
  * / a few million cycles an hour, the cost of being watched.
3088
3107
  */
3089
- sysGetRailHealth: ActorMethod<[], Result_6>;
3108
+ sysGetRailHealth: ActorMethod<[], Result_7>;
3090
3109
  /**
3091
3110
  * / The cashier reads how many signatures this engram has produced, per caller and in total.
3092
3111
  * / ⟨2026-09-28⟩ The owner's decision of that date: a running counter on the engram, exported to
@@ -3111,7 +3130,20 @@ export interface Engram {
3111
3130
  * / only engrams the registry confirms run published code, and read a lower count than last time as
3112
3131
  * / a reinstall — the reasoning is at `signaturesByCaller`.
3113
3132
  */
3114
- sysGetSignatureCounts: ActorMethod<[], Result_5>;
3133
+ sysGetSignatureCounts: ActorMethod<[], Result_6>;
3134
+ /**
3135
+ * / Note a restart the registry just made: what this engram owes for it, the floor a repayment may
3136
+ * / not go under, and until when to keep its timers quiet.
3137
+ * /
3138
+ * / CALLER: the registry that spawned this engram, from inside its owner's `restartMyStoppedEngram`,
3139
+ * / and nobody else (ADR-0020) — the same authority as `sysSetBillerId`. The owner's next conversion
3140
+ * / that lands pays the loan back first. The loan is capped at `RestartRepay.LOAN_MAX_CYCLES` and
3141
+ * / the quiet window at 30 minutes, whatever the registry says.
3142
+ */
3143
+ sysNoteRestart: ActorMethod<
3144
+ [{ keepCycles: bigint; loan: bigint; quietUntilNs: bigint }],
3145
+ Result_1
3146
+ >;
3115
3147
  /**
3116
3148
  * / Rent lifecycle notice — how the OWNER (not the agent) learns their subscription lapsed. D6
3117
3149
  * / shipped the handoff but every alarm it added talks to the operating service's watchdog; the
@@ -3200,6 +3232,28 @@ export interface Engram {
3200
3232
  ],
3201
3233
  Result_1
3202
3234
  >;
3235
+ /**
3236
+ * / Give back what a paid security update advanced this engram and the install did not use.
3237
+ * /
3238
+ * / CALLER: the registry that spawned this engram, right after it installed a security update it
3239
+ * / paid for, and nobody else (ADR-0020). Sends the smallest of: the advance, what this engram holds
3240
+ * / above its balance before the update, and what sits above its 30-day reserve plus send headroom
3241
+ * / (`RestartRepay.giveBack`) — attached to the registry's `sysRepayUpgradeAdvance`, which accepts no
3242
+ * / more than it advanced. The registry writes off what is not returned; nothing is owed after.
3243
+ * / ⟨2026-10-26, the owner's review choice 1B: "take back only what we added; anything left over goes
3244
+ * / to the 90-day write-off"⟩ The registry now names the ONE advance it is asking for (`advanceId`,
3245
+ * / the one its deposit for this install put on its ledger) and `advance` is that advance's amount
3246
+ * / alone — never the sum of every advance this engram has out. The engram passes the id back to
3247
+ * / `sysRepayUpgradeAdvance` unchanged, and the registry settles that advance only. The engram's own
3248
+ * / caps are unchanged (`RestartRepay.giveBack`). HONEST LIMIT, unchanged by 1B: the engram cannot
3249
+ * / tell its owner's top-up from the unused advance, so when the install used part of the advance and
3250
+ * / the owner added compute meanwhile, up to the part the install used can still come from the
3251
+ * / owner's top-up (the cap is the advance, not its unused part).
3252
+ */
3253
+ sysReturnUpgradeAdvance: ActorMethod<
3254
+ [{ balanceBefore: bigint; advanceId: bigint; advance: bigint }],
3255
+ Result_5
3256
+ >;
3203
3257
  /**
3204
3258
  * / Point this engram at the biller that converts its tokens → cycles. Settable, not hardcoded:
3205
3259
  * / coupling is by principal id, so the same wasm runs against any deployment's biller.
@@ -3218,6 +3272,23 @@ export interface Engram {
3218
3272
  * / rather than telling an owner to run a call they can no longer make.
3219
3273
  */
3220
3274
  sysSetBillerId: ActorMethod<[Principal], Result_1>;
3275
+ /**
3276
+ * / Give this engram its BIRTH CHAIN: its ancestors' birth records and its own, root first, its own
3277
+ * / last ⟨2026-10-26, the owner's lineage rulings L2C-lite and L3A⟩.
3278
+ * /
3279
+ * / CALLER: the registry that spawned this engram, from its birth push or its sweep's retry, and
3280
+ * / nobody else (ADR-0020) — the same authority as `sysSetBillerId`, through the named gate
3281
+ * / `AccessControl.requireSpawningRegistry`. ⚠ THE REGISTRY'S CLIENT DECLARATION IS HAND-WRITTEN
3282
+ * / (`sysSetBirthChain : ([BirthRecord.BirthRecord]) -> async Wire.Result<()>`, in `mintAndPush`): a
3283
+ * / different reply type here traps inside the registry's callback, and a different name leaves every
3284
+ * / newborn without its record, silently retried. test/lineage-wiring.test.ts holds the two equal.
3285
+ * /
3286
+ * / SET ONCE: the same chain again answers `#Ok` and changes nothing (the registry's sweep may re-send
3287
+ * / a push whose reply was lost); a different one is refused `#Conflict`. THE ENGRAM DOES NOT HASH:
3288
+ * / it checks only that the chain ends with its own record. The fingerprints are the registry's to
3289
+ * / certify and the client's `verifyBirthChain` to check.
3290
+ */
3291
+ sysSetBirthChain: ActorMethod<[Array<BirthRecord>], Result_1>;
3221
3292
  /**
3222
3293
  * / Point this engram at the commerce satellite allowed to ask it for signatures. ⟨0.16.0, B1⟩
3223
3294
  * /
@@ -3247,7 +3318,10 @@ export interface Engram {
3247
3318
  * / A CANISTER ONLY: a person's principal, the anonymous principal or the management canister is
3248
3319
  * / refused `#Invalid` and nothing changes — a person named here would be handed this engram's seat
3249
3320
  * / counts. Set or replaced, never cleared: the owner's control is the switch
3250
- * / (`setSeatWeeksReadEnabled`), not the pointer. The chained record entry
3321
+ * / (`setSeatWeeksReadEnabled`), not the pointer.
3322
+ * / ⟨CORRECTED 2026-10-26, the owner's lineage ruling L6A⟩ "Set or replaced" is no longer true: it is
3323
+ * / SET ONCE. The same reader again answers `#Ok` and changes nothing; another is refused `#Conflict`
3324
+ * / (`AccessControl.setOnce` says why). Still never cleared. The chained record entry
3251
3325
  * / (`metrics.sysSetMetricsReaderId`) is the evidence of when the read was granted, and to whom.
3252
3326
  */
3253
3327
  sysSetMetricsReaderId: ActorMethod<[Principal], Result_1>;
@@ -3906,84 +3980,86 @@ export interface ResetReport {
3906
3980
  }
3907
3981
  export type Result = { Ok: WriteReceipt } | { Err: Error };
3908
3982
  export type Result_1 = { Ok: null } | { Err: Error };
3909
- export type Result_10 = { Ok: MemoryFile } | { Err: Error };
3910
- export type Result_11 = { Ok: SessionContext } | { Err: Error };
3911
- export type Result_12 = { Ok: bigint } | { Err: Error };
3912
- export type Result_13 = { Ok: ResyncReport } | { Err: Error };
3913
- export type Result_14 = { Ok: ResetReport } | { Err: Error };
3914
- export type Result_15 = { Ok: GuardianRecord } | { Err: Error };
3915
- export type Result_16 = { Ok: EngramEscrowRecovery } | { Err: Error };
3916
- export type Result_17 = { Ok: MemoryByteChunk } | { Err: Error };
3917
- export type Result_18 = { Ok: Array<BatchReadItem> } | { Err: Error };
3918
- export type Result_19 = { Ok: RetentionPreview } | { 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 };
3919
3993
  export type Result_2 = { Ok: ControlHandover } | { Err: Error };
3920
- export type Result_20 = { Ok: CondensePreview } | { Err: Error };
3921
- export type Result_21 = { Ok: Pairing } | { Err: Error };
3922
- export type Result_22 = { Ok: EngramSessionState } | { Err: Error };
3923
- export type Result_23 = { Ok: Principal } | { Err: Error };
3924
- export type Result_24 = { Ok: AgentGrant } | { Err: Error };
3925
- export type Result_25 = { Ok: Page } | { Err: Error };
3926
- export type Result_26 = { Ok: Page_1 } | { Err: Error };
3927
- export type Result_27 = { Ok: Page_2 } | { Err: Error };
3928
- export type Result_28 = { Ok: Page_3 } | { Err: Error };
3929
- export type Result_29 = { Ok: Page_4 } | { 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 };
3930
4004
  export type Result_3 = { Ok: X402SignOutcome } | { Err: Error };
3931
- export type Result_30 = { Ok: PaymentSignatureCounts } | { Err: Error };
3932
- export type Result_31 = { Ok: Page_6 } | { Err: Error };
3933
- export type Result_32 = { Ok: Page_7 } | { Err: Error };
3934
- export type Result_33 = { Ok: Page_8 } | { Err: Error };
3935
- export type Result_34 = { Ok: LogPage } | { Err: Error };
3936
- export type Result_35 = { Ok: Page_10 } | { Err: Error };
3937
- export type Result_36 = { Ok: ReceiptPage } | { Err: Error };
3938
- export type Result_37 = { Ok: Page_12 } | { Err: Error };
3939
- export type Result_38 = { Ok: Page_13 } | { Err: Error };
3940
- export type Result_39 = { Ok: Page_14 } | { 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 };
3941
4015
  export type Result_4 = { Ok: Eip712SignatureOut } | { Err: Error };
3942
- export type Result_40 = { Ok: Page_15 } | { Err: Error };
3943
- export type Result_41 = { Ok: Page_16 } | { Err: Error };
3944
- export type Result_42 = { Ok: Page_17 } | { Err: Error };
3945
- export type Result_43 = { Ok: CheckpointPage } | { Err: Error };
3946
- export type Result_44 = { Ok: Page_19 } | { Err: Error };
3947
- export type Result_45 = { Ok: Page_20 } | { Err: Error };
3948
- export type Result_46 = { Ok: RecordPage } | { Err: Error };
3949
- export type Result_47 = { Ok: Page_21 } | { Err: Error };
3950
- export type Result_48 = { Ok: Page_22 } | { Err: Error };
3951
- export type Result_49 = { Ok: AgentSpendToday } | { Err: Error };
3952
- export type Result_5 = { Ok: SignatureCounts } | { Err: Error };
3953
- export type Result_50 = { Ok: Page_24 } | { Err: Error };
3954
- export type Result_51 = { Ok: string } | { Err: Error };
3955
- export type Result_52 = { Ok: boolean } | { Err: Error };
3956
- export type Result_53 = { Ok: [] | [string] } | { Err: Error };
3957
- export type Result_54 = { Ok: WorldIdRpContext } | { Err: Error };
3958
- export type Result_55 = { Ok: WorldIdConfig } | { Err: Error };
3959
- export type Result_56 = { Ok: WalletBalances } | { Err: Error };
3960
- export type Result_57 = { Ok: StorageReport } | { Err: Error };
3961
- export type Result_58 = { Ok: SpendingPolicy } | { Err: Error };
3962
- export type Result_59 = { Ok: SpendCeiling } | { Err: Error };
3963
- export type Result_6 = { Ok: RailHealth } | { Err: Error };
3964
- export type Result_60 = { Ok: SigningFloorStatus } | { Err: Error };
3965
- export type Result_61 = { Ok: { paths: Array<string> } } | { Err: Error };
3966
- export type Result_62 = { Ok: OwnerConsole } | { Err: Error };
3967
- export type Result_63 = { Ok: MemoryRetentionPolicy } | { Err: Error };
3968
- export type Result_64 = { Ok: MemoryHistory } | { Err: Error };
3969
- export type Result_65 = { Ok: AlertStatus } | { Err: Error };
3970
- export type Result_66 = { Ok: EvmAddresses } | { Err: Error };
3971
- export type Result_67 = { Ok: Uint8Array | number[] } | { Err: Error };
3972
- export type Result_68 = { Ok: ChildOpening } | { Err: Error };
3973
- export type Result_69 = { Ok: ChildAllowanceRow } | { Err: Error };
3974
- export type Result_7 = { Ok: Array<Seat> } | { Err: Error };
3975
- export type Result_70 = { Ok: Brakes } | { Err: Error };
3976
- export type Result_71 = { Ok: BackupRetention } | { Err: Error };
3977
- export type Result_72 = { Ok: BackupMetadata } | { Err: Error };
3978
- export type Result_73 = { Ok: AgentWriteReview } | { Err: Error };
3979
- export type Result_74 = { Ok: Page_25 } | { Err: Error };
3980
- export type Result_76 = { Ok: MemoryRangeExport } | { Err: Error };
3981
- export type Result_77 = { Ok: CondenseResult } | { Err: Error };
3982
- export type Result_78 = { Ok: Eip712Registration } | { Err: Error };
3983
- export type Result_79 = { Ok: { activatesAtNs: bigint } } | { Err: Error };
3984
- export type Result_8 = { Ok: SignedTransaction } | { Err: Error };
3985
- export type Result_80 = { Ok: AgentRecord } | { Err: Error };
3986
- export type Result_9 = { Ok: BackupRetentionReport } | { 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 };
3987
4063
  export interface ResyncReport {
3988
4064
  startsAcknowledged: bigint;
3989
4065
  cannotBeRecorded: Array<UnrecordableEngagement>;