Skip to content

Add Unified Labs Risk Curator#18712

Open
louisunifiedlabs wants to merge 2 commits intoDefiLlama:mainfrom
louisunifiedlabs:claude/add-unified-labs-adapter-ETDnx
Open

Add Unified Labs Risk Curator#18712
louisunifiedlabs wants to merge 2 commits intoDefiLlama:mainfrom
louisunifiedlabs:claude/add-unified-labs-adapter-ETDnx

Conversation

@louisunifiedlabs
Copy link
Copy Markdown

@louisunifiedlabs louisunifiedlabs commented Apr 10, 2026

Add Unified Labs as a Morpho ecosystem Risk Curator tracking vaults across Ethereum, Polygon, Monad, and Arbitrum using the morphoVaultOwners pattern via getCuratorExport.

https://claude.ai/code/session_01WuzcaKTdH9ds9hyABzCL28

NOTE

Please enable "Allow edits by maintainers" while putting up the PR.


Summary

Add Unified Labs as a Risk Curator on DefiLlama.

Unified Labs is Asia's first institutional-grade Risk Curator in the Morpho ecosystem, focused on RWA lending. We are currently live on Monad with initial deposits, and are preparing to launch our vaults across multiple chains with tens of millions of dollars in committed capital.

The adapter uses getCuratorExport with morphoVaultOwners to track all Morpho vaults curated by Unified Labs across supported chains.


(Needs to be filled only for new listings)

Name (to be shown on DefiLlama):

Unified Labs

Twitter Link:

https://x.com/unifiedlabs_

List of audit links if any:

N/A — Unified Labs operates as a Risk Curator on Morpho's audited infrastructure.

Website Link:

https://unifiedlabs.io/

Logo (High resolution, will be shown with rounded borders):

https://raw.githubusercontent.com/louisunifiedlabs/logo/main/Unified%20Venture-logoVerticalWhite.png

Current TVL:
Treasury Addresses (if the protocol has treasury):
Chain:

Ethereum, Polygon, Monad, Arbitrum

Coingecko ID:
Coinmarketcap ID:
Curator Owner Address:

0x75B3C335B85C931B1eE7BEeB3c0e40429F002373

Summary by CodeRabbit

  • New Features
    • Added support for a new project with multi-blockchain configuration across Ethereum, Polygon, Monad, and Arbitrum, including per-chain vault/contract mappings and a documented methodology.

Add Unified Labs as a Morpho ecosystem Risk Curator tracking
vaults across Ethereum, Polygon, Monad, and Arbitrum using
the morphoVaultOwners pattern via getCuratorExport.

https://claude.ai/code/session_01WuzcaKTdH9ds9hyABzCL28
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 10, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 2e9daba2-2c68-41c3-a71c-faba056c8047

📥 Commits

Reviewing files that changed from the base of the PR and between 7def6c2 and 9dcc580.

📒 Files selected for processing (1)
  • projects/unified-labs/index.js
🚧 Files skipped from review as they are similar to previous changes (1)
  • projects/unified-labs/index.js

📝 Walkthrough

Walkthrough

A new CommonJS configuration module projects/unified-labs/index.js was added; it builds a configs object with a methodology string and blockchains entries for Ethereum, Polygon, Monad, and Arbitrum (each listing morphoVaultOwners, plus monad.morpho) and exports getCuratorExport(configs).

Changes

Cohort / File(s) Summary
Unified Labs Configuration
projects/unified-labs/index.js
Added new curator configuration module that defines methodology and blockchains (ethereum, polygon, monad, arbitrum) with morphoVaultOwners arrays and monad.morpho, then exports getCuratorExport(configs).

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

🐇 I stitched configs with nimble paws today,

Four chains aligned in a tidy array,
One owner hops across each domain,
Curator export carries the chain-by-chain refrain.

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely summarizes the main change: adding Unified Labs as a Risk Curator to the codebase.
Description check ✅ Passed The description follows the template structure, includes all critical new listing fields (name, Twitter, website, logo, curator owner address, chains), and provides context about Unified Labs' role as a Morpho Risk Curator.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@llamabutler
Copy link
Copy Markdown

The adapter at projects/unified-labs exports TVL:

polygon                   0.00
monad                     0.00
arbitrum                  0.00
ethereum                  0.00

total                    0.00 

The V2 vault 0x35E4...863a on Monad may not be found via
morphoVaultOwners alone, so add it explicitly to the morpho
list as a fallback.

https://claude.ai/code/session_01WuzcaKTdH9ds9hyABzCL28
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
projects/unified-labs/index.js (1)

6-25: Extract the repeated owner address into a constant.

Lines 6-25 duplicate the same literal 4 times. Pulling this into one constant reduces typo risk during future updates.

♻️ Proposed DRY refactor
 const { getCuratorExport } = require("../helper/curators");
 
+const CURATOR_OWNER = '0x75B3C335B85C931B1eE7BEeB3c0e40429F002373'
+
 const configs = {
   methodology: 'Count all assets deposited in vaults curated by Unified Labs.',
   blockchains: {
     ethereum: {
       morphoVaultOwners: [
-        '0x75B3C335B85C931B1eE7BEeB3c0e40429F002373',
+        CURATOR_OWNER,
       ],
     },
     polygon: {
       morphoVaultOwners: [
-        '0x75B3C335B85C931B1eE7BEeB3c0e40429F002373',
+        CURATOR_OWNER,
       ],
     },
     monad: {
       morphoVaultOwners: [
-        '0x75B3C335B85C931B1eE7BEeB3c0e40429F002373',
+        CURATOR_OWNER,
       ],
     },
     arbitrum: {
       morphoVaultOwners: [
-        '0x75B3C335B85C931B1eE7BEeB3c0e40429F002373',
+        CURATOR_OWNER,
       ],
     },
   },
 }
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@projects/unified-labs/index.js` around lines 6 - 25, The file repeats the
same address literal in each chain's morphoVaultOwners array; define a single
constant (e.g., const MORPHO_VAULT_OWNER =
'0x75B3C335B85C931B1eE7BEeB3c0e40429F002373') near the top of the file and
replace each literal inside the ethereum.polygon.monad.arbitrum
morphoVaultOwners arrays with that constant (ensure arrays remain arrays, e.g.,
[MORPHO_VAULT_OWNER]) to reduce duplication and typo risk.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@projects/unified-labs/index.js`:
- Around line 6-25: The file repeats the same address literal in each chain's
morphoVaultOwners array; define a single constant (e.g., const
MORPHO_VAULT_OWNER = '0x75B3C335B85C931B1eE7BEeB3c0e40429F002373') near the top
of the file and replace each literal inside the ethereum.polygon.monad.arbitrum
morphoVaultOwners arrays with that constant (ensure arrays remain arrays, e.g.,
[MORPHO_VAULT_OWNER]) to reduce duplication and typo risk.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 71de5174-947e-4025-8d97-48fae428203a

📥 Commits

Reviewing files that changed from the base of the PR and between ecb3b3e and 7def6c2.

📒 Files selected for processing (1)
  • projects/unified-labs/index.js

@llamabutler
Copy link
Copy Markdown

The adapter at projects/unified-labs exports TVL:

monad                     20.09 k
polygon                   0.00
arbitrum                  0.00
ethereum                  0.00

total                    20.09 k 

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