@typeberry/lib 0.5.4-9233977 → 0.5.4-b101fe6

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 (71) hide show
  1. package/package.json +1 -1
  2. package/packages/core/utils/compatibility.d.ts +0 -1
  3. package/packages/core/utils/compatibility.d.ts.map +1 -1
  4. package/packages/core/utils/compatibility.js +1 -2
  5. package/packages/core/utils/compatibility.test.js +6 -10
  6. package/packages/jam/database-lmdb/states.test.js +3 -5
  7. package/packages/jam/jam-host-calls/accumulate/bless.d.ts.map +1 -1
  8. package/packages/jam/jam-host-calls/accumulate/bless.js +6 -10
  9. package/packages/jam/jam-host-calls/accumulate/bless.test.js +32 -72
  10. package/packages/jam/jam-host-calls/accumulate/new.d.ts.map +1 -1
  11. package/packages/jam/jam-host-calls/accumulate/new.js +2 -4
  12. package/packages/jam/jam-host-calls/accumulate/new.test.js +4 -5
  13. package/packages/jam/jam-host-calls/general/fetch.d.ts +1 -57
  14. package/packages/jam/jam-host-calls/general/fetch.d.ts.map +1 -1
  15. package/packages/jam/jam-host-calls/general/fetch.js +6 -29
  16. package/packages/jam/jam-host-calls/general/fetch.test.js +2 -58
  17. package/packages/jam/state/privileged-services.d.ts +1 -1
  18. package/packages/jam/state/privileged-services.d.ts.map +1 -1
  19. package/packages/jam/state/privileged-services.js +1 -6
  20. package/packages/jam/state/service.d.ts +1 -1
  21. package/packages/jam/state/service.d.ts.map +1 -1
  22. package/packages/jam/state/statistics.d.ts +0 -8
  23. package/packages/jam/state/statistics.d.ts.map +1 -1
  24. package/packages/jam/state/statistics.js +14 -44
  25. package/packages/jam/state/statistics.test.js +1 -8
  26. package/packages/jam/state/test.utils.d.ts +1 -1
  27. package/packages/jam/state/test.utils.d.ts.map +1 -1
  28. package/packages/jam/state/test.utils.js +4 -22
  29. package/packages/jam/state-json/accounts.d.ts +10 -0
  30. package/packages/jam/state-json/accounts.d.ts.map +1 -1
  31. package/packages/jam/state-json/accounts.js +47 -19
  32. package/packages/jam/state-json/dump.d.ts.map +1 -1
  33. package/packages/jam/state-json/dump.js +5 -9
  34. package/packages/jam/state-json/dump.test.js +2 -10
  35. package/packages/jam/state-json/statistics.d.ts +1 -1
  36. package/packages/jam/state-json/statistics.d.ts.map +1 -1
  37. package/packages/jam/state-json/statistics.js +1 -13
  38. package/packages/jam/state-merkleization/in-memory-state-codec.d.ts +0 -2
  39. package/packages/jam/state-merkleization/in-memory-state-codec.d.ts.map +1 -1
  40. package/packages/jam/state-merkleization/serialize.d.ts +4 -4
  41. package/packages/jam/state-merkleization/serialize.d.ts.map +1 -1
  42. package/packages/jam/state-merkleization/serialize.js +5 -8
  43. package/packages/jam/state-merkleization/serialized-state-view.d.ts.map +1 -1
  44. package/packages/jam/state-merkleization/state-entries.test.js +1 -7
  45. package/packages/jam/transition/accumulate/accumulate-state.d.ts +1 -2
  46. package/packages/jam/transition/accumulate/accumulate-state.d.ts.map +1 -1
  47. package/packages/jam/transition/accumulate/accumulate-utils.d.ts.map +1 -1
  48. package/packages/jam/transition/accumulate/accumulate-utils.js +2 -6
  49. package/packages/jam/transition/accumulate/accumulate-utils.test.js +2 -4
  50. package/packages/jam/transition/accumulate/accumulate.d.ts.map +1 -1
  51. package/packages/jam/transition/accumulate/accumulate.js +11 -20
  52. package/packages/jam/transition/accumulate/index.d.ts +0 -1
  53. package/packages/jam/transition/accumulate/index.d.ts.map +1 -1
  54. package/packages/jam/transition/accumulate/index.js +0 -1
  55. package/packages/jam/transition/chain-stf.d.ts +3 -5
  56. package/packages/jam/transition/chain-stf.d.ts.map +1 -1
  57. package/packages/jam/transition/chain-stf.js +5 -29
  58. package/packages/jam/transition/externalities/accumulate-externalities.d.ts.map +1 -1
  59. package/packages/jam/transition/externalities/accumulate-externalities.js +22 -49
  60. package/packages/jam/transition/externalities/accumulate-externalities.test.js +8 -72
  61. package/packages/jam/transition/externalities/fetch-externalities.d.ts +3 -22
  62. package/packages/jam/transition/externalities/fetch-externalities.d.ts.map +1 -1
  63. package/packages/jam/transition/externalities/fetch-externalities.js +3 -55
  64. package/packages/jam/transition/externalities/fetch-externalities.test.js +199 -112
  65. package/packages/jam/transition/statistics.d.ts +0 -7
  66. package/packages/jam/transition/statistics.d.ts.map +1 -1
  67. package/packages/jam/transition/statistics.js +2 -11
  68. package/packages/jam/transition/statistics.test.js +0 -40
  69. package/packages/jam/transition/accumulate/deferred-transfers.d.ts +0 -36
  70. package/packages/jam/transition/accumulate/deferred-transfers.d.ts.map +0 -1
  71. package/packages/jam/transition/accumulate/deferred-transfers.js +0 -94
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typeberry/lib",
3
- "version": "0.5.4-9233977",
3
+ "version": "0.5.4-b101fe6",
4
4
  "description": "Typeberry Library",
5
5
  "main": "./bin/lib/index.js",
