Skip to content

Commit 5a8cbbc

Browse files
authored
Merge branch 'main' into solana/fix-proposals
2 parents 6f60709 + d0ffbae commit 5a8cbbc

File tree

3 files changed

+29
-16
lines changed

3 files changed

+29
-16
lines changed

solana/ts/src/matchingEngine/index.ts

+21-3
Original file line numberDiff line numberDiff line change
@@ -980,7 +980,7 @@ export class MatchingEngineProgram {
980980
}) {
981981
const {
982982
payer,
983-
preparedOrderResponse,
983+
preparedOrderResponse: inputPreparedOrderResponse,
984984
auction,
985985
fastVaa,
986986
executorToken,
@@ -992,6 +992,10 @@ export class MatchingEngineProgram {
992992
const mint = this.mint;
993993
const auctionAddress = auction ?? this.auctionAddress(fastVaaAccount.digest());
994994

995+
const preparedOrderResponse =
996+
inputPreparedOrderResponse ??
997+
this.preparedOrderResponseAddress(payer, fastVaaAccount.digest());
998+
995999
const { auctionConfig, bestOfferToken } = await (async () => {
9961000
if (inputAuctionConfig === undefined || inputBestOfferToken === undefined) {
9971001
const { info } = await this.fetchAuction({ address: auctionAddress });
@@ -1084,7 +1088,7 @@ export class MatchingEngineProgram {
10841088
payer,
10851089
auction: inputAuction,
10861090
executorToken,
1087-
preparedOrderResponse,
1091+
preparedOrderResponse: inputPreparedOrderResponse,
10881092
fastVaa,
10891093
fastVaaAccount,
10901094
auctionConfig: inputAuctionConfig,
@@ -1095,6 +1099,10 @@ export class MatchingEngineProgram {
10951099

10961100
const mint = this.mint;
10971101

1102+
const preparedOrderResponse =
1103+
inputPreparedOrderResponse ??
1104+
this.preparedOrderResponseAddress(payer, fastVaaAccount.digest());
1105+
10981106
const { auctionConfig, bestOfferToken } = await (async () => {
10991107
if (inputAuctionConfig === undefined || inputBestOfferToken === undefined) {
11001108
const { info } = await this.fetchAuction({ address: auctionAddress });
@@ -1199,10 +1207,20 @@ export class MatchingEngineProgram {
11991207
auction?: PublicKey;
12001208
fastVaa: PublicKey;
12011209
}) {
1202-
const { payer, preparedOrderResponse, auction, fastVaa } = accounts;
1210+
const {
1211+
payer,
1212+
preparedOrderResponse: inputPreparedOrderResponse,
1213+
auction,
1214+
fastVaa,
1215+
} = accounts;
12031216
const fastVaaAccount = await VaaAccount.fetch(this.program.provider.connection, fastVaa);
12041217

12051218
const mint = this.mint;
1219+
1220+
const preparedOrderResponse =
1221+
inputPreparedOrderResponse ??
1222+
this.preparedOrderResponseAddress(payer, fastVaaAccount.digest());
1223+
12061224
const { targetChain, toRouterEndpoint } = await (async () => {
12071225
const message = LiquidityLayerMessage.decode(fastVaaAccount.payload());
12081226
if (message.fastMarketOrder == undefined) {

solana/ts/tests/01__matchingEngine.ts

+2-4
Original file line numberDiff line numberDiff line change
@@ -3063,7 +3063,7 @@ describe("Matching Engine", function () {
30633063

30643064
describe("Active Auction", function () {
30653065
it("Cannot Settle Executed Auction", async function () {
3066-
const { auction, fastVaa, fastVaaAccount, prepareIx, preparedOrderResponse } =
3066+
const { auction, fastVaa, fastVaaAccount, prepareIx } =
30673067
await prepareOrderResponse({
30683068
executeOrder: true,
30693069
initAuction: true,
@@ -3091,7 +3091,6 @@ describe("Matching Engine", function () {
30913091
payer: payer.publicKey,
30923092
fastVaa,
30933093
fastVaaAccount,
3094-
preparedOrderResponse,
30953094
executorToken: liquidatorToken,
30963095
auction,
30973096
encodedCctpMessage,
@@ -3117,7 +3116,7 @@ describe("Matching Engine", function () {
31173116
});
31183117

31193118
it("Settle", async function () {
3120-
const { auction, fastVaa, fastVaaAccount, prepareIx, preparedOrderResponse } =
3119+
const { auction, fastVaa, fastVaaAccount, prepareIx } =
31213120
await prepareOrderResponse({
31223121
executeOrder: false,
31233122
initAuction: true,
@@ -3144,7 +3143,6 @@ describe("Matching Engine", function () {
31443143
payer: payer.publicKey,
31453144
fastVaa,
31463145
fastVaaAccount,
3147-
preparedOrderResponse,
31483146
executorToken: liquidatorToken,
31493147
auction,
31503148
encodedCctpMessage,

solana/ts/tests/04__interaction.ts

+6-9
Original file line numberDiff line numberDiff line change
@@ -289,15 +289,14 @@ describe("Matching Engine <> Token Router", function () {
289289
describe("Settle Auction", function () {
290290
describe("Settle No Auction (Local)", function () {
291291
it("Settle", async function () {
292-
const { prepareIx, preparedOrderResponse, auction, fastVaa, finalizedVaa } =
292+
const { prepareIx, auction, fastVaa, finalizedVaa } =
293293
await prepareOrderResponse({
294294
initAuction: false,
295295
executeOrder: false,
296296
prepareOrderResponse: false,
297297
});
298298
const settleIx = await matchingEngine.settleAuctionNoneLocalIx({
299299
payer: payer.publicKey,
300-
preparedOrderResponse,
301300
fastVaa,
302301
auction,
303302
});
@@ -316,12 +315,11 @@ describe("Matching Engine <> Token Router", function () {
316315

317316
describe("Settle Active Auction (Local)", function () {
318317
it("Settle", async function () {
319-
const { prepareIx, preparedOrderResponse, auction, fastVaa } =
320-
await prepareOrderResponse({
321-
initAuction: true,
322-
executeOrder: false,
323-
prepareOrderResponse: false,
324-
});
318+
const { prepareIx, auction, fastVaa } = await prepareOrderResponse({
319+
initAuction: true,
320+
executeOrder: false,
321+
prepareOrderResponse: false,
322+
});
325323

326324
const { address: executorToken } =
327325
await splToken.getOrCreateAssociatedTokenAccount(
@@ -333,7 +331,6 @@ describe("Matching Engine <> Token Router", function () {
333331

334332
const settleIx = await matchingEngine.settleAuctionActiveLocalIx({
335333
payer: payer.publicKey,
336-
preparedOrderResponse,
337334
fastVaa,
338335
auction,
339336
executorToken,

0 commit comments

Comments
 (0)