@@ -18,8 +18,13 @@ export class RiskService {
1818 const [ assessment ] = await db
1919 . insert ( riskAssessments )
2020 . values ( {
21- ...data ,
2221 tokenAddress : data . tokenAddress . toLowerCase ( ) ,
22+ riskScore : data . riskScore ,
23+ riskLevel : data . riskLevel ,
24+ confidence : 85 , // Default confidence level
25+ flags : data . recommendations , // Map recommendations to flags
26+ reasons : data . recommendations , // Map recommendations to reasons
27+ assessedBy : data . assessedBy ,
2328 assessedAt : new Date ( ) ,
2429 } )
2530 . returning ( ) ;
@@ -33,7 +38,7 @@ export class RiskService {
3338 } )
3439 . where ( eq ( mediaMetadata . tokenAddress , data . tokenAddress . toLowerCase ( ) ) ) ;
3540
36- return assessment ;
41+ return assessment as RiskAssessment ;
3742 }
3843
3944 /**
@@ -47,7 +52,7 @@ export class RiskService {
4752 . orderBy ( desc ( riskAssessments . assessedAt ) )
4853 . limit ( 1 ) ;
4954
50- return assessment || null ;
55+ return ( assessment as RiskAssessment ) || null ;
5156 }
5257
5358 /**
@@ -64,7 +69,7 @@ export class RiskService {
6469 . where ( eq ( riskAssessments . tokenAddress , tokenAddress . toLowerCase ( ) ) )
6570 . orderBy ( desc ( riskAssessments . assessedAt ) )
6671 . limit ( limit )
67- . offset ( offset ) ;
72+ . offset ( offset ) as Promise < RiskAssessment [ ] > ;
6873 }
6974
7075 /**
@@ -77,7 +82,7 @@ export class RiskService {
7782 . where ( gte ( riskAssessments . riskScore , 70 ) )
7883 . orderBy ( desc ( riskAssessments . riskScore ) , desc ( riskAssessments . assessedAt ) )
7984 . limit ( limit )
80- . offset ( offset ) ;
85+ . offset ( offset ) as Promise < RiskAssessment [ ] > ;
8186 }
8287
8388 /**
@@ -94,7 +99,7 @@ export class RiskService {
9499 . where ( eq ( riskAssessments . riskLevel , riskLevel ) )
95100 . orderBy ( desc ( riskAssessments . assessedAt ) )
96101 . limit ( limit )
97- . offset ( offset ) ;
102+ . offset ( offset ) as Promise < RiskAssessment [ ] > ;
98103 }
99104
100105 /**
@@ -231,7 +236,9 @@ export class RiskService {
231236 } ;
232237
233238 levelCounts . forEach ( ( row ) => {
234- byLevel [ row . level ] = row . count ;
239+ if ( row . level ) {
240+ byLevel [ row . level ] = row . count ;
241+ }
235242 } ) ;
236243
237244 // Get average risk score
@@ -250,7 +257,7 @@ export class RiskService {
250257 . from ( mediaMetadata ) ;
251258
252259 return {
253- totalAssessments : Object . values ( byLevel ) . reduce ( ( a : number , b : number ) => a + b , 0 ) ,
260+ totalAssessments : ( Object . values ( byLevel ) as number [ ] ) . reduce ( ( a , b ) => a + b , 0 ) ,
254261 byLevel,
255262 averageRiskScore : parseFloat ( avgScore ?. avg ?. toString ( ) || '0' ) ,
256263 flaggedCount : statusCounts ?. flagged || 0 ,
0 commit comments