@debridge-finance/borderless-validation-sdk 0.5.2 → 0.6.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 (139) hide show
  1. package/dist/cjs/helpers/address.js +7 -0
  2. package/dist/cjs/helpers/address.js.map +1 -1
  3. package/dist/cjs/helpers/evm-intent-id.js +2 -1
  4. package/dist/cjs/helpers/evm-intent-id.js.map +1 -1
  5. package/dist/cjs/helpers/execution-metadata.js +122 -0
  6. package/dist/cjs/helpers/execution-metadata.js.map +1 -0
  7. package/dist/cjs/helpers/solana-instruction.js +7 -1
  8. package/dist/cjs/helpers/solana-instruction.js.map +1 -1
  9. package/dist/cjs/helpers/solana-intent-id.js +46 -20
  10. package/dist/cjs/helpers/solana-intent-id.js.map +1 -1
  11. package/dist/cjs/types/request.js +1 -1
  12. package/dist/cjs/types/request.js.map +1 -1
  13. package/dist/cjs/types/response.js +44 -3
  14. package/dist/cjs/types/response.js.map +1 -1
  15. package/dist/cjs/types/validation.js +35 -2
  16. package/dist/cjs/types/validation.js.map +1 -1
  17. package/dist/cjs/validations/dln-metadata.js +6 -0
  18. package/dist/cjs/validations/dln-metadata.js.map +1 -1
  19. package/dist/cjs/validations/evm-permit.js +13 -4
  20. package/dist/cjs/validations/evm-permit.js.map +1 -1
  21. package/dist/cjs/validations/execution-metadata.js +163 -0
  22. package/dist/cjs/validations/execution-metadata.js.map +1 -0
  23. package/dist/cjs/validations/intent.js +0 -15
  24. package/dist/cjs/validations/intent.js.map +1 -1
  25. package/dist/cjs/validations/low-input-sweep-bundle.js +33 -14
  26. package/dist/cjs/validations/low-input-sweep-bundle.js.map +1 -1
  27. package/dist/cjs/validations/low-input-sweep-consolidation.js +75 -0
  28. package/dist/cjs/validations/low-input-sweep-consolidation.js.map +1 -0
  29. package/dist/cjs/validations/low-input-sweep.js +19 -13
  30. package/dist/cjs/validations/low-input-sweep.js.map +1 -1
  31. package/dist/cjs/validations/solana-compute-budget.js +111 -0
  32. package/dist/cjs/validations/solana-compute-budget.js.map +1 -0
  33. package/dist/cjs/validations/solana-op-budget.js +1 -1
  34. package/dist/cjs/validations/solana-op-budget.js.map +1 -1
  35. package/dist/cjs/validations/solana-op-wrap.js +1 -1
  36. package/dist/cjs/validations/solana-op-wrap.js.map +1 -1
  37. package/dist/cjs/validations/solana-preparation.js +193 -0
  38. package/dist/cjs/validations/solana-preparation.js.map +1 -0
  39. package/dist/cjs/validations/solana-required-actions.js +65 -29
  40. package/dist/cjs/validations/solana-required-actions.js.map +1 -1
  41. package/dist/cjs/validations/solana-transaction.js +35 -67
  42. package/dist/cjs/validations/solana-transaction.js.map +1 -1
  43. package/dist/cjs/validations/trade-grouping.js +6 -8
  44. package/dist/cjs/validations/trade-grouping.js.map +1 -1
  45. package/dist/cjs/validations/trade-index-matching.js +110 -0
  46. package/dist/cjs/validations/trade-index-matching.js.map +1 -0
  47. package/dist/cjs/validations/trade-matching.js +10 -5
  48. package/dist/cjs/validations/trade-matching.js.map +1 -1
  49. package/dist/cjs/validator.js +4 -0
  50. package/dist/cjs/validator.js.map +1 -1
  51. package/dist/cjs/whitelists/environment-config.js +2 -0
  52. package/dist/cjs/whitelists/environment-config.js.map +1 -1
  53. package/dist/esm/helpers/address.js +6 -0
  54. package/dist/esm/helpers/address.js.map +1 -1
  55. package/dist/esm/helpers/evm-intent-id.js +2 -1
  56. package/dist/esm/helpers/evm-intent-id.js.map +1 -1
  57. package/dist/esm/helpers/execution-metadata.js +114 -0
  58. package/dist/esm/helpers/execution-metadata.js.map +1 -0
  59. package/dist/esm/helpers/solana-instruction.js +6 -0
  60. package/dist/esm/helpers/solana-instruction.js.map +1 -1
  61. package/dist/esm/helpers/solana-intent-id.js +47 -21
  62. package/dist/esm/helpers/solana-intent-id.js.map +1 -1
  63. package/dist/esm/types/request.js +1 -1
  64. package/dist/esm/types/request.js.map +1 -1
  65. package/dist/esm/types/response.js +45 -4
  66. package/dist/esm/types/response.js.map +1 -1
  67. package/dist/esm/types/validation.js +35 -2
  68. package/dist/esm/types/validation.js.map +1 -1
  69. package/dist/esm/validations/dln-metadata.js +5 -0
  70. package/dist/esm/validations/dln-metadata.js.map +1 -1
  71. package/dist/esm/validations/evm-permit.js +13 -4
  72. package/dist/esm/validations/evm-permit.js.map +1 -1
  73. package/dist/esm/validations/execution-metadata.js +160 -0
  74. package/dist/esm/validations/execution-metadata.js.map +1 -0
  75. package/dist/esm/validations/intent.js +1 -16
  76. package/dist/esm/validations/intent.js.map +1 -1
  77. package/dist/esm/validations/low-input-sweep-bundle.js +33 -14
  78. package/dist/esm/validations/low-input-sweep-bundle.js.map +1 -1
  79. package/dist/esm/validations/low-input-sweep-consolidation.js +72 -0
  80. package/dist/esm/validations/low-input-sweep-consolidation.js.map +1 -0
  81. package/dist/esm/validations/low-input-sweep.js +19 -13
  82. package/dist/esm/validations/low-input-sweep.js.map +1 -1
  83. package/dist/esm/validations/solana-compute-budget.js +107 -0
  84. package/dist/esm/validations/solana-compute-budget.js.map +1 -0
  85. package/dist/esm/validations/solana-op-budget.js +1 -1
  86. package/dist/esm/validations/solana-op-budget.js.map +1 -1
  87. package/dist/esm/validations/solana-op-wrap.js +1 -1
  88. package/dist/esm/validations/solana-op-wrap.js.map +1 -1
  89. package/dist/esm/validations/solana-preparation.js +190 -0
  90. package/dist/esm/validations/solana-preparation.js.map +1 -0
  91. package/dist/esm/validations/solana-required-actions.js +65 -29
  92. package/dist/esm/validations/solana-required-actions.js.map +1 -1
  93. package/dist/esm/validations/solana-transaction.js +35 -67
  94. package/dist/esm/validations/solana-transaction.js.map +1 -1
  95. package/dist/esm/validations/trade-grouping.js +8 -10
  96. package/dist/esm/validations/trade-grouping.js.map +1 -1
  97. package/dist/esm/validations/trade-index-matching.js +107 -0
  98. package/dist/esm/validations/trade-index-matching.js.map +1 -0
  99. package/dist/esm/validations/trade-matching.js +10 -5
  100. package/dist/esm/validations/trade-matching.js.map +1 -1
  101. package/dist/esm/validator.js +4 -0
  102. package/dist/esm/validator.js.map +1 -1
  103. package/dist/esm/whitelists/environment-config.js +2 -0
  104. package/dist/esm/whitelists/environment-config.js.map +1 -1
  105. package/dist/types/helpers/address.d.ts +1 -0
  106. package/dist/types/helpers/address.d.ts.map +1 -1
  107. package/dist/types/helpers/evm-intent-id.d.ts.map +1 -1
  108. package/dist/types/helpers/execution-metadata.d.ts +38 -0
  109. package/dist/types/helpers/execution-metadata.d.ts.map +1 -0
  110. package/dist/types/helpers/solana-instruction.d.ts +4 -0
  111. package/dist/types/helpers/solana-instruction.d.ts.map +1 -1
  112. package/dist/types/helpers/solana-intent-id.d.ts.map +1 -1
  113. package/dist/types/types/request.d.ts +1 -2
  114. package/dist/types/types/request.d.ts.map +1 -1
  115. package/dist/types/types/response.d.ts +53 -24
  116. package/dist/types/types/response.d.ts.map +1 -1
  117. package/dist/types/types/validation.d.ts +32 -1
  118. package/dist/types/types/validation.d.ts.map +1 -1
  119. package/dist/types/validations/dln-metadata.d.ts +1 -0
  120. package/dist/types/validations/dln-metadata.d.ts.map +1 -1
  121. package/dist/types/validations/evm-permit.d.ts.map +1 -1
  122. package/dist/types/validations/execution-metadata.d.ts +3 -0
  123. package/dist/types/validations/execution-metadata.d.ts.map +1 -0
  124. package/dist/types/validations/low-input-sweep-bundle.d.ts.map +1 -1
  125. package/dist/types/validations/low-input-sweep-consolidation.d.ts +5 -0
  126. package/dist/types/validations/low-input-sweep-consolidation.d.ts.map +1 -0
  127. package/dist/types/validations/low-input-sweep.d.ts.map +1 -1
  128. package/dist/types/validations/solana-compute-budget.d.ts +5 -0
  129. package/dist/types/validations/solana-compute-budget.d.ts.map +1 -0
  130. package/dist/types/validations/solana-preparation.d.ts +3 -0
  131. package/dist/types/validations/solana-preparation.d.ts.map +1 -0
  132. package/dist/types/validations/solana-required-actions.d.ts.map +1 -1
  133. package/dist/types/validations/solana-transaction.d.ts.map +1 -1
  134. package/dist/types/validations/trade-index-matching.d.ts +4 -0
  135. package/dist/types/validations/trade-index-matching.d.ts.map +1 -0
  136. package/dist/types/validations/trade-matching.d.ts.map +1 -1
  137. package/dist/types/validator.d.ts.map +1 -1
  138. package/dist/types/whitelists/environment-config.d.ts.map +1 -1
  139. package/package.json +1 -1
@@ -15,8 +15,8 @@ export function validateLowInputSweeps(request, response, quoteMode) {
15
15
  sweeps: [],
16
16
  violations: validateLowInputSweepBundle(request, response, quoteMode),
17
17
  };
18
- // Safe skip: prohibited modes or missing surviving trades/intents are
19
- // reported above. Their metadata cannot remove request trades from the
18
+ // Safe skip: missing consent, prohibited modes or missing surviving trades/intents
19
+ // are reported above. Their metadata cannot remove request trades from the
20
20
  // ordinary validation flow.
21
21
  if (result.violations.length > 0)
22
22
  return result;
@@ -32,7 +32,7 @@ export function validateLowInputSweeps(request, response, quoteMode) {
32
32
  }
33
33
  // Only entries without metadata/amount violations become sweep contexts.
34
34
  // Their transfer hooks and recipients are validated in a separate pass.
35
- const entry = validateSweepTrade(sweep, request.trades[sweep.tradeIndex], i);
35
+ const entry = validateSweepTrade(sweep, request.trades[sweep.tradeIndex], i, request.totalDstAmount !== undefined);
36
36
  result.violations.push(...entry.violations);
37
37
  result.sweeps.push(...entry.sweeps);
38
38
  }
@@ -67,7 +67,7 @@ function validateSweepIndex(tradeIndex, tradeCount, seen, sweepIndex) {
67
67
  }
68
68
  // Binds one sweep entry to its original request trade and parses its transfer amount.
