Feat/fl actions improvements#12
Closed
k0beLeenders wants to merge 11 commits into
Closed
Conversation
7a3fb22 to
0339162
Compare
borcherd
reviewed
Apr 22, 2026
|
|
||
| // --- LUT resolution --- | ||
|
|
||
| export async function resolveLookupTables( |
Contributor
There was a problem hiding this comment.
This is a comment claude made, i dont really understand but maybe you do. just want to flag
Contributor
There was a problem hiding this comment.
accountInfo === null LUTs are silently filtered out. If Titan returns a LUT address that doesn't resolve (RPC slot lag, wrong cluster, stale address), the swap IXs still reference accounts that were supposed to come from that LUT — the V0 compiler then either promotes them to static keys (→ misleading "tx size exceeded" error), or the TX fails on-chain with Invalid account index. Suggest throwing with the list of missing LUT pubkeys so the provider router's catch falls through to Jupiter cleanly instead of handing a broken IX set to makeFlashLoanTx.
cce275a to
2969f70
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
SDK: Titan Swap Provider + Transaction Optimization
Summary
Adds Titan as a swap provider alongside Jupiter, implements transaction size and account lock validation, and enhances error handling in flashloan operations.
Version:
2.2.0-beta.0(published under@betatag)🎯 Key Features
1. Titan Swap Provider
src/vendor/titan/(no external npm dependency)client.ts: WebSocket connection with msgpack encodingtypes.ts: Protocol types (cherry-picked from@titanexchange/sdk-ts)helpers.ts: Deserialization and route selection utilitiesquoteParamsstructureNew Files:
2. Transaction Size Optimization
Added validation for Solana's transaction limits.
New Helper:
New Utility:
Applied to all flashloan actions:
src/services/account/actions/loop.tssrc/services/account/actions/repay.tssrc/services/account/actions/swap-collateral.tssrc/services/account/actions/swap-debt.tsEach action now validates before simulation:
3. Enhanced Error Handling
TransactionBuildingErrornow properly propagates through swap provider fallback loopsProvider Fallback:
🔗 Related
2.2.0-beta.0published under@betatag (does not affectlatest)