@lagoon-protocol/lagoon-mcp 0.2.14 → 0.2.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/graphql/fragments/composition.fragment.d.ts +49 -16
- package/dist/graphql/fragments/composition.fragment.d.ts.map +1 -1
- package/dist/graphql/fragments/composition.fragment.js +7 -13
- package/dist/graphql/fragments/composition.fragment.js.map +1 -1
- package/dist/graphql/fragments/index.d.ts +1 -1
- package/dist/graphql/fragments/index.d.ts.map +1 -1
- package/dist/graphql/fragments/index.js +4 -2
- package/dist/graphql/fragments/index.js.map +1 -1
- package/dist/graphql/queries/composition.queries.d.ts +17 -6
- package/dist/graphql/queries/composition.queries.d.ts.map +1 -1
- package/dist/graphql/queries/composition.queries.js +18 -11
- package/dist/graphql/queries/composition.queries.js.map +1 -1
- package/dist/graphql/queries/portfolio.queries.d.ts +10 -5
- package/dist/graphql/queries/portfolio.queries.d.ts.map +1 -1
- package/dist/graphql/queries/portfolio.queries.js +12 -10
- package/dist/graphql/queries/portfolio.queries.js.map +1 -1
- package/dist/graphql/queries/risk.queries.d.ts +1 -1
- package/dist/graphql/queries/risk.queries.d.ts.map +1 -1
- package/dist/graphql/queries/risk.queries.js +4 -6
- package/dist/graphql/queries/risk.queries.js.map +1 -1
- package/dist/server.js +1 -1
- package/dist/services/analytics/risk.service.d.ts +3 -13
- package/dist/services/analytics/risk.service.d.ts.map +1 -1
- package/dist/services/analytics/risk.service.js +27 -10
- package/dist/services/analytics/risk.service.js.map +1 -1
- package/dist/tools/compare-vaults.d.ts.map +1 -1
- package/dist/tools/compare-vaults.js +36 -14
- package/dist/tools/compare-vaults.js.map +1 -1
- package/dist/tools/registry.d.ts.map +1 -1
- package/dist/tools/registry.js +10 -6
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/user-portfolio.d.ts.map +1 -1
- package/dist/tools/user-portfolio.js +58 -20
- package/dist/tools/user-portfolio.js.map +1 -1
- package/dist/tools/vault-composition.d.ts +11 -4
- package/dist/tools/vault-composition.d.ts.map +1 -1
- package/dist/tools/vault-composition.js +109 -49
- package/dist/tools/vault-composition.js.map +1 -1
- package/dist/utils/validators.d.ts +3 -0
- package/dist/utils/validators.d.ts.map +1 -1
- package/dist/utils/validators.js +4 -0
- package/dist/utils/validators.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,11 +1,51 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Composition Fragment
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Type definitions for vault composition data from Octav API.
|
|
5
|
+
* The backend returns a JSONObject with chains as keys containing composition data.
|
|
6
|
+
*
|
|
7
|
+
* Note: The vaultComposition endpoint returns JSONObject type, so no GraphQL fragment
|
|
8
|
+
* is needed. The response is a flat object keyed by chain name.
|
|
6
9
|
*/
|
|
7
10
|
/**
|
|
8
|
-
*
|
|
11
|
+
* Chain composition data from Octav API
|
|
12
|
+
* Each chain entry contains aggregated position values and metadata
|
|
13
|
+
*/
|
|
14
|
+
export interface ChainComposition {
|
|
15
|
+
/** Display name of the chain (e.g., "Ethereum", "Arbitrum") */
|
|
16
|
+
name: string;
|
|
17
|
+
/** Unique key for the chain (e.g., "ethereum", "arbitrum") */
|
|
18
|
+
key: string;
|
|
19
|
+
/** Chain ID as string (e.g., "1", "42161") */
|
|
20
|
+
chainId: string;
|
|
21
|
+
/** Total USD value of positions on this chain */
|
|
22
|
+
value: string;
|
|
23
|
+
/** Percentile ranking of this chain's value */
|
|
24
|
+
valuePercentile: string;
|
|
25
|
+
/** Total cost basis (may be "N/A") */
|
|
26
|
+
totalCostBasis: string;
|
|
27
|
+
/** Total closed PnL (may be "N/A") */
|
|
28
|
+
totalClosedPnl: string;
|
|
29
|
+
/** Total open PnL (may be "N/A") */
|
|
30
|
+
totalOpenPnl: string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Raw vaultComposition response - JSONObject keyed by chain name
|
|
34
|
+
*
|
|
35
|
+
* Example:
|
|
36
|
+
* ```typescript
|
|
37
|
+
* {
|
|
38
|
+
* "ethereum": { name: "Ethereum", key: "ethereum", chainId: "1", value: "6224.80", ... },
|
|
39
|
+
* "arbitrum": { name: "Arbitrum", key: "arbitrum", chainId: "42161", value: "3.99", ... },
|
|
40
|
+
* "linea": { name: "Linea", key: "linea", chainId: "59144", value: "0", ... },
|
|
41
|
+
* // ... 60+ chains
|
|
42
|
+
* }
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
export type RawVaultComposition = Record<string, ChainComposition>;
|
|
46
|
+
/**
|
|
47
|
+
* @deprecated Use ChainComposition instead - backend API changed
|
|
48
|
+
* Protocol composition within a vault (legacy structure)
|
|
9
49
|
*/
|
|
10
50
|
export interface ProtocolComposition {
|
|
11
51
|
protocol: string;
|
|
@@ -14,7 +54,8 @@ export interface ProtocolComposition {
|
|
|
14
54
|
details?: ProtocolComposition[];
|
|
15
55
|
}
|
|
16
56
|
/**
|
|
17
|
-
*
|
|
57
|
+
* @deprecated Use ChainComposition instead - backend API changed
|
|
58
|
+
* Token/position composition within a vault (legacy structure)
|
|
18
59
|
*/
|
|
19
60
|
export interface TokenComposition {
|
|
20
61
|
symbol: string;
|
|
@@ -26,24 +67,16 @@ export interface TokenComposition {
|
|
|
26
67
|
details?: TokenComposition[];
|
|
27
68
|
}
|
|
28
69
|
/**
|
|
29
|
-
*
|
|
70
|
+
* @deprecated Use RawVaultComposition instead - backend API changed
|
|
71
|
+
* Complete composition data for a vault (legacy structure)
|
|
30
72
|
*/
|
|
31
73
|
export interface CompositionData {
|
|
32
74
|
compositions: ProtocolComposition[];
|
|
33
75
|
tokenCompositions: TokenComposition[];
|
|
34
76
|
}
|
|
35
77
|
/**
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
* Usage:
|
|
39
|
-
* ```graphql
|
|
40
|
-
* query MyQuery {
|
|
41
|
-
* composition(address: "0x...") {
|
|
42
|
-
* ...CompositionFragment
|
|
43
|
-
* }
|
|
44
|
-
* }
|
|
45
|
-
* ${COMPOSITION_FRAGMENT}
|
|
46
|
-
* ```
|
|
78
|
+
* @deprecated No longer used - backend returns JSONObject, not a typed GraphQL response
|
|
79
|
+
* GraphQL fragment for composition data (legacy)
|
|
47
80
|
*/
|
|
48
81
|
export declare const COMPOSITION_FRAGMENT = "\n fragment CompositionFragment on CompositionData {\n compositions {\n protocol\n valueInUsd\n repartition\n details {\n protocol\n valueInUsd\n repartition\n }\n }\n tokenCompositions {\n symbol\n name\n contract\n chainKey\n valueInUsd\n repartition\n details {\n symbol\n name\n contract\n chainKey\n valueInUsd\n repartition\n }\n }\n }\n";
|
|
49
82
|
//# sourceMappingURL=composition.fragment.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composition.fragment.d.ts","sourceRoot":"","sources":["../../../src/graphql/fragments/composition.fragment.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"composition.fragment.d.ts","sourceRoot":"","sources":["../../../src/graphql/fragments/composition.fragment.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;IACb,8DAA8D;IAC9D,GAAG,EAAE,MAAM,CAAC;IACZ,8CAA8C;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAC;IACd,+CAA+C;IAC/C,eAAe,EAAE,MAAM,CAAC;IACxB,sCAAsC;IACtC,cAAc,EAAE,MAAM,CAAC;IACvB,sCAAsC;IACtC,cAAc,EAAE,MAAM,CAAC;IACvB,oCAAoC;IACpC,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;AAOnE;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,mBAAmB,EAAE,CAAC;CACjC;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,mBAAmB,EAAE,CAAC;IACpC,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;CACvC;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,0eA6BhC,CAAC"}
|
|
@@ -1,21 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Composition Fragment
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Type definitions for vault composition data from Octav API.
|
|
5
|
+
* The backend returns a JSONObject with chains as keys containing composition data.
|
|
6
|
+
*
|
|
7
|
+
* Note: The vaultComposition endpoint returns JSONObject type, so no GraphQL fragment
|
|
8
|
+
* is needed. The response is a flat object keyed by chain name.
|
|
6
9
|
*/
|
|
7
10
|
/**
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* Usage:
|
|
11
|
-
* ```graphql
|
|
12
|
-
* query MyQuery {
|
|
13
|
-
* composition(address: "0x...") {
|
|
14
|
-
* ...CompositionFragment
|
|
15
|
-
* }
|
|
16
|
-
* }
|
|
17
|
-
* ${COMPOSITION_FRAGMENT}
|
|
18
|
-
* ```
|
|
11
|
+
* @deprecated No longer used - backend returns JSONObject, not a typed GraphQL response
|
|
12
|
+
* GraphQL fragment for composition data (legacy)
|
|
19
13
|
*/
|
|
20
14
|
export const COMPOSITION_FRAGMENT = `
|
|
21
15
|
fragment CompositionFragment on CompositionData {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composition.fragment.js","sourceRoot":"","sources":["../../../src/graphql/fragments/composition.fragment.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"composition.fragment.js","sourceRoot":"","sources":["../../../src/graphql/fragments/composition.fragment.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA+EH;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BnC,CAAC"}
|
|
@@ -12,5 +12,5 @@ export { TRANSACTION_BASE_FRAGMENT } from './transaction-base.fragment.js';
|
|
|
12
12
|
export { VAULT_FRAGMENT, type VaultData } from './vault.fragment.js';
|
|
13
13
|
export { VAULT_LIST_FRAGMENT, type VaultListData } from './vault-list.fragment.js';
|
|
14
14
|
export { VAULT_SUMMARY_FRAGMENT, type VaultSummaryData } from './vault-summary.fragment.js';
|
|
15
|
-
export { COMPOSITION_FRAGMENT, type ProtocolComposition, type TokenComposition, type CompositionData, } from './composition.fragment.js';
|
|
15
|
+
export { type ChainComposition, type RawVaultComposition, COMPOSITION_FRAGMENT, type ProtocolComposition, type TokenComposition, type CompositionData, } from './composition.fragment.js';
|
|
16
16
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/graphql/fragments/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,sBAAsB,EAAE,KAAK,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAGxF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/D,OAAO,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAG3F,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAG3E,OAAO,EAAE,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,KAAK,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAG5F,OAAO,EACL,oBAAoB,EACpB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,eAAe,GACrB,MAAM,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/graphql/fragments/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,sBAAsB,EAAE,KAAK,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAGxF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/D,OAAO,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAG3F,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAG3E,OAAO,EAAE,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,KAAK,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAG5F,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EAExB,oBAAoB,EACpB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,eAAe,GACrB,MAAM,2BAA2B,CAAC"}
|
|
@@ -18,6 +18,8 @@ export { TRANSACTION_BASE_FRAGMENT } from './transaction-base.fragment.js';
|
|
|
18
18
|
export { VAULT_FRAGMENT } from './vault.fragment.js';
|
|
19
19
|
export { VAULT_LIST_FRAGMENT } from './vault-list.fragment.js';
|
|
20
20
|
export { VAULT_SUMMARY_FRAGMENT } from './vault-summary.fragment.js';
|
|
21
|
-
// Composition Fragment
|
|
22
|
-
export {
|
|
21
|
+
// Composition Fragment - new chain-based types
|
|
22
|
+
export {
|
|
23
|
+
// Legacy types (deprecated - kept for backward compatibility)
|
|
24
|
+
COMPOSITION_FRAGMENT, } from './composition.fragment.js';
|
|
23
25
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/graphql/fragments/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,yBAAyB;AACzB,OAAO,EAAE,sBAAsB,EAAqB,MAAM,6BAA6B,CAAC;AAExF,sBAAsB;AACtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,sBAAsB;AACtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,qBAAqB;AACrB,OAAO,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAE3F,4BAA4B;AAC5B,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,+CAA+C;AAC/C,OAAO,EAAE,cAAc,EAAkB,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAsB,MAAM,0BAA0B,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAyB,MAAM,6BAA6B,CAAC;AAE5F
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/graphql/fragments/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,yBAAyB;AACzB,OAAO,EAAE,sBAAsB,EAAqB,MAAM,6BAA6B,CAAC;AAExF,sBAAsB;AACtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,sBAAsB;AACtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,qBAAqB;AACrB,OAAO,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAE3F,4BAA4B;AAC5B,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,+CAA+C;AAC/C,OAAO,EAAE,cAAc,EAAkB,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAsB,MAAM,0BAA0B,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAyB,MAAM,6BAA6B,CAAC;AAE5F,+CAA+C;AAC/C,OAAO;AAGL,8DAA8D;AAC9D,oBAAoB,GAIrB,MAAM,2BAA2B,CAAC"}
|
|
@@ -1,22 +1,33 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Composition Queries
|
|
3
3
|
*
|
|
4
|
-
* GraphQL queries for vault composition data
|
|
5
|
-
*
|
|
4
|
+
* GraphQL queries for vault composition data from Octav API.
|
|
5
|
+
* The backend returns a JSONObject with chains as keys containing composition data.
|
|
6
|
+
*
|
|
7
|
+
* Note: The vaultComposition endpoint returns JSONObject type, so no GraphQL fragment
|
|
8
|
+
* is needed. The response is a flat object keyed by chain name.
|
|
6
9
|
*/
|
|
7
10
|
/**
|
|
8
11
|
* Get vault composition GraphQL query
|
|
9
12
|
*
|
|
10
|
-
* Fetches
|
|
13
|
+
* Fetches cross-chain composition data for a vault from Octav API.
|
|
14
|
+
* Returns a JSONObject with chain keys (ethereum, arbitrum, etc.) containing:
|
|
15
|
+
* - name: Chain display name
|
|
16
|
+
* - key: Chain identifier
|
|
17
|
+
* - chainId: Chain ID as string
|
|
18
|
+
* - value: USD value of positions
|
|
19
|
+
* - valuePercentile: Relative ranking
|
|
20
|
+
* - totalCostBasis, totalClosedPnl, totalOpenPnl: PnL metrics
|
|
21
|
+
*
|
|
11
22
|
* Used by: get_vault_composition tool
|
|
12
23
|
*
|
|
13
24
|
* Usage:
|
|
14
25
|
* ```typescript
|
|
15
|
-
* const data = await graphqlClient.request<{ vaultComposition:
|
|
26
|
+
* const data = await graphqlClient.request<{ vaultComposition: RawVaultComposition | null }>(
|
|
16
27
|
* GET_VAULT_COMPOSITION_QUERY,
|
|
17
|
-
* {
|
|
28
|
+
* { walletAddress: '0x...' }
|
|
18
29
|
* );
|
|
19
30
|
* ```
|
|
20
31
|
*/
|
|
21
|
-
export declare const GET_VAULT_COMPOSITION_QUERY = "\n query GetVaultComposition($
|
|
32
|
+
export declare const GET_VAULT_COMPOSITION_QUERY = "\n query GetVaultComposition($walletAddress: Address!) {\n vaultComposition(walletAddress: $walletAddress)\n }\n";
|
|
22
33
|
//# sourceMappingURL=composition.queries.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composition.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/composition.queries.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"composition.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/composition.queries.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,2BAA2B,0HAIvC,CAAC"}
|
|
@@ -1,30 +1,37 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Composition Queries
|
|
3
3
|
*
|
|
4
|
-
* GraphQL queries for vault composition data
|
|
5
|
-
*
|
|
4
|
+
* GraphQL queries for vault composition data from Octav API.
|
|
5
|
+
* The backend returns a JSONObject with chains as keys containing composition data.
|
|
6
|
+
*
|
|
7
|
+
* Note: The vaultComposition endpoint returns JSONObject type, so no GraphQL fragment
|
|
8
|
+
* is needed. The response is a flat object keyed by chain name.
|
|
6
9
|
*/
|
|
7
|
-
import { COMPOSITION_FRAGMENT } from '../fragments/index.js';
|
|
8
10
|
/**
|
|
9
11
|
* Get vault composition GraphQL query
|
|
10
12
|
*
|
|
11
|
-
* Fetches
|
|
13
|
+
* Fetches cross-chain composition data for a vault from Octav API.
|
|
14
|
+
* Returns a JSONObject with chain keys (ethereum, arbitrum, etc.) containing:
|
|
15
|
+
* - name: Chain display name
|
|
16
|
+
* - key: Chain identifier
|
|
17
|
+
* - chainId: Chain ID as string
|
|
18
|
+
* - value: USD value of positions
|
|
19
|
+
* - valuePercentile: Relative ranking
|
|
20
|
+
* - totalCostBasis, totalClosedPnl, totalOpenPnl: PnL metrics
|
|
21
|
+
*
|
|
12
22
|
* Used by: get_vault_composition tool
|
|
13
23
|
*
|
|
14
24
|
* Usage:
|
|
15
25
|
* ```typescript
|
|
16
|
-
* const data = await graphqlClient.request<{ vaultComposition:
|
|
26
|
+
* const data = await graphqlClient.request<{ vaultComposition: RawVaultComposition | null }>(
|
|
17
27
|
* GET_VAULT_COMPOSITION_QUERY,
|
|
18
|
-
* {
|
|
28
|
+
* { walletAddress: '0x...' }
|
|
19
29
|
* );
|
|
20
30
|
* ```
|
|
21
31
|
*/
|
|
22
32
|
export const GET_VAULT_COMPOSITION_QUERY = `
|
|
23
|
-
query GetVaultComposition($
|
|
24
|
-
vaultComposition(
|
|
25
|
-
...CompositionFragment
|
|
26
|
-
}
|
|
33
|
+
query GetVaultComposition($walletAddress: Address!) {
|
|
34
|
+
vaultComposition(walletAddress: $walletAddress)
|
|
27
35
|
}
|
|
28
|
-
${COMPOSITION_FRAGMENT}
|
|
29
36
|
`;
|
|
30
37
|
//# sourceMappingURL=composition.queries.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composition.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/composition.queries.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"composition.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/composition.queries.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;;CAI1C,CAAC"}
|
|
@@ -68,20 +68,25 @@ export declare const SINGLE_VAULT_OPTIMIZATION_QUERY = "\n query SingleVaultOpt
|
|
|
68
68
|
/**
|
|
69
69
|
* GraphQL query for single vault composition data
|
|
70
70
|
*
|
|
71
|
-
* Fetches composition data for a
|
|
72
|
-
*
|
|
71
|
+
* Fetches cross-chain composition data for a vault from Octav API.
|
|
72
|
+
* Returns a JSONObject with chain keys containing composition metrics.
|
|
73
|
+
*
|
|
74
|
+
* Note: Backend API changed - now uses `walletAddress` parameter and returns
|
|
75
|
+
* JSONObject type (no fragment needed). Response contains chains as keys with
|
|
76
|
+
* value, chainId, name, etc.
|
|
73
77
|
*
|
|
74
78
|
* Used by: get_user_portfolio tool (for composition aggregation)
|
|
79
|
+
* compare_vaults tool (for diversification analysis)
|
|
75
80
|
*
|
|
76
81
|
* Usage:
|
|
77
82
|
* ```typescript
|
|
78
|
-
* const data = await graphqlClient.request<
|
|
83
|
+
* const data = await graphqlClient.request<{ vaultComposition: RawVaultComposition | null }>(
|
|
79
84
|
* SINGLE_VAULT_COMPOSITION_QUERY,
|
|
80
|
-
* {
|
|
85
|
+
* { walletAddress: '0x...' }
|
|
81
86
|
* );
|
|
82
87
|
* ```
|
|
83
88
|
*/
|
|
84
|
-
export declare const SINGLE_VAULT_COMPOSITION_QUERY = "\n query SingleVaultComposition($
|
|
89
|
+
export declare const SINGLE_VAULT_COMPOSITION_QUERY = "\n query SingleVaultComposition($walletAddress: Address!) {\n vaultComposition(walletAddress: $walletAddress)\n }\n";
|
|
85
90
|
/**
|
|
86
91
|
* GraphQL query for portfolio optimization data (DEPRECATED)
|
|
87
92
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portfolio.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/portfolio.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"portfolio.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/portfolio.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;AAqBlE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,2BAA2B,CACzC,cAAc,GAAE,uBAAmC,GAClD,MAAM,CAyBR;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,QAAsC,CAAC;AAE5E;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,+BAA+B,s+GAmC3C,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,8BAA8B,6HAI1C,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,4BAA4B,0wHAiDxC,CAAC"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* GraphQL queries for user portfolio operations.
|
|
5
5
|
* Includes user portfolio data and portfolio optimization queries.
|
|
6
6
|
*/
|
|
7
|
-
import { VAULT_FRAGMENT, VAULT_LIST_FRAGMENT, VAULT_SUMMARY_FRAGMENT
|
|
7
|
+
import { VAULT_FRAGMENT, VAULT_LIST_FRAGMENT, VAULT_SUMMARY_FRAGMENT } from '../fragments/index.js';
|
|
8
8
|
/**
|
|
9
9
|
* Get fragment and fragment name based on response format for portfolio queries
|
|
10
10
|
*/
|
|
@@ -139,26 +139,28 @@ export const SINGLE_VAULT_OPTIMIZATION_QUERY = `
|
|
|
139
139
|
/**
|
|
140
140
|
* GraphQL query for single vault composition data
|
|
141
141
|
*
|
|
142
|
-
* Fetches composition data for a
|
|
143
|
-
*
|
|
142
|
+
* Fetches cross-chain composition data for a vault from Octav API.
|
|
143
|
+
* Returns a JSONObject with chain keys containing composition metrics.
|
|
144
|
+
*
|
|
145
|
+
* Note: Backend API changed - now uses `walletAddress` parameter and returns
|
|
146
|
+
* JSONObject type (no fragment needed). Response contains chains as keys with
|
|
147
|
+
* value, chainId, name, etc.
|
|
144
148
|
*
|
|
145
149
|
* Used by: get_user_portfolio tool (for composition aggregation)
|
|
150
|
+
* compare_vaults tool (for diversification analysis)
|
|
146
151
|
*
|
|
147
152
|
* Usage:
|
|
148
153
|
* ```typescript
|
|
149
|
-
* const data = await graphqlClient.request<
|
|
154
|
+
* const data = await graphqlClient.request<{ vaultComposition: RawVaultComposition | null }>(
|
|
150
155
|
* SINGLE_VAULT_COMPOSITION_QUERY,
|
|
151
|
-
* {
|
|
156
|
+
* { walletAddress: '0x...' }
|
|
152
157
|
* );
|
|
153
158
|
* ```
|
|
154
159
|
*/
|
|
155
160
|
export const SINGLE_VAULT_COMPOSITION_QUERY = `
|
|
156
|
-
query SingleVaultComposition($
|
|
157
|
-
vaultComposition(
|
|
158
|
-
...CompositionFragment
|
|
159
|
-
}
|
|
161
|
+
query SingleVaultComposition($walletAddress: Address!) {
|
|
162
|
+
vaultComposition(walletAddress: $walletAddress)
|
|
160
163
|
}
|
|
161
|
-
${COMPOSITION_FRAGMENT}
|
|
162
164
|
`;
|
|
163
165
|
/**
|
|
164
166
|
* GraphQL query for portfolio optimization data (DEPRECATED)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portfolio.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/portfolio.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"portfolio.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/portfolio.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAOpG;;GAEG;AACH,SAAS,qCAAqC,CAAC,cAAuC;IAIpF,QAAQ,cAAc,EAAE,CAAC;QACvB,KAAK,MAAM;YACT,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,YAAY,EAAE,mBAAmB,EAAE,CAAC;QAC9E,KAAK,SAAS;YACZ,OAAO,EAAE,QAAQ,EAAE,sBAAsB,EAAE,YAAY,EAAE,sBAAsB,EAAE,CAAC;QACpF,KAAK,MAAM;YACT,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,CAAC;QACrE;YACE,OAAO,EAAE,QAAQ,EAAE,sBAAsB,EAAE,YAAY,EAAE,sBAAsB,EAAE,CAAC;IACtF,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,2BAA2B,CACzC,iBAA0C,SAAS;IAEnD,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,qCAAqC,CAAC,cAAc,CAAC,CAAC;IAEzF,OAAO;;;;;;;;;mBASU,YAAY;;;;;;;;;;;MAWzB,QAAQ;GACX,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;AAE5E;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkC3C,cAAc;CACjB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG;;;;CAI7C,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAgDxC,cAAc;CACjB,CAAC"}
|
|
@@ -33,5 +33,5 @@
|
|
|
33
33
|
* );
|
|
34
34
|
* ```
|
|
35
35
|
*/
|
|
36
|
-
export declare const RISK_ANALYSIS_QUERY = "\n query RiskAnalysis(\n $vaultAddress: Address!,\n $chainId: Int!,\n $curatorId: String!,\n $where: TransactionFilterInput!,\n $orderBy: TransactionOrderBy!,\n $orderDirection: OrderDirection!\n ) {\n vault: vaultByAddress(address: $vaultAddress, chainId: $chainId) {\n ...VaultFragment\n }\n\n # Get all vaults for concentration risk calculation\n allVaults: vaults(where: { chainId_eq: $chainId, isVisible_eq: true }) {\n items {\n state {\n totalAssetsUsd\n }\n }\n }\n\n # Get curator's other vaults for reputation analysis\n curatorVaults: vaults(where: { chainId_eq: $chainId, curatorIds_contains: $curatorId }) {\n items {\n address\n state {\n totalAssetsUsd\n }\n }\n }\n\n # Get price history for volatility analysis\n priceHistory: transactions(\n where: $where,\n orderBy: $orderBy,\n orderDirection: $orderDirection,\n first: 100\n ) {\n items {\n timestamp\n data {\n ... on TotalAssetsUpdated {\n totalAssets\n totalAssetsUsd\n totalSupply\n }\n }\n }\n }\n\n # Get composition data for
|
|
36
|
+
export declare const RISK_ANALYSIS_QUERY = "\n query RiskAnalysis(\n $vaultAddress: Address!,\n $chainId: Int!,\n $curatorId: String!,\n $where: TransactionFilterInput!,\n $orderBy: TransactionOrderBy!,\n $orderDirection: OrderDirection!\n ) {\n vault: vaultByAddress(address: $vaultAddress, chainId: $chainId) {\n ...VaultFragment\n }\n\n # Get all vaults for concentration risk calculation\n allVaults: vaults(where: { chainId_eq: $chainId, isVisible_eq: true }) {\n items {\n state {\n totalAssetsUsd\n }\n }\n }\n\n # Get curator's other vaults for reputation analysis\n curatorVaults: vaults(where: { chainId_eq: $chainId, curatorIds_contains: $curatorId }) {\n items {\n address\n state {\n totalAssetsUsd\n }\n }\n }\n\n # Get price history for volatility analysis\n priceHistory: transactions(\n where: $where,\n orderBy: $orderBy,\n orderDirection: $orderDirection,\n first: 100\n ) {\n items {\n timestamp\n data {\n ... on TotalAssetsUpdated {\n totalAssets\n totalAssetsUsd\n totalSupply\n }\n }\n }\n }\n\n # Get composition data for cross-chain diversification risk\n # Note: Backend API changed - uses walletAddress and returns JSONObject with chains\n composition: vaultComposition(walletAddress: $vaultAddress)\n }\n \n fragment VaultFragment on Vault {\n address\n symbol\n decimals\n name\n description\n shortDescription\n maxCapacity\n logoUrl\n averageSettlement\n isVisible\n asset {\n ...AssetInfoFragment\n }\n chain {\n ...ChainInfoFragment\n }\n state {\n state\n totalAssets\n totalAssetsUsd\n totalSupply\n pricePerShare\n pricePerShareUsd\n safeAssetBalance\n liveAPR {\n grossApr\n name\n netApr\n description\n }\n roles {\n owner\n valuationManager\n whitelistManager\n safe\n feeReceiver\n }\n managementFee\n performanceFee\n protocolFee\n isWhitelistActivated\n whitelist\n pendingSettlement {\n assets\n assetsUsd\n shares\n }\n inceptionApr {\n ...APRBreakdownFragment\n }\n pendingSiloBalances {\n assets\n shares\n }\n monthlyApr {\n ...APRBreakdownFragment\n }\n newTotalAssets\n highWaterMark\n lastFeeTime\n safeAssetBalanceUsd\n weeklyApr {\n ...APRBreakdownFragment\n }\n yearlyApr {\n ...APRBreakdownFragment\n }\n }\n curators {\n name\n id\n aboutDescription\n logoUrl\n url\n }\n integrator {\n name\n url\n logoUrl\n aboutDescription\n }\n defiIntegrations {\n name\n description\n link\n logoUrl\n type\n }\n }\n \n fragment AssetInfoFragment on Asset {\n id\n name\n symbol\n decimals\n address\n logoUrl\n description\n isVisible\n priceUsd\n chain {\n id\n name\n nativeToken\n logoUrl\n }\n }\n\n \n fragment ChainInfoFragment on Chain {\n id\n name\n nativeToken\n logoUrl\n wrappedNativeToken {\n address\n decimals\n name\n symbol\n }\n factory\n }\n\n \n fragment APRBreakdownFragment on APRs {\n linearNetApr\n linearNetAprWithoutExtraYields\n airdrops {\n name\n apr\n description\n distributionTimestamp\n endTimestamp\n isEstimation\n logoUrl\n multiplier\n ppsIncrease\n startTimestamp\n }\n incentives {\n name\n apr\n aprDescription\n description\n endTimestamp\n incentiveRate {\n incentiveAmount\n referenceToken {\n id\n }\n referenceTokenAmount\n }\n }\n nativeYields {\n name\n apr\n aprDescription\n description\n endTimestamp\n isEstimation\n logoUrl\n multiplier\n startTimestamp\n }\n }\n\n\n";
|
|
37
37
|
//# sourceMappingURL=risk.queries.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"risk.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/risk.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,eAAO,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"risk.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/risk.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,eAAO,MAAM,mBAAmB,2mIAwD/B,CAAC"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* GraphQL queries for vault risk analysis.
|
|
5
5
|
* Includes multi-factor risk scoring with vault, protocol, and market data.
|
|
6
6
|
*/
|
|
7
|
-
import { VAULT_FRAGMENT
|
|
7
|
+
import { VAULT_FRAGMENT } from '../fragments/index.js';
|
|
8
8
|
/**
|
|
9
9
|
* GraphQL query for vault risk analysis data
|
|
10
10
|
*
|
|
@@ -85,12 +85,10 @@ export const RISK_ANALYSIS_QUERY = `
|
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
87
|
|
|
88
|
-
# Get composition data for
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
}
|
|
88
|
+
# Get composition data for cross-chain diversification risk
|
|
89
|
+
# Note: Backend API changed - uses walletAddress and returns JSONObject with chains
|
|
90
|
+
composition: vaultComposition(walletAddress: $vaultAddress)
|
|
92
91
|
}
|
|
93
92
|
${VAULT_FRAGMENT}
|
|
94
|
-
${COMPOSITION_FRAGMENT}
|
|
95
93
|
`;
|
|
96
94
|
//# sourceMappingURL=risk.queries.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"risk.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/risk.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"risk.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/risk.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuD/B,cAAc;CACjB,CAAC"}
|
package/dist/server.js
CHANGED
|
@@ -34,7 +34,7 @@ import { getPortfolioOptimizationPrompt } from './prompts/portfolio-optimization
|
|
|
34
34
|
export function createServer() {
|
|
35
35
|
const server = new McpServer({
|
|
36
36
|
name: 'lagoon-mcp',
|
|
37
|
-
version: '0.2.
|
|
37
|
+
version: '0.2.15',
|
|
38
38
|
});
|
|
39
39
|
// ==========================================
|
|
40
40
|
// Dependency Injection Container
|
|
@@ -5,10 +5,11 @@
|
|
|
5
5
|
* Demonstrates service layer pattern for complex multi-step operations.
|
|
6
6
|
*/
|
|
7
7
|
import { BaseService } from '../base.service.js';
|
|
8
|
-
import { VaultData } from '../../graphql/fragments/index.js';
|
|
8
|
+
import { VaultData, RawVaultComposition } from '../../graphql/fragments/index.js';
|
|
9
9
|
import { RiskScoreBreakdown } from '../../utils/risk-scoring.js';
|
|
10
10
|
/**
|
|
11
11
|
* Risk analysis input data extracted from GraphQL
|
|
12
|
+
* Note: composition now uses chain-based data from Octav API
|
|
12
13
|
*/
|
|
13
14
|
export interface RiskAnalysisData {
|
|
14
15
|
vault: VaultData;
|
|
@@ -37,18 +38,7 @@ export interface RiskAnalysisData {
|
|
|
37
38
|
};
|
|
38
39
|
}>;
|
|
39
40
|
};
|
|
40
|
-
composition:
|
|
41
|
-
compositions: Array<{
|
|
42
|
-
protocol: string;
|
|
43
|
-
repartition: number;
|
|
44
|
-
valueInUsd: number;
|
|
45
|
-
}>;
|
|
46
|
-
tokenCompositions: Array<{
|
|
47
|
-
symbol: string;
|
|
48
|
-
repartition: number;
|
|
49
|
-
valueInUsd: number;
|
|
50
|
-
}>;
|
|
51
|
-
} | null;
|
|
41
|
+
composition: RawVaultComposition | null;
|
|
52
42
|
}
|
|
53
43
|
/**
|
|
54
44
|
* Comparative risk context for benchmarking
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"risk.service.d.ts","sourceRoot":"","sources":["../../../src/services/analytics/risk.service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"risk.service.d.ts","sourceRoot":"","sources":["../../../src/services/analytics/risk.service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAoB,MAAM,kCAAkC,CAAC;AAEpG,OAAO,EAAe,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAE9E;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE;gBAAE,cAAc,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;IACnE,aAAa,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE;gBAAE,cAAc,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;IACxF,YAAY,EAAE;QACZ,KAAK,EAAE,KAAK,CAAC;YACX,SAAS,EAAE,MAAM,CAAC;YAClB,IAAI,EAAE;gBACJ,WAAW,EAAE,MAAM,CAAC;gBACpB,cAAc,EAAE,MAAM,CAAC;gBACvB,WAAW,EAAE,MAAM,CAAC;aACrB,CAAC;SACH,CAAC,CAAC;KACJ,CAAC;IAEF,WAAW,EAAE,mBAAmB,GAAG,IAAI,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,0BAA2B,SAAQ,kBAAkB;IACpE,WAAW,CAAC,EAAE,sBAAsB,CAAC;CACtC;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,WAAW;IAC1C;;OAEG;IACG,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAgB5F;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,gBAAgB,GAAG,kBAAkB;IAsJzD;;;;;;OAMG;IACH,2BAA2B,CACzB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,gBAAgB,CAAC,WAAW,CAAC,GAC3C,sBAAsB;IAuEzB;;;;;;;OAOG;IACG,OAAO,CACX,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,EACf,kBAAkB,GAAE,OAAc,GACjC,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC;IA0B7C;;OAEG;IACH,mBAAmB,CACjB,SAAS,EAAE,0BAA0B,EACrC,cAAc,GAAE,OAAO,GAAG,SAAS,GAAG,UAAsB,GAC3D,MAAM;CAiNV"}
|
|
@@ -104,16 +104,33 @@ export class RiskService extends BaseService {
|
|
|
104
104
|
totalAssets,
|
|
105
105
|
maxCapacity,
|
|
106
106
|
};
|
|
107
|
-
// Extract composition data for
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
107
|
+
// Extract composition data for chain diversification risk
|
|
108
|
+
// Transform RawVaultComposition (chain-keyed JSONObject) to risk analysis format
|
|
109
|
+
let compositionData;
|
|
110
|
+
if (data.composition && Object.keys(data.composition).length > 0) {
|
|
111
|
+
// Filter active chains (value > 0) and calculate percentages
|
|
112
|
+
const activeChains = Object.entries(data.composition)
|
|
113
|
+
.filter(([, chain]) => {
|
|
114
|
+
const value = parseFloat(chain.value);
|
|
115
|
+
return !isNaN(value) && value > 0;
|
|
116
|
+
})
|
|
117
|
+
.map(([, chain]) => ({
|
|
118
|
+
value: parseFloat(chain.value),
|
|
119
|
+
repartition: 0, // Will calculate after total
|
|
120
|
+
}));
|
|
121
|
+
const totalValue = activeChains.reduce((sum, c) => sum + c.value, 0);
|
|
122
|
+
// Calculate repartition (percentage) for each chain
|
|
123
|
+
activeChains.forEach((c) => {
|
|
124
|
+
c.repartition = totalValue > 0 ? (c.value / totalValue) * 100 : 0;
|
|
125
|
+
});
|
|
126
|
+
// Sort by value descending to get top chain
|
|
127
|
+
activeChains.sort((a, b) => b.value - a.value);
|
|
128
|
+
const topChainPercent = activeChains[0]?.repartition ?? null;
|
|
129
|
+
compositionData = {
|
|
130
|
+
compositions: activeChains.map((c) => ({ repartition: c.repartition })),
|
|
131
|
+
topProtocolPercent: topChainPercent,
|
|
132
|
+
};
|
|
133
|
+
}
|
|
117
134
|
// Perform risk analysis using utility function
|
|
118
135
|
return analyzeRisk({
|
|
119
136
|
tvl: vaultTVL,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"risk.service.js","sourceRoot":"","sources":["../../../src/services/analytics/risk.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"risk.service.js","sourceRoot":"","sources":["../../../src/services/analytics/risk.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compare-vaults.d.ts","sourceRoot":"","sources":["../../src/tools/compare-vaults.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAa5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"compare-vaults.d.ts","sourceRoot":"","sources":["../../src/tools/compare-vaults.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAa5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AA6cxD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,gBAAgB,GAC1B,CAAC,KAAK,EAAE,kBAAkB,KAAK,OAAO,CAAC,cAAc,CAAC,CAiNxD"}
|