Skip to content

Commit dd3d4a6

Browse files
committed
adding virtualConfidence and chainging score
Signed-off-by: MarcoMandar <malicemandar@gmail.com>
1 parent 9c58746 commit dd3d4a6

File tree

2 files changed

+32
-16
lines changed

2 files changed

+32
-16
lines changed

src/adapters/trustScoreDatabase.ts

+25-13
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,13 @@ export interface Recommender {
1717

1818
export interface RecommenderMetrics {
1919
recommenderId: string;
20-
overallTrustScore: number;
20+
trustScore: number;
2121
totalRecommendations: number;
2222
successfulRecs: number;
2323
avgTokenPerformance: number;
2424
riskScore: number;
2525
consistencyScore: number;
26+
virtualConfidence: number;
2627
lastUpdated: Date;
2728
}
2829

@@ -55,12 +56,13 @@ export interface TokenRecommendation {
5556
export interface RecommenderMetricsHistory {
5657
historyId: string; // UUID
5758
recommenderId: string;
58-
overallTrustScore: number;
59+
trustScore: number;
5960
totalRecommendations: number;
6061
successfulRecs: number;
6162
avgTokenPerformance: number;
6263
riskScore: number;
6364
consistencyScore: number;
65+
virtualConfidence: number;
6466
recordedAt: Date;
6567
}
6668

@@ -91,12 +93,13 @@ export interface TradePerformance {
9193

9294
interface RecommenderMetricsRow {
9395
recommender_id: string;
94-
overall_trust_score: number;
96+
trust_score: number;
9597
total_recommendations: number;
9698
successful_recs: number;
9799
avg_token_performance: number;
98100
risk_score: number;
99101
consistency_score: number;
102+
virtual_confidence: number;
100103
last_updated: string;
101104
}
102105

@@ -155,12 +158,13 @@ export class TrustScoreDatabase {
155158
this.db.exec(`
156159
CREATE TABLE IF NOT EXISTS recommender_metrics (
157160
recommender_id TEXT PRIMARY KEY,
158-
overall_trust_score REAL DEFAULT 0,
161+
trust_score REAL DEFAULT 0,
159162
total_recommendations INTEGER DEFAULT 0,
160163
successful_recs INTEGER DEFAULT 0,
161164
avg_token_performance REAL DEFAULT 0,
162165
risk_score REAL DEFAULT 0,
163166
consistency_score REAL DEFAULT 0,
167+
virtual_confidence REAL DEFAULT 0,
164168
last_updated DATETIME DEFAULT CURRENT_TIMESTAMP,
165169
FOREIGN KEY (recommender_id) REFERENCES recommenders(id) ON DELETE CASCADE
166170
);
@@ -206,12 +210,13 @@ export class TrustScoreDatabase {
206210
CREATE TABLE IF NOT EXISTS recommender_metrics_history (
207211
history_id TEXT PRIMARY KEY,
208212
recommender_id TEXT NOT NULL,
209-
overall_trust_score REAL,
213+
trust_score REAL,
210214
total_recommendations INTEGER,
211215
successful_recs INTEGER,
212216
avg_token_performance REAL,
213217
risk_score REAL,
214218
consistency_score REAL,
219+
virtual_confidence REAL DEFAULT 0,
215220
recorded_at DATETIME DEFAULT CURRENT_TIMESTAMP,
216221
FOREIGN KEY (recommender_id) REFERENCES recommenders(id) ON DELETE CASCADE
217222
);
@@ -222,6 +227,7 @@ export class TrustScoreDatabase {
222227
CREATE TABLE IF NOT EXISTS trade (
223228
token_address TEXT NOT NULL,
224229
recommender_id TEXT NOT NULL,
230+
sell_recommender_id TEXT,
225231
buy_price REAL NOT NULL,
226232
sell_price REAL,
227233
buy_timeStamp TEXT NOT NULL,
@@ -365,12 +371,13 @@ export class TrustScoreDatabase {
365371

366372
return {
367373
recommenderId: row.recommender_id,
368-
overallTrustScore: row.overall_trust_score,
374+
trustScore: row.trust_score,
369375
totalRecommendations: row.total_recommendations,
370376
successfulRecs: row.successful_recs,
371377
avgTokenPerformance: row.avg_token_performance,
372378
riskScore: row.risk_score,
373379
consistencyScore: row.consistency_score,
380+
virtualConfidence: row.virtual_confidence,
374381
lastUpdated: new Date(row.last_updated),
375382
};
376383
}
@@ -391,12 +398,13 @@ export class TrustScoreDatabase {
391398
const history: RecommenderMetricsHistory = {
392399
historyId: uuidv4(),
393400
recommenderId: currentMetrics.recommenderId,
394-
overallTrustScore: currentMetrics.overallTrustScore,
401+
trustScore: currentMetrics.trustScore,
395402
totalRecommendations: currentMetrics.totalRecommendations,
396403
successfulRecs: currentMetrics.successfulRecs,
397404
avgTokenPerformance: currentMetrics.avgTokenPerformance,
398405
riskScore: currentMetrics.riskScore,
399406
consistencyScore: currentMetrics.consistencyScore,
407+
virtualConfidence: currentMetrics.virtualConfidence,
400408
recordedAt: new Date(), // Current timestamp
401409
};
402410

@@ -405,7 +413,7 @@ export class TrustScoreDatabase {
405413
INSERT INTO recommender_metrics_history (
406414
history_id,
407415
recommender_id,
408-
overall_trust_score,
416+
trust_score,
409417
total_recommendations,
410418
successful_recs,
411419
avg_token_performance,
@@ -420,7 +428,7 @@ export class TrustScoreDatabase {
420428
.run(
421429
history.historyId,
422430
history.recommenderId,
423-
history.overallTrustScore,
431+
history.trustScore,
424432
history.totalRecommendations,
425433
history.successfulRecs,
426434
history.avgTokenPerformance,
@@ -446,7 +454,7 @@ export class TrustScoreDatabase {
446454

447455
const sql = `
448456
UPDATE recommender_metrics
449-
SET overall_trust_score = ?,
457+
SET trust_score = ?,
450458
total_recommendations = ?,
451459
successful_recs = ?,
452460
avg_token_performance = ?,
@@ -459,7 +467,7 @@ export class TrustScoreDatabase {
459467
this.db
460468
.prepare(sql)
461469
.run(
462-
metrics.overallTrustScore,
470+
metrics.trustScore,
463471
metrics.totalRecommendations,
464472
metrics.successfulRecs,
465473
metrics.avgTokenPerformance,
@@ -716,24 +724,26 @@ export class TrustScoreDatabase {
716724
const rows = this.db.prepare(sql).all(recommenderId) as Array<{
717725
history_id: string;
718726
recommender_id: string;
719-
overall_trust_score: number;
727+
trust_score: number;
720728
total_recommendations: number;
721729
successful_recs: number;
722730
avg_token_performance: number;
723731
risk_score: number;
724732
consistency_score: number;
733+
virtual_confidence: number;
725734
recorded_at: string;
726735
}>;
727736

728737
return rows.map((row) => ({
729738
historyId: row.history_id,
730739
recommenderId: row.recommender_id,
731-
overallTrustScore: row.overall_trust_score,
740+
trustScore: row.trust_score,
732741
totalRecommendations: row.total_recommendations,
733742
successfulRecs: row.successful_recs,
734743
avgTokenPerformance: row.avg_token_performance,
735744
riskScore: row.risk_score,
736745
consistencyScore: row.consistency_score,
746+
virtualConfidence: row.virtual_confidence,
737747
recordedAt: new Date(row.recorded_at),
738748
}));
739749
}
@@ -834,6 +844,7 @@ export class TrustScoreDatabase {
834844
sell_liquidity: number;
835845
liquidity_change: number;
836846
rapidDump: boolean;
847+
sell_recommender_id: string | null;
837848
},
838849
isSimulation: boolean
839850
): boolean {
@@ -853,6 +864,7 @@ export class TrustScoreDatabase {
853864
sell_liquidity = ?,
854865
liquidity_change = ?,
855866
rapidDump = ?
867+
sell_recommender_id = ?
856868
WHERE
857869
token_address = ?
858870
AND recommender_id = ?

src/providers/trustScoreProvider.ts

+7-3
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ interface TradeData {
2525
}
2626
interface sellDetails {
2727
sell_amount: number;
28+
sell_recommender_id: string | null;
2829
}
2930
export class TrustScoreProvider {
3031
private tokenProvider: TokenProvider;
@@ -79,12 +80,13 @@ export class TrustScoreProvider {
7980
},
8081
recommenderMetrics: {
8182
recommenderId: recommenderId,
82-
overallTrustScore: recommenderMetrics.overallTrustScore,
83+
trustScore: recommenderMetrics.trustScore,
8384
totalRecommendations: recommenderMetrics.totalRecommendations,
8485
successfulRecs: recommenderMetrics.successfulRecs,
8586
avgTokenPerformance: recommenderMetrics.avgTokenPerformance,
8687
riskScore: recommenderMetrics.riskScore,
8788
consistencyScore: recommenderMetrics.consistencyScore,
89+
virtualConfidence: recommenderMetrics.virtualConfidence,
8890
lastUpdated: new Date(),
8991
},
9092
};
@@ -121,16 +123,17 @@ export class TrustScoreProvider {
121123
);
122124
const newRecommenderMetrics: RecommenderMetrics = {
123125
recommenderId: recommenderId,
124-
overallTrustScore: overallTrustScore,
126+
trustScore: overallTrustScore,
125127
totalRecommendations: totalRecommendations,
126128
successfulRecs: successfulRecs,
127129
avgTokenPerformance: avgTokenPerformance,
128130
riskScore: riskScore,
129131
consistencyScore: consistencyScore,
132+
virtualConfidence: recommenderMetrics.virtualConfidence,
130133
lastUpdated: new Date(),
131134
};
132135

133-
await this.trustScoreDb.updateRecommenderMetrics(recommenderMetrics);
136+
await this.trustScoreDb.updateRecommenderMetrics(newRecommenderMetrics);
134137
}
135138

136139
calculateTrustScore(
@@ -338,6 +341,7 @@ export class TrustScoreProvider {
338341
sell_liquidity: liquidity,
339342
liquidity_change: liquidity_change,
340343
rapidDump: isRapidDump,
344+
sell_recommender_id: sellDetails.sell_recommender_id || null,
341345
};
342346
this.trustScoreDb.updateTradePerformanceOnSell(
343347
tokenAddress,

0 commit comments

Comments
 (0)