Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
6190 commits
Select commit Hold shift + click to select a range
9e862e7
delete trigger holders daily
0xkr3p Mar 27, 2026
659f024
env vars
0xkr3p Mar 27, 2026
b1112b0
feat: add blackrock-buidl adapter (#2520)
0xkr3p Mar 27, 2026
9598be3
feat: add vaneck treasury fund adapter (#2521)
0xkr3p Mar 28, 2026
9df7c8f
update securitize urls (#2524)
0xkr3p Mar 28, 2026
7a46e7c
add securitize clo fund adapter (#2526)
0xkr3p Mar 29, 2026
131b663
add apollo-securitize adapter (#2522)
0xkr3p Mar 29, 2026
0a9b409
feat: add hamilton lane adapter (#2525)
0xkr3p Mar 29, 2026
958fd4e
fix query timestamp
0xkr3p Mar 29, 2026
f60a1d9
exclude pool and add filter mechanism upshift (#2527)
0xkr3p Mar 29, 2026
fbc7785
move file, add cron job;
slasher125 Mar 30, 2026
a6c41b5
move routes
slasher125 Mar 30, 2026
754ff3c
update env
slasher125 Mar 30, 2026
8292e34
Merge pull request #2519 from 0xkr3p/chore/seed-holders
slasher125 Mar 30, 2026
4106105
temp remove
slasher125 Mar 30, 2026
3a926fa
add headers to /holders routes
slasher125 Mar 30, 2026
44fa7a2
fix
slasher125 Mar 30, 2026
49e4acf
fix2
slasher125 Mar 30, 2026
2f0c493
fix
slasher125 Mar 30, 2026
e824b9c
add holder to api
slasher125 Mar 30, 2026
0d6c25d
add tokenAddress route (#2530)
0xkr3p Mar 30, 2026
9380898
track aave v4 (#2531)
ReynardoEW Mar 30, 2026
e8b9ada
exclude protocols (#2532)
0xkr3p Mar 30, 2026
d4baed6
exclude
slasher125 Mar 31, 2026
637d18f
llamalend stake-dao and fix rewards (#2533)
0xkr3p Mar 31, 2026
3f04679
fix: add null check for regex match in cian-yield-layer adaptor (#2516)
phusi319 Mar 31, 2026
c9684dc
Adding newly launched yValos and yPythagoras tokens on YieldFi (#2482)
neelra8n Mar 31, 2026
8fa0096
add mantle and megaeth to aave-v3 (#2535)
0xkr3p Mar 31, 2026
58ed14f
add blockchain capital adapter (#2536)
0xkr3p Mar 31, 2026
bc7b2f4
use 30d base for securitize for stability (#2537)
0xkr3p Mar 31, 2026
42462e2
fix hydration gql source (#2539)
0xkr3p Mar 31, 2026
8f42c9c
Add yield adapter for pufETH (#2538)
9inpachi Apr 1, 2026
34bf97c
exclude uni-v4 from token extraction (#2540)
0xkr3p Apr 1, 2026
cf4a29a
fix morpho (#2542)
0xkr3p Apr 1, 2026
ae5b579
use pagination instead of 1000 limit (#2501)
0xkr3p Apr 1, 2026
afa0b8c
remove token address from holders (#2543)
0xkr3p Apr 1, 2026
be69ce5
update exclusion list
slasher125 Apr 2, 2026
3ef376b
stake-dao lowercase pool values
slasher125 Apr 2, 2026
e742348
add theo tbill (#2545)
0xkr3p Apr 2, 2026
ca95c84
rename theoriq-v1 > theoriq-alphavault-eth (#2547)
0xkr3p Apr 2, 2026
ae686e9
add re adapter (#2546)
0xkr3p Apr 2, 2026
0177f6b
add hastra adapter (#2549)
0xkr3p Apr 2, 2026
d5c04d0
add OnRe adapter (#2550)
0xkr3p Apr 3, 2026
8395818
chore: 🤖 add NUSD tranches in strata
0xnaman1 Apr 3, 2026
c93ecde
add circle usyc adapter (#2551)
0xkr3p Apr 3, 2026
357960e
add superstate-ustb adapter (#2553)
0xkr3p Apr 3, 2026
b8a771f
Merge pull request #2552 from 0xnaman1/master
waynebruce0x Apr 3, 2026
412961d
Add 'connext' and 'hmx' to excluded pools list
0xkr3p Apr 3, 2026
3aaa58d
update hypurrfi url to https://hypurrfi.com/ (#2556)
0xkr3p Apr 4, 2026
902d859
remove burned supply (#2558)
0xkr3p Apr 5, 2026
4b822cc
update exclusion
slasher125 Apr 6, 2026
1200e57
set token as null (#2560)
0xkr3p Apr 6, 2026
b358347
add ankr fallback for suspicious data (#2561)
0xkr3p Apr 6, 2026
6cd3862
add stone-vault yield adapter (#2366)
jhombark Apr 7, 2026
3e50a42
temp aerodrome try/catch (#2563)
0xkr3p Apr 7, 2026
71ad47b
Fix DSF APY fallback logic for zero-APY mistake edge cases (#2457)
dsf-cto Apr 7, 2026
b9f5a50
Add surf-liquid yield adapter (#2475)
rohansingh4 Apr 7, 2026
8af09ed
Add stakeTHENA erc4626 vault on BSC (#2499)
ftm1337 Apr 7, 2026
c74582b
fix: superform apy (#2567)
0xkr3p Apr 8, 2026
49d1a8f
fix: handle merkl missing apr (#2559)
AndonMitev Apr 9, 2026
ad788f5
Add TownSquare (#2571)
iamvukasin Apr 9, 2026
283fe56
onchain fallback aerodrome-slipstream (#2570)
0xkr3p Apr 9, 2026
ddd492d
Add Apyx yield adapter (#2544)
dead-pool-aka-wilson Apr 9, 2026
a812c05
update the adapter to use the ekubo campaigns endpoint (#2565)
moodysalem Apr 9, 2026
a345e72
rename wasabi
slasher125 Apr 10, 2026
798c831
update exclusion
slasher125 Apr 10, 2026
048d775
add checkadapter to ci
slasher125 Apr 10, 2026
709fcf6
fix ekubo pool ids (#2573)
0xkr3p Apr 10, 2026
0b393cd
add fluxion network adapter (#2575)
0xkr3p Apr 10, 2026
d36ef3a
chore: add api.berachain.com tracking (#2554)
bearpong Apr 11, 2026
d939089
feat: add Igra chain yields for kaspacom-dex (#2562)
MarkoKCOM Apr 12, 2026
b42740b
add merkl rewards to adapters
0xkr3p Apr 8, 2026
bc3426c
metamorpho merkl rewards
0xkr3p Apr 8, 2026
55d9808
capture additional misisng morpho vaults
0xkr3p Apr 9, 2026
4090096
new adapters
0xkr3p Apr 9, 2026
b809e6c
add steakhouse-financial adapter
0xkr3p Apr 10, 2026
03e19a4
adapters
0xkr3p Apr 10, 2026
2c2257d
more
0xkr3p Apr 10, 2026
743d6d0
remove merkl from fx
0xkr3p Apr 12, 2026
92a608e
blacklist townsquare
0xkr3p Apr 12, 2026
78515c0
feat: wbtc, weth ntt (#2577)
palace22 Apr 13, 2026
555ffc2
Fira v1 (#2569)
zgorizzo69 Apr 14, 2026
6d87075
Add yld yields adapter (#2282)
michaeldim Apr 14, 2026
e027908
use v3 for api (#2580)
0xkr3p Apr 14, 2026
6bb77cc
Add 'orby-network' to excluded items list
0xkr3p Apr 14, 2026
cda4126
test comment (#2582)
0xkr3p Apr 14, 2026
379732c
fix: benqi staked avax onchain (#2581)
0xkr3p Apr 14, 2026
9851f23
feat: add saturn adapter (#2583)
0xkr3p Apr 15, 2026
586e31a
veda adapter
0xkr3p Apr 15, 2026
d551d9a
use new api url (#2584)
0xkr3p Apr 15, 2026
b2e4a99
Add 'trisolaris' to exclude list in exclude.js
0xkr3p Apr 15, 2026
8790637
fix: gmx-v2-perps (#2585)
0xkr3p Apr 15, 2026
d8deab9
fix storm trade (#2587)
0xkr3p Apr 15, 2026
62789cf
rename mento-v3
0xkr3p Apr 15, 2026
bc571d4
fix ichi
0xkr3p Apr 16, 2026
287c183
add optional chaining
0xkr3p Apr 16, 2026
0e5b2f6
moonwell fix
0xkr3p Apr 16, 2026
a155a27
fix euler
0xkr3p Apr 16, 2026
40fd2e0
add openeden prism (#2588)
0xkr3p Apr 16, 2026
3862a6b
fix yieldnest
0xkr3p Apr 16, 2026
9573ff0
add canary tables (#2578)
0xkr3p Apr 16, 2026
62ae1d3
add current adapter (#2589)
0xkr3p Apr 16, 2026
893b17a
add afi protocol (#2590)
0xkr3p Apr 16, 2026
d94b46d
remove protocol
slasher125 Apr 17, 2026
d649fbb
update chain formatter
slasher125 Apr 17, 2026
c9ae37d
add token metadata table
slasher125 Apr 17, 2026
39b9cc6
Merge pull request #2593 from DefiLlama/add-token_metadata-table
slasher125 Apr 17, 2026
148b7c0
remove pool
slasher125 Apr 17, 2026
fa56b79
add adapter_stats table
slasher125 Apr 17, 2026
a2a9665
fix
slasher125 Apr 17, 2026
3b75e4e
fix
slasher125 Apr 17, 2026
feb5f0a
feat: add purrlend (#2592)
0xkr3p Apr 17, 2026
e36237b
fix
slasher125 Apr 17, 2026
869af47
Merge branch 'master' of github.com:DefiLlama/yield-server
slasher125 Apr 17, 2026
01e249b
delist
slasher125 Apr 17, 2026
179f147
remove adapter queue retries and DLQ for fire-and-forget execution
slasher125 Apr 17, 2026
bd7861f
Merge pull request #2596 from DefiLlama/remove-adapter-dlq-retries
slasher125 Apr 17, 2026
ca70529
delist
slasher125 Apr 17, 2026
ffa7d87
fix
slasher125 Apr 17, 2026
41adbbd
fix convex-finance (#2594)
0xkr3p Apr 17, 2026
55f71b3
nuke dead projets
slasher125 Apr 17, 2026
8e6db3a
feat: 🎸 added midas tranches (#2598)
0xnaman1 Apr 19, 2026
fb0d4d0
update exclusion list
slasher125 Apr 20, 2026
644179f
Merge branch 'master' into fix/merkl-deduplication-v2
0xkr3p Apr 20, 2026
f9558ab
fix merge
0xkr3p Apr 20, 2026
f7189f9
justlend retry and batch req (#2601)
0xkr3p Apr 20, 2026
90825fa
feat: add ink to velodrome-v3 (#2603)
0xkr3p Apr 20, 2026
34ea8c4
perf: multicalls, pagination, parallelized 348s to 171s (#2602)
0xkr3p Apr 20, 2026
b9f52ee
Omnipair yield pools (#2574)
henrystats Apr 20, 2026
58a55a3
morpho chain separation (#2604)
0xkr3p Apr 20, 2026
e1622c6
add withRetry and buffer (#2605)
0xkr3p Apr 21, 2026
a0b2cfc
update subgraph (#2606)
0xkr3p Apr 21, 2026
1dbefa4
ref: reduce to 1 api req with retry (#2607)
0xkr3p Apr 21, 2026
de39b43
add retry (#2608)
0xkr3p Apr 21, 2026
69e7732
aerodrome-slipstream optimisations to fix lambda timeout (#2609)
0xkr3p Apr 21, 2026
4cd0c2b
Add 'blockchain-capital' to exclusion list
0xkr3p Apr 21, 2026
346b614
treehouse more resilient (#2610)
0xkr3p Apr 21, 2026
881f378
aerodrome-slipstream prefer subgraph (#2612)
0xkr3p Apr 21, 2026
31a807f
fix lynex-v2 (#2613)
0xkr3p Apr 21, 2026
8e818c7
fix: url structure and add eth support (#2614)
0xkr3p Apr 21, 2026
6fa4b52
feat: add unitas bsc pool yield (#2566)
junlies Apr 22, 2026
578dfab
feat: add credit adapter (#2591)
cairoeth Apr 22, 2026
3b3eaaf
b14g adapter improvements (#2615)
0xkr3p Apr 22, 2026
bb81f32
fix benqi lending url (#2616)
0xkr3p Apr 22, 2026
6212bea
fix: yieldyak aibtc decimals (#2617)
0xkr3p Apr 22, 2026
07213d4
remove deprecated
slasher125 Apr 22, 2026
3f0a5bc
rename morpho-v1 -> morpho-blue (#2618)
0xkr3p Apr 22, 2026
04f2d9c
Add new pools to exclusion list in exclude.js
0xkr3p Apr 22, 2026
d9b749c
bex hardcode max tvl
slasher125 Apr 22, 2026
417aeea
Feat/travessia credit (#2597)
RedVeil Apr 22, 2026
13b6f86
rename ichi
slasher125 Apr 22, 2026
926d5db
Merge remote-tracking branch 'upstream/master' into fix/merkl-dedupli…
slasher125 Apr 22, 2026
a5f3d54
Merge pull request #2586 from 0xkr3p/fix/merkl-deduplication-v2
slasher125 Apr 22, 2026
e9219b3
bypass db tvl floor for lending adapters
slasher125 Apr 23, 2026
538ba52
include low-liquidity lending pools in read filters
slasher125 Apr 23, 2026
592a52e
smol fix: set global tvl lb
slasher125 Apr 23, 2026
1af4668
morpho fix v1 apy
slasher125 Apr 23, 2026
635c06a
exclude merkl
slasher125 Apr 23, 2026
e6ab2a0
fix
slasher125 Apr 24, 2026
922418e
Add 'purrlend' to the tracked rewards list
0xkr3p Apr 25, 2026
82b934f
exclude
slasher125 Apr 27, 2026
093b82a
feat: add SherpaEarn yield adapter (#2611)
hedgemony-dev Apr 27, 2026
e041c4c
add price per share to erc4626 and more
0xkr3p Apr 27, 2026
06aa799
Merge remote-tracking branch 'upstream/master' into feat/add-price-pe…
0xkr3p Apr 27, 2026
ea836fc
morpho-blue price per share
0xkr3p Apr 27, 2026
7533c89
exclude
slasher125 Apr 28, 2026
38b0a9e
omit field if no value
0xkr3p Apr 28, 2026
9186922
revert excluded files and add readme comment
0xkr3p Apr 28, 2026
6ad8197
fix falcon finance
0xkr3p Apr 28, 2026
adec96e
gracefull fallback until vaults are reopened (#2634)
0xkr3p Apr 28, 2026
011b049
add poolTokenAddress to premium api routes
slasher125 Apr 29, 2026
59a9e36
Merge pull request #2627 from 0xkr3p/feat/add-price-per-share
slasher125 Apr 29, 2026
1727e8d
MidasRWA: add new addresses (#2568)
dmytro-horbatenko Apr 29, 2026
1500688
fix: rsk, tac, 0g chains (#2637)
0xkr3p Apr 29, 2026
c601654
exclude disabled euler-v2 avax pools
0xkr3p Apr 30, 2026
90ceb7f
Ensuro: adds new ethereum mainnet pools (#2623)
gnarvaja Apr 30, 2026
765709e
feat: add ea-finance adapter (#2620)
ti-zzz Apr 30, 2026
1fe95c9
fix(uniswap-v3): request token volume fields (#2638)
zeroxzerollc May 1, 2026
314ae1b
remove project
slasher125 May 1, 2026
98f42c9
Add Arche (arUSD) yield adapter (#2621)
yieldarche May 2, 2026
c57c523
ankr fix pool token field
slasher125 May 3, 2026
7e20d99
fix (#2642)
0xkr3p May 3, 2026
046a27a
fix: remove deprecated avax / add base (#2644)
0xkr3p May 3, 2026
b1bc727
fix pancakeswap amm (#2643)
0xkr3p May 3, 2026
72543b9
fix lagoon (remove price from req) (#2645)
0xkr3p May 3, 2026
0847232
add isIntrinsicSource
slasher125 May 4, 2026
403c9c2
fix
slasher125 May 4, 2026
db2514b
fix
slasher125 May 4, 2026
7009884
fix
slasher125 May 4, 2026
3300852
fix
slasher125 May 4, 2026
faf151a
Merge pull request #2646 from DefiLlama/add-intrinsic-source
slasher125 May 4, 2026
3c63912
add apy split
slasher125 May 4, 2026
35969fc
apy split
slasher125 May 4, 2026
980b786
split apy
slasher125 May 4, 2026
f47a641
remove project
slasher125 May 4, 2026
780ec84
update exclusion list
slasher125 May 4, 2026
5db3f06
fix symbol
slasher125 May 4, 2026
f2aaefa
use new sanctum api w/fallback (#2648)
0xkr3p May 4, 2026
65535d4
remove project
slasher125 May 5, 2026
8690e32
update url
slasher125 May 5, 2026
3d19ed2
remove project
slasher125 May 5, 2026
9f96333
metrom fix
slasher125 May 5, 2026
eb89f13
fix(jupiter-lend): staking double count (#2649)
0xkr3p May 5, 2026
c542db6
feat(fluid-lite): add lite usd vault tvl and rates (#2640)
SamarendraGouda May 5, 2026
da87652
refactor hyperswap-v3 onchain instead of broken subgraph (#2650)
0xkr3p May 5, 2026
1fdb4b1
hyperswap-v3 subgraph (#2652)
0xkr3p May 6, 2026
8bfe68b
feat: add accountable on Citrea (#2647)
eyusufatik May 6, 2026
6c0cba5
use stats.tvl (#2654)
0xkr3p May 6, 2026
d282073
hyperswap-v2 subgraph (#2657)
0xkr3p May 6, 2026
3682f1a
feat: add chainflip lending pools (#2576)
zoheb391 May 6, 2026
e00ac3c
feat(yo-protocol): include yoSOL rewards in adapter (#2656)
AndonMitev May 6, 2026
8abd2e4
Update APY calculation to include landing sales revenue (#2653)
trxadm May 7, 2026
d78ab8a
improve accuracy for token / rewards / underlying (#2658)
0xkr3p May 7, 2026
9ebe3fe
feat: add gmtrade yield adapter (#2639)
thomas-pixel-star May 8, 2026
4a2f952
fix usual-eth0 underlying (#2662)
0xkr3p May 8, 2026
0002d50
feat(ample): add adapter (#2661)
0xkr3p May 8, 2026
b677c47
add steth price fallback (#2663)
0xkr3p May 10, 2026
4657725
additional price per share coverage (#2664)
0xkr3p May 10, 2026
7c36618
update exclusion
slasher125 May 5, 2026
3c31434
add db health logging
slasher125 May 11, 2026
a68e040
add concrete (#2667)
0xkr3p May 11, 2026
b304a1a
add megaeth gUSDm vault (#2665)
0xCrumb May 11, 2026
dd7e9a1
add ember protocol (#2668)
0xkr3p May 11, 2026
4d12720
add felix cdp (#2669)
0xkr3p May 11, 2026
8b0ff23
rename liminal -> liminal-basis (#2672)
0xkr3p May 12, 2026
8438373
remove utils.formatSymbol(symbol) from adapters
slasher125 May 12, 2026
f3a9f45
Merge pull request #2674 from DefiLlama/remove-formatsymbol-from-adap…
slasher125 May 12, 2026
536bcbb
remove remaining symbol formats
slasher125 May 12, 2026
29a1309
Merge pull request #2675 from DefiLlama/more-symbol-things
slasher125 May 12, 2026
826131c
amnis finance fix apy
slasher125 May 13, 2026
e5d514d
temp remove amnis
slasher125 May 13, 2026
4588ef8
return all pools from the ekubo adapter instead of just top pool (#2600)
moodysalem May 13, 2026
cc96b57
add mezo vaults (#2676)
0xkr3p May 13, 2026
a8c831f
update exclusion
slasher125 May 13, 2026
6e60745
update exclusion
slasher125 May 13, 2026
1721062
update exclusion
slasher125 May 14, 2026
db75ab9
use lp address for pool value
0xkr3p May 14, 2026
9812dc7
refactor concetrator
slasher125 May 14, 2026
93d68dd
Merge pull request #2679 from 0xkr3p/fix/across-pool-value
slasher125 May 14, 2026
3cc1456
yusan use gecko ids for underlying
slasher125 May 14, 2026
817efa2
fix liqwid underlying
slasher125 May 14, 2026
ca74fd2
fix wing finance missing underlying
slasher125 May 14, 2026
54e84bf
more exclusion updates
slasher125 May 14, 2026
51bedfb
add missing underlying
slasher125 May 14, 2026
528422c
fixes
slasher125 May 14, 2026
b218cde
beefy fix: their apy includes merkl rewards already
slasher125 May 14, 2026
d6590c0
rename benddao-lending
slasher125 May 15, 2026
8bf8cc0
modify slug to benddao-lending-v1 (#2684)
0xkr3p May 15, 2026
ee503c3
arche: add Metrom incentive APY (#2683)
yieldarche May 15, 2026
840cb76
benddao migration (#2685)
0xkr3p May 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
63 changes: 63 additions & 0 deletions .github/workflows/comment.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Comment_PR
on:
workflow_run:
workflows: ["Test_Change"]
types: [completed]

permissions:
pull-requests: write
actions: read

jobs:
comment:
runs-on: ubuntu-latest
steps:
- name: Download PR comments artifact
id: download
uses: actions/download-artifact@v4
with:
name: pr-comments
run-id: ${{ github.event.workflow_run.id }}
github-token: ${{ secrets.GITHUB_TOKEN }}
path: pr-comments
continue-on-error: true

- name: Post comments on PR
if: steps.download.outcome == 'success'
uses: actions/github-script@v7
with:
script: |
const fs = require('fs');
const path = require('path');

const dir = 'pr-comments';
if (!fs.existsSync(dir)) {
core.info('No pr-comments directory, nothing to post.');
return;
}

const prNumberPath = path.join(dir, 'pr-number.txt');
if (!fs.existsSync(prNumberPath)) {
core.info('No pr-number.txt, nothing to post.');
return;
}
const prNumber = Number(fs.readFileSync(prNumberPath, 'utf8').trim());
if (!Number.isInteger(prNumber) || prNumber <= 0) {
core.setFailed(`Invalid PR number in artifact: ${prNumber}`);
return;
}

const files = fs.readdirSync(dir)
.filter(f => f.endsWith('.md'))
.sort();

for (const f of files) {
const body = fs.readFileSync(path.join(dir, f), 'utf8');
if (!body.trim()) continue;
await github.rest.issues.createComment({
issue_number: prNumber,
owner: context.repo.owner,
repo: context.repo.repo,
body,
});
}
61 changes: 28 additions & 33 deletions .github/workflows/commentResult.js
Original file line number Diff line number Diff line change
@@ -1,38 +1,33 @@
const { readFileSync } = require('fs');
const fetch = require('node-fetch');
const junk = 'VPTOH1X0B7rf8od7BGNsQ1z0BJk8iMNLxqrD';
const { readFileSync, writeFileSync, mkdirSync } = require('fs');
const path = require('path');

async function main() {
const [, , log, author, repo, pr, path ] = process.argv;
const file = readFileSync(log, 'utf-8');
function main() {
const [, , log, outDir, adapter] = process.argv;
const file = readFileSync(log, 'utf-8');

const passed = /PASS\s+.*test\.js/.test(file);
const failed = /FAIL\s+.*test\.js/.test(file);

const errorString = '------ ERROR ------';
const summaryIndex = file.indexOf('------ TVL ------');
const errorIndex = file.indexOf(errorString);
let body;
// Everything from "Test Suites:" onward (includes pool output from afterTests.js)
const summaryIndex = file.indexOf('Test Suites:');
if (summaryIndex === -1) return;
const output = file.substring(summaryIndex);

if (summaryIndex != -1) {
body = `The adapter at ${path} exports TVL:
\n \n ${file.substring(summaryIndex + 17).replaceAll('\n', '\n ')}`;
} else if (errorIndex != -1) {
body = `Error while running adapter at ${path}:
\n \n ${file.split(errorString)[1].replaceAll('\n', '\n ')}`;
} else
return;
let body;
if (passed && !failed) {
body = `The ${adapter} adapter exports pools:
\n \n ${output.replaceAll('\n', '\n ')}`;
} else if (failed) {
body = `Error while running ${adapter} adapter:
\n \n ${output.replaceAll('\n', '\n ')}`;
} else {
return;
}

await fetch(
`https://api.github.com/repos/${author}/${repo}/issues/${pr}/comments`,
{
body,
method: "POST",
headers: {
Authorization: `token ghp_${translate(junk)}`,
Accept: 'application/vnd.github.v3+json'
}
});
};
function translate(input) {
return input ? translate(input.substring(1)) + input[0] : input;
};
main();
mkdirSync(outDir, { recursive: true });
const safeName = (adapter || 'general').replace(/[^a-zA-Z0-9._-]/g, '_');
const fileName = `${Date.now()}-${process.pid}-${safeName}.md`;
writeFileSync(path.join(outDir, fileName), body);
}

main();
24 changes: 16 additions & 8 deletions .github/workflows/getFileList.js
Original file line number Diff line number Diff line change
@@ -1,14 +1,22 @@
const MODIFIED = parse(process.env.MODIFIED)
const ADDED = parse(process.env.ADDED)
const MODIFIED = parse(process.env.MODIFIED);
const ADDED = parse(process.env.ADDED);
const fileSet = new Set();

[...MODIFIED, ...ADDED].forEach(file => {
const [root0, root1, dir] = file.split('/')
if (root0 === 'src' && root1 === 'adaptors' && dir !=='test.js' && dir !== 'utils.js') fileSet.add(file)
})
[...MODIFIED, ...ADDED].forEach((file) => {
const [root0, root1, dir] = file.split('/');
if (
root0 === 'src' &&
root1 === 'adaptors' &&
dir !== 'test.js' &&
dir !== 'utils.js' &&
dir !== 'package.json' &&
dir !== 'package-lock.json'
)
fileSet.add(dir);
});

console.log(JSON.stringify([...fileSet]))
console.log(JSON.stringify([...fileSet]));

function parse(data) {
return data.replace('[', '').replace(']', '').split(',')
return (data || '').split(' ').filter(Boolean);
}
53 changes: 40 additions & 13 deletions .github/workflows/master.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,27 +8,54 @@ jobs:
deploy:
strategy:
matrix:
node-version: [14.x]
node-version: [24.x]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- run: npm ci
- run: npm ci --omit=optional
- run: node scripts/checkAdaptors.js
- run: node scripts/createAdapterList.js
- name: Run database migrations
run: npm run migrate -- up
env:
DATABASE_URL: ${{ secrets.DATABASE_URL }}
- name: Deploy infrastructure stack
run: npm run deploy
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
ETHERSCAN: ${{ secrets.ETHERSCAN}}
FANTOMSCAN: ${{ secrets.FANTOMSCAN }}
POLYGONSCAN: ${{ secrets.POLYGONSCAN }}
SNOWTRACE: ${{ secrets.SNOWTRACE }}
ARBISCAN: ${{ secrets.ARBISCAN }}
OPTIMISM: ${{ secrets.OPTIMISM }}
INFURA_CONNECTION: ${{ secrets.INFURA_CONNECTION }}
ALCHEMY_CONNECTION_POLYGON: ${{ secrets.ALCHEMY_CONNECTION_POLYGON }}
DATABASE_URL: ${{ secrets.DATABASE_URL }}
ALCHEMY_CONNECTION_ARBITRUM: ${{ secrets.ALCHEMY_CONNECTION_ARBITRUM }}
XDAI: ${{ secrets.XDAI }}
ALCHEMY_CONNECTION_ETHEREUM: ${{ secrets.ALCHEMY_CONNECTION_ETHEREUM }}
ALCHEMY_CONNECTION_POLYGON: ${{ secrets.ALCHEMY_CONNECTION_POLYGON }}
ETHEREUM_RPC: ${{ secrets.ETHEREUM_RPC }}
XDAI_RPC: ${{ secrets.XDAI_RPC }}
CRONOS_RPC: ${{ secrets.CRONOS_RPC }}
FANTOM_RPC: ${{ secrets.FANTOM_RPC }}
OPTIMISM_RPC: ${{ secrets.OPTIMISM_RPC }}
AVAX_RPC: ${{ secrets.AVAX_RPC }}
ARBITRUM_RPC: ${{ secrets.ARBITRUM_RPC }}
TRON_RPC: ${{ secrets.TRON_RPC }}
BASE_RPC: ${{ secrets.BASE_RPC }}
TVL_SPIKE_WEBHOOK: ${{ secrets.TVL_SPIKE_WEBHOOK }}
NEW_YIELDS_WEBHOOK: ${{ secrets.NEW_YIELDS_WEBHOOK }}
STALE_PROJECTS_WEBHOOK: ${{ secrets.STALE_PROJECTS_WEBHOOK }}
ZEROX_API: ${{ secrets.ZEROX_API }}
SMARDEX_SUBGRAPH_API_KEY: ${{ secrets.SMARDEX_SUBGRAPH_API_KEY }}
VENDOR_FINANCE: ${{ secrets.VENDOR_FINANCE }}
TRADERJOE: ${{ secrets.TRADERJOE }}
GRAPH_API_KEY: ${{ secrets.GRAPH_API_KEY }}
OSMOSIS_API_KEY: ${{ secrets.OSMOSIS_API_KEY}}
DUNE_API_KEY: ${{ secrets.DUNE_API_KEY}}
HYPERLIQUID_RPC: ${{ secrets.HYPERLIQUID_RPC }}
PLASMA_RPC: ${{ secrets.PLASMA_RPC }}
STARKNET_RPC: ${{ secrets.STARKNET_RPC }}
MONAD_RPC: ${{ secrets.MONAD_RPC }}
LLAMA_INDEXER_V2_ENDPOINT: ${{ secrets.LLAMA_INDEXER_V2_ENDPOINT }}
LLAMA_INDEXER_V2_API_KEY: ${{ secrets.LLAMA_INDEXER_V2_API_KEY }}
PROJECT_0_API_KEY: ${{ secrets.PROJECT_0_API_KEY }}
SANCTUM_API_KEY: ${{ secrets.SANCTUM_API_KEY }}
51 changes: 34 additions & 17 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -1,22 +1,28 @@
name: Test_Change
on:
pull_request
on: pull_request
jobs:
test:
runs-on: ubuntu-latest
steps:
- id: file_changes
uses: trilom/file-changes-action@v1.2.3
with:
output: 'json'
fileOutput: 'json'
- name: Check out repository code
uses: actions/checkout@v2
uses: actions/checkout@v4
- id: file_changes
uses: tj-actions/changed-files@v44

- name: Record PR number
run: |
mkdir -p pr-comments
echo "${{ github.event.number }}" > pr-comments/pr-number.txt

- name: Run changes files through test script
env:
ALCHEMY_CONNECTION_ARBITRUM: ${{ secrets.ALCHEMY_CONNECTION_ARBITRUM }}
ALCHEMY_CONNECTION_ETHEREUM: ${{ secrets.ALCHEMY_CONNECTION_ETHEREUM }}
ALCHEMY_CONNECTION_POLYGON: ${{ secrets.ALCHEMY_CONNECTION_POLYGON }}
run: |
RUN_FILES=$(
MODIFIED=${{ steps.file_changes.outputs.files_modified}} \
ADDED=${{ steps.file_changes.outputs.files_added}} \
MODIFIED="${{ steps.file_changes.outputs.modified_files }}" \
ADDED="${{ steps.file_changes.outputs.added_files }}" \
node ${{ github.workspace }}/.github/workflows/getFileList.js
)

Expand All @@ -25,18 +31,29 @@ jobs:
exit 0
fi

npm ci --production --only=prod
npm ci

for i in $(echo $RUN_FILES | tr -d '"[]' | tr "," "\n")
do
{
node ${{ github.workspace }}/src/adaptors/test.js ${{ github.workspace }}/${i} 2>&1 | tee output.txt
node ${{ github.workspace }}/.github/workflows/commentResult.js /home/runner/work/yield-server/yield-server/output.txt "${{ github.repository_owner }}" "${{ github.event.repository.name }}" "${{ github.event.number }}" ${i}
if grep -q "\-\-\-\- ERROR \-\-\-\-" output.txt; then
do
{
npm run test --adapter=${i} 2>&1 | tee output.txt
node ${{ github.workspace }}/.github/workflows/commentResult.js ${{ github.workspace }}/output.txt ${{ github.workspace }}/pr-comments ${i}
if grep -qE "PASS\s+.*test\.js" output.txt; then
exit 0;
else
exit 1;
fi
} || {
} || {
echo -n $i
echo ' doesnt run'
}
done

- name: Upload PR comments artifact
if: always()
uses: actions/upload-artifact@v4
with:
name: pr-comments
path: pr-comments/
if-no-files-found: ignore
retention-days: 1
15 changes: 15 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,18 @@ ccImages
.webpack
.idea/
*output.json
*.csv
scripts/*.json
src/adaptors/list.js
Untitled.ipynb
.ipynb_checkpoints/
yarn-error.log
test.sql
yarn.lock
.test-adapter-output/
.claude/

src/adaptors/maverick-protocol/
src/adaptors/metavault-v3/
src/adaptors/muuu-finance/navi-lending/
src/adaptors/syncswap/
Empty file modified .prettierrc
100755 → 100644
Empty file.
Loading