Skip to content

Conversation

a-k-l-sdao
Copy link
Contributor

@a-k-l-sdao a-k-l-sdao commented Oct 7, 2025

During testing, we ran into some issues with Jest showing AggregateError messages caused by rate limiting. To make the script more robust, we updated our vault registry to support fetching vaults in batches.
We’re also preparing to launch a new product that lets users deploy their own vaults, which will significantly increase the total number of vaults (already at 175 and growing). This change ensures the system can handle the higher volume smoothly.

@a-k-l-sdao
Copy link
Contributor Author

As you can see the test fails here but it runs for us locally, however not all of the time. The issue is 429 rate limit or unsynced nodes.

@slasher125
Copy link
Collaborator

slasher125 commented Oct 8, 2025

@a-k-l-sdao ran this locally, this looks v wrong:

{
    pool: '0x0D6862C7896233D4244cE746c368049B87c98B37',
    chain: 'base',
    project: 'singularity-finance',
    symbol: 'USDC',
    tvlUsd: 69998453267.84563,
    apyBase: 0.1629596267594735,
    url: 'https://singularityfinance.ai/vaults/0x0D6862C7896233D4244cE746c368049B87c98B37'
}

(see tvlUsd)

… multicall and get info in batch calls of 100, get tvlUsd using oracle(via vault)
@llamatester
Copy link

The singularity-finance adapter exports pools:

Test Suites: 1 passed, 1 total
Tests: 879 passed, 879 total
Snapshots: 0 total
Time: 0.472 s
Ran all test suites.

Nb of pools: 175
 

Sample pools:
┌─────────┬──────────────────────────────────────────────┬────────┬───────────────────────┬─────────┬─────────────┬──────────────────────┬───────────────────────────────────────────────────────────────────────────────────┐
│ (index) │ pool                                         │ chain  │ project               │ symbol  │ tvlUsd      │ apyBase              │ url                                                                               │
├─────────┼──────────────────────────────────────────────┼────────┼───────────────────────┼─────────┼─────────────┼──────────────────────┼───────────────────────────────────────────────────────────────────────────────────┤
│ 0       │ '0xdf71487381Ab5bD5a6B17eAa61FE2E6045A0e805' │ 'base' │ 'singularity-finance' │ 'USDC'  │ 1409.181459 │ 6.4490661877850215   │ 'https://singularityfinance.ai/vaults/0xdf71487381Ab5bD5a6B17eAa61FE2E6045A0e805' │
│ 1       │ '0x1631CA6543adcB61e2B9e30189c8477981258274' │ 'base' │ 'singularity-finance' │ 'USDC'  │ 595.175734  │ 3.292577273923712    │ 'https://singularityfinance.ai/vaults/0x1631CA6543adcB61e2B9e30189c8477981258274' │
│ 2       │ '0xd8d294714F5b1A1104CFE75C0Bb4ceF547a05124' │ 'base' │ 'singularity-finance' │ 'CBBTC' │ 536.345421  │ -0.49894673678846857 │ 'https://singularityfinance.ai/vaults/0xd8d294714F5b1A1104CFE75C0Bb4ceF547a05124' │
│ 3       │ '0x0D6862C7896233D4244cE746c368049B87c98B37' │ 'base' │ 'singularity-finance' │ 'WETH'  │ 315.081258  │ 0.6982292909740266   │ 'https://singularityfinance.ai/vaults/0x0D6862C7896233D4244cE746c368049B87c98B37' │
│ 4       │ '0x792c1438356128f882340880f2f4d8e7a7912dAc' │ 'base' │ 'singularity-finance' │ 'CBBTC' │ 167.260044  │ 0                    │ 'https://singularityfinance.ai/vaults/0x792c1438356128f882340880f2f4d8e7a7912dAc' │
│ 5       │ '0x22097a0B69b72b960D107aCa280755C5b447508F' │ 'base' │ 'singularity-finance' │ 'CBBTC' │ 24.594461   │ -1.808492701568582   │ 'https://singularityfinance.ai/vaults/0x22097a0B69b72b960D107aCa280755C5b447508F' │
│ 6       │ '0x75E0d5d511f663a4Def1B28d1226664ea3a72a15' │ 'base' │ 'singularity-finance' │ 'USDC'  │ 2.078152    │ 111.62266614580943   │ 'https://singularityfinance.ai/vaults/0x75E0d5d511f663a4Def1B28d1226664ea3a72a15' │
│ 7       │ '0x44eE1F61045C389042C68d212074ef34d88679B9' │ 'base' │ 'singularity-finance' │ 'USDC'  │ 0.808284    │ 0                    │ 'https://singularityfinance.ai/vaults/0x44eE1F61045C389042C68d212074ef34d88679B9' │
│ 8       │ '0xCEDF4ee912d8469CBDd2Ab83b6Ca45aF2537a983' │ 'base' │ 'singularity-finance' │ 'USDC'  │ 0.082986    │ 1385419654722.0732   │ 'https://singularityfinance.ai/vaults/0xCEDF4ee912d8469CBDd2Ab83b6Ca45aF2537a983' │
│ 9       │ '0xf7386b6580744736c7218D876fa17Caf79d5dCE4' │ 'base' │ 'singularity-finance' │ 'USDC'  │ 0.006       │ -6.019824100642651   │ 'https://singularityfinance.ai/vaults/0xf7386b6580744736c7218D876fa17Caf79d5dCE4' │
└─────────┴──────────────────────────────────────────────┴────────┴───────────────────────┴─────────┴─────────────┴──────────────────────┴───────────────────────────────────────────────────────────────────────────────────┘
This adapter contains some pools with <10k TVL, these pools won't be shown in DefiLlama