69
69
  // Returns no sweep context when any check fails, so the trade remains in ordinary validation.
70
- function validateSweepTrade(sweep, trade, sweepIndex) {
70
+ function validateSweepTrade(sweep, trade, sweepIndex, consolidationMode) {
71
71
  const violations = [];
72
72
  const realChainId = resolveChainId(trade.srcChainId);
73
73
  const destinationChainId = resolveChainId(trade.dstChainId);
@@ -82,7 +82,7 @@ function validateSweepTrade(sweep, trade, sweepIndex) {
82
82
  });
83
83
  return { sweeps: [], violations };
84
84
  }
85
- violations.push(...validateSweepIdentity(sweep, trade, realChainId, destinationChainId, basePath));
85
+ violations.push(...validateSweepIdentity(sweep, trade, realChainId, destinationChainId, basePath, consolidationMode));
86
86
  violations.push(...validateSweepSourceAuthority(trade, realChainId, basePath));
87
87
  const amount = validateSweepAmount(sweep, trade, realChainId, basePath, violations);
88
88
  if (violations.length > 0
@@ -121,7 +121,7 @@ function validateSweepSourceAuthority(trade, realChainId, basePath) {
121
121
  }
122
122
  // Compares duplicated sweep metadata with the request, using chain-aware address
123
123
  // comparison and field-specific equivalence rules for the originalTrade echo.
124
- function validateSweepIdentity(sweep, trade, sourceChainId, destinationChainId, basePath) {
124
+ function validateSweepIdentity(sweep, trade, sourceChainId, destinationChainId, basePath, consolidationMode) {
125
125
  const violations = [];
126
126
  // CRITICAL: the duplicated metadata cannot redefine the asset or source chain.
127
127
  if (sweep.chainId !== trade.srcChainId) {
@@ -132,18 +132,14 @@ function validateSweepIdentity(sweep, trade, sourceChainId, destinationChainId,
132
132
  }
133
133
  return [
134
134
  ...violations,
135
- ...validateOriginalTrade(sweep, trade, sourceChainId, destinationChainId, basePath),
135
+ ...validateOriginalTrade(sweep, trade, sourceChainId, destinationChainId, basePath, consolidationMode),
136
136
  ];
137
137
  }
138
138
  // CRITICAL: preserve every request field except the explicitly supported
139
139
  // amount/default normalization.
140
- function validateOriginalTrade(sweep, trade, sourceChainId, destinationChainId, basePath) {
140
+ function validateOriginalTrade(sweep, trade, sourceChainId, destinationChainId, basePath, consolidationMode) {
141
141
  const violations = [];
142
- // Max-like amounts are resolved before sweep planning, with operating expenses
143
- // no longer prepended to that trade. All other fields retain their request values.
144
- const expectedTrade = isMaxAmountMode(trade.srcChainTokenInAmount)
145
- ? { ...trade, srcChainTokenInAmount: sweep.amount, prependOperatingExpenses: false }
146
- : trade;
142
+ const expectedTrade = getExpectedOriginalTrade(trade, sweep.amount, consolidationMode);
147
143
  // Inspect fields from both objects so an added response field is not silently ignored.
148
144
  // A sweep replaces the whole trade, including its trade-level calls. Echoing
149
145
  // those calls does not authorize executing them: the hook matcher accepts only
@@ -159,6 +155,16 @@ function validateOriginalTrade(sweep, trade, sourceChainId, destinationChainId,
159
155
  }
160
156
  return violations;
161
157
  }
158
+ // Max-like amounts are resolved before sweep planning. Non-consolidation also
159
+ // disables prepended expenses; consolidation preserves the original flag in
160
+ // the sweep echo. This echo does not authorize adding expenses to the transfer.
161
+ function getExpectedOriginalTrade(trade, amount, consolidationMode) {
162
+ if (!isMaxAmountMode(trade.srcChainTokenInAmount))
163
+ return trade;
164
+ return consolidationMode
165
+ ? { ...trade, srcChainTokenInAmount: amount }
166
+ : { ...trade, srcChainTokenInAmount: amount, prependOperatingExpenses: false };
167
+ }
162
168
  const SOURCE_ADDRESS_FIELDS = [
163
169
  "srcChainTokenIn", "srcChainAuthorityAddress", "srcAllowedCancelBeneficiary",
164
170
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"low-input-sweep.js","sourceRoot":"","sources":["../../../src/validations/low-input-sweep.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"low-input-sweep.js","sourceRoot":"","sources":["../../../src/validations/low-input-sweep.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,107 @@
1
+ import { ViolationCode } from "../types/index.js";
2
+ import { COMPUTE_UNIT_LIMIT_DISCRIMINATOR, COMPUTE_UNIT_PRICE_DISCRIMINATOR, COMPUTE_UNIT_LIMIT_DATA_LENGTH, COMPUTE_UNIT_PRICE_DATA_LENGTH, isComputeBudget, } from "../helpers/solana-instruction.js";
3
+ // Only the unit limit and unit price belong to the supported intent transaction
4
+ // format; heap-frame requests and deprecated operations are not authorized.
5
+ const SUPPORTED_COMPUTE_BUDGET_LAYOUTS = [
6
+ { discriminator: COMPUTE_UNIT_LIMIT_DISCRIMINATOR, dataLength: COMPUTE_UNIT_LIMIT_DATA_LENGTH, accountCount: 0 },
7
+ { discriminator: COMPUTE_UNIT_PRICE_DISCRIMINATOR, dataLength: COMPUTE_UNIT_PRICE_DATA_LENGTH, accountCount: 0 },
8
+ ];
9
+ export function isSolanaComputeBudgetAllowed(request) {
10
+ return !request.enableAccountAbstraction && request.intentOnChainSubmission !== true;
11
+ }
12
+ // CRITICAL: the request determines whether ComputeBudget is permitted, not the
13
+ // response action's type or operation labels. This also covers split preparation.
14
+ // In the allowed mode, the request supplies no priority-fee spending limit.
15
+ // These structural checks therefore do not protect against an excessive price;
16
+ // neither response costs nor the service's fee settings are trusted fee caps.
17
+ export function validateSolanaComputeBudgetInstructions(instructions, actionPath, request, requireComputeBudget) {
18
+ const computeInstructions = instructions.filter(isComputeBudget);
19
+ if (!isSolanaComputeBudgetAllowed(request)) {
20
+ return validateComputeBudgetAbsent(computeInstructions, actionPath);
21
+ }
22
+ return [
23
+ ...validateComputeBudgetOrder(instructions, actionPath),
24
+ ...computeInstructions.flatMap(instruction => validateComputeBudgetStructure(instruction, actionPath)),
25
+ ...validateComputeBudgetDuplicates(computeInstructions, actionPath),
26
+ ...validateComputeBudgetPresence(computeInstructions, actionPath, requireComputeBudget),
27
+ ];
28
+ }
29
+ // CRITICAL: no ComputeBudget instruction is authorized for AA or explicitly
30
+ // requested on-chain submission, including otherwise well-formed price changes.
31
+ function validateComputeBudgetAbsent(instructions, actionPath) {
32
+ if (instructions.length === 0)
33
+ return [];
34
+ return [{
35
+ code: ViolationCode.SolanaComputeBudgetForbidden,
36
+ message: "ComputeBudget is forbidden for AA or explicitly requested on-chain intent submission",
37
+ path: `${actionPath}.data.data`,
38
+ expected: { computeBudgetInstructionCount: 0 },
39
+ actual: { computeBudgetInstructionCount: instructions.length },
40
+ }];
41
+ }
42
+ // HIGH: ComputeBudget instructions form a prefix, with either ordering of the
43
+ // supported price and limit instructions accepted.
44
+ function validateComputeBudgetOrder(instructions, actionPath) {
45
+ const actual = instructions.flatMap((instruction, index) => isComputeBudget(instruction) ? [index] : []);
46
+ const expected = actual.map((_, index) => index);
47
+ if (actual.every((index, position) => index === expected[position]))
48
+ return [];
49
+ return [{
50
+ code: ViolationCode.SolanaComputeBudgetOrderInvalid,
51
+ message: "ComputeBudget instructions must precede all other instructions",
52
+ path: `${actionPath}.data.data`,
53
+ expected,
54
+ actual,
55
+ }];
56
+ }
57
+ // HIGH: reject unknown operations, truncated/trailing bytes and account operands.
58
+ // Reading the discriminator and byte lengths does not require a throwing decoder.
59
+ function validateComputeBudgetStructure(instruction, actionPath) {
60
+ const format = SUPPORTED_COMPUTE_BUDGET_LAYOUTS.find(layout => layout.discriminator === instruction.data[0]);
61
+ const actual = {
62
+ discriminator: instruction.data[0],
63
+ dataLength: instruction.data.length,
64
+ accountCount: instruction.accountKeys.length,
65
+ };
66
+ if (format && actual.dataLength === format.dataLength && actual.accountCount === 0)
67
+ return [];
68
+ return [{
69
+ code: ViolationCode.SolanaComputeBudgetInstructionInvalid,
70
+ message: "ComputeBudget must be an exactly encoded unit limit or unit price with no account operands",
71
+ path: `${actionPath}.data.data`,
72
+ expected: SUPPORTED_COMPUTE_BUDGET_LAYOUTS.map(layout => ({ ...layout })),
73
+ actual: [actual],
74
+ }];
75
+ }
76
+ // HIGH: repeated operations must not hide a second price or limit setting.
77
+ function validateComputeBudgetDuplicates(instructions, actionPath) {
78
+ const actual = instructions.map(instruction => instruction.data[0]);
79
+ const expected = [...new Set(actual)];
80
+ if (actual.length === expected.length)
81
+ return [];
82
+ return [{
83
+ code: ViolationCode.SolanaComputeBudgetDuplicate,
84
+ message: "ComputeBudget operations must not be duplicated within a transaction",
85
+ path: `${actionPath}.data.data`,
86
+ expected,
87
+ actual,
88
+ }];
89
+ }
90
+ // HIGH: the initial ordinary transaction and each ordinary embedded Intent need
91
+ // both settings. Later split preparation may omit both, but not just one setting.
92
+ function validateComputeBudgetPresence(instructions, actionPath, requireComputeBudget) {
93
+ if (!requireComputeBudget && instructions.length === 0)
94
+ return [];
95
+ const expected = SUPPORTED_COMPUTE_BUDGET_LAYOUTS.map(layout => layout.discriminator);
96
+ const actual = instructions.map(instruction => instruction.data[0]);
97
+ if (expected.every(discriminator => actual.includes(discriminator)))
98
+ return [];
99
+ return [{
100
+ code: ViolationCode.SolanaTransactionComputeBudgetMissing,
101
+ message: "Transaction must contain both ComputeBudget unit limit and unit price instructions",
102
+ path: `${actionPath}.data.data`,
103
+ expected,
104
+ actual,
105
+ }];
106
+ }
107
+ //# sourceMappingURL=solana-compute-budget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solana-compute-budget.js","sourceRoot":"","sources":["../../../src/validations/solana-compute-budget.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ const TOKEN_PROGRAMS = new Set([SPL_TOKEN_PROGRAM, SPL_TOKEN_2022_PROGRAM]);
10
10
  // Entry point
11
11
  // =============================================
12
12
  // Validates Budget (approve) instructions within a decoded Solana transaction.
13
- // Called for both Transaction (AA=false) and SignTransaction (AA=true) actions.
13
+ // Called for both Transaction and SignTransaction, including non-AA on-chain submission.
14
14
  export function validateSolanaBudgetInstructions(action, resolvedInstructions, actionPath, request, trades, responseTrades, realChainId, quoteMode, srcChainAuthorityAddress, envConfig, quoteTradeSubsetUnverifiable) {
15
15
  const hasBudgetAction = action.actions.includes(SolanaActionOperation.Budget);
16
16
  // CRITICAL: Budget forbidden when approveAmountFlag === "none"
@@ -1 +1 @@
1
- {"version":3,"file":"solana-op-budget.js","sourceRoot":"","sources":["../../../src/validations/solana-op-budget.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"solana-op-budget.js","sourceRoot":"","sources":["../../../src/validations/solana-op-budget.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ import { parseIntegerString } from "../helpers/integer.js";
7
7
  // Entry point
8
8
  // =============================================
9
9
  // Validates Wrap (SOL → wSOL) instructions within a decoded Solana transaction.
10
- // Called for both Transaction (AA=false) and SignTransaction (AA=true) actions.
10
+ // Called for both Transaction and SignTransaction, including non-AA on-chain submission.
11
11
  export function validateSolanaWrapInstructions(action, resolvedInstructions, actionPath, inputTokens, realChainId, quoteMode, srcChainAuthorityAddress, quoteTradeSubsetUnverifiable) {
12
12
  if (!action.actions.includes(SolanaActionOperation.Wrap))
13
13
  return [];
@@ -1 +1 @@
1
- {"version":3,"file":"solana-op-wrap.js","sourceRoot":"","sources":["../../../src/validations/solana-op-wrap.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,aAAa,EAEb,qBAAqB,GAGxB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAEH,SAAS,EACT,gBAAgB,EAChB,YAAY,EACZ,qBAAqB,GACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACH,iBAAiB,EACjB,eAAe,GAClB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,gDAAgD;AAChD,cAAc;AACd,gDAAgD;AAEhD,gFAAgF;AAChF,gFAAgF;AAChF,MAAM,UAAU,8BAA8B,CAC1C,MAA4B,EAC5B,oBAA2C,EAC3C,UAAkB,EAClB,WAA6C,EAC7C,WAAoB,EACpB,SAAkB,EAClB,wBAA4C,EAC5C,4BAAqC;IAErC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAEpE,MAAM,UAAU,GAAgB,EAAE,CAAC;IAEnC,MAAM,YAAY,GAAG,yBAAyB,CAAC,oBAAoB,CAAC,CAAC;IACrE,MAAM,WAAW,GAAG,8BAA8B,CAAC,oBAAoB,CAAC,CAAC;IACzE,MAAM,aAAa,GAAG,0BAA0B,CAAC,oBAAoB,CAAC,CAAC;IAEvE,gDAAgD;IAChD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,UAAU,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,aAAa,CAAC,+BAA+B;YACnD,OAAO,EAAE,+DAA+D;YACxE,IAAI,EAAE,GAAG,UAAU,YAAY;SAClC,CAAC,CAAC;QACH,OAAO,UAAU,CAAC;IACtB,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,UAAU,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,aAAa,CAAC,qCAAqC;YACzD,OAAO,EAAE,kEAAkE;YAC3E,IAAI,EAAE,GAAG,UAAU,YAAY;YAC/B,QAAQ,EAAE,CAAC;YACX,MAAM,EAAE,WAAW,CAAC,MAAM;SAC7B,CAAC,CAAC;IACP,CAAC;IAED,oCAAoC;IACpC,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,UAAU,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,aAAa,CAAC,iCAAiC;YACrD,OAAO,EAAE,mDAAmD;YAC5D,IAAI,EAAE,GAAG,UAAU,YAAY;SAClC,CAAC,CAAC;IACP,CAAC;IACD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,UAAU,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,aAAa,CAAC,uCAAuC;YAC3D,OAAO,EAAE,sDAAsD;YAC/D,IAAI,EAAE,GAAG,UAAU,YAAY;YAC/B,QAAQ,EAAE,CAAC;YACX,MAAM,EAAE,aAAa,CAAC,MAAM;SAC/B,CAAC,CAAC;IACP,CAAC;IACD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,UAAU,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,aAAa,CAAC,sCAAsC;YAC1D,OAAO,EAAE,qDAAqD;YAC9D,IAAI,EAAE,GAAG,UAAU,YAAY;YAC/B,QAAQ,EAAE,CAAC;YACX,MAAM,EAAE,YAAY,CAAC,MAAM;SAC9B,CAAC,CAAC;IACP,CAAC;IAED,qDAAqD;IACrD,MAAM,qBAAqB,GAAG,sBAAsB,CAChD,SAAS,EAAE,wBAAwB,CACtC,CAAC;IACF,MAAM,eAAe,GAAG,qBAAqB,CAAC,GAAG,CAAC;IAClD,UAAU,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAErD,6DAA6D;IAC7D,KAAK,MAAM,EAAE,IAAI,YAAY,EAAE,CAAC;QAC5B,UAAU,CAAC,IAAI,CACX,GAAG,4BAA4B,CAC3B,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,wBAAwB,EAAE,eAAe,CACpF,CACJ,CAAC;IACN,CAAC;IAED,kCAAkC;IAClC,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;QAC3B,UAAU,CAAC,IAAI,CACX,GAAG,2BAA2B,CAC1B,EAAE,EACF,UAAU,EACV,WAAW,EACX,WAAW,EACX,eAAe,EACf,4BAA4B,CAC/B,CACJ,CAAC;IACN,CAAC;IAED,sBAAsB;IACtB,KAAK,MAAM,EAAE,IAAI,aAAa,EAAE,CAAC;QAC7B,UAAU,CAAC,IAAI,CACX,GAAG,6BAA6B,CAAC,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,WAAW,CAAC,CACjF,CAAC;IACN,CAAC;IAED,OAAO,UAAU,CAAC;AACtB,CAAC;AAED,SAAS,8BAA8B,CAAC,GAA0B;IAC9D,OAAO,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,0BAA0B,CAAC,GAA0B;IAC1D,OAAO,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,yBAAyB,CAAC,GAA0B;IACzD,OAAO,GAAG,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAC7C,CAAC;AAED,gDAAgD;AAChD,oDAAoD;AACpD,gDAAgD;AAEhD,8DAA8D;AAC9D,+DAA+D;AAC/D,0CAA0C;AAC1C,SAAS,4BAA4B,CACjC,EAAuB,EACvB,UAAkB,EAClB,WAAoB,EACpB,SAAkB,EAClB,wBAA4C,EAC5C,eAAmC;IAEnC,MAAM,UAAU,GAAgB,EAAE,CAAC;IAEnC,sBAAsB;IACtB,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAChC,qBAAqB;IACrB,MAAM,IAAI,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAC/B,wDAAwD;IACxD,MAAM,eAAe,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAE1C,kEAAkE;IAClE,IAAI,CAAC,SAAS,IAAI,wBAAwB,EAAE,CAAC;QACzC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,EAAE,wBAAwB,CAAC,EAAE,CAAC;YAC/D,UAAU,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,aAAa,CAAC,gCAAgC;gBACpD,OAAO,EAAE,qDAAqD;gBAC9D,IAAI,EAAE,GAAG,UAAU,YAAY;gBAC/B,QAAQ,EAAE,wBAAwB;gBAClC,MAAM,EAAE,KAAK;aAChB,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,wCAAwC;IACxC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,EAAE,eAAe,CAAC,EAAE,CAAC;QACrD,UAAU,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,aAAa,CAAC,+BAA+B;YACnD,OAAO,EAAE,gCAAgC,eAAe,GAAG;YAC3D,IAAI,EAAE,GAAG,UAAU,YAAY;YAC/B,QAAQ,EAAE,eAAe;YACzB,MAAM,EAAE,IAAI;SACf,CAAC,CAAC;IACP,CAAC;IAED,oEAAoE;IACpE,yGAAyG;IACzG,IAAI,eAAe,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,eAAe,EAAE,eAAe,CAAC,EAAE,CAAC;QACnF,UAAU,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,aAAa,CAAC,kCAAkC;YACtD,OAAO,EAAE,uDAAuD;YAChE,IAAI,EAAE,GAAG,UAAU,YAAY;YAC/B,QAAQ,EAAE,eAAe;YACzB,MAAM,EAAE,eAAe;SAC1B,CAAC,CAAC;IACP,CAAC;IAED,OAAO,UAAU,CAAC;AACtB,CAAC;AAED,gDAAgD;AAChD,oCAAoC;AACpC,gDAAgD;AAEhD,SAAS,2BAA2B,CAChC,EAAuB,EACvB,UAAkB,EAClB,WAAoB,EACpB,WAA6C,EAC7C,eAAmC,EACnC,4BAAqC;IAErC,MAAM,UAAU,GAAgB,EAAE,CAAC;IAEnC,oEAAoE;IACpE,yGAAyG;IACzG,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IACpC,IAAI,eAAe,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,SAAS,EAAE,eAAe,CAAC,EAAE,CAAC;QAC7E,UAAU,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,aAAa,CAAC,4BAA4B;YAChD,OAAO,EAAE,wEAAwE;YACjF,IAAI,EAAE,GAAG,UAAU,YAAY;YAC/B,QAAQ,EAAE,eAAe;YACzB,MAAM,EAAE,SAAS;SACpB,CAAC,CAAC;IACP,CAAC;IAED,wEAAwE;IACxE,sEAAsE;IACtE,eAAe;IACf,0EAA0E;IAC1E,0EAA0E;IAE1E,yEAAyE;IACzE,sEAAsE;IACtE,wEAAwE;IACxE,IAAI,4BAA4B;QAAE,OAAO,UAAU,CAAC;IAEpD,MAAM,QAAQ,GAAG,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACvC,MAAM,cAAc,GAAG,gCAAgC,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAElF,yEAAyE;IACzE,8DAA8D;IAC9D,IAAI,cAAc,KAAK,SAAS;QAAE,OAAO,UAAU,CAAC;IAEpD,IAAI,QAAQ,KAAK,cAAc,EAAE,CAAC;QAC9B,UAAU,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,aAAa,CAAC,gCAAgC;YACpD,OAAO,EAAE,6EAA6E;kBAChF,4CAA4C;YAClD,IAAI,EAAE,GAAG,UAAU,YAAY;YAC/B,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE;YACnC,MAAM,EAAE,QAAQ,CAAC,QAAQ,EAAE;SAC9B,CAAC,CAAC;IACP,CAAC;IAED,OAAO,UAAU,CAAC;AACtB,CAAC;AAED,gDAAgD;AAChD,wBAAwB;AACxB,gDAAgD;AAEhD,SAAS,6BAA6B,CAClC,EAAuB,EACvB,UAAkB,EAClB,eAAmC,EACnC,WAAoB;IAEpB,2EAA2E;IAC3E,yGAAyG;IACzG,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAClC,IAAI,eAAe,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,OAAO,EAAE,eAAe,CAAC,EAAE,CAAC;QAC3E,OAAO,CAAC;gBACJ,IAAI,EAAE,aAAa,CAAC,mCAAmC;gBACvD,OAAO,EAAE,qCAAqC;gBAC9C,IAAI,EAAE,GAAG,UAAU,YAAY;gBAC/B,QAAQ,EAAE,eAAe;gBACzB,MAAM,EAAE,OAAO;aAClB,CAAC,CAAC;IACP,CAAC;IAED,OAAO,EAAE,CAAC;AACd,CAAC;AAED,gDAAgD;AAChD,UAAU;AACV,gDAAgD;AAEhD,SAAS,sBAAsB,CAC3B,SAAkB,EAClB,wBAA4C;IAE5C,IAAI,SAAS,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACzC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;IAC9C,CAAC;IAED,uCAAuC;IACvC,IAAI,CAAC;QACD,OAAO;YACH,GAAG,EAAE,SAAS,CAAC,wBAAwB,EAAE,eAAe,EAAE,iBAAiB,CAAC;YAC5E,UAAU,EAAE,EAAE;SACjB,CAAC;IACN,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO;YACH,GAAG,EAAE,SAAS;YACd,UAAU,EAAE,CAAC;oBACT,IAAI,EAAE,aAAa,CAAC,0BAA0B;oBAC9C,OAAO,EAAE,yEAAyE;oBAClF,IAAI,EAAE,2CAA2C;oBACjD,MAAM,EAAE,wBAAwB;oBAChC,OAAO,EAAE,KAAK;iBACjB,CAAC;SACL,CAAC;IACN,CAAC;AACL,CAAC;AAED,SAAS,gCAAgC,CACrC,WAA6C,EAC7C,WAAoB;IAEpB,MAAM,mBAAmB,GAAG,WAAW,EAAE,MAAM,CAC3C,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,EAAE,eAAe,CAAC,CACtE,IAAI,EAAE,CAAC;IAER,qDAAqD;IACrD,kEAAkE;IAClE,oEAAoE;IACpE,kCAAkC;IAClC,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAEvD,IAAI,CAAC;QACD,OAAO,kBAAkB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IACvE,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,SAAS,CAAC;IACrB,CAAC;AACL,CAAC;AAED,SAAS,SAAS,CAAC,IAAgB,EAAE,MAAc;IAC/C,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACzB,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"solana-op-wrap.js","sourceRoot":"","sources":["../../../src/validations/solana-op-wrap.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,190 @@
1
+ import { SolanaActionKind, ViolationCode } from "../types/index.js";
2
+ import { getAddressIdentityKey } from "../helpers/address.js";
3
+ import { decodeSolanaVersionedTransaction } from "../helpers/solana-transaction-decode.js";
4
+ import { CUSTOM_APPROVE_FIRST_ATA_INDEX, decodeClassicApprove, decodeCustomApprove, isClassicApprove, isCustomApprove, isSystemTransfer, resolveInstructions, } from "../helpers/solana-instruction.js";
5
+ // CRITICAL: all transactions for one intent share the same preparation budget.
6
+ // Count actual instructions across preparations and the combined Intent action,
7
+ // regardless of operation labels, action IDs, AA, or unlimited approval mode.
8
+ // Per-transaction validators still check amounts, recipients, owners and labels.
9
+ export function validateSolanaPreparationActions(actions, basePath, realChainId, intentProgram) {
10
+ const effects = actions.map((action, index) => readActionEffects(action, `${basePath}.requiredActions[${index}]`, intentProgram));
11
+ return [
12
+ ...effects.flatMap(effect => effect.violations),
13
+ ...validateUniqueWrap(effects.flatMap(effect => effect.wraps)),
14
+ ...validateUniqueApprovals(effects.flatMap(effect => effect.approvals), realChainId),
15
+ ];
16
+ }
17
+ // A separate message signature has no transaction preparation to inspect.
18
+ // Decode failures remain violations; they are not evidence of absent effects.
19
+ function readActionEffects(action, actionPath, intentProgram) {
20
+ if (action.type !== SolanaActionKind.Transaction && action.type !== SolanaActionKind.SignTransaction) {
21
+ return { wraps: [], approvals: [], violations: [] };
22
+ }
23
+ const decoded = decodeSolanaVersionedTransaction(action.data.data, `${actionPath}.data.data`, ViolationCode.SolanaTransactionDecodeError, ViolationCode.SolanaTransactionVersionInvalid);
24
+ if (!decoded.ok)
25
+ return { wraps: [], approvals: [], violations: decoded.violations };
26
+ return readTransactionEffects(decoded.transaction, actionPath, intentProgram);
27
+ }
28
+ function readTransactionEffects(transaction, actionPath, intentProgram) {
29
+ const effects = { wraps: [], approvals: [], violations: [] };
30
+ const accountKeys = transaction.message.staticAccountKeys.map(key => key.toBase58());
31
+ const instructions = transaction.message.compiledInstructions;
32
+ for (let i = 0; i < instructions.length; i++) {
33
+ const location = { actionPath, instructionIndex: i };
34
+ // Resolve one instruction at a time to retain its original index even
35
+ // when another instruction references a program outside static keys.
36
+ const [instruction] = resolveInstructions([instructions[i]], accountKeys);
37
+ if (instruction === undefined) {
38
+ effects.violations.push(unresolvedPreparationProgram(location, instructions[i].programIdIndex));
39
+ continue;
40
+ }
41
+ if (isSystemTransfer(instruction))
42
+ effects.wraps.push(location);
43
+ const approvals = readApprovalTargets(instruction, location, intentProgram);
44
+ effects.approvals.push(...approvals.targets);
45
+ effects.violations.push(...approvals.violations);
46
+ }
47
+ return effects;
48
+ }
49
+ // CRITICAL: unresolved programs cannot be assumed to have no preparation effects.
50
+ function unresolvedPreparationProgram(location, programIdIndex) {
51
+ return {
52
+ code: ViolationCode.SolanaPreparationProgramUnresolved,
53
+ message: "cannot resolve an instruction program for intent preparation validation",
54
+ path: `${location.actionPath}.data.data`,
55
+ actual: { ...location, programIdIndex },
56
+ };
57
+ }
58
+ // Decode both approval forms using the shared decoders. Unknown instructions
59
+ // remain subject to the transaction's program and instruction allowlists.
60
+ function readApprovalTargets(instruction, location, intentProgram) {
61
+ try {
62
+ if (isClassicApprove(instruction)) {
63
+ return { targets: [readClassicApprovalTarget(instruction, location)], violations: [] };
64
+ }
65
+ if (isCustomApprove(instruction, intentProgram)) {
66
+ return readCustomApprovalTargets(instruction, location);
67
+ }
68
+ }
69
+ catch (error) {
70
+ return {
71
+ targets: [],
72
+ violations: [{
73
+ code: ViolationCode.SolanaPreparationApprovalDecodeError,
74
+ message: "cannot decode an approval for intent preparation validation",
75
+ path: `${location.actionPath}.data.data`,
76
+ actual: location,
77
+ details: error,
78
+ }],
79
+ };
80
+ }
81
+ return { targets: [], violations: [] };
82
+ }
83
+ function readClassicApprovalTarget(instruction, location) {
84
+ const approval = decodeClassicApprove(instruction);
85
+ return {
86
+ owner: approval.owner,
87
+ tokenProgramId: approval.tokenProgramId,
88
+ tokenAccount: approval.ataAddress,
89
+ // Classic SPL Approve: the source token account is operand 0.
90
+ location: { ...location, accountIndex: 0 },
91
+ };
92
+ }
93
+ // HIGH: an empty custom approval is not meaningful preparation. Every amount
94
+ // must have a corresponding account before duplicate targets can be checked.
95
+ // Decoder exceptions are caught locally by readApprovalTargets.
96
+ function readCustomApprovalTargets(instruction, location) {
97
+ const approval = decodeCustomApprove(instruction);
98
+ if (approval.ataAddresses.length === 0 || approval.vecLength !== approval.ataAddresses.length) {
99
+ return {
100
+ targets: [],
101
+ violations: [{
102
+ code: ViolationCode.SolanaPreparationApprovalAccountsInvalid,
103
+ message: "custom approval must contain a nonempty account list paired with its amounts",
104
+ path: `${location.actionPath}.data.data`,
105
+ actual: { ...location, amountCount: approval.vecLength, accountCount: approval.ataAddresses.length },
106
+ }],
107
+ };
108
+ }
109
+ return {
110
+ targets: approval.ataAddresses.map((tokenAccount, index) => ({
111
+ owner: approval.maker,
112
+ tokenProgramId: approval.tokenProgramId,
113
+ tokenAccount,
114
+ location: { ...location, accountIndex: CUSTOM_APPROVE_FIRST_ATA_INDEX + index },
115
+ })),
116
+ violations: [],
117
+ };
118
+ }
119
+ // CRITICAL: a Wrap transfer already covers the full canonical native budget.
120
+ // A second transfer repeats that expense, including across transaction kinds.
121
+ function validateUniqueWrap(locations) {
122
+ if (locations.length <= 1)
123
+ return [];
124
+ return [{
125
+ code: ViolationCode.SolanaPreparationWrapDuplicate,
126
+ message: "the intent must not wrap its native input budget more than once",
127
+ path: `${locations[1].actionPath}.data.data`,
128
+ expected: { transferCount: 1 },
129
+ actual: { transferCount: locations.length },
130
+ details: { occurrences: locations },
131
+ }];
132
+ }
133
+ // CRITICAL: one token account cannot be prepared twice for the same intent.
134
+ // This includes classic/custom mixtures and unlimited approvals. Different token
135
+ // accounts may still be prepared in separate transactions; amounts stay local.
136
+ function validateUniqueApprovals(targets, realChainId) {
137
+ const targetsByAccount = new Map();
138
+ const violations = [];
139
+ for (const target of targets) {
140
+ const key = getApprovalIdentityKey(target, realChainId);
141
+ if (key === undefined) {
142
+ violations.push(invalidApprovalIdentity(target));
143
+ continue;
144
+ }
145
+ const accountTargets = targetsByAccount.get(key) ?? [];
146
+ accountTargets.push(target);
147
+ targetsByAccount.set(key, accountTargets);
148
+ }
149
+ // Report each account once after collecting all occurrences. Copying the
150
+ // growing list for every repeat would produce quadratic diagnostic output.
151
+ for (const accountTargets of targetsByAccount.values()) {
152
+ // The second approval is the first repeat and supplies the violation path.
153
+ const repeatedTarget = accountTargets[1];
154
+ if (repeatedTarget === undefined)
155
+ continue;
156
+ const locations = accountTargets.map(target => target.location);
157
+ violations.push(duplicateApprovalViolation(repeatedTarget, locations));
158
+ }
159
+ return violations;
160
+ }
161
+ // The approval kind is deliberately absent from the key: switching between a
162
+ // custom delta and a classic absolute approval must not authorize another action.
163
+ function getApprovalIdentityKey(target, realChainId) {
164
+ const addresses = [target.owner, target.tokenProgramId, target.tokenAccount];
165
+ const keys = addresses.map(address => typeof address === "string" ? getAddressIdentityKey(realChainId, address) : undefined);
166
+ if (keys.some(key => key === undefined))
167
+ return undefined;
168
+ return keys.join(":");
169
+ }
170
+ // HIGH: missing or lookup-table operands cannot establish a valid account identity.
171
+ function invalidApprovalIdentity(target) {
172
+ return {
173
+ code: ViolationCode.SolanaPreparationApprovalAddressInvalid,
174
+ message: "cannot resolve the owner, token program or token account of an approval",
175
+ path: `${target.location.actionPath}.data.data`,
176
+ actual: target,
177
+ };
178
+ }
179
+ function duplicateApprovalViolation(target, locations) {
180
+ const account = { owner: target.owner, tokenProgramId: target.tokenProgramId, tokenAccount: target.tokenAccount };
181
+ return {
182
+ code: ViolationCode.SolanaPreparationApprovalDuplicate,
183
+ message: "the intent must not approve the same source token account more than once",
184
+ path: `${target.location.actionPath}.data.data`,
185
+ expected: { ...account, approvalCount: 1 },
186
+ actual: { ...account, approvalCount: locations.length },
187
+ details: { occurrences: locations },
188
+ };
189
+ }
190
+ //# sourceMappingURL=solana-preparation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solana-preparation.js","sourceRoot":"","sources":["../../../src/validations/solana-preparation.ts"],"names":[],"mappings":"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"}