@unconfirmed/sui-effect 0.1.1 → 0.1.3

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 (74) hide show
  1. package/AGENTS.md +34 -11
  2. package/CHANGELOG.md +77 -0
  3. package/LLMS.md +630 -704
  4. package/README.md +175 -9
  5. package/dist/domain/bcs.d.ts.map +1 -1
  6. package/dist/domain/bcs.js +25 -9
  7. package/dist/domain/bcs.js.map +1 -1
  8. package/dist/domain/errors.d.ts +178 -40
  9. package/dist/domain/errors.d.ts.map +1 -1
  10. package/dist/domain/errors.js +271 -37
  11. package/dist/domain/errors.js.map +1 -1
  12. package/dist/domain/executed.d.ts +71 -2
  13. package/dist/domain/executed.d.ts.map +1 -1
  14. package/dist/domain/executed.js +210 -9
  15. package/dist/domain/executed.js.map +1 -1
  16. package/dist/domain/journal-entry.d.ts +37 -37
  17. package/dist/domain/journal-entry.js +1 -1
  18. package/dist/domain/schemas.d.ts +172 -65
  19. package/dist/domain/schemas.d.ts.map +1 -1
  20. package/dist/domain/schemas.js +131 -32
  21. package/dist/domain/schemas.js.map +1 -1
  22. package/dist/index.d.ts +1 -1
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +1 -1
  25. package/dist/index.js.map +1 -1
  26. package/dist/internal.d.ts +1 -1
  27. package/dist/internal.d.ts.map +1 -1
  28. package/dist/internal.js +1 -1
  29. package/dist/internal.js.map +1 -1
  30. package/dist/script.d.ts +1 -1
  31. package/dist/script.d.ts.map +1 -1
  32. package/dist/script.js +1 -1
  33. package/dist/script.js.map +1 -1
  34. package/dist/services/Script.d.ts +42 -0
  35. package/dist/services/Script.d.ts.map +1 -1
  36. package/dist/services/Script.js +112 -77
  37. package/dist/services/Script.js.map +1 -1
  38. package/dist/services/Signer.d.ts +32 -7
  39. package/dist/services/Signer.d.ts.map +1 -1
  40. package/dist/services/Signer.js +69 -10
  41. package/dist/services/Signer.js.map +1 -1
  42. package/dist/services/SubmitConfig.d.ts +3 -22
  43. package/dist/services/SubmitConfig.d.ts.map +1 -1
  44. package/dist/services/SubmitConfig.js +54 -9
  45. package/dist/services/SubmitConfig.js.map +1 -1
  46. package/dist/services/Sui.d.ts +42 -1
  47. package/dist/services/Sui.d.ts.map +1 -1
  48. package/dist/services/Sui.js +46 -17
  49. package/dist/services/Sui.js.map +1 -1
  50. package/dist/services/SuiCore.d.ts.map +1 -1
  51. package/dist/services/SuiCore.js +47 -33
  52. package/dist/services/SuiCore.js.map +1 -1
  53. package/dist/services/SuiCoreFake.d.ts +47 -4
  54. package/dist/services/SuiCoreFake.d.ts.map +1 -1
  55. package/dist/services/SuiCoreFake.js +193 -22
  56. package/dist/services/SuiCoreFake.js.map +1 -1
  57. package/dist/services/Tx.d.ts +236 -402
  58. package/dist/services/Tx.d.ts.map +1 -1
  59. package/dist/services/Tx.js +205 -10
  60. package/dist/services/Tx.js.map +1 -1
  61. package/dist/testing.d.ts +1 -0
  62. package/dist/testing.d.ts.map +1 -1
  63. package/dist/testing.js +9 -0
  64. package/dist/testing.js.map +1 -1
  65. package/dist/tx.d.ts +1 -1
  66. package/dist/tx.d.ts.map +1 -1
  67. package/dist/tx.js +1 -1
  68. package/dist/tx.js.map +1 -1
  69. package/docs/extensions.md +608 -19
  70. package/examples/extension-template/src/Escrow.ts +1 -1
  71. package/examples/extension-template/src/errors.ts +29 -0
  72. package/examples/extension-template/src/schema.ts +8 -17
  73. package/examples/extension-template/test/escrow.test.ts +44 -0
  74. package/package.json +1 -1
@@ -14,9 +14,12 @@
14
14
  import { bcs } from "@mysten/sui/bcs";
15
15
  import { ObjectError, SimulationError, TransactionError } from "@mysten/sui/client";
16
16
  import { Inputs, TransactionDataBuilder } from "@mysten/sui/transactions";
17
+ import { parseSerializedSignature } from "@mysten/sui/cryptography";
18
+ import { publicKeyFromRawBytes } from "@mysten/sui/verify";
17
19
  import { normalizeStructTag, normalizeSuiAddress, SUI_CLOCK_OBJECT_ID, SUI_TYPE_ARG, toBase58 } from "@mysten/sui/utils";
18
- import { Context, Effect, Layer, Option } from "effect";
20
+ import { Context, Effect, Layer, Option, Result, Schema } from "effect";
19
21
  import { typeMatches } from "../domain/bcs.js";
22
+ import { ExecutionReason } from "../domain/schemas.js";
20
23
  import { DefectMarker, makeFromClient, SuiCore } from "./SuiCore.js";
21
24
  /** The BCS layout of `0x2::clock::Clock`. */
22
25
  export const ClockBcs = bcs.struct("Clock", {
@@ -32,12 +35,57 @@ export const fakeDigest = (seed) => {
32
35
  bytes[31] = 7;
33
36
  return toBase58(bytes);
34
37
  };
38
+ /**
39
+ * The wire `ExecutionError` a scripted failure needs, from either shape a test
40
+ * is likely to hold.
41
+ *
42
+ * The SDK's own shape — a required top-level `message` and an `abortCode`
43
+ * **string** — is what the node sends and what the fake must hand back. A test
44
+ * that has sui-effect's decoded {@link ExecutionReason} instead (`abortCode` a
45
+ * `bigint`, no `message`) used to be accepted silently, then fail the
46
+ * `Simulation`/`Executed` decode much later as a `DecodeError` or a
47
+ * `TransportError`, and — because the outcome cursor had already moved — often
48
+ * surface as an unrelated `FakeUnimplemented` on some other method. So it is
49
+ * encoded here, at the point where the fixture is written, and anything that is
50
+ * neither shape says so immediately.
51
+ */
52
+ const executionErrorOf = (reason) => {
53
+ const kind = reason?.$kind;
54
+ if (typeof kind !== "string") {
55
+ throw new Error("FakeOutcome.failWith: an execution failure is `{ $kind, [$kind]: …, message }` —" +
56
+ " the SDK's `SuiClientTypes.ExecutionError` — or sui-effect's decoded" +
57
+ " `ExecutionReason` (`{ $kind, [$kind]: … }`, `abortCode` a bigint)." +
58
+ ` This value has no $kind: ${String(reason)}`);
59
+ }
60
+ if (typeof reason.message === "string") {
61
+ return reason;
62
+ }
63
+ const encoded = Schema.encodeUnknownResult(ExecutionReason)(reason);
64
+ if (Result.isFailure(encoded)) {
65
+ throw new Error(`FakeOutcome.failWith: this ${kind} is neither the SDK's ExecutionError` +
66
+ " (a top-level `message`, `abortCode` a decimal string) nor a decodable" +
67
+ ` ExecutionReason: ${encoded.failure.message}`);
68
+ }
69
+ return {
70
+ message: `fake execution failure (${kind})`,
71
+ ...encoded.success
72
+ };
73
+ };
35
74
  /** Builders for {@link FakeOutcome}. */
36
75
  export const FakeOutcome = {
37
76
  /** The call succeeds with these effects. */
38
77
  succeed: (value = {}) => ({ _tag: "succeed", value }),
39
- /** The call resolves with an on-chain failure (`FailedTransaction`). */
40
- failWith: (reason, value = {}) => ({ _tag: "failWith", reason, value }),
78
+ /**
79
+ * The call resolves with an on-chain failure (`FailedTransaction`).
80
+ *
81
+ * `reason` may be the SDK's `SuiClientTypes.ExecutionError` — the wire shape,
82
+ * with a top-level `message` and an `abortCode` **string** — or sui-effect's
83
+ * decoded `ExecutionReason`, whose `abortCode` is a `bigint` and which
84
+ * carries no `message`. The second is encoded into the first here; a value
85
+ * that is neither throws immediately, naming the two shapes, rather than
86
+ * failing a decode several calls later.
87
+ */
88
+ failWith: (reason, value = {}) => ({ _tag: "failWith", reason: executionErrorOf(reason), value }),
41
89
  /** The call rejects with a gRPC status, as `RpcError` would. */
42
90
  transportError: (status) => ({ _tag: "transportError", status }),
43
91
  /** The call rejects the way a missing transaction does. */
@@ -298,12 +346,13 @@ const makeState = (script) => Effect.sync(() => {
298
346
  epoch: script.epoch ?? DEFAULT_EPOCH,
299
347
  calls: [],
300
348
  aborted: 0,
301
- cursors: { simulate: 0, execute: 0, getTransaction: 0, buildSimulate: 0 },
349
+ cursors: { simulate: 0, execute: 0, getTransaction: 0, buildSimulate: 0, getObject: 0 },
302
350
  scripts: {
303
351
  simulate: script.simulate ?? [],
304
352
  execute: script.execute ?? [],
305
353
  getTransaction: script.getTransaction ?? [],
306
- buildSimulate: script.buildSimulate ?? []
354
+ buildSimulate: script.buildSimulate ?? [],
355
+ getObject: script.getObject ?? []
307
356
  },
308
357
  pendingDigests: new Map(),
309
358
  knownTransactions: new Map(),
@@ -544,6 +593,32 @@ const makeInternal = (script, state) => {
544
593
  const asResult = (result) => result.failed
545
594
  ? { $kind: "FailedTransaction", FailedTransaction: result.transaction }
546
595
  : { $kind: "Transaction", Transaction: result.transaction };
596
+ /** Whether two coin types name the same coin, comparing normalized tags. */
597
+ const sameCoinType = (left, right) => {
598
+ if (left === right)
599
+ return true;
600
+ try {
601
+ return normalizeStructTag(left) === normalizeStructTag(right);
602
+ }
603
+ catch {
604
+ return false;
605
+ }
606
+ };
607
+ /**
608
+ * The balances this owner has, with the owner stripped: an entry that names
609
+ * no owner answers for everyone, which is what a pre-0.1.2 script meant.
610
+ */
611
+ const balancesOf = (owner) => {
612
+ const address = normalizeSuiAddress(owner);
613
+ const matching = [];
614
+ for (const entry of script.balances ?? []) {
615
+ if (entry.owner !== undefined && normalizeSuiAddress(entry.owner) !== address)
616
+ continue;
617
+ const { owner: _owner, ...balance } = entry;
618
+ matching.push(balance);
619
+ }
620
+ return matching;
621
+ };
547
622
  const coinsOf = (owner, coinType) => {
548
623
  const address = normalizeSuiAddress(owner);
549
624
  const wanted = normalizeStructTag(`0x2::coin::Coin<${coinType ?? SUI_TYPE_ARG}>`);
@@ -585,11 +660,30 @@ const makeInternal = (script, state) => {
585
660
  const core = options.client?.core ?? client.core;
586
661
  const { referenceGasPrice } = await core.getReferenceGasPrice({});
587
662
  // A real transport's resolver simulates to choose the gas budget, which is
588
- // why `Tx.build` can fail with `SimulationFailed`. The fake does it only
589
- // when a test scripted it.
590
- const budgetOutcome = state.scripts.buildSimulate.length === 0
591
- ? undefined
592
- : next("buildSimulate");
663
+ // why `Tx.build` can fail with `SimulationFailed` and why "building
664
+ // always simulates" has to be observable here. The call is **recorded**
665
+ // whether or not a script drives it, so `SuiTest.calls("simulateTransaction")`
666
+ // counts the build's simulate the way it counts every other call; before
667
+ // 0.1.2 a build on the fake recorded nothing and a conversion moving onto
668
+ // this build could not see its own simulate at all.
669
+ //
670
+ // Which script answers it: `buildSimulate` when there is one — the slot
671
+ // that exists precisely for the resolver's simulate — and otherwise the
672
+ // ordered `simulate` script, so `simulate: [FakeOutcome.failWith(...)]`
673
+ // surfaces through `Tx.build` as the `SimulationFailed` a node would give.
674
+ // With neither, the resolver sets the budget from `script.gasBudget` and
675
+ // the recorded call is the only trace.
676
+ record("simulateTransaction", {
677
+ transaction: undefined,
678
+ checks: "enabled",
679
+ resolver: true,
680
+ signal: lastSignal
681
+ });
682
+ const budgetOutcome = state.scripts.buildSimulate.length > 0
683
+ ? next("buildSimulate")
684
+ : state.scripts.simulate.length > 0
685
+ ? next("simulate")
686
+ : undefined;
593
687
  if (budgetOutcome !== undefined) {
594
688
  if (budgetOutcome._tag === "timeoutThen") {
595
689
  // Never settles until the build is interrupted, which is exactly what a
@@ -657,15 +751,53 @@ const makeInternal = (script, state) => {
657
751
  await proceed();
658
752
  };
659
753
  /**
660
- * Refuses a submission that carries fewer signatures than the bytes name
661
- * distinct signing addresses.
754
+ * Refuses a submission whose signatures do not cover the addresses the bytes
755
+ * name as signers, the way a validator refuses it.
662
756
  *
663
757
  * A transaction takes a signature from its sender and, when its gas owner is
664
758
  * someone else, from that party too; one signature on sponsored bytes is
665
- * something a validator rejects outright. The fake used to accept it, which
666
- * is how a whole family of sponsorship and locking tests passed while
667
- * describing a transaction that could never land.
759
+ * something a validator rejects outright. Two checks, in order: the **count**
760
+ * (fewer signatures than distinct signers), and the **addresses** every
761
+ * signature whose public key can be read is turned back into the address it
762
+ * signs as, and a required address nobody signed for is a refusal. A
763
+ * signature the SDK cannot parse (a multisig, a zkLogin proof, a fixture that
764
+ * is not a real signature) makes the address check stand down, so only the
765
+ * count applies there.
766
+ *
767
+ * **It rejects the way a gRPC node does**: an `RpcError` carrying
768
+ * `INVALID_ARGUMENT`, which `mapSdkError` turns into
769
+ * `TransportError { retryable: false, status: "INVALID_ARGUMENT" }` and which
770
+ * `Tx.submit` reports as-is rather than reconciling. A plain `Error` here was
771
+ * classified as a retryable transport failure, so `Tx.submit` retried it,
772
+ * reconciled, and a scripted `getTransaction: succeed` reported a **success**
773
+ * for bytes no validator would have accepted.
774
+ *
775
+ * A sponsored submission against the fake therefore needs `Tx.cosign` (or
776
+ * `Tx.run`'s `sponsor`) first, exactly as it does against a node.
668
777
  */
778
+ const signerAddressesOf = (signatures) => {
779
+ const addresses = [];
780
+ for (const signature of signatures) {
781
+ try {
782
+ const parsed = parseSerializedSignature(signature);
783
+ if (parsed.signatureScheme === "MultiSig" || parsed.signatureScheme === "ZkLogin") {
784
+ return undefined;
785
+ }
786
+ addresses.push(normalizeSuiAddress(publicKeyFromRawBytes(parsed.signatureScheme, parsed.publicKey).toSuiAddress()));
787
+ }
788
+ catch {
789
+ // A multisig, a zkLogin signature, or a fixture that is not a real
790
+ // signature at all: the address check cannot speak about this set.
791
+ return undefined;
792
+ }
793
+ }
794
+ return addresses;
795
+ };
796
+ const refuse = (message) => {
797
+ const error = new Error(`fake validator: ${message}`);
798
+ Object.assign(error, { code: "INVALID_ARGUMENT", name: "RpcError" });
799
+ throw error;
800
+ };
669
801
  const assertSignatures = (bytes, signatures) => {
670
802
  let required;
671
803
  try {
@@ -678,10 +810,22 @@ const makeInternal = (script, state) => {
678
810
  return;
679
811
  }
680
812
  if (signatures.length < required.length) {
681
- const error = new Error(`fake validator: these bytes name ${required.length} signer(s) (${required.join(", ")})` +
682
- ` and carry ${signatures.length} signature(s)`);
683
- Object.assign(error, { code: "INVALID_ARGUMENT", name: "RpcError" });
684
- throw error;
813
+ refuse(`these bytes name ${required.length} signer(s) (${required.join(", ")})` +
814
+ ` and carry ${signatures.length} signature(s).` +
815
+ (required.length > 1
816
+ ? " A sponsored transaction is signed by both parties: Tx.cosign the" +
817
+ " signed bytes with the gas owner's signer, or use Tx.run(recipe," +
818
+ " { signer, sponsor })."
819
+ : ""));
820
+ }
821
+ const signed = signerAddressesOf(signatures);
822
+ if (signed === undefined)
823
+ return;
824
+ const missing = required.filter((address) => !signed.includes(address));
825
+ if (missing.length > 0) {
826
+ refuse(`these bytes name ${missing.join(", ")} as (a) signer(s) and carry no signature` +
827
+ ` from ${missing.length === 1 ? "that address" : "those addresses"}` +
828
+ ` (the signatures are from ${signed.join(", ")})`);
685
829
  }
686
830
  };
687
831
  /** The digest of the bytes that were handed to us, as the network derives it. */
@@ -693,9 +837,36 @@ const makeInternal = (script, state) => {
693
837
  return fakeDigest(state.calls.length + 1);
694
838
  }
695
839
  };
840
+ /**
841
+ * The scripted read failure for this `getObject` call, if a script asked for
842
+ * one. `succeed` (and an exhausted or absent script) means "serve the object
843
+ * map", which is the normal path.
844
+ */
845
+ const readOutcome = async (options) => {
846
+ if (state.scripts.getObject.length === 0)
847
+ return;
848
+ const outcome = next("getObject");
849
+ if (outcome === undefined)
850
+ return;
851
+ switch (outcome._tag) {
852
+ case "transportError":
853
+ throw rpcError(outcome.status);
854
+ case "notFound":
855
+ throw new ObjectError("notFound", `object ${options.objectId} does not exist`, {
856
+ reason: "notFound",
857
+ objectId: normalizeSuiAddress(options.objectId)
858
+ });
859
+ case "timeoutThen":
860
+ await pending("getObject", options);
861
+ return;
862
+ default:
863
+ return;
864
+ }
865
+ };
696
866
  const core = {
697
867
  getObject: async (options) => {
698
868
  record("getObject", options);
869
+ await readOutcome(options);
699
870
  return { object: toSdkObject(lookup(options.objectId), options.include) };
700
871
  },
701
872
  getObjects: async (options) => {
@@ -781,15 +952,15 @@ const makeInternal = (script, state) => {
781
952
  },
782
953
  getBalance: async (options) => {
783
954
  record("getBalance", options);
784
- const coinType = options.coinType ?? "0x2::sui::SUI";
785
- const balance = (script.balances ?? []).find((item) => item.coinType === coinType);
955
+ const coinType = options.coinType ?? SUI_TYPE_ARG;
956
+ const balance = balancesOf(options.owner).find((item) => sameCoinType(item.coinType, coinType));
786
957
  return {
787
958
  balance: balance ?? { coinType, balance: "0", coinBalance: "0", addressBalance: "0" }
788
959
  };
789
960
  },
790
961
  listBalances: async (options) => {
791
962
  record("listBalances", options);
792
- const result = page(script.balances ?? [], options.cursor, options.limit);
963
+ const result = page(balancesOf(options.owner), options.cursor, options.limit);
793
964
  return {
794
965
  balances: result.items,
795
966
  hasNextPage: result.hasNextPage,
@@ -1 +1 @@
1
- {"version":3,"file":"SuiCoreFake.js","sourceRoot":"","sources":["../../src/services/SuiCoreFake.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SuiCoreFake.js","sourceRoot":"","sources":["../../src/services/SuiCoreFake.ts"],"names":[],"mappings":"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"}