@a-k-l-sdao
Copy link
Contributor Author

Thank you for bringing this observation to our attention.
We have resolved the issue and developed a multicall implementation of the SDK utils getERC4626Info function (integrated locally within our adaptor) to mitigate the problem with failing RPC calls.

@llamatester
Copy link

The singularity-finance adapter exports pools:

Test Suites: 1 passed, 1 total
Tests: 879 passed, 879 total
Snapshots: 0 total
Time: 0.427 s
Ran all test suites.

Nb of pools: 175
 

Sample pools:
┌─────────┬──────────────────────────────────────────────┬────────┬───────────────────────┬─────────┬─────────────┬─────────────────────┬───────────────────────────────────────────────────────────────────────────────────┐
│ (index) │ pool                                         │ chain  │ project               │ symbol  │ tvlUsd      │ apyBase             │ url                                                                               │
├─────────┼──────────────────────────────────────────────┼────────┼───────────────────────┼─────────┼─────────────┼─────────────────────┼───────────────────────────────────────────────────────────────────────────────────┤
│ 0       │ '0xdf71487381Ab5bD5a6B17eAa61FE2E6045A0e805' │ 'base' │ 'singularity-finance' │ 'USDC'  │ 1409.186625 │ 6.4490661877850215  │ 'https://singularityfinance.ai/vaults/0xdf71487381Ab5bD5a6B17eAa61FE2E6045A0e805' │
│ 1       │ '0x1631CA6543adcB61e2B9e30189c8477981258274' │ 'base' │ 'singularity-finance' │ 'USDC'  │ 595.175918  │ 3.292577273923712   │ 'https://singularityfinance.ai/vaults/0x1631CA6543adcB61e2B9e30189c8477981258274' │
│ 2       │ '0xd8d294714F5b1A1104CFE75C0Bb4ceF547a05124' │ 'base' │ 'singularity-finance' │ 'CBBTC' │ 537.096792  │ -0.4189924747333862 │ 'https://singularityfinance.ai/vaults/0xd8d294714F5b1A1104CFE75C0Bb4ceF547a05124' │
│ 3       │ '0x0D6862C7896233D4244cE746c368049B87c98B37' │ 'base' │ 'singularity-finance' │ 'WETH'  │ 315.207353  │ 0.7169925061067488  │ 'https://singularityfinance.ai/vaults/0x0D6862C7896233D4244cE746c368049B87c98B37' │
│ 4       │ '0x792c1438356128f882340880f2f4d8e7a7912dAc' │ 'base' │ 'singularity-finance' │ 'CBBTC' │ 167.49436   │ 0                   │ 'https://singularityfinance.ai/vaults/0x792c1438356128f882340880f2f4d8e7a7912dAc' │
│ 5       │ '0x22097a0B69b72b960D107aCa280755C5b447508F' │ 'base' │ 'singularity-finance' │ 'CBBTC' │ 24.628916   │ -1.808492701568582  │ 'https://singularityfinance.ai/vaults/0x22097a0B69b72b960D107aCa280755C5b447508F' │
│ 6       │ '0x75E0d5d511f663a4Def1B28d1226664ea3a72a15' │ 'base' │ 'singularity-finance' │ 'USDC'  │ 2.078321    │ 111.6210206478008   │ 'https://singularityfinance.ai/vaults/0x75E0d5d511f663a4Def1B28d1226664ea3a72a15' │
│ 7       │ '0x44eE1F61045C389042C68d212074ef34d88679B9' │ 'base' │ 'singularity-finance' │ 'USDC'  │ 0.808567    │ 0                   │ 'https://singularityfinance.ai/vaults/0x44eE1F61045C389042C68d212074ef34d88679B9' │
│ 8       │ '0xCEDF4ee912d8469CBDd2Ab83b6Ca45aF2537a983' │ 'base' │ 'singularity-finance' │ 'USDC'  │ 0.082986    │ 1385413015530.8013  │ 'https://singularityfinance.ai/vaults/0xCEDF4ee912d8469CBDd2Ab83b6Ca45aF2537a983' │
│ 9       │ '0xf7386b6580744736c7218D876fa17Caf79d5dCE4' │ 'base' │ 'singularity-finance' │ 'USDC'  │ 0.006       │ -6.019824100642651  │ 'https://singularityfinance.ai/vaults/0xf7386b6580744736c7218D876fa17Caf79d5dCE4' │
└─────────┴──────────────────────────────────────────────┴────────┴───────────────────────┴─────────┴─────────────┴─────────────────────┴───────────────────────────────────────────────────────────────────────────────────┘
This adapter contains some pools with <10k TVL, these pools won't be shown in DefiLlama

@slasher125
Copy link
Collaborator

@a-k-l-sdao keep in mind, that on defillama we list pools as long as they fulfil the min tvl criteria of $10k

some of the vaults have negative apr? and seems like this link (maybe others too) doesn't work https://singularityfinance.ai/vaults/0xd8d294714F5b1A1104CFE75C0Bb4ceF547a05124

@a-k-l-sdao
Copy link
Contributor Author

@a-k-l-sdao keep in mind, that on defillama we list pools as long as they fulfil the min tvl criteria of $10k

some of the vaults have negative apr? and seems like this link (maybe others too) doesn't work https://singularityfinance.ai/vaults/0xd8d294714F5b1A1104CFE75C0Bb4ceF547a05124

Thank you for your comment.
regarding the

  • 10k criteria: we are well aware, we just want to get this up before we go public.
  • negative apy: we are experimenting with some strategies ans some might not be profitable.
  • the link: I have to talk to my team about this. I will resolve the issue.

On a side note: the majority of the current vaults are test vaults with 0 tvl that will be disabled and not included.

…o and refactor script to only pull beta and prod vaults
@llamatester
Copy link

The singularity-finance adapter exports pools:

Test Suites: 1 passed, 1 total
Tests: 24 passed, 24 total
Snapshots: 0 total
Time: 0.277 s
Ran all test suites.

Nb of pools: 4
 

Sample pools:
┌─────────┬──────────────────────────────────────────────┬────────┬───────────────────────┬─────────┬─────────────┬────────────────────┬────────────────────────────────────────────────────────────────────────────────────────┐
│ (index) │ pool                                         │ chain  │ project               │ symbol  │ tvlUsd      │ apyBase            │ url                                                                                    │
├─────────┼──────────────────────────────────────────────┼────────┼───────────────────────┼─────────┼─────────────┼────────────────────┼────────────────────────────────────────────────────────────────────────────────────────┤
│ 0       │ '0xdf71487381Ab5bD5a6B17eAa61FE2E6045A0e805' │ 'base' │ 'singularity-finance' │ 'USDC'  │ 1452.344901 │ 11.341848195550057 │ 'https://singularityfinance.ai/vaults/0xdf71487381Ab5bD5a6B17eAa61FE2E6045A0e805:8453' │
│ 1       │ '0xd8d294714F5b1A1104CFE75C0Bb4ceF547a05124' │ 'base' │ 'singularity-finance' │ 'CBBTC' │ 779.218307  │ 5.967915006466711  │ 'https://singularityfinance.ai/vaults/0xd8d294714F5b1A1104CFE75C0Bb4ceF547a05124:8453' │
│ 2       │ '0x0D6862C7896233D4244cE746c368049B87c98B37' │ 'base' │ 'singularity-finance' │ 'WETH'  │ 626.40735   │ 8.129729192847918  │ 'https://singularityfinance.ai/vaults/0x0D6862C7896233D4244cE746c368049B87c98B37:8453' │
│ 3       │ '0x1631CA6543adcB61e2B9e30189c8477981258274' │ 'base' │ 'singularity-finance' │ 'USDC'  │ 593.320489  │ 4.787247960089758  │ 'https://singularityfinance.ai/vaults/0x1631CA6543adcB61e2B9e30189c8477981258274:8453' │
└─────────┴──────────────────────────────────────────────┴────────┴───────────────────────┴─────────┴─────────────┴────────────────────┴────────────────────────────────────────────────────────────────────────────────────────┘
This adapter contains some pools with <10k TVL, these pools won't be shown in DefiLlama

@a-k-l-sdao
Copy link
Contributor Author

The singularity-finance adapter exports pools:

Test Suites: 1 passed, 1 total Tests: 24 passed, 24 total Snapshots: 0 total Time: 0.277 s Ran all test suites.

Nb of pools: 4
 

Sample pools:
┌─────────┬──────────────────────────────────────────────┬────────┬───────────────────────┬─────────┬─────────────┬────────────────────┬────────────────────────────────────────────────────────────────────────────────────────┐
│ (index) │ pool                                         │ chain  │ project               │ symbol  │ tvlUsd      │ apyBase            │ url                                                                                    │
├─────────┼──────────────────────────────────────────────┼────────┼───────────────────────┼─────────┼─────────────┼────────────────────┼────────────────────────────────────────────────────────────────────────────────────────┤
│ 0       │ '0xdf71487381Ab5bD5a6B17eAa61FE2E6045A0e805' │ 'base' │ 'singularity-finance' │ 'USDC'  │ 1452.344901 │ 11.341848195550057 │ 'https://singularityfinance.ai/vaults/0xdf71487381Ab5bD5a6B17eAa61FE2E6045A0e805:8453' │
│ 1       │ '0xd8d294714F5b1A1104CFE75C0Bb4ceF547a05124' │ 'base' │ 'singularity-finance' │ 'CBBTC' │ 779.218307  │ 5.967915006466711  │ 'https://singularityfinance.ai/vaults/0xd8d294714F5b1A1104CFE75C0Bb4ceF547a05124:8453' │
│ 2       │ '0x0D6862C7896233D4244cE746c368049B87c98B37' │ 'base' │ 'singularity-finance' │ 'WETH'  │ 626.40735   │ 8.129729192847918  │ 'https://singularityfinance.ai/vaults/0x0D6862C7896233D4244cE746c368049B87c98B37:8453' │
│ 3       │ '0x1631CA6543adcB61e2B9e30189c8477981258274' │ 'base' │ 'singularity-finance' │ 'USDC'  │ 593.320489  │ 4.787247960089758  │ 'https://singularityfinance.ai/vaults/0x1631CA6543adcB61e2B9e30189c8477981258274:8453' │
└─────────┴──────────────────────────────────────────────┴────────┴───────────────────────┴─────────┴─────────────┴────────────────────┴────────────────────────────────────────────────────────────────────────────────────────┘
This adapter contains some pools with <10k TVL, these pools won't be shown in DefiLlama

I have pushed an update to the script. I added a multicall version of the utils.getERC4626Info in our script (feel free to add it in utils) and filter by onchain vault types. all links should work now.

@slasher125 slasher125 merged commit 2bfa156 into DefiLlama:master Oct 13, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants