@debridge-finance/borderless-validation-sdk 0.0.12 → 0.1.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 (109) hide show
  1. package/README.md +22 -1
  2. package/dist/cjs/helpers/address.js +5 -0
  3. package/dist/cjs/helpers/address.js.map +1 -1
  4. package/dist/cjs/helpers/evm-intent-id.js +7 -4
  5. package/dist/cjs/helpers/evm-intent-id.js.map +1 -1
  6. package/dist/cjs/helpers/interactions.js +111 -0
  7. package/dist/cjs/helpers/interactions.js.map +1 -0
  8. package/dist/cjs/helpers/solana-instruction.js +12 -0
  9. package/dist/cjs/helpers/solana-instruction.js.map +1 -1
  10. package/dist/cjs/types/request.js +8 -1
  11. package/dist/cjs/types/request.js.map +1 -1
  12. package/dist/cjs/types/response.js +4 -0
  13. package/dist/cjs/types/response.js.map +1 -1
  14. package/dist/cjs/types/validation.js +8 -0
  15. package/dist/cjs/types/validation.js.map +1 -1
  16. package/dist/cjs/validations/action-kind.js +70 -0
  17. package/dist/cjs/validations/action-kind.js.map +1 -0
  18. package/dist/cjs/validations/evm-required-actions.js +2 -2
  19. package/dist/cjs/validations/evm-required-actions.js.map +1 -1
  20. package/dist/cjs/validations/evm-sign712.js +4 -4
  21. package/dist/cjs/validations/evm-sign712.js.map +1 -1
  22. package/dist/cjs/validations/hooks-common.js +2 -0
  23. package/dist/cjs/validations/hooks-common.js.map +1 -1
  24. package/dist/cjs/validations/intent-destinations.js +29 -4
  25. package/dist/cjs/validations/intent-destinations.js.map +1 -1
  26. package/dist/cjs/validations/intent.js +8 -8
  27. package/dist/cjs/validations/intent.js.map +1 -1
  28. package/dist/cjs/validations/interactions.js +151 -0
  29. package/dist/cjs/validations/interactions.js.map +1 -0
  30. package/dist/cjs/validations/required-actions.js +4 -29
  31. package/dist/cjs/validations/required-actions.js.map +1 -1
  32. package/dist/cjs/validations/solana-op-budget.js +27 -9
  33. package/dist/cjs/validations/solana-op-budget.js.map +1 -1
  34. package/dist/cjs/validations/solana-op-wrap.js +24 -4
  35. package/dist/cjs/validations/solana-op-wrap.js.map +1 -1
  36. package/dist/cjs/validations/trade-grouping.js +41 -27
  37. package/dist/cjs/validations/trade-grouping.js.map +1 -1
  38. package/dist/cjs/validator.js +43 -7
  39. package/dist/cjs/validator.js.map +1 -1
  40. package/dist/esm/helpers/address.js +4 -0
  41. package/dist/esm/helpers/address.js.map +1 -1
  42. package/dist/esm/helpers/evm-intent-id.js +7 -4
  43. package/dist/esm/helpers/evm-intent-id.js.map +1 -1
  44. package/dist/esm/helpers/interactions.js +102 -0
  45. package/dist/esm/helpers/interactions.js.map +1 -0
  46. package/dist/esm/helpers/solana-instruction.js +12 -0
  47. package/dist/esm/helpers/solana-instruction.js.map +1 -1
  48. package/dist/esm/types/request.js +7 -0
  49. package/dist/esm/types/request.js.map +1 -1
  50. package/dist/esm/types/response.js +5 -1
  51. package/dist/esm/types/response.js.map +1 -1
  52. package/dist/esm/types/validation.js +8 -0
  53. package/dist/esm/types/validation.js.map +1 -1
  54. package/dist/esm/validations/action-kind.js +67 -0
  55. package/dist/esm/validations/action-kind.js.map +1 -0
  56. package/dist/esm/validations/evm-required-actions.js +2 -2
  57. package/dist/esm/validations/evm-required-actions.js.map +1 -1
  58. package/dist/esm/validations/evm-sign712.js +4 -4
  59. package/dist/esm/validations/evm-sign712.js.map +1 -1
  60. package/dist/esm/validations/hooks-common.js +2 -0
  61. package/dist/esm/validations/hooks-common.js.map +1 -1
  62. package/dist/esm/validations/intent-destinations.js +29 -4
  63. package/dist/esm/validations/intent-destinations.js.map +1 -1
  64. package/dist/esm/validations/intent.js +8 -8
  65. package/dist/esm/validations/intent.js.map +1 -1
  66. package/dist/esm/validations/interactions.js +147 -0
  67. package/dist/esm/validations/interactions.js.map +1 -0
  68. package/dist/esm/validations/required-actions.js +5 -30
  69. package/dist/esm/validations/required-actions.js.map +1 -1
  70. package/dist/esm/validations/solana-op-budget.js +27 -9
  71. package/dist/esm/validations/solana-op-budget.js.map +1 -1
  72. package/dist/esm/validations/solana-op-wrap.js +24 -4
  73. package/dist/esm/validations/solana-op-wrap.js.map +1 -1
  74. package/dist/esm/validations/trade-grouping.js +41 -27
  75. package/dist/esm/validations/trade-grouping.js.map +1 -1
  76. package/dist/esm/validator.js +43 -7
  77. package/dist/esm/validator.js.map +1 -1
  78. package/dist/types/helpers/address.d.ts +1 -0
  79. package/dist/types/helpers/address.d.ts.map +1 -1
  80. package/dist/types/helpers/evm-intent-id.d.ts +1 -1
  81. package/dist/types/helpers/evm-intent-id.d.ts.map +1 -1
  82. package/dist/types/helpers/interactions.d.ts +13 -0
  83. package/dist/types/helpers/interactions.d.ts.map +1 -0
  84. package/dist/types/helpers/solana-instruction.d.ts.map +1 -1
  85. package/dist/types/types/request.d.ts +21 -0
  86. package/dist/types/types/request.d.ts.map +1 -1
  87. package/dist/types/types/response.d.ts +25 -0
  88. package/dist/types/types/response.d.ts.map +1 -1
  89. package/dist/types/types/validation.d.ts +8 -0
  90. package/dist/types/types/validation.d.ts.map +1 -1
  91. package/dist/types/validations/action-kind.d.ts +3 -0
  92. package/dist/types/validations/action-kind.d.ts.map +1 -0
  93. package/dist/types/validations/evm-required-actions.d.ts +1 -1
  94. package/dist/types/validations/evm-required-actions.d.ts.map +1 -1
  95. package/dist/types/validations/evm-sign712.d.ts +1 -1
  96. package/dist/types/validations/evm-sign712.d.ts.map +1 -1
  97. package/dist/types/validations/hooks-common.d.ts.map +1 -1
  98. package/dist/types/validations/intent.d.ts +1 -1
  99. package/dist/types/validations/intent.d.ts.map +1 -1
  100. package/dist/types/validations/interactions.d.ts +5 -0
  101. package/dist/types/validations/interactions.d.ts.map +1 -0
  102. package/dist/types/validations/required-actions.d.ts +1 -1
  103. package/dist/types/validations/required-actions.d.ts.map +1 -1
  104. package/dist/types/validations/solana-op-budget.d.ts.map +1 -1
  105. package/dist/types/validations/solana-op-wrap.d.ts.map +1 -1
  106. package/dist/types/validations/trade-grouping.d.ts +1 -1
  107. package/dist/types/validations/trade-grouping.d.ts.map +1 -1
  108. package/dist/types/validator.d.ts.map +1 -1
  109. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactions.js","sourceRoot":"","sources":["../../../src/validations/interactions.ts"],"names":[],"mappings":"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"}
@@ -5,14 +5,15 @@ const types_1 = require("../types");
5
5
  const enums_1 = require("../types/enums");
6
6
  const evm_required_actions_1 = require("./evm-required-actions");
7
7
  const solana_required_actions_1 = require("./solana-required-actions");
8
+ const action_kind_1 = require("./action-kind");
8
9
  const address_1 = require("../helpers/address");
9
- function validateRequiredActions(request, response, contexts, quoteMode, envConfig, syntheticNativeWrapMode) {
10
+ function validateRequiredActions(request, response, contexts, quoteMode, envConfig, syntheticNativeWrapMode, interactionAware) {
10
11
  const violations = [];
11
12
  for (const ctx of contexts) {
12
13
  const basePath = `response.intents[${ctx.intentIndex}]`;
13
14
  const { realChainId } = ctx.tradeGroup;
14
15
  const allActions = ctx.intentPayload.requiredActions;
15
- violations.push(...validateActionKindConsistency(allActions, basePath, realChainId));
16
+ violations.push(...(0, action_kind_1.validateRequiredActionChainFamily)(allActions, basePath, realChainId));
16
17
  // Dispatch to chain-specific validator based on realChainId.
17
18
  // "Transaction" exists in both EvmActionKind and SolanaActionKind,
18
19
  // so we must use chain context to disambiguate.
@@ -25,7 +26,7 @@ function validateRequiredActions(request, response, contexts, quoteMode, envConf
25
26
  }
26
27
  else {
27
28
  const evmActions = filterEvmActions(allActions);
28
- violations.push(...(0, evm_required_actions_1.validateEvmRequiredActions)(request, response, evmActions, basePath, realChainId, quoteMode, ctx.intentPayload.intent, ctx.intentTrades, ctx.intentResponseTrades, ctx.tradeGroup.srcChainAuthorityAddress, envConfig, syntheticNativeWrapMode, ctx.quoteTradeSubsetUnverifiable));
29
+ violations.push(...(0, evm_required_actions_1.validateEvmRequiredActions)(request, response, evmActions, basePath, realChainId, quoteMode, ctx.intentPayload.intent, ctx.intentTrades, ctx.intentResponseTrades, ctx.tradeGroup.srcChainAuthorityAddress, envConfig, syntheticNativeWrapMode, ctx.quoteTradeSubsetUnverifiable, interactionAware));
29
30
  }
30
31
  }
31
32
  return violations;
@@ -42,30 +43,4 @@ function isSolanaAction(action) {
42
43
  function filterSolanaActions(actions) {
43
44
  return actions.filter(isSolanaAction);
44
45
  }
45
- const EVM_ACTION_OPERATIONS = new Set(Object.values(types_1.EvmActionOperation));
46
- const SOLANA_ACTION_OPERATIONS = new Set(Object.values(types_1.SolanaActionOperation));
47
- // CRITICAL: Each requiredAction must have consistent kind across all fields.
48
- // Uses realChainId to determine expected kind (avoids ambiguity from overlapping type strings).
49
- function validateActionKindConsistency(actions, basePath, realChainId) {
50
- const isSolanaChain = (0, address_1.getChainEngine)(realChainId) === enums_1.ChainEngine.Solana;
51
- const expectedOps = isSolanaChain ? SOLANA_ACTION_OPERATIONS : EVM_ACTION_OPERATIONS;
52
- const chainLabel = isSolanaChain ? "Solana" : "EVM";
53
- const violations = [];
54
- for (let i = 0; i < actions.length; i++) {
55
- const action = actions[i];
56
- const actionPath = `${basePath}.requiredActions[${i}]`;
57
- const invalidOps = action.actions.filter(op => !expectedOps.has(op));
58
- if (invalidOps.length > 0) {
59
- violations.push({
60
- code: types_1.ViolationCode.RequiredActionKindInconsistent,
61
- message: `${chainLabel} action type "${action.type}" has non-${chainLabel}`
62
- + ` operations: ${invalidOps.join(", ")}`,
63
- path: `${actionPath}.actions`,
64
- expected: [...expectedOps],
65
- actual: action.actions,
66
- });
67
- }
68
- }
69
- return violations;
70
- }
71
46
  //# sourceMappingURL=required-actions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"required-actions.js","sourceRoot":"","sources":["../../../src/validations/required-actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"required-actions.js","sourceRoot":"","sources":["../../../src/validations/required-actions.ts"],"names":[],"mappings":";;AAoBA,0DAiEC;AArFD,oCAWkB;AAClB,0CAA6C;AAC7C,iEAAoE;AACpE,uEAA0E;AAC1E,+CAAkE;AAGlE,gDAAoD;AAEpD,SAAgB,uBAAuB,CACnC,OAA8B,EAC9B,QAAgC,EAChC,QAAyB,EACzB,SAAkB,EAClB,SAA4B,EAC5B,uBAAgC,EAChC,gBAAyB;IAEzB,MAAM,UAAU,GAAgB,EAAE,CAAC;IAEnC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,oBAAoB,GAAG,CAAC,WAAW,GAAG,CAAC;QACxD,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,UAAU,CAAC;QACvC,MAAM,UAAU,GAAG,GAAG,CAAC,aAAa,CAAC,eAAe,CAAC;QAErD,UAAU,CAAC,IAAI,CAAC,GAAG,IAAA,+CAAiC,EAAC,UAAU,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;QAEzF,6DAA6D;QAC7D,mEAAmE;QACnE,gDAAgD;QAChD,gEAAgE;QAChE,sEAAsE;QACtE,iCAAiC;QACjC,IAAI,IAAA,wBAAc,EAAC,WAAW,CAAC,KAAK,mBAAW,CAAC,MAAM,EAAE,CAAC;YACrD,MAAM,aAAa,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;YACtD,UAAU,CAAC,IAAI,CACX,GAAG,IAAA,uDAA6B,EAC5B,OAAO,EACP,aAAa,EACb,QAAQ,EACR,WAAW,EACX,SAAS,EACT,GAAG,CAAC,YAAY,EAChB,GAAG,CAAC,oBAAoB,EACxB,GAAG,CAAC,UAAU,CAAC,wBAAwB,EACvC,GAAG,CAAC,aAAa,CAAC,MAAM,EACxB,SAAS,EACT,GAAG,CAAC,4BAA4B,CACnC,CACJ,CAAC;QACN,CAAC;aAAM,CAAC;YACJ,MAAM,UAAU,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;YAChD,UAAU,CAAC,IAAI,CACX,GAAG,IAAA,iDAA0B,EACzB,OAAO,EACP,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,WAAW,EACX,SAAS,EACT,GAAG,CAAC,aAAa,CAAC,MAAM,EACxB,GAAG,CAAC,YAAY,EAChB,GAAG,CAAC,oBAAoB,EACxB,GAAG,CAAC,UAAU,CAAC,wBAAwB,EACvC,SAAS,EACT,uBAAuB,EACvB,GAAG,CAAC,4BAA4B,EAChC,gBAAgB,CACnB,CACJ,CAAC;QACN,CAAC;IACL,CAAC;IAED,OAAO,UAAU,CAAC;AACtB,CAAC;AAED,SAAS,WAAW,CAAC,MAA8B;IAC/C,OAAO,MAAM,CAAC,MAAM,CAAC,qBAAa,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAqB,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAiC;IACvD,OAAO,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,cAAc,CAAC,MAA8B;IAClD,OAAO,MAAM,CAAC,MAAM,CAAC,wBAAgB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAwB,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAiC;IAC1D,OAAO,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;AAC1C,CAAC"}
@@ -25,19 +25,24 @@ function validateSolanaBudgetInstructions(action, resolvedInstructions, actionPa
25
25
  }];
26
26
  }
27
27
  // Find all approve instructions in the transaction
28
- const approveInstructions = collectApproveInstructions(resolvedInstructions, envConfig.solanaIntentProgram);
28
+ const approveCollection = collectApproveInstructions(resolvedInstructions, envConfig.solanaIntentProgram, actionPath);
29
+ const approveInstructions = approveCollection.instructions;
29
30
  // HIGH: if actions[] contains "Budget" at least one approve instruction must be present
30
- if (hasBudgetAction && approveInstructions.length === 0) {
31
+ if (hasBudgetAction
32
+ && approveInstructions.length === 0
33
+ && approveCollection.violations.length === 0) {
31
34
  return [{
32
35
  code: types_1.ViolationCode.SolanaBudgetNoApproveInstruction,
33
36
  message: "actions[] contains \"Budget\" but no approve instruction found in transaction",
34
37
  path: `${actionPath}.data.data`,
35
38
  }];
36
39
  }
37
- // If no budget action declared and no approve instructions — nothing to validate
40
+ // If no budget action is declared, still surface malformed approve-like
41
+ // instructions that were detected during collection; otherwise there is
42
+ // nothing budget-specific to validate here.
38
43
  if (!hasBudgetAction)
39
- return [];
40
- const violations = [];
44
+ return approveCollection.violations;
45
+ const violations = [...approveCollection.violations];
41
46
  for (let i = 0; i < approveInstructions.length; i++) {
42
47
  const approve = approveInstructions[i];
43
48
  const ixLabel = `approve instruction #${i}`;
@@ -125,17 +130,30 @@ function customAggregateAmountViolation(actionPath, entry, expected) {
125
130
  // =============================================
126
131
  // Collect approve instructions
127
132
  // =============================================
128
- function collectApproveInstructions(instructions, intentProgram) {
133
+ function collectApproveInstructions(instructions, intentProgram, actionPath) {
129
134
  const result = [];
130
- for (const ix of instructions) {
135
+ const violations = [];
136
+ for (let i = 0; i < instructions.length; i++) {
137
+ const ix = instructions[i];
131
138
  if ((0, solana_instruction_1.isClassicApprove)(ix)) {
132
139
  result.push((0, solana_instruction_1.decodeClassicApprove)(ix));
133
140
  }
134
141
  else if ((0, solana_instruction_1.isCustomApprove)(ix, intentProgram)) {
135
- result.push((0, solana_instruction_1.decodeCustomApprove)(ix));
142
+ try {
143
+ result.push((0, solana_instruction_1.decodeCustomApprove)(ix));
144
+ }
145
+ catch (error) {
146
+ violations.push({
147
+ code: types_1.ViolationCode.SolanaBudgetCustomApproveDecodeError,
148
+ message: "custom approve instruction could not be decoded",
149
+ path: `${actionPath}.data.data`,
150
+ actual: { instructionIndex: i, dataLength: ix.data.length },
151
+ details: error,
152
+ });
153
+ }
136
154
  }
137
155
  }
138
- return result;
156
+ return { instructions: result, violations };
139
157
  }
140
158
  // =============================================
141
159
  // Classic SPL Token Approve validation
@@ -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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"}
@@ -63,7 +63,9 @@ function validateSolanaWrapInstructions(action, resolvedInstructions, actionPath
63
63
  });
64
64
  }
65
65
  // Compute expected wSOL ATA (only in execution mode)
66
- const expectedWsolAta = computeExpectedWsolAta(quoteMode, srcChainAuthorityAddress);
66
+ const expectedWsolAtaResult = computeExpectedWsolAta(quoteMode, srcChainAuthorityAddress);
67
+ const expectedWsolAta = expectedWsolAtaResult.ata;
68
+ violations.push(...expectedWsolAtaResult.violations);
67
69
  // Validate CreateAssociatedTokenAccountIdempotent (optional)
68
70
  for (const ix of createAtaIxs) {
69
71
  violations.push(...validateCreateAtaInstruction(ix, actionPath, realChainId, quoteMode, srcChainAuthorityAddress, expectedWsolAta));
@@ -203,10 +205,28 @@ function validateSyncNativeInstruction(ix, actionPath, expectedWsolAta, realChai
203
205
  // Helpers
204
206
  // =============================================
205
207
  function computeExpectedWsolAta(quoteMode, srcChainAuthorityAddress) {
206
- if (quoteMode || !srcChainAuthorityAddress)
207
- return undefined;
208
+ if (quoteMode || !srcChainAuthorityAddress) {
209
+ return { ata: undefined, violations: [] };
210
+ }
208
211
  // wSOL uses standard SPL Token program
209
- return (0, solana_instruction_1.deriveAta)(srcChainAuthorityAddress, programs_1.SPL_NATIVE_MINT, programs_1.SPL_TOKEN_PROGRAM);
212
+ try {
213
+ return {
214
+ ata: (0, solana_instruction_1.deriveAta)(srcChainAuthorityAddress, programs_1.SPL_NATIVE_MINT, programs_1.SPL_TOKEN_PROGRAM),
215
+ violations: [],
216
+ };
217
+ }
218
+ catch (error) {
219
+ return {
220
+ ata: undefined,
221
+ violations: [{
222
+ code: types_1.ViolationCode.RequestTradeAddressInvalid,
223
+ message: "request.trades[].srcChainAuthorityAddress is not a valid Solana address",
224
+ path: "request.trades[].srcChainAuthorityAddress",
225
+ actual: srcChainAuthorityAddress,
226
+ details: error,
227
+ }],
228
+ };
229
+ }
210
230
  }
211
231
  // Sums `response.trades[i].srcChainTokenIn.amount` for all trades that use
212
232
  // native SOL. This is the post-mutation amount used by the API to build
@@ -1 +1 @@
1
- {"version":3,"file":"solana-op-wrap.js","sourceRoot":"","sources":["../../../src/validations/solana-op-wrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"solana-op-wrap.js","sourceRoot":"","sources":["../../../src/validations/solana-op-wrap.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ const dln_metadata_1 = require("./dln-metadata");
12
12
  const external_call_1 = require("./external-call");
13
13
  const trade_matching_1 = require("./trade-matching");
14
14
  const quote_mode_1 = require("../helpers/quote-mode");
15
+ const interactions_1 = require("../helpers/interactions");
15
16
  // Groups request trades to match them later with response intents.
16
17
  //
17
18
  // Quote mode: groups by srcChainId only (addresses are placeholders).
@@ -113,7 +114,7 @@ function getGroupEntries(trades, responseTrades, quoteMode, consolidationMode, t
113
114
  //
114
115
  // Multiple intents may match the same group. An intent that matches no group
115
116
  // produces a violation.
116
- function matchIntentsToGroups(intents, groups, quoteMode) {
117
+ function matchIntentsToGroups(intents, groups, quoteMode, interactionAware) {
117
118
  const contexts = [];
118
119
  const violations = [];
119
120
  for (let i = 0; i < intents.length; i++) {
@@ -128,7 +129,7 @@ function matchIntentsToGroups(intents, groups, quoteMode) {
128
129
  return true;
129
130
  });
130
131
  if (matched) {
131
- const subset = selectIntentTrades(matched, intent);
132
+ const subset = selectIntentTrades(matched, intent, interactionAware);
132
133
  contexts.push({
133
134
  intentIndex: i,
134
135
  intentPayload,
@@ -150,7 +151,7 @@ function matchIntentsToGroups(intents, groups, quoteMode) {
150
151
  }
151
152
  }
152
153
  violations.push(...validateGroupCoverage(groups, contexts));
153
- violations.push(...validateIntentDifferentiation(contexts));
154
+ violations.push(...validateIntentDifferentiation(contexts, interactionAware));
154
155
  return { contexts, violations };
155
156
  }
156
157
  // CRITICAL: every trade group must have at least one matching intent.
@@ -173,10 +174,10 @@ function validateGroupCoverage(groups, contexts) {
173
174
  }
174
175
  return violations;
175
176
  }
176
- // CRITICAL: intents matched to the same trade group must differ
177
- // in at least one of: externalCallHash, dlnMetadata, executionMetadata.
178
- // Duplicate intents within a group indicate an API bug or MITM attack.
179
- function validateIntentDifferentiation(contexts) {
177
+ // CRITICAL: intents matched to the same trade group must differ in at least
178
+ // one signed-affecting split field. Duplicate intents within a group indicate
179
+ // an API bug or MITM attack.
180
+ function validateIntentDifferentiation(contexts, interactionAware) {
180
181
  const byGroup = new Map();
181
182
  for (const ctx of contexts) {
182
183
  const list = byGroup.get(ctx.tradeGroup) ?? [];
@@ -194,15 +195,14 @@ function validateIntentDifferentiation(contexts) {
194
195
  continue;
195
196
  const seen = new Map();
196
197
  for (const ctx of groupContexts) {
197
- const key = intentDifferentiationKey(ctx.intentPayload.intent);
198
+ const key = intentDifferentiationKey(ctx.intentPayload.intent, ctx.tradeGroup.realChainId, interactionAware);
198
199
  const firstIndex = seen.get(key);
199
200
  if (firstIndex !== undefined) {
200
201
  violations.push({
201
202
  code: types_1.ViolationCode.DuplicateIntentsInTradeGroup,
202
203
  message: `intents[${firstIndex}] and intents[${ctx.intentIndex}]`
203
204
  + ` are in the same trade group but do not differ`
204
- + ` in externalCallHash, dlnMetadata, or`
205
- + ` executionMetadata`,
205
+ + ` in signed-affecting split fields`,
206
206
  path: `response.intents[${ctx.intentIndex}]`,
207
207
  actual: ctx.intentPayload.intent,
208
208
  });
@@ -214,22 +214,25 @@ function validateIntentDifferentiation(contexts) {
214
214
  }
215
215
  return violations;
216
216
  }
217
- function intentDifferentiationKey(intent) {
218
- return [
217
+ function intentDifferentiationKey(intent, realChainId, interactionAware) {
218
+ const parts = [
219
219
  intent.externalCallHash ?? "",
220
220
  (0, dln_metadata_1.normalizeDlnMetadataKey)(intent.dlnMetadata),
221
221
  intent.executionMetadata ?? "",
222
- ].join("|");
222
+ ];
223
+ if (interactionAware) {
224
+ parts.push((0, interactions_1.interactionsKey)(realChainId, intent.preInteractions));
225
+ parts.push((0, interactions_1.interactionsKey)(realChainId, intent.postInteractions));
226
+ }
227
+ return parts.join("|");
223
228
  }
224
- // Picks the trades that the API folded into a single intent.
225
- // API groups trades by `(srcChainId, srcAuthority, dlnHook → externalCallHash,
226
- // dlnMetadata, executionMetadata)`, so trades inside one intent
227
- // share the last three fields with the intent. When all trades in a group
228
- // share the same key (only one intent exists), the whole group belongs to it.
229
- function selectIntentTrades(group, intent) {
229
+ // Picks the trades folded into a single intent. Trades inside one intent share
230
+ // signed-affecting split fields with that intent. When all trades in a group
231
+ // share the same key, the whole group belongs to the single intent.
232
+ function selectIntentTrades(group, intent, interactionAware) {
230
233
  // Distinct keys for trades in the group; if every trade has the same key,
231
234
  // they all belong to the single intent (no ambiguity).
232
- const tradeKeys = group.trades.map((trade, i) => tradeDifferentiationKey(trade, group.responseTrades[i]));
235
+ const tradeKeys = group.trades.map((trade, i) => tradeDifferentiationKey(trade, group.responseTrades[i], group.realChainId, interactionAware));
233
236
  const distinct = new Set(tradeKeys);
234
237
  if (distinct.size <= 1) {
235
238
  return {
@@ -243,7 +246,7 @@ function selectIntentTrades(group, intent) {
243
246
  const responseTrades = [];
244
247
  for (let i = 0; i < group.trades.length; i++) {
245
248
  const trade = group.trades[i];
246
- if (tradeMatchesIntent(trade, group.responseTrades[i], intent)) {
249
+ if (tradeMatchesIntent(trade, group.responseTrades[i], intent, group.realChainId, interactionAware)) {
247
250
  indices.push(i);
248
251
  trades.push(trade);
249
252
  responseTrades.push(group.responseTrades[i]);
@@ -263,16 +266,27 @@ function selectIntentTrades(group, intent) {
263
266
  }
264
267
  return { indices, trades, responseTrades };
265
268
  }
266
- function tradeDifferentiationKey(trade, responseTrade) {
267
- return [
269
+ function tradeDifferentiationKey(trade, responseTrade, realChainId, interactionAware) {
270
+ const parts = [
268
271
  computeTradeExternalCallHash(trade, responseTrade) ?? "",
269
272
  (0, dln_metadata_1.normalizeDlnMetadataKey)(trade.dlnMetadata),
270
- ].join("|");
273
+ ];
274
+ if (interactionAware) {
275
+ parts.push((0, interactions_1.interactionsKey)(realChainId, trade.preInteractions));
276
+ parts.push((0, interactions_1.interactionsKey)(realChainId, trade.postInteractions));
277
+ }
278
+ return parts.join("|");
271
279
  }
272
- function tradeMatchesIntent(trade, responseTrade, intent) {
273
- return ((0, hex_1.hexEquals)(intent.externalCallHash, computeTradeExternalCallHash(trade, responseTrade))
280
+ function tradeMatchesIntent(trade, responseTrade, intent, realChainId, interactionAware) {
281
+ const baseMatches = (0, hex_1.hexEquals)(intent.externalCallHash, computeTradeExternalCallHash(trade, responseTrade))
274
282
  && (0, dln_metadata_1.dlnMetadataEquals)(intent.dlnMetadata, trade.dlnMetadata)
275
- && (0, hex_1.isEmptyHex)(intent.executionMetadata));
283
+ && (0, hex_1.isEmptyHex)(intent.executionMetadata);
284
+ if (!baseMatches)
285
+ return false;
286
+ if (!interactionAware)
287
+ return true;
288
+ return (0, interactions_1.interactionsEqual)(realChainId, intent.preInteractions, trade.preInteractions)
289
+ && (0, interactions_1.interactionsEqual)(realChainId, intent.postInteractions, trade.postInteractions);
276
290
  }
277
291
  // Returns the same hash the API stores in `intent.externalCallHash` for a
278
292
  // request trade, or `undefined` when the trade has no hook. Swallows any
@@ -1 +1 @@
1
- {"version":3,"file":"trade-grouping.js","sourceRoot":"","sources":["../../../src/validations/trade-grouping.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"trade-grouping.js","sourceRoot":"","sources":["../../../src/validations/trade-grouping.ts"],"names":[],"mappings":";;AA6DA,kCAyDC;AAiED,oDAmDC;AA1OD,+BAAiC;AACjC,oCAQkB;AAClB,qFAAwE;AACxE,gDAAqE;AACrE,oEAAgE;AAChE,wCAAuD;AACvD,iDAA4E;AAC5E,mDAA4F;AAC5F,qDAA0D;AAC1D,sDAA+D;AAC/D,0DAA6E;AA6B7E,mEAAmE;AACnE,EAAE;AACF,sEAAsE;AACtE,EAAE;AACF,oEAAoE;AACpE,EAAE;AACF,0EAA0E;AAC1E,8EAA8E;AAC9E,4CAA4C;AAC5C,EAAE;AACF,yEAAyE;AACzE,4DAA4D;AAC5D,4EAA4E;AAC5E,wDAAwD;AACxD,SAAgB,WAAW,CACvB,MAAsB,EACtB,cAA+B,EAC/B,SAAkB,EAClB,iBAAiB,GAAG,KAAK,EACzB,UAAwB;IAExB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC1C,MAAM,UAAU,GAAgB,EAAE,CAAC;IAEnC,+EAA+E;IAC/E,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;IAE1C,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,iBAAiB,EAAE,UAAU,CAAC,CAAC;IAClG,UAAU,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAEvC,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAChC,MAAM,WAAW,GAAG,IAAA,yCAAc,EAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAE3D,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5B,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC/C,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBAC5C,gEAAgE;gBAChE,UAAU,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,qBAAa,CAAC,qBAAqB;oBACzC,OAAO,EAAE,cAAc,KAAK,CAAC,KAAK,CAAC,UAAU,gCAAgC;oBAC7E,IAAI,EAAE,kBAAkB,KAAK,CAAC,YAAY,cAAc;oBACxD,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU;iBACjC,CAAC,CAAC;YACP,CAAC;YACD,SAAS;QACb,CAAC;QAED,MAAM,GAAG,GAAG,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QAElE,IAAI,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,KAAK,GAAG;gBACJ,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU;gBAClC,wBAAwB,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,wBAAwB;gBACtF,WAAW;gBACX,YAAY,EAAE,EAAE;gBAChB,MAAM,EAAE,EAAE;gBACV,cAAc,EAAE,EAAE;gBAClB,yBAAyB,EAAE,KAAK;aACnC,CAAC;YACF,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACxB,CAAC;QACD,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC5C,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC/B,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC/C,IAAI,SAAS,IAAI,IAAA,mCAAsB,EAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACnD,KAAK,CAAC,yBAAyB,GAAG,IAAI,CAAC;QAC3C,CAAC;IACL,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC;AAC5D,CAAC;AAED,SAAS,gBAAgB,CACrB,KAAmB,EACnB,WAAoB,EACpB,SAAkB;IAElB,IAAI,SAAS;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAE/C,MAAM,SAAS,GAAG,KAAK,CAAC,wBAAwB,KAAK,SAAS;QAC1D,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,IAAA,0BAAgB,EAAC,WAAW,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAEpE,OAAO,GAAG,KAAK,CAAC,UAAU,IAAI,SAAS,EAAE,CAAC;AAC9C,CAAC;AAQD,SAAS,eAAe,CACpB,MAAsB,EACtB,cAA+B,EAC/B,SAAkB,EAClB,iBAA0B,EAC1B,UAAwB;IAExB,0EAA0E;IAC1E,4EAA4E;IAC5E,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACrB,OAAO;YACH,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;gBACxC,YAAY;gBACZ,KAAK;gBACL,aAAa,EAAE,cAAc,CAAC,YAAY,CAAC;aAC9C,CAAC,CAAC;YACH,UAAU,EAAE,EAAE;SACjB,CAAC;IACN,CAAC;IAED,MAAM,WAAW,GAAG,UAAU,KAAK,SAAS;QACxC,CAAC,CAAC,IAAA,4BAAW,EAAC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,IAAI,CAAC;QACtD,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;IAE5C,OAAO;QACH,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAClC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,KAAK,EAAE,IAAI,CAAC,YAAY;YACxB,aAAa,EAAE,IAAI,CAAC,aAAa;SACpC,CAAC,CAAC;QACH,UAAU,EAAE,WAAW,CAAC,UAAU;KACrC,CAAC;AACN,CAAC;AAED,mDAAmD;AACnD,EAAE;AACF,4DAA4D;AAC5D,EAAE;AACF,sFAAsF;AACtF,sBAAsB;AACtB,EAAE;AACF,6EAA6E;AAC7E,wBAAwB;AACxB,SAAgB,oBAAoB,CAChC,OAAgC,EAChC,MAAoB,EACpB,SAAkB,EAClB,gBAAyB;IAEzB,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,MAAM,UAAU,GAAgB,EAAE,CAAC;IAEnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;QAEpC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;YAC5B,IAAI,CAAC,CAAC,UAAU,KAAK,MAAM,CAAC,aAAa;gBAAE,OAAO,KAAK,CAAC;YACxD,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,wBAAwB,KAAK,SAAS,EAAE,CAAC;gBACzD,OAAO,IAAA,uBAAa,EAChB,CAAC,CAAC,WAAW,EACb,CAAC,CAAC,wBAAwB,EAC1B,MAAM,CAAC,WAAW,CACrB,CAAC;YACN,CAAC;YACD,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,IAAI,OAAO,EAAE,CAAC;YACV,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC;YACrE,QAAQ,CAAC,IAAI,CAAC;gBACV,WAAW,EAAE,CAAC;gBACd,aAAa;gBACb,UAAU,EAAE,OAAO;gBACnB,kBAAkB,EAAE,MAAM,CAAC,OAAO;gBAClC,YAAY,EAAE,MAAM,CAAC,MAAM;gBAC3B,oBAAoB,EAAE,MAAM,CAAC,cAAc;gBAC3C,4BAA4B,EAAE,OAAO,CAAC,yBAAyB,KAAK,IAAI;aAC3E,CAAC,CAAC;QACP,CAAC;aAAM,CAAC;YACJ,UAAU,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,qBAAa,CAAC,4BAA4B;gBAChD,OAAO,EAAE,UAAU,CAAC,eAAe,MAAM,CAAC,QAAQ,kCAAkC;gBACpF,IAAI,EAAE,oBAAoB,CAAC,GAAG;gBAC9B,QAAQ,EAAE,SAAS;gBACnB,MAAM,EAAE,MAAM;aACjB,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,UAAU,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC5D,UAAU,CAAC,IAAI,CAAC,GAAG,6BAA6B,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAE9E,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;AACpC,CAAC;AAED,sEAAsE;AACtE,SAAS,qBAAqB,CAC1B,MAAoB,EACpB,QAAyB;IAEzB,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;IACnE,MAAM,UAAU,GAAgB,EAAE,CAAC;IAEnC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACzB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,MAAM,SAAS,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChD,UAAU,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,qBAAa,CAAC,qBAAqB;gBACzC,OAAO,EACH,2BAA2B,KAAK,CAAC,UAAU,GAAG;sBAC5C,cAAc,KAAK,CAAC,wBAAwB,IAAI,OAAO,GAAG;sBAC1D,yBAAyB;sBACzB,sBAAsB,SAAS,IAAI;gBACzC,IAAI,EAAE,kBAAkB;gBACxB,QAAQ,EAAE,KAAK;aAClB,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,OAAO,UAAU,CAAC;AACtB,CAAC;AAED,4EAA4E;AAC5E,8EAA8E;AAC9E,6BAA6B;AAC7B,SAAS,6BAA6B,CAClC,QAAyB,EACzB,gBAAyB;IAEzB,MAAM,OAAO,GAAG,IAAI,GAAG,EAA+B,CAAC;IACvD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QAC/C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,UAAU,GAAgB,EAAE,CAAC;IAEnC,KAAK,MAAM,CAAC,EAAE,aAAa,CAAC,IAAI,OAAO,EAAE,CAAC;QACtC,IAAI,aAAa,CAAC,MAAM,IAAI,CAAC;YAAE,SAAS;QAExC,kEAAkE;QAClE,oEAAoE;QACpE,mEAAmE;QACnE,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,yBAAyB,KAAK,IAAI;YAAE,SAAS;QAE7E,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;QACvC,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YAC9B,MAAM,GAAG,GAAG,wBAAwB,CAChC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,WAAW,EAAE,gBAAgB,CACzE,CAAC;YACF,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAEjC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC3B,UAAU,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,qBAAa,CAAC,4BAA4B;oBAChD,OAAO,EACH,WAAW,UAAU,iBAAiB,GAAG,CAAC,WAAW,GAAG;0BACtD,gDAAgD;0BAChD,mCAAmC;oBACzC,IAAI,EAAE,oBAAoB,GAAG,CAAC,WAAW,GAAG;oBAC5C,MAAM,EAAE,GAAG,CAAC,aAAa,CAAC,MAAM;iBACnC,CAAC,CAAC;YACP,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;YACnC,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO,UAAU,CAAC;AACtB,CAAC;AAED,SAAS,wBAAwB,CAC7B,MAAsB,EACtB,WAAoB,EACpB,gBAAyB;IAEzB,MAAM,KAAK,GAAG;QACV,MAAM,CAAC,gBAAgB,IAAI,EAAE;QAC7B,IAAA,sCAAuB,EAAC,MAAM,CAAC,WAAW,CAAC;QAC3C,MAAM,CAAC,iBAAiB,IAAI,EAAE;KACjC,CAAC;IAEF,IAAI,gBAAgB,EAAE,CAAC;QACnB,KAAK,CAAC,IAAI,CAAC,IAAA,8BAAe,EAAC,WAAW,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,IAAA,8BAAe,EAAC,WAAW,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC;AAED,+EAA+E;AAC/E,6EAA6E;AAC7E,oEAAoE;AACpE,SAAS,kBAAkB,CACvB,KAAiB,EACjB,MAAsB,EACtB,gBAAyB;IAMzB,0EAA0E;IAC1E,uDAAuD;IACvD,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAC9B,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,uBAAuB,CACjC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,EAAE,gBAAgB,CACtE,CACJ,CAAC;IACF,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IACpC,IAAI,QAAQ,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;QACrB,OAAO;YACH,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YACtC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE;YAC5B,cAAc,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,EAAE;SAC/C,CAAC;IACN,CAAC;IAED,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAmB,EAAE,CAAC;IAClC,MAAM,cAAc,GAAkC,EAAE,CAAC;IACzD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,kBAAkB,CAClB,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,EAAE,gBAAgB,CAC9E,EAAE,CAAC;YACA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnB,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;QACjD,CAAC;IACL,CAAC;IACD,uEAAuE;IACvE,oEAAoE;IACpE,oEAAoE;IACpE,+DAA+D;IAC/D,yBAAyB;IACzB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO;YACH,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YACtC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE;YAC5B,cAAc,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,EAAE;SAC/C,CAAC;IACN,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;AAC/C,CAAC;AAED,SAAS,uBAAuB,CAC5B,KAAmB,EACnB,aAAwC,EACxC,WAAoB,EACpB,gBAAyB;IAEzB,MAAM,KAAK,GAAG;QACV,4BAA4B,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,EAAE;QACxD,IAAA,sCAAuB,EAAC,KAAK,CAAC,WAAW,CAAC;KAC7C,CAAC;IAEF,IAAI,gBAAgB,EAAE,CAAC;QACnB,KAAK,CAAC,IAAI,CAAC,IAAA,8BAAe,EAAC,WAAW,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;QAChE,KAAK,CAAC,IAAI,CAAC,IAAA,8BAAe,EAAC,WAAW,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,kBAAkB,CACvB,KAAmB,EACnB,aAAwC,EACxC,MAAsB,EACtB,WAAoB,EACpB,gBAAyB;IAEzB,MAAM,WAAW,GAAG,IAAA,eAAS,EAAC,MAAM,CAAC,gBAAgB,EAAE,4BAA4B,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;WACnG,IAAA,gCAAiB,EAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC;WACxD,IAAA,gBAAU,EAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAE5C,IAAI,CAAC,WAAW;QAAE,OAAO,KAAK,CAAC;IAC/B,IAAI,CAAC,gBAAgB;QAAE,OAAO,IAAI,CAAC;IAEnC,OAAO,IAAA,gCAAiB,EAAC,WAAW,EAAE,MAAM,CAAC,eAAe,EAAE,KAAK,CAAC,eAAe,CAAC;WAC7E,IAAA,gCAAiB,EAAC,WAAW,EAAE,MAAM,CAAC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAC3F,CAAC;AAED,0EAA0E;AAC1E,yEAAyE;AACzE,gFAAgF;AAChF,6DAA6D;AAC7D,uDAAuD;AACvD,SAAS,4BAA4B,CACjC,KAAmB,EACnB,aAAwC;IAExC,MAAM,YAAY,GAAG,IAAA,2CAA2B,EAAC,aAAa,CAAC,CAAC;IAChE,IAAI,YAAY,CAAC,IAAI,KAAK,4CAA4B,CAAC,IAAI,EAAE,CAAC;QAC1D,OAAO,YAAY,CAAC,IAAiC,CAAC;IAC1D,CAAC;IAED,2EAA2E;IAC3E,8EAA8E;IAC9E,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,IAAA,oCAAgB,EAAC,KAAK,CAAC,CAAC;QACvC,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAA,gBAAS,EAAC,MAAM,CAAC,CAAC;IAChE,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,SAAS,CAAC;IACrB,CAAC;AACL,CAAC"}
@@ -17,9 +17,11 @@ const dln_metadata_1 = require("./validations/dln-metadata");
17
17
  const external_call_1 = require("./validations/external-call");
18
18
  const trade_matching_1 = require("./validations/trade-matching");
19
19
  const refill_1 = require("./validations/refill");
20
+ const interactions_1 = require("./validations/interactions");
20
21
  const environment_config_1 = require("./whitelists/environment-config");
21
22
  const synthetic_native_wrap_1 = require("./helpers/synthetic-native-wrap");
22
23
  const quote_mode_1 = require("./helpers/quote-mode");
24
+ const SUPPORTED_VALIDATION_VERSION = 2n;
23
25
  function createValidator(config) {
24
26
  const envConfig = (0, environment_config_1.buildEnvironmentConfig)(config.environment);
25
27
  const options = {
@@ -39,6 +41,10 @@ function createValidator(config) {
39
41
  }
40
42
  function validateInternal(_url, // TODO: not validated now, enable in the future
41
43
  request, response, envConfig, options) {
44
+ const higherVersionViolation = validateSupportedValidationVersion(response);
45
+ if (higherVersionViolation !== undefined) {
46
+ return { ok: false, violations: [higherVersionViolation] };
47
+ }
42
48
  const violations = [];
43
49
  // TODO: uncomment in the future to enable url validation
44
50
  // violations.push(...validateUrl(url));
@@ -51,12 +57,38 @@ request, response, envConfig, options) {
51
57
  // the structure issues.
52
58
  return { ok: false, violations };
53
59
  }
54
- violations.push(...validateBundleCreation(reqResult.data, resResult.data, envConfig, options));
60
+ violations.push(...validateBundleCreation(reqResult.data, resResult.data, envConfig, options, BigInt(resResult.data.validationVersion)));
55
61
  return {
56
62
  ok: violations.length === 0,
57
63
  violations,
58
64
  };
59
65
  }
66
+ function validateSupportedValidationVersion(response) {
67
+ const validationVersion = getRawValidationVersion(response);
68
+ const parsedValidationVersion = parseRawValidationVersion(validationVersion);
69
+ if (parsedValidationVersion !== undefined
70
+ && parsedValidationVersion > SUPPORTED_VALIDATION_VERSION) {
71
+ return {
72
+ code: types_1.ViolationCode.HigherApiVersion,
73
+ message: "API validationVersion is higher than supported by this validator",
74
+ path: "response.validationVersion",
75
+ expected: Number(SUPPORTED_VALIDATION_VERSION),
76
+ actual: validationVersion,
77
+ };
78
+ }
79
+ return undefined;
80
+ }
81
+ function parseRawValidationVersion(validationVersion) {
82
+ if (typeof validationVersion !== "string" || !/^-?\d+$/.test(validationVersion)) {
83
+ return undefined;
84
+ }
85
+ return BigInt(validationVersion);
86
+ }
87
+ function getRawValidationVersion(response) {
88
+ if (response === null || typeof response !== "object" || Array.isArray(response))
89
+ return undefined;
90
+ return response.validationVersion;
91
+ }
60
92
  function buildStructureViolations(reqResult, resResult) {
61
93
  const violations = [];
62
94
  if (!reqResult.success) {
@@ -88,15 +120,16 @@ function createUnexpectedValidationError(error) {
88
120
  }],
89
121
  };
90
122
  }
91
- function validateBundleCreation(request, response, envConfig, options) {
92
- const context = buildBundleValidationContext(request, response, envConfig, options);
123
+ function validateBundleCreation(request, response, envConfig, options, validationVersion) {
124
+ const context = buildBundleValidationContext(request, response, envConfig, options, validationVersion);
93
125
  return runBundleValidations(context);
94
126
  }
95
- function buildBundleValidationContext(request, response, envConfig, options) {
127
+ function buildBundleValidationContext(request, response, envConfig, options, validationVersion) {
96
128
  const modes = detectBundleModes(request, response);
129
+ const interactionAware = validationVersion >= 2n;
97
130
  const tradeMatch = (0, trade_matching_1.matchTrades)(request.trades, response.trades, modes.quoteMode, modes.consolidationMode);
98
131
  const groupResult = (0, trade_grouping_1.groupTrades)(request.trades, response.trades, modes.quoteMode, modes.consolidationMode, tradeMatch.pairs);
99
- const intentMatch = (0, trade_grouping_1.matchIntentsToGroups)(response.intents, groupResult.groups, modes.quoteMode);
132
+ const intentMatch = (0, trade_grouping_1.matchIntentsToGroups)(response.intents, groupResult.groups, modes.quoteMode, interactionAware);
100
133
  return {
101
134
  request,
102
135
  response,
@@ -108,6 +141,7 @@ function buildBundleValidationContext(request, response, envConfig, options) {
108
141
  groupViolations: groupResult.violations,
109
142
  intentContexts: intentMatch.contexts,
110
143
  intentMatchViolations: intentMatch.violations,
144
+ interactionAware,
111
145
  };
112
146
  }
113
147
  function detectBundleModes(request, response) {
@@ -130,11 +164,13 @@ function runBundleValidations(context) {
130
164
  ...(0, ptp_1.validatePtp)(request, response),
131
165
  ...(0, dln_metadata_1.validateRequestDlnMetadataFormat)(request.trades),
132
166
  ...(0, external_call_1.validateExternalCalls)(modes.quoteMode, context.tradeMatch.pairs),
167
+ ...(0, interactions_1.validateRequestInteractions)(request.trades, context.interactionAware),
133
168
  ...(0, refill_1.validateRefill)(request, response, context.intentContexts, modes.quoteMode),
134
169
  ...context.groupViolations,
135
170
  ...context.intentMatchViolations,
136
- ...(0, intent_1.validateIntents)(context.intentContexts, modes.quoteMode, envConfig, modes.syntheticNativeWrapMode, options.validateSolverExecutorAddress),
137
- ...(0, required_actions_1.validateRequiredActions)(request, response, context.intentContexts, modes.quoteMode, envConfig, modes.syntheticNativeWrapMode),
171
+ ...(0, interactions_1.validateIntentInteractions)(context.intentContexts, context.interactionAware),
172
+ ...(0, intent_1.validateIntents)(context.intentContexts, modes.quoteMode, envConfig, modes.syntheticNativeWrapMode, options.validateSolverExecutorAddress, context.interactionAware),
173
+ ...(0, required_actions_1.validateRequiredActions)(request, response, context.intentContexts, modes.quoteMode, envConfig, modes.syntheticNativeWrapMode, context.interactionAware),
138
174
  ...(0, hooks_common_1.validateHooks)(request, response, modes.quoteMode, envConfig, options),
139
175
  ];
140
176
  }