@bananapus/nana-sdk-core 2.37.0 → 2.38.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/dist/cjs/review/index.d.ts +1 -0
  2. package/dist/cjs/review/index.d.ts.map +1 -1
  3. package/dist/cjs/review/index.js +1 -0
  4. package/dist/cjs/review/index.js.map +1 -1
  5. package/dist/cjs/review/intents.d.ts +71 -0
  6. package/dist/cjs/review/intents.d.ts.map +1 -0
  7. package/dist/cjs/review/intents.js +110 -0
  8. package/dist/cjs/review/intents.js.map +1 -0
  9. package/dist/cjs/review/writeHold.d.ts.map +1 -1
  10. package/dist/cjs/review/writeHold.js +10 -2
  11. package/dist/cjs/review/writeHold.js.map +1 -1
  12. package/dist/cjs/review/writeRecovery.d.ts +5 -0
  13. package/dist/cjs/review/writeRecovery.d.ts.map +1 -1
  14. package/dist/cjs/review/writeRecovery.js +21 -5
  15. package/dist/cjs/review/writeRecovery.js.map +1 -1
  16. package/dist/cjs/testing.d.ts +4 -1
  17. package/dist/cjs/testing.d.ts.map +1 -1
  18. package/dist/cjs/testing.js +12 -3
  19. package/dist/cjs/testing.js.map +1 -1
  20. package/dist/esm/review/index.d.ts +1 -0
  21. package/dist/esm/review/index.d.ts.map +1 -1
  22. package/dist/esm/review/index.js +1 -0
  23. package/dist/esm/review/index.js.map +1 -1
  24. package/dist/esm/review/intents.d.ts +71 -0
  25. package/dist/esm/review/intents.d.ts.map +1 -0
  26. package/dist/esm/review/intents.js +100 -0
  27. package/dist/esm/review/intents.js.map +1 -0
  28. package/dist/esm/review/writeHold.d.ts.map +1 -1
  29. package/dist/esm/review/writeHold.js +10 -2
  30. package/dist/esm/review/writeHold.js.map +1 -1
  31. package/dist/esm/review/writeRecovery.d.ts +5 -0
  32. package/dist/esm/review/writeRecovery.d.ts.map +1 -1
  33. package/dist/esm/review/writeRecovery.js +21 -5
  34. package/dist/esm/review/writeRecovery.js.map +1 -1
  35. package/dist/esm/testing.d.ts +4 -1
  36. package/dist/esm/testing.d.ts.map +1 -1
  37. package/dist/esm/testing.js +12 -3
  38. package/dist/esm/testing.js.map +1 -1
  39. package/package.json +1 -1
@@ -8,4 +8,5 @@ export * from "./transaction-message.js";
8
8
  export * from "./writeRecovery.js";
9
9
  export * from "./writeHold.js";
10
10
  export * from "./writeIntent.js";
11
+ export * from "./intents.js";
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/review/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/review/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC"}
@@ -24,4 +24,5 @@ __exportStar(require("./transaction-message.js"), exports);
24
24
  __exportStar(require("./writeRecovery.js"), exports);
25
25
  __exportStar(require("./writeHold.js"), exports);
26
26
  __exportStar(require("./writeIntent.js"), exports);
27
+ __exportStar(require("./intents.js"), exports);
27
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/review/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,2CAAyB;AACzB,gDAA8B;AAC9B,+CAA6B;AAC7B,kDAAgC;AAChC,yDAAuC;AACvC,2DAAyC;AACzC,qDAAmC;AACnC,iDAA+B;AAC/B,mDAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/review/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,2CAAyB;AACzB,gDAA8B;AAC9B,+CAA6B;AAC7B,kDAAgC;AAChC,yDAAuC;AACvC,2DAAyC;AACzC,qDAAmC;AACnC,iDAA+B;AAC/B,mDAAiC;AACjC,+CAA6B"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * The write hold namespaces every web client uses for the same user action,
3
+ * so a retry from any app, tab or deploy is held by the first attempt.
4
+ *
5
+ * The rule: identity plus explicit user choices; never derived, quoted,
6
+ * routed or auto-filled values. Each builder reads only the fields it names,
7
+ * so an amount, memo, quote, route, deadline or fee passed by mistake changes
8
+ * nothing. The trade: a coarse key may make a second action of the same kind
9
+ * wait on an unresolved first one (its explicit exit ends that), but it never
10
+ * sends twice.
11
+ */
12
+ import { type Address, type Hex } from "viem";
13
+ import { type IntentValue } from "./writeIntent.js";
14
+ type Id = bigint | number;
15
+ /** Every payment to a project: checkout, pay and add to balance alike. No token, amount, memo or cart. */
16
+ export declare function payIntent({ chainId, project, beneficiary, }: {
17
+ chainId: number;
18
+ project: Id;
19
+ beneficiary: Address | string;
20
+ }): string;
21
+ /** Every cash-out of a project's token, whatever the venue. No amount. */
22
+ export declare function cashOutIntent({ chainId, project, holder, beneficiary, }: {
23
+ chainId: number;
24
+ project: Id;
25
+ holder: Address | string;
26
+ beneficiary: Address | string;
27
+ }): string;
28
+ /** Repaying or reallocating one loan. */
29
+ export declare function loanIntent({ chainId, loanId, }: {
30
+ chainId: number;
31
+ loanId: Id;
32
+ }): string;
33
+ /** Borrowing against a project's token. No amount or collateral. */
34
+ export declare function borrowIntent({ chainId, project, holder, }: {
35
+ chainId: number;
36
+ project: Id;
37
+ holder: Address | string;
38
+ }): string;
39
+ /** Sending, preparing or syncing a bridge through one sucker. No amount or fee. */
40
+ export declare function bridgeIntent({ chainId, sucker, token, account, }: {
41
+ chainId: number;
42
+ sucker: Address | string;
43
+ token: Address | string;
44
+ account: Address | string;
45
+ }): string;
46
+ /** One approval step of a parent action (its intent key). No amount. */
47
+ export declare function approvalIntent(parent: string, { step, token, spender, }: {
48
+ step: string;
49
+ token: Address | string;
50
+ spender: Address | string;
51
+ }): string;
52
+ /** Launching a project from the user's frozen form input. */
53
+ export declare function launchIntent({ chainId, account, config, }: {
54
+ chainId: number;
55
+ account: Address | string;
56
+ /**
57
+ * What the user entered, frozen and built in one place: tag addresses and
58
+ * bytes with {@link intent}; plain strings compare exactly as given.
59
+ */
60
+ config: IntentValue;
61
+ }): string;
62
+ /** Changing the user's liquidity positions in one pool. No amounts or prices. */
63
+ export declare function liquidityIntent({ chainId, pool, positions, }: {
64
+ chainId: number;
65
+ /** The pool's id or address. */
66
+ pool: Hex | string;
67
+ /** A set: order and repeats don't change the key. */
68
+ positions: readonly Id[];
69
+ }): string;
70
+ export {};
71
+ //# sourceMappingURL=intents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intents.d.ts","sourceRoot":"","sources":["../../../src/review/intents.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AAC9C,OAAO,EAA0B,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE5E,KAAK,EAAE,GAAG,MAAM,GAAG,MAAM,CAAC;AA2C1B,0GAA0G;AAC1G,wBAAgB,SAAS,CAAC,EACxB,OAAO,EACP,OAAO,EACP,WAAW,GACZ,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,EAAE,CAAC;IACZ,WAAW,EAAE,OAAO,GAAG,MAAM,CAAC;CAC/B,GAAG,MAAM,CAMT;AAED,0EAA0E;AAC1E,wBAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,OAAO,EACP,MAAM,EACN,WAAW,GACZ,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,EAAE,CAAC;IACZ,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,WAAW,EAAE,OAAO,GAAG,MAAM,CAAC;CAC/B,GAAG,MAAM,CAOT;AAED,yCAAyC;AACzC,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,MAAM,GACP,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,EAAE,CAAC;CACZ,GAAG,MAAM,CAET;AAED,oEAAoE;AACpE,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,OAAO,EACP,MAAM,GACP,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,EAAE,CAAC;IACZ,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC;CAC1B,GAAG,MAAM,CAMT;AAED,mFAAmF;AACnF,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,MAAM,EACN,KAAK,EACL,OAAO,GACR,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC;IACxB,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC;CAC3B,GAAG,MAAM,CAOT;AAED,wEAAwE;AACxE,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,EACE,IAAI,EACJ,KAAK,EACL,OAAO,GACR,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAA;CAAE,GACtE,MAAM,CAOR;AAED,6DAA6D;AAC7D,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,OAAO,EACP,MAAM,GACP,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC;IAC1B;;;OAGG;IACH,MAAM,EAAE,WAAW,CAAC;CACrB,GAAG,MAAM,CAMT;AAED,iFAAiF;AACjF,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,IAAI,EACJ,SAAS,GACV,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,gCAAgC;IAChC,IAAI,EAAE,GAAG,GAAG,MAAM,CAAC;IACnB,qDAAqD;IACrD,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC;CAC1B,GAAG,MAAM,CAMT"}
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.payIntent = payIntent;
4
+ exports.cashOutIntent = cashOutIntent;
5
+ exports.loanIntent = loanIntent;
6
+ exports.borrowIntent = borrowIntent;
7
+ exports.bridgeIntent = bridgeIntent;
8
+ exports.approvalIntent = approvalIntent;
9
+ exports.launchIntent = launchIntent;
10
+ exports.liquidityIntent = liquidityIntent;
11
+ const writeIntent_js_1 = require("./writeIntent.js");
12
+ /**
13
+ * The one canonical form of what a builder keys: a safe integer becomes a
14
+ * bigint (1000 and 1000n are one value), arrays and records are normalized
15
+ * throughout, and nothing is inferred from a string's shape: a plain string
16
+ * stays exactly as given, and only values tagged with {@link intent} compare
17
+ * case-blind. Anything else is left for {@link writeIntentKey} to accept or
18
+ * refuse.
19
+ */
20
+ function canonicalValue(value) {
21
+ if (typeof value === "number")
22
+ return Number.isSafeInteger(value) ? BigInt(value) : value;
23
+ if (Array.isArray(value))
24
+ return value.map(canonicalValue);
25
+ if (value && typeof value === "object" && !isTagged(value))
26
+ return Object.fromEntries(Object.entries(value).map(([name, field]) => [
27
+ name,
28
+ field === undefined ? field : canonicalValue(field),
29
+ ]));
30
+ return value;
31
+ }
32
+ /** An address or hex already tagged with {@link intent}. */
33
+ function isTagged(value) {
34
+ return Object.getOwnPropertySymbols(value).length > 0;
35
+ }
36
+ /** One id in its canonical form. */
37
+ const id = (value) => canonicalValue(value);
38
+ /**
39
+ * A list of ids as a set: sorted ascending and without repeats, so every app
40
+ * keys the same set the same way, whatever order it holds them in.
41
+ */
42
+ function canonicalIds(ids) {
43
+ return [...new Set(ids.map(id))].sort(
44
+ // Unique after the Set: never equal.
45
+ (a, b) => (a < b ? -1 : 1));
46
+ }
47
+ /** Every payment to a project: checkout, pay and add to balance alike. No token, amount, memo or cart. */
48
+ function payIntent({ chainId, project, beneficiary, }) {
49
+ return (0, writeIntent_js_1.writeIntentKey)("pay", {
50
+ chainId,
51
+ project: id(project),
52
+ beneficiary: writeIntent_js_1.intent.address(beneficiary),
53
+ });
54
+ }
55
+ /** Every cash-out of a project's token, whatever the venue. No amount. */
56
+ function cashOutIntent({ chainId, project, holder, beneficiary, }) {
57
+ return (0, writeIntent_js_1.writeIntentKey)("cash-out", {
58
+ chainId,
59
+ project: id(project),
60
+ holder: writeIntent_js_1.intent.address(holder),
61
+ beneficiary: writeIntent_js_1.intent.address(beneficiary),
62
+ });
63
+ }
64
+ /** Repaying or reallocating one loan. */
65
+ function loanIntent({ chainId, loanId, }) {
66
+ return (0, writeIntent_js_1.writeIntentKey)("loan", { chainId, loanId: id(loanId) });
67
+ }
68
+ /** Borrowing against a project's token. No amount or collateral. */
69
+ function borrowIntent({ chainId, project, holder, }) {
70
+ return (0, writeIntent_js_1.writeIntentKey)("borrow", {
71
+ chainId,
72
+ project: id(project),
73
+ holder: writeIntent_js_1.intent.address(holder),
74
+ });
75
+ }
76
+ /** Sending, preparing or syncing a bridge through one sucker. No amount or fee. */
77
+ function bridgeIntent({ chainId, sucker, token, account, }) {
78
+ return (0, writeIntent_js_1.writeIntentKey)("bridge", {
79
+ chainId,
80
+ sucker: writeIntent_js_1.intent.address(sucker),
81
+ token: writeIntent_js_1.intent.address(token),
82
+ account: writeIntent_js_1.intent.address(account),
83
+ });
84
+ }
85
+ /** One approval step of a parent action (its intent key). No amount. */
86
+ function approvalIntent(parent, { step, token, spender, }) {
87
+ return (0, writeIntent_js_1.writeIntentKey)("approval", {
88
+ parent,
89
+ step,
90
+ token: writeIntent_js_1.intent.address(token),
91
+ spender: writeIntent_js_1.intent.address(spender),
92
+ });
93
+ }
94
+ /** Launching a project from the user's frozen form input. */
95
+ function launchIntent({ chainId, account, config, }) {
96
+ return (0, writeIntent_js_1.writeIntentKey)("launch", {
97
+ chainId,
98
+ account: writeIntent_js_1.intent.address(account),
99
+ config: canonicalValue(config),
100
+ });
101
+ }
102
+ /** Changing the user's liquidity positions in one pool. No amounts or prices. */
103
+ function liquidityIntent({ chainId, pool, positions, }) {
104
+ return (0, writeIntent_js_1.writeIntentKey)("liquidity", {
105
+ chainId,
106
+ pool: writeIntent_js_1.intent.hex(pool),
107
+ positions: canonicalIds(positions),
108
+ });
109
+ }
110
+ //# sourceMappingURL=intents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intents.js","sourceRoot":"","sources":["../../../src/review/intents.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"writeHold.d.ts","sourceRoot":"","sources":["../../../src/review/writeHold.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"writeHold.d.ts","sourceRoot":"","sources":["../../../src/review/writeHold.ts"],"names":[],"mappings":"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"}
@@ -531,8 +531,14 @@ function createWriteHold(options = {}) {
531
531
  ? recovery.mined(record, look === "mined")
532
532
  : recovery.candidateMined(record, hash, look === "mined");
533
533
  const at = own ? record.minedAt : record.candidateMinedAt?.[hash];
534
+ // A candidate the chain hasn't answered for since it was reported
535
+ // keeps its unseen window through failing reads.
536
+ const unread = !own && look === "unknown" && at === undefined
537
+ ? record.candidateSeenAt?.[hash]
538
+ : undefined;
534
539
  if (look === "pending" ||
535
- (at !== undefined && Date.now() - Number(at) < UNSEEN_HASH_MS))
540
+ (at !== undefined && Date.now() - Number(at) < UNSEEN_HASH_MS) ||
541
+ (unread !== undefined && Date.now() - Number(unread) < UNSEEN_HASH_MS))
536
542
  return {
537
543
  status: "pending-known-hash",
538
544
  record,
@@ -540,7 +546,9 @@ function createWriteHold(options = {}) {
540
546
  exit: false,
541
547
  line: look === "pending"
542
548
  ? messages_js_1.WRITE_HOLD_PENDING_LINE
543
- : messages_js_1.WRITE_HOLD_MINED_LINE,
549
+ : at === undefined
550
+ ? (0, messages_js_1.writeHeldMessage)()
551
+ : messages_js_1.WRITE_HOLD_MINED_LINE,
544
552
  };
545
553
  }
546
554
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"writeHold.js","sourceRoot":"","sources":["../../../src/review/writeHold.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"writeHold.js","sourceRoot":"","sources":["../../../src/review/writeHold.ts"],"names":[],"mappings":"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"}
@@ -78,6 +78,11 @@ export type ReviewedWriteRecoveryRecord = Omit<ReviewedWriteRecoveryInput, "call
78
78
  minedAt?: string;
79
79
  /** The same clock for each candidate seen mined with its receipt unreadable, by hash. */
80
80
  candidateMinedAt?: Record<string, string>;
81
+ /**
82
+ * When each candidate was reported, by hash, in milliseconds since the
83
+ * epoch, as a decimal string: its unseen window runs from it.
84
+ */
85
+ candidateSeenAt?: Record<string, string>;
81
86
  };
82
87
  /** How a held write ended, on authenticated evidence: its result and transaction. */
83
88
  export type ReviewedWriteSettlement = {
@@ -1 +1 @@
1
- {"version":3,"file":"writeRecovery.d.ts","sourceRoot":"","sources":["../../../src/review/writeRecovery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"writeRecovery.d.ts","sourceRoot":"","sources":["../../../src/review/writeRecovery.ts"],"names":[],"mappings":"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"}
@@ -83,10 +83,8 @@ function recordOf(value) {
83
83
  !optionalDecimal(record.vanishedAt) ||
84
84
  !optionalDecimal(record.pendingSeenAt) ||
85
85
  !optionalDecimal(record.minedAt) ||
86
- (record.candidateMinedAt !== undefined &&
87
- (typeof record.candidateMinedAt !== "object" ||
88
- record.candidateMinedAt === null ||
89
- !Object.entries(record.candidateMinedAt).every(([hash, at]) => (0, untrusted_js_1.isBytes32)(hash) && optionalDecimal(at)))) ||
86
+ !hashClocks(record.candidateMinedAt) ||
87
+ !hashClocks(record.candidateSeenAt) ||
90
88
  (record.candidates !== undefined &&
91
89
  (!Array.isArray(record.candidates) ||
92
90
  !record.candidates.every(untrusted_js_1.isBytes32))) ||
@@ -134,6 +132,9 @@ function recordOf(value) {
134
132
  ...(record.candidateMinedAt === undefined
135
133
  ? {}
136
134
  : { candidateMinedAt: { ...record.candidateMinedAt } }),
135
+ ...(record.candidateSeenAt === undefined
136
+ ? {}
137
+ : { candidateSeenAt: { ...record.candidateSeenAt } }),
137
138
  ...(record.candidates === undefined
138
139
  ? {}
139
140
  : {
@@ -145,6 +146,13 @@ function recordOf(value) {
145
146
  : { executionHash: record.executionHash.toLowerCase() }),
146
147
  };
147
148
  }
149
+ /** A clock per hash: bytes32 hashes to decimal times, or none. */
150
+ function hashClocks(value) {
151
+ return (value === undefined ||
152
+ (typeof value === "object" &&
153
+ value !== null &&
154
+ Object.entries(value).every(([hash, at]) => (0, untrusted_js_1.isBytes32)(hash) && optionalDecimal(at))));
155
+ }
148
156
  function optionalDecimal(value) {
149
157
  return (value === undefined ||
150
158
  (typeof value === "string" && /^(0|[1-9]\d*)$/.test(value)));
@@ -1050,14 +1058,22 @@ function createBrowserWriteRecovery(input, options = {}) {
1050
1058
  return recordOf(expected);
1051
1059
  const wanted = hash.toLowerCase();
1052
1060
  const known = recordOf(expected).candidates ?? [];
1053
- return amend(expected, (current) => current.safe && !known.includes(wanted), { candidates: [...known, wanted] });
1061
+ return amend(expected, (current) => current.safe && !known.includes(wanted), {
1062
+ candidates: [...known, wanted],
1063
+ candidateSeenAt: {
1064
+ ...recordOf(expected).candidateSeenAt,
1065
+ [wanted]: String(Date.now()),
1066
+ },
1067
+ });
1054
1068
  },
1055
1069
  /** Drop a candidate whose own receipt proved it isn't this write's execution. */
1056
1070
  disproven(expected, hash) {
1057
1071
  const known = recordOf(expected).candidates ?? [];
1058
1072
  const rest = known.filter((candidate) => candidate !== hash);
1073
+ const { [hash]: _, ...seen } = recordOf(expected).candidateSeenAt ?? {};
1059
1074
  return amend(expected, () => rest.length !== known.length, {
1060
1075
  candidates: rest.length ? rest : undefined,
1076
+ candidateSeenAt: Object.keys(seen).length ? seen : undefined,
1061
1077
  });
1062
1078
  },
1063
1079
  /** Note that a read just showed the saved hash pending. Extra evidence only. */