6
6
  "types": "./bin/lib/index.d.ts",
@@ -1,5 +1,4 @@
1
1
  export declare enum GpVersion {
2
- V0_7_0 = "0.7.0",
3
2
  V0_7_1 = "0.7.1",
4
3
  V0_7_2 = "0.7.2"
5
4
  }
@@ -1 +1 @@
1
- {"version":3,"file":"compatibility.d.ts","sourceRoot":"","sources":["../../../../../packages/core/utils/compatibility.ts"],"names":[],"mappings":"AAEA,oBAAY,SAAS;IACnB,MAAM,UAAU;IAChB,MAAM,UAAU;IAChB,MAAM,UAAU;CACjB;AAED,oBAAY,SAAS;IACnB,SAAS,cAAc;CACxB;AAKD,eAAO,MAAM,aAAa,sBAAsB,CAAC;AACjD,eAAO,MAAM,eAAe,mBAAmB,CAAC;AAEhD,eAAO,IAAI,eAAe,WAAyD,CAAC;AACpF,eAAO,IAAI,aAAa,WAAqD,CAAC;AA8B9E,qBAAa,aAAa;IACxB,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS;IAInC,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,SAAS;IAIrC,MAAM,CAAC,EAAE,CAAC,GAAG,OAAO,EAAE,SAAS,EAAE;IAOjC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,SAAS;IASpD,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,SAAS;IAQ1C;;;;;;OAMG;IACH,MAAM,CAAC,sBAAsB,CAAC,CAAC,EAAE,EAC/B,QAAQ,EACR,QAAQ,GACT,EAAE;QACD,QAAQ,EAAE,CAAC,CAAC;QACZ,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;KACzC,GAAG,CAAC;CASN"}
1
+ {"version":3,"file":"compatibility.d.ts","sourceRoot":"","sources":["../../../../../packages/core/utils/compatibility.ts"],"names":[],"mappings":"AAEA,oBAAY,SAAS;IACnB,MAAM,UAAU;IAChB,MAAM,UAAU;CACjB;AAED,oBAAY,SAAS;IACnB,SAAS,cAAc;CACxB;AAKD,eAAO,MAAM,aAAa,sBAAsB,CAAC;AACjD,eAAO,MAAM,eAAe,mBAAmB,CAAC;AAEhD,eAAO,IAAI,eAAe,WAAyD,CAAC;AACpF,eAAO,IAAI,aAAa,WAAqD,CAAC;AA8B9E,qBAAa,aAAa;IACxB,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS;IAInC,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,SAAS;IAIrC,MAAM,CAAC,EAAE,CAAC,GAAG,OAAO,EAAE,SAAS,EAAE;IAOjC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,SAAS;IASpD,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,SAAS;IAQ1C;;;;;;OAMG;IACH,MAAM,CAAC,sBAAsB,CAAC,CAAC,EAAE,EAC/B,QAAQ,EACR,QAAQ,GACT,EAAE;QACD,QAAQ,EAAE,CAAC,CAAC;QACZ,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;KACzC,GAAG,CAAC;CASN"}
@@ -1,7 +1,6 @@
1
1
  import { env } from "./env.js";
2
2
  export var GpVersion;
3
3
  (function (GpVersion) {
4
- GpVersion["V0_7_0"] = "0.7.0";
5
4
  GpVersion["V0_7_1"] = "0.7.1";
6
5
  GpVersion["V0_7_2"] = "0.7.2";
7
6
  })(GpVersion || (GpVersion = {}));
@@ -10,7 +9,7 @@ export var TestSuite;
10
9
  TestSuite["W3F_DAVXY"] = "w3f-davxy";
11
10
  })(TestSuite || (TestSuite = {}));
12
11
  // NOTE: Also acts as a supported versions
13
- const ALL_VERSIONS_IN_ORDER = [GpVersion.V0_7_0, GpVersion.V0_7_1, GpVersion.V0_7_2];
12
+ const ALL_VERSIONS_IN_ORDER = [GpVersion.V0_7_1, GpVersion.V0_7_2];
14
13
  export const DEFAULT_SUITE = TestSuite.W3F_DAVXY;
15
14
  export const DEFAULT_VERSION = GpVersion.V0_7_2;
16
15
  export let CURRENT_VERSION = parseCurrentVersion(env.GP_VERSION) ?? DEFAULT_VERSION;
@@ -15,22 +15,21 @@ describe("GrayPaper compatibility", { concurrency: false }, () => {
15
15
  assert.equal(Compatibility.is(defaultVersion), true);
16
16
  });
17
17
  it("Should check with env variable if env variable was set", () => {
18
- const gpVersion = GpVersion.V0_7_0;
18
+ const gpVersion = GpVersion.V0_7_2;
19
19
  Compatibility.override(gpVersion);
20
20
  assert.equal(Compatibility.is(gpVersion), true);
21
21
  });
22
22
  it("Should check an order of versions (isGreaterOrEqual)", () => {
23
- const gpVersion = GpVersion.V0_7_0;
23
+ const gpVersion = GpVersion.V0_7_1;
24
24
  Compatibility.override(gpVersion);
25
- assert.equal(Compatibility.isGreaterOrEqual(GpVersion.V0_7_0), true);
26
- assert.equal(Compatibility.isGreaterOrEqual(GpVersion.V0_7_1), false);
25
+ assert.equal(Compatibility.isGreaterOrEqual(GpVersion.V0_7_1), true);
27
26
  assert.equal(Compatibility.isGreaterOrEqual(GpVersion.V0_7_2), false);
28
27
  });
29
28
  it("Should order values by versions and get the one for highest version matching", () => {
30
29
  const gpVersion = GpVersion.V0_7_1;
31
30
  Compatibility.override(gpVersion);
32
31
  const record = {
33
- [GpVersion.V0_7_0]: "low",
32
+ [GpVersion.V0_7_1]: "low",
34
33
  [GpVersion.V0_7_2]: "high",
35
34
  };
36
35
  const result = Compatibility.selectIfGreaterOrEqual({ fallback: "default", versions: record });
@@ -40,7 +39,6 @@ describe("GrayPaper compatibility", { concurrency: false }, () => {
40
39
  const gpVersion = GpVersion.V0_7_1;
41
40
  Compatibility.override(gpVersion);
42
41
  const record = {
43
- [GpVersion.V0_7_0]: "low",
44
42
  [GpVersion.V0_7_1]: "mid",
45
43
  [GpVersion.V0_7_2]: "high",
46
44
  };
@@ -51,7 +49,6 @@ describe("GrayPaper compatibility", { concurrency: false }, () => {
51
49
  const gpVersion = GpVersion.V0_7_2;
52
50
  Compatibility.override(gpVersion);
53
51
  const record = {
54
- [GpVersion.V0_7_0]: "low",
55
52
  [GpVersion.V0_7_1]: "mid",
56
53
  [GpVersion.V0_7_2]: "high",
57
54
  };
@@ -59,17 +56,16 @@ describe("GrayPaper compatibility", { concurrency: false }, () => {
59
56
  assert.equal(result, "high");
60
57
  });
61
58
  it("Should return default if no version is greater or equal", () => {
62
- const gpVersion = GpVersion.V0_7_0;
59
+ const gpVersion = GpVersion.V0_7_1;
63
60
  Compatibility.override(gpVersion);
64
61
  const record = {
65
- [GpVersion.V0_7_1]: "mid",
66
62
  [GpVersion.V0_7_2]: "high",
67
63
  };
68
64
  const result = Compatibility.selectIfGreaterOrEqual({ fallback: "default", versions: record });
69
65
  assert.equal(result, "default");
70
66
  });
71
67
  it("Should return default if record is empty", () => {
72
- const gpVersion = GpVersion.V0_7_0;
68
+ const gpVersion = GpVersion.V0_7_1;
73
69
  Compatibility.override(gpVersion);
74
70
  const result = Compatibility.selectIfGreaterOrEqual({ fallback: "default", versions: {} });
75
71
  assert.equal(result, "default");
@@ -6,13 +6,13 @@ import { Bytes, BytesBlob } from "#@typeberry/bytes";
6
6
  import { SortedSet } from "#@typeberry/collections";
7
7
  import { tinyChainSpec } from "#@typeberry/config";
8
8
  import { Blake2b, HASH_SIZE } from "#@typeberry/hash";
9
- import { MAX_VALUE_U32, tryAsU32, tryAsU64 } from "#@typeberry/numbers";
9
+ import { tryAsU32, tryAsU64 } from "#@typeberry/numbers";
10
10
  import { InMemoryState, LookupHistoryItem, PrivilegedServices, ServiceAccountInfo, tryAsLookupHistorySlots, tryAsPerCore, UpdateService, } from "#@typeberry/state";
11
11
  import { testState } from "#@typeberry/state/test.utils.js";
12
12
  import { StateEntries } from "#@typeberry/state-merkleization";
13
13
  import { InMemoryTrie, leafComparator } from "#@typeberry/trie";
14
14
  import { getBlake2bTrieHasher } from "#@typeberry/trie/hasher.js";
15
- import { Compatibility, deepEqual, GpVersion, OK, Result } from "#@typeberry/utils";
15
+ import { deepEqual, OK, Result } from "#@typeberry/utils";
16
16
  import { LmdbRoot } from "./root.js";
17
17
  import { LmdbStates } from "./states.js";
18
18
  let blake2bTrieHasher;
@@ -73,9 +73,7 @@ describe("LMDB States database", () => {
73
73
  manager: tryAsServiceId(1),
74
74
  assigners: tryAsPerCore(new Array(spec.coresCount).fill(tryAsServiceId(2)), spec),
75
75
  delegator: tryAsServiceId(3),
76
- registrar: Compatibility.isGreaterOrEqual(GpVersion.V0_7_1)
77
- ? tryAsServiceId(4)
78
- : tryAsServiceId(MAX_VALUE_U32),
76
+ registrar: tryAsServiceId(4),
79
77
  autoAccumulateServices: new Map(),
80
78
  }),
81
79
  updated: new Map([
@@ -1 +1 @@
1
- {"version":3,"file":"bless.d.ts","sourceRoot":"","sources":["../../../../../../packages/jam/jam-host-calls/accumulate/bless.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,SAAS,EAAmC,MAAM,kBAAkB,CAAC;AAEpG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACpG,OAAO,EAAE,YAAY,EAAsC,MAAM,2BAA2B,CAAC;AAC7F,OAAO,EAAE,KAAK,WAAW,EAAiB,MAAM,0BAA0B,CAAC;AAU3E,OAAO,EAAE,KAAK,YAAY,EAAyB,MAAM,mCAAmC,CAAC;AAkB7F;;;;GAIG;AACH,qBAAa,KAAM,YAAW,eAAe;aAQzB,gBAAgB,EAAE,SAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAT5B,KAAK,iIAA0B;IAC/B,YAAY,4HAAqB;IACjC,eAAe,uEAE8B;gBAG3B,gBAAgB,EAAE,SAAS,EAC1B,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,SAAS;IAGjC,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,SAAS,GAAG,YAAY,CAAC;CAoFrH"}
1
+ {"version":3,"file":"bless.d.ts","sourceRoot":"","sources":["../../../../../../packages/jam/jam-host-calls/accumulate/bless.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,SAAS,EAAmB,MAAM,kBAAkB,CAAC;AAEpF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACpG,OAAO,EAAE,YAAY,EAAsC,MAAM,2BAA2B,CAAC;AAC7F,OAAO,EAAE,KAAK,WAAW,EAAiB,MAAM,0BAA0B,CAAC;AAG3E,OAAO,EAAE,KAAK,YAAY,EAAyB,MAAM,mCAAmC,CAAC;AAkB7F;;;;GAIG;AACH,qBAAa,KAAM,YAAW,eAAe;aAMzB,gBAAgB,EAAE,SAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAP5B,KAAK,iIAA0B;IAC/B,YAAY,4HAAqB;IACjC,eAAe,uEAAgD;gBAG7C,gBAAgB,EAAE,SAAS,EAC1B,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,SAAS;IAGjC,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,SAAS,GAAG,YAAY,CAAC;CAkFrH"}
@@ -1,10 +1,10 @@
1
- import { tryAsServiceGas, tryAsServiceId } from "#@typeberry/block";
1
+ import { tryAsServiceGas } from "#@typeberry/block";
2
2
  import { codec, Decoder, tryAsExactBytes } from "#@typeberry/codec";
3
3
  import { tryAsU64 } from "#@typeberry/numbers";
4
4
  import { PvmExecution, traceRegisters, tryAsHostCallIndex } from "#@typeberry/pvm-host-calls";
5
5
  import { tryAsSmallGas } from "#@typeberry/pvm-interface";
6
6
  import { tryAsPerCore } from "#@typeberry/state";
7
- import { asOpaqueType, assertNever, Compatibility, GpVersion, lazyInspect, safeAllocUint8Array, } from "#@typeberry/utils";
7
+ import { asOpaqueType, assertNever, lazyInspect, safeAllocUint8Array } from "#@typeberry/utils";
8
8
  import { UpdatePrivilegesError } from "../externalities/partial-state.js";
9
9
  import { HostCallResult } from "../general/results.js";
10
10
  import { logger } from "../logger.js";
@@ -25,9 +25,7 @@ export class Bless {
25
25
  chainSpec;
26
26
  index = tryAsHostCallIndex(14);
27
27
  basicGasCost = tryAsSmallGas(10);
28
- tracedRegisters = Compatibility.isGreaterOrEqual(GpVersion.V0_7_1)
29
- ? traceRegisters(IN_OUT_REG, 8, 9, 10, 11, 12)
30
- : traceRegisters(IN_OUT_REG, 8, 9, 10, 11);
28
+ tracedRegisters = traceRegisters(IN_OUT_REG, 8, 9, 10, 11, 12);
31
29
  constructor(currentServiceId, partialState, chainSpec) {
32
30
  this.currentServiceId = currentServiceId;
33
31
  this.partialState = partialState;
@@ -41,13 +39,11 @@ export class Bless {
41
39
  // `v`: manages validator keys
42
40
  const delegator = getServiceId(regs.get(9));
43
41
  // `r`: manages creation of new services with id within protected range
44
- const registrar = Compatibility.isGreaterOrEqual(GpVersion.V0_7_1)
45
- ? getServiceId(regs.get(10))
46
- : tryAsServiceId(2 ** 32 - 1);
42
+ const registrar = getServiceId(regs.get(10));
47
43
  // `o`: memory offset
48
- const sourceStart = Compatibility.isGreaterOrEqual(GpVersion.V0_7_1) ? regs.get(11) : regs.get(10);
44
+ const sourceStart = regs.get(11);
49
45
  // `n`: number of items in the auto-accumulate dictionary
50
- const numberOfItems = Compatibility.isGreaterOrEqual(GpVersion.V0_7_1) ? regs.get(12) : regs.get(11);
46
+ const numberOfItems = regs.get(12);
51
47
  /*
52
48
  * `z`: array of key-value pairs serviceId -> gas that auto-accumulate every block
53
49
  * https://graypaper.fluffylabs.dev/#/7e6ff6a/368100368100?v=0.6.7
@@ -3,7 +3,7 @@ import { describe, it } from "node:test";
3
3
  import { tryAsServiceGas, tryAsServiceId } from "#@typeberry/block";
4
4
  import { codec, Encoder } from "#@typeberry/codec";
5
5
  import { tinyChainSpec } from "#@typeberry/config";
6
- import { MAX_VALUE_U32, MAX_VALUE_U64, tryAsU64 } from "#@typeberry/numbers";
6
+ import { MAX_VALUE_U64, tryAsU64 } from "#@typeberry/numbers";
7
7
  import { HostCallMemory, HostCallRegisters, PvmExecution } from "#@typeberry/pvm-host-calls";
8
8
  import { tryAsGas } from "#@typeberry/pvm-interface";
9
9
  import { gasCounter } from "#@typeberry/pvm-interpreter/gas.js";
@@ -11,7 +11,7 @@ import { MemoryBuilder, tryAsMemoryIndex } from "#@typeberry/pvm-interpreter/mem
11
11
  import { PAGE_SIZE } from "#@typeberry/pvm-interpreter/memory/memory-consts.js";
12
12
  import { tryAsSbrkIndex } from "#@typeberry/pvm-interpreter/memory/memory-index.js";
13
13
  import { codecPerCore, tryAsPerCore } from "#@typeberry/state";
14
- import { Compatibility, deepEqual, GpVersion, Result } from "#@typeberry/utils";
14
+ import { deepEqual, Result } from "#@typeberry/utils";
15
15
  import { UpdatePrivilegesError } from "../externalities/partial-state.js";
16
16
  import { PartialStateMock } from "../externalities/partial-state-mock.js";
17
17
  import { HostCallResult } from "../general/results.js";
@@ -23,8 +23,8 @@ const MANAGER_REG = 7;
23
23
  const AUTHORIZATION_REG = 8;
24
24
  const VALIDATOR_REG = 9;
25
25
  const REGISTRAR_REG = 10;
26
- const DICTIONARY_START = Compatibility.isGreaterOrEqual(GpVersion.V0_7_1) ? 11 : 10;
27
- const DICTIONARY_COUNT = Compatibility.isGreaterOrEqual(GpVersion.V0_7_1) ? 12 : 11;
26
+ const DICTIONARY_START = 11;
27
+ const DICTIONARY_COUNT = 12;
28
28
  function prepareServiceGasMap() {
29
29
  const entries = [];
30
30
  entries.push([tryAsServiceId(10_000), tryAsServiceGas(15_000)]);
@@ -68,7 +68,6 @@ function prepareRegsAndMemory(entries, authorizerData, { skipDictionary = false,
68
68
  };
69
69
  }
70
70
  describe("HostCalls: Bless", () => {
71
- const itPost071 = Compatibility.isGreaterOrEqual(GpVersion.V0_7_1) ? it : it.skip;
72
71
  it("should set new privileged services and auto-accumulate services", async () => {
73
72
  const accumulate = new PartialStateMock();
74
73
  const serviceId = tryAsServiceId(10_000);
@@ -81,28 +80,15 @@ describe("HostCalls: Bless", () => {
81
80
  // then
82
81
  assert.deepStrictEqual(result, undefined);
83
82
  assert.deepStrictEqual(registers.get(RESULT_REG), HostCallResult.OK);
84
- if (Compatibility.isGreaterOrEqual(GpVersion.V0_7_1)) {
85
- deepEqual(accumulate.privilegedServices, [
86
- [
87
- tryAsServiceId(5),
88
- tryAsPerCore([tryAsServiceId(10), tryAsServiceId(15)], tinyChainSpec),
89
- tryAsServiceId(20),
90
- tryAsServiceId(42),
91
- new Map(entries),
92
- ],
93
- ]);
94
- }
95
- else {
96
- deepEqual(accumulate.privilegedServices, [
97
- [
98
- tryAsServiceId(5),
99
- tryAsPerCore([tryAsServiceId(10), tryAsServiceId(15)], tinyChainSpec),
100
- tryAsServiceId(20),
101
- tryAsServiceId(MAX_VALUE_U32),
102
- new Map(entries),
103
- ],
104
- ]);
105
- }
83
+ deepEqual(accumulate.privilegedServices, [
84
+ [
85
+ tryAsServiceId(5),
86
+ tryAsPerCore([tryAsServiceId(10), tryAsServiceId(15)], tinyChainSpec),
87
+ tryAsServiceId(20),
88
+ tryAsServiceId(42),
89
+ new Map(entries),
90
+ ],
91
+ ]);
106
92
  });
107
93
  it("should return panic when dictionary is not readable", async () => {
108
94
  const accumulate = new PartialStateMock();
@@ -143,28 +129,15 @@ describe("HostCalls: Bless", () => {
143
129
  // then
144
130
  assert.deepStrictEqual(result, undefined);
145
131
  assert.deepStrictEqual(registers.get(RESULT_REG), HostCallResult.OK);
146
- if (Compatibility.isGreaterOrEqual(GpVersion.V0_7_1)) {
147
- deepEqual(accumulate.privilegedServices, [
148
- [
149
- tryAsServiceId(5),
150
- tryAsPerCore([tryAsServiceId(10), tryAsServiceId(15)], tinyChainSpec),
151
- tryAsServiceId(20),
152
- tryAsServiceId(42),
153
- new Map(entries),
154
- ],
155
- ]);
156
- }
157
- else {
158
- deepEqual(accumulate.privilegedServices, [
159
- [
160
- tryAsServiceId(5),
161
- tryAsPerCore([tryAsServiceId(10), tryAsServiceId(15)], tinyChainSpec),
162
- tryAsServiceId(20),
163
- tryAsServiceId(MAX_VALUE_U32),
164
- new Map(entries),
165
- ],
166
- ]);
167
- }
132
+ deepEqual(accumulate.privilegedServices, [
133
+ [
134
+ tryAsServiceId(5),
135
+ tryAsPerCore([tryAsServiceId(10), tryAsServiceId(15)], tinyChainSpec),
136
+ tryAsServiceId(20),
137
+ tryAsServiceId(42),
138
+ new Map(entries),
139
+ ],
140
+ ]);
168
141
  });
169
142
  it("should auto-accumulate services when dictionary contains duplicates", async () => {
170
143
  const accumulate = new PartialStateMock();
@@ -179,28 +152,15 @@ describe("HostCalls: Bless", () => {
179
152
  // then
180
153
  assert.deepStrictEqual(result, undefined);
181
154
  assert.deepStrictEqual(registers.get(RESULT_REG), HostCallResult.OK);
182
- if (Compatibility.isGreaterOrEqual(GpVersion.V0_7_1)) {
183
- deepEqual(accumulate.privilegedServices, [
184
- [
185
- tryAsServiceId(5),
186
- tryAsPerCore([tryAsServiceId(10), tryAsServiceId(15)], tinyChainSpec),
187
- tryAsServiceId(20),
188
- tryAsServiceId(42),
189
- new Map(entries),
190
- ],
191
- ]);
192
- }
193
- else {
194
- deepEqual(accumulate.privilegedServices, [
195
- [
196
- tryAsServiceId(5),
197
- tryAsPerCore([tryAsServiceId(10), tryAsServiceId(15)], tinyChainSpec),
198
- tryAsServiceId(20),
199
- tryAsServiceId(MAX_VALUE_U32),
200
- new Map(entries),
201
- ],
202
- ]);
203
- }
155
+ deepEqual(accumulate.privilegedServices, [
156
+ [
157
+ tryAsServiceId(5),
158
+ tryAsPerCore([tryAsServiceId(10), tryAsServiceId(15)], tinyChainSpec),
159
+ tryAsServiceId(20),
160
+ tryAsServiceId(42),
161
+ new Map(entries),
162
+ ],
163
+ ]);
204
164
  });
205
165
  it("should return HUH when service is unprivileged", async () => {
206
166
  const accumulate = new PartialStateMock();
@@ -247,7 +207,7 @@ describe("HostCalls: Bless", () => {
247
207
  assert.deepStrictEqual(registers.get(RESULT_REG), HostCallResult.WHO);
248
208
  assert.deepStrictEqual(accumulate.privilegedServices, []);
249
209
  });
250
- itPost071("should return WHO if given registrar is invalid", async () => {
210
+ it("should return WHO if given registrar is invalid", async () => {
251
211
  const accumulate = new PartialStateMock();
252
212
  accumulate.privilegedServicesResponse = Result.error(UpdatePrivilegesError.InvalidServiceId, () => "Test: invalid registrar service ID for bless");
253
213
  const serviceId = tryAsServiceId(11_000);
@@ -1 +1 @@
1
- {"version":3,"file":"new.d.ts","sourceRoot":"","sources":["../../../../../../packages/jam/jam-host-calls/accumulate/new.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAmB,MAAM,kBAAkB,CAAC;AAInE,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACpG,OAAO,EAAE,YAAY,EAAsC,MAAM,2BAA2B,CAAC;AAC7F,OAAO,EAAE,KAAK,WAAW,EAAiB,MAAM,0BAA0B,CAAC;AAE3E,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAMvF;;;;GAIG;AACH,qBAAa,GAAI,YAAW,eAAe;aAQvB,gBAAgB,EAAE,SAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,YAAY;IAR/B,KAAK,iIAA0B;IAC/B,YAAY,4HAAqB;IACjC,eAAe,uEAE8B;gBAG3B,gBAAgB,EAAE,SAAS,EAC1B,YAAY,EAAE,YAAY;IAGvC,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,SAAS,GAAG,YAAY,CAAC;CA0DrH"}
1
+ {"version":3,"file":"new.d.ts","sourceRoot":"","sources":["../../../../../../packages/jam/jam-host-calls/accumulate/new.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAmB,MAAM,kBAAkB,CAAC;AAInE,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACpG,OAAO,EAAE,YAAY,EAAsC,MAAM,2BAA2B,CAAC;AAC7F,OAAO,EAAE,KAAK,WAAW,EAAiB,MAAM,0BAA0B,CAAC;AAE3E,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAMvF;;;;GAIG;AACH,qBAAa,GAAI,YAAW,eAAe;aAMvB,gBAAgB,EAAE,SAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,YAAY;IAN/B,KAAK,iIAA0B;IAC/B,YAAY,4HAAqB;IACjC,eAAe,uEAAgD;gBAG7C,gBAAgB,EAAE,SAAS,EAC1B,YAAY,EAAE,YAAY;IAGvC,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,SAAS,GAAG,YAAY,CAAC;CA0DrH"}
@@ -4,7 +4,7 @@ import { HASH_SIZE } from "#@typeberry/hash";
4
4
  import { tryAsU64 } from "#@typeberry/numbers";
5
5
  import { PvmExecution, traceRegisters, tryAsHostCallIndex } from "#@typeberry/pvm-host-calls";
6
6
  import { tryAsSmallGas } from "#@typeberry/pvm-interface";
7
- import { assertNever, Compatibility, GpVersion, resultToString } from "#@typeberry/utils";
7
+ import { assertNever, resultToString } from "#@typeberry/utils";
8
8
  import { NewServiceError } from "../externalities/partial-state.js";
9
9
  import { HostCallResult } from "../general/results.js";
10
10
  import { logger } from "../logger.js";
@@ -19,9 +19,7 @@ export class New {
19
19
  partialState;
20
20
  index = tryAsHostCallIndex(18);
21
21
  basicGasCost = tryAsSmallGas(10);
22
- tracedRegisters = Compatibility.isGreaterOrEqual(GpVersion.V0_7_1)
23
- ? traceRegisters(IN_OUT_REG, 8, 9, 10, 11, 12)
24
- : traceRegisters(IN_OUT_REG, 8, 9, 10, 11);
22
+ tracedRegisters = traceRegisters(IN_OUT_REG, 8, 9, 10, 11, 12);
25
23
  constructor(currentServiceId, partialState) {
26
24
  this.currentServiceId = currentServiceId;
27
25
  this.partialState = partialState;
@@ -10,7 +10,7 @@ import { gasCounter } from "#@typeberry/pvm-interpreter/gas.js";
10
10
  import { MemoryBuilder, tryAsMemoryIndex } from "#@typeberry/pvm-interpreter/memory/index.js";
11
11
  import { tryAsSbrkIndex } from "#@typeberry/pvm-interpreter/memory/memory-index.js";
12
12
  import { PAGE_SIZE } from "#@typeberry/pvm-interpreter/spi-decoder/memory-conts.js";
13
- import { Compatibility, GpVersion, Result } from "#@typeberry/utils";
13
+ import { Result } from "#@typeberry/utils";
14
14
  import { NewServiceError } from "../externalities/partial-state.js";
15
15
  import { PartialStateMock } from "../externalities/partial-state-mock.js";
16
16
  import { HostCallResult } from "../general/results.js";
@@ -46,7 +46,6 @@ wantedServiceId = tryAsU64(2 ** 32 - 1), { skipCodeHash = false } = {}) {
46
46
  };
47
47
  }
48
48
  describe("HostCalls: New", () => {
49
- const itPost071 = Compatibility.isGreaterOrEqual(GpVersion.V0_7_1) ? it : it.skip;
50
49
  it("should create a new service", async () => {
51
50
  const accumulate = new PartialStateMock();
52
51
  const serviceId = tryAsServiceId(10_000);
@@ -98,7 +97,7 @@ describe("HostCalls: New", () => {
98
97
  assert.deepStrictEqual(registers.get(RESULT_REG), HostCallResult.HUH);
99
98
  assert.deepStrictEqual(accumulate.newServiceCalled.length, 1);
100
99
  });
101
- itPost071("should create a new service with selected id", async () => {
100
+ it("should create a new service with selected id", async () => {
102
101
  const accumulate = new PartialStateMock();
103
102
  const serviceId = tryAsServiceId(10); // service has registrar privilege
104
103
  const n = new New(serviceId, accumulate);
@@ -113,7 +112,7 @@ describe("HostCalls: New", () => {
113
112
  [Bytes.fill(HASH_SIZE, 0x69), 4096n, 2n ** 40n, 2n ** 50n, gratisStorage, 42n],
114
113
  ]);
115
114
  });
116
- itPost071("should create a new service with random id", async () => {
115
+ it("should create a new service with random id", async () => {
117
116
  const accumulate = new PartialStateMock();
118
117
  const serviceId = tryAsServiceId(10_000); // service does not have registrar privilege
119
118
  const n = new New(serviceId, accumulate);
@@ -128,7 +127,7 @@ describe("HostCalls: New", () => {
128
127
  [Bytes.fill(HASH_SIZE, 0x69), 4096n, 2n ** 40n, 2n ** 50n, gratisStorage, 42n],
129
128
  ]);
130
129
  });
131
- itPost071("should fail when trying to set selected id, but service already exists", async () => {
130
+ it("should fail when trying to set selected id, but service already exists", async () => {
132
131
  const accumulate = new PartialStateMock();
133
132
  const serviceId = tryAsServiceId(10);
134
133
  const n = new New(serviceId, accumulate);
@@ -142,19 +142,6 @@ export interface IFetchExternalities {
142
142
  * https://graypaper.fluffylabs.dev/#/9a08063/32f00132f001?v=0.6.6
143
143
  */
144
144
  workItemPayload(workItem: U64): BytesBlob | null;
145
- /**
146
- * Get all accumulation operands (work results?).
147
- *
148
- * Is Authorized: <empty>
149
- * Refine: <empty>
150
- * Accumulate: `E(↕o)`
151
- * On Transfer: <empty>
152
- *
153
- * @deprecated since 0.7.1
154
- *
155
- * https://graypaper.fluffylabs.dev/#/9a08063/32fb0132fb01?v=0.6.6
156
- */
157
- allOperands(): BytesBlob | null;
158
145
  /**
159
146
  * Get all accumulation operands (work results?) and transfers.
160
147
  *
@@ -165,19 +152,6 @@ export interface IFetchExternalities {
165
152
  * https://graypaper.fluffylabs.dev/#/ab2cdbd/314c03314c03?v=0.7.2
166
153
  */
167
154
  allTransfersAndOperands(): BytesBlob | null;
168
- /**
169
- * Get one selected accumulation operand.
170
- *
171
- * Is Authorized: <empty>
172
- * Refine: <empty>
173
- * Accumulate: `E(o[omega_11])`
174
- * On Transfer: <empty>
175
- *
176
- * @deprecated 0.7.1
177
- *
178
- * https://graypaper.fluffylabs.dev/#/9a08063/320202320202?v=0.6.6
179
- */
180
- oneOperand(operandIndex: U64): BytesBlob | null;
181
155
  /**
182
156
  * Get one selected accumulation operand or transfer.
183
157
  *
@@ -188,32 +162,6 @@ export interface IFetchExternalities {
188
162
  * https://graypaper.fluffylabs.dev/#/ab2cdbd/315503315503?v=0.7.2
189
163
  */
190
164
  oneTransferOrOperand(index: U64): BytesBlob | null;
191
- /**
192
- * Inspect all incoming transfers.
193
- *
194
- * Is Authorized: <empty>
195
- * Refine: <empty>
196
- * Accumulate: <empty>
197
- * On Transfer: `E(↕t)`
198
- *
199
- * @deprecated 0.7.1
200
- *
201
- * https://graypaper.fluffylabs.dev/#/9a08063/320c02320c02?v=0.6.6
202
- */
203
- allTransfers(): BytesBlob | null;
204
- /**
205
- * Inspect one particular incoming transfers.
206
- *
207
- * Is Authorized: <empty>
208
- * Refine: <empty>
209
- * Accumulate: <empty>
210
- * On Transfer: `E(t[omega_11])`
211
- *
212
- * @deprecated 0.7.1
213
- *
214
- * https://graypaper.fluffylabs.dev/#/9a08063/321302321302?v=0.6.6
215
- */
216
- oneTransfer(transferIndex: U64): BytesBlob | null;
217
165
  }
218
166
  /**
219
167
  * https://graypaper.fluffylabs.dev/#/7e6ff6a/324000324000?v=0.6.7
@@ -243,11 +191,7 @@ export declare enum FetchKind {
243
191
  AllWorkItems = 11,
244
192
  OneWorkItem = 12,
245
193
  WorkItemPayload = 13,
246
- LegacyAllOperands = 14,
247
194
  AllTransfersAndOperands = 14,
248
- LegacyOneOperand = 15,
249
- OneTransferOrOperand = 15,
250
- LegacyAllTransfers = 16,
251
- LegacyOneTransfer = 17
195
+ OneTransferOrOperand = 15
252
196
  }
253
197
  //# sourceMappingURL=fetch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../../../../packages/jam/jam-host-calls/general/fetch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../../../../packages/jam/jam-host-calls/general/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAA8B,KAAK,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACpG,OAAO,EAAE,YAAY,EAAsC,MAAM,2BAA2B,CAAC;AAC7F,OAAO,EAAE,KAAK,WAAW,EAAiB,MAAM,0BAA0B,CAAC;AAK3E,sBAAsB;AACtB,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,SAAS,IAAI,SAAS,CAAC;IAEvB;;;;;;;;;OASG;IACH,OAAO,IAAI,SAAS,GAAG,IAAI,CAAC;IAE5B;;;;;;;;;;OAUG;IACH,eAAe,IAAI,SAAS,GAAG,IAAI,CAAC;IAEpC;;;;;;;;;;;OAWG;IACH,iBAAiB,CAAC,QAAQ,EAAE,GAAG,GAAG,IAAI,EAAE,KAAK,EAAE,GAAG,GAAG,SAAS,GAAG,IAAI,CAAC;IAEtE;;;;;;;;;;;OAWG;IACH,cAAc,CAAC,QAAQ,EAAE,GAAG,GAAG,IAAI,EAAE,KAAK,EAAE,GAAG,GAAG,SAAS,GAAG,IAAI,CAAC;IAEnE;;;;;;;;;OASG;IACH,WAAW,IAAI,SAAS,GAAG,IAAI,CAAC;IAEhC;;;;;;;;;;OAUG;IACH,UAAU,IAAI,SAAS,GAAG,IAAI,CAAC;IAE/B;;;;;;;;;OASG;IACH,kBAAkB,IAAI,SAAS,GAAG,IAAI,CAAC;IAEvC;;;;;;;;;OASG;IACH,aAAa,IAAI,SAAS,GAAG,IAAI,CAAC;IAElC;;;;;;;;;;OAUG;IACH,YAAY,IAAI,SAAS,GAAG,IAAI,CAAC;IAEjC;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,QAAQ,EAAE,GAAG,GAAG,SAAS,GAAG,IAAI,CAAC;IAE7C;;;;;;;;;OASG;IACH,eAAe,CAAC,QAAQ,EAAE,GAAG,GAAG,SAAS,GAAG,IAAI,CAAC;IAEjD;;;;;;;;OAQG;IACH,uBAAuB,IAAI,SAAS,GAAG,IAAI,CAAC;IAE5C;;;;;;;;OAQG;IACH,oBAAoB,CAAC,KAAK,EAAE,GAAG,GAAG,SAAS,GAAG,IAAI,CAAC;CACpD;AAID;;GAEG;AACH,qBAAa,KAAM,YAAW,eAAe;aAMzB,gBAAgB,EAAE,SAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,KAAK;IANxB,KAAK,iIAAyB;IAC9B,YAAY,4HAAqB;IACjC,eAAe,uEAAgD;gBAG7C,gBAAgB,EAAE,SAAS,EAC1B,KAAK,EAAE,mBAAmB;IAGvC,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,SAAS,GAAG,YAAY,CAAC;IA6BpH,OAAO,CAAC,QAAQ;CA4EjB;AAED,oBAAY,SAAS;IACnB,SAAS,IAAI;IACb,OAAO,IAAI;IACX,eAAe,IAAI;IACnB,uBAAuB,IAAI;IAC3B,YAAY,IAAI;IAChB,oBAAoB,IAAI;IACxB,SAAS,IAAI;IACb,WAAW,IAAI;IACf,UAAU,IAAI;IACd,kBAAkB,IAAI;IACtB,aAAa,KAAK;IAClB,YAAY,KAAK;IACjB,WAAW,KAAK;IAChB,eAAe,KAAK;IACpB,uBAAuB,KAAK;IAC5B,oBAAoB,KAAK;CAC1B"}
@@ -1,7 +1,6 @@
1
1
  import { minU64, tryAsU64 } from "#@typeberry/numbers";
2
2
  import { PvmExecution, traceRegisters, tryAsHostCallIndex } from "#@typeberry/pvm-host-calls";
3
3
  import { tryAsSmallGas } from "#@typeberry/pvm-interface";
4
- import { Compatibility, GpVersion } from "#@typeberry/utils";
5
4
  import { logger } from "../logger.js";
6
5
  import { clampU64ToU32 } from "../utils.js";
7
6
  import { HostCallResult } from "./results.js";
@@ -94,30 +93,12 @@ export class Fetch {
94
93
  const workItem = regs.get(11);
95
94
  return this.fetch.workItemPayload(workItem);
96
95
  }
97
- if (Compatibility.isGreaterOrEqual(GpVersion.V0_7_1)) {
98
- if (kind === FetchKind.AllTransfersAndOperands) {
99
- return this.fetch.allTransfersAndOperands();
100
- }
101
- if (kind === FetchKind.OneTransferOrOperand) {
102
- const index = regs.get(11);
103
- return this.fetch.oneTransferOrOperand(index);
104
- }
105
- }
106
- else {
107
- if (kind === FetchKind.LegacyAllOperands) {
108
- return this.fetch.allOperands();
109
- }
110
- if (kind === FetchKind.LegacyOneOperand) {
111
- const index = regs.get(11);
112
- return this.fetch.oneOperand(index);
113
- }
114
- if (kind === FetchKind.LegacyAllTransfers) {
115
- return this.fetch.allTransfers();
116
- }
117
- if (kind === FetchKind.LegacyOneTransfer) {
118
- const index = regs.get(11);
119
- return this.fetch.oneTransfer(index);
120
- }
96
+ if (kind === FetchKind.AllTransfersAndOperands) {
97
+ return this.fetch.allTransfersAndOperands();
98
+ }
99
+ if (kind === FetchKind.OneTransferOrOperand) {
100
+ const index = regs.get(11);
101
+ return this.fetch.oneTransferOrOperand(index);
121
102
  }
122
103
  return null;
123
104
  }
@@ -138,10 +119,6 @@ export var FetchKind;
138
119
  FetchKind[FetchKind["AllWorkItems"] = 11] = "AllWorkItems";
139
120
  FetchKind[FetchKind["OneWorkItem"] = 12] = "OneWorkItem";
140
121
  FetchKind[FetchKind["WorkItemPayload"] = 13] = "WorkItemPayload";
141
- FetchKind[FetchKind["LegacyAllOperands"] = 14] = "LegacyAllOperands";
142
122
  FetchKind[FetchKind["AllTransfersAndOperands"] = 14] = "AllTransfersAndOperands";
143
- FetchKind[FetchKind["LegacyOneOperand"] = 15] = "LegacyOneOperand";
144
123
  FetchKind[FetchKind["OneTransferOrOperand"] = 15] = "OneTransferOrOperand";
145
- FetchKind[FetchKind["LegacyAllTransfers"] = 16] = "LegacyAllTransfers";
146
- FetchKind[FetchKind["LegacyOneTransfer"] = 17] = "LegacyOneTransfer";
147
124
  })(FetchKind || (FetchKind = {}));