@pioneer-platform/pioneer-discovery-service 0.2.1 → 0.2.2

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.
@@ -10,9 +10,11 @@ const db_1 = require("../db");
10
10
  const fetchers_1 = require("../fetchers");
11
11
  const analyzer_1 = require("../analyzer");
12
12
  const reporter_1 = require("../reporter");
13
+ const price_discovery_worker_1 = require("../workers/price-discovery.worker");
14
+ const dapp_investigator_worker_1 = require("../workers/dapp-investigator.worker");
13
15
  const log = require('@pioneer-platform/loggerdog')();
14
16
  const TAG = ' | discovery-agent | ';
15
- const AGENT_VERSION = '0.1.0';
17
+ const AGENT_VERSION = '0.2.0'; // Updated to include price discovery and dapp investigation
16
18
  class DiscoveryAgent {
17
19
  constructor() {
18
20
  this.isRunning = false;
@@ -47,13 +49,21 @@ class DiscoveryAgent {
47
49
  // Phase 3: Analyze pre-configured assets
48
50
  reporter_1.discoveryReporter.addLog('INFO', 'Phase 3: Analyzing pre-configured assets');
49
51
  await this.analyzePreconfiguredAssets();
50
- // Phase 4: TODO - Web crawling for new dapps
52
+ // Phase 4: Price Discovery & Monitoring
53
+ await db_1.discoveryDB.updateCrawlerState({ currentPhase: 'price-discovery' });
54
+ reporter_1.discoveryReporter.addLog('INFO', 'Phase 4: Price discovery and monitoring');
55
+ await this.runPriceDiscovery();
56
+ // Phase 5: Deep DApp Investigation
57
+ await db_1.discoveryDB.updateCrawlerState({ currentPhase: 'dapp-investigation' });
58
+ reporter_1.discoveryReporter.addLog('INFO', 'Phase 5: Deep dApp investigation');
59
+ await this.investigateDApps();
60
+ // Phase 6: TODO - Web crawling for new dapps
51
61
  await db_1.discoveryDB.updateCrawlerState({ currentPhase: 'crawling' });
52
- reporter_1.discoveryReporter.addLog('INFO', 'Phase 4: Web crawling (TODO - not implemented yet)');
62
+ reporter_1.discoveryReporter.addLog('INFO', 'Phase 6: Web crawling (TODO - not implemented yet)');
53
63
  // await this.crawlForNewDapps();
54
- // Phase 5: Generate report
64
+ // Phase 7: Generate report
55
65
  await db_1.discoveryDB.updateCrawlerState({ currentPhase: 'reporting' });
56
- reporter_1.discoveryReporter.addLog('INFO', 'Phase 4: Generating report');
66
+ reporter_1.discoveryReporter.addLog('INFO', 'Phase 7: Generating report');
57
67
  const finalReport = await reporter_1.discoveryReporter.finalizeReport();
58
68
  // Print summary
59
69
  const summary = reporter_1.discoveryReporter.generateSummary(finalReport);
@@ -346,6 +356,70 @@ class DiscoveryAgent {
346
356
  log.error(tag, `Failed to sync dapp ${dapp.id}:`, error);
347
357
  }
348
358
  }
359
+ /**
360
+ * Phase 4: Price Discovery & Monitoring
361
+ */
362
+ async runPriceDiscovery() {
363
+ const tag = TAG + 'runPriceDiscovery | ';
364
+ try {
365
+ log.info(tag, 'Running price discovery worker...');
366
+ await price_discovery_worker_1.priceDiscoveryWorker.run();
367
+ // Log source status
368
+ const sources = price_discovery_worker_1.priceDiscoveryWorker.getSourceStatus();
369
+ const workingCount = sources.filter(s => s.working).length;
370
+ reporter_1.discoveryReporter.addLog('INFO', `Price discovery: ${workingCount}/${sources.length} sources working`);
371
+ log.info(tag, 'Price discovery complete');
372
+ }
373
+ catch (error) {
374
+ log.error(tag, 'Failed to run price discovery:', error);
375
+ reporter_1.discoveryReporter.addLog('ERROR', `Price discovery failed: ${error}`);
376
+ // Non-fatal - continue with other phases
377
+ }
378
+ }
379
+ /**
380
+ * Phase 5: Deep DApp Investigation
381
+ */
382
+ async investigateDApps() {
383
+ const tag = TAG + 'investigateDApps | ';
384
+ try {
385
+ log.info(tag, 'Running deep dApp investigation...');
386
+ // Get dapps that need investigation (not investigated in last 7 days)
387
+ const allDapps = await db_1.discoveryDB.getDappsNeedingCheck(24 * 7); // 7 days
388
+ // Limit to 10 dapps per run to avoid excessive processing
389
+ const dappsToInvestigate = allDapps.slice(0, 10);
390
+ if (dappsToInvestigate.length === 0) {
391
+ log.info(tag, 'No dapps need investigation at this time');
392
+ return;
393
+ }
394
+ log.info(tag, `Investigating ${dappsToInvestigate.length} dApps...`);
395
+ const results = await dapp_investigator_worker_1.dappInvestigatorWorker.run(dappsToInvestigate);
396
+ // Update dapp records with investigation results
397
+ for (const result of results) {
398
+ try {
399
+ await db_1.discoveryDB.updateDapp(result.dappId, {
400
+ scamScore: result.riskScore / 100, // Convert to 0-1 range
401
+ whitelist: result.recommendWhitelist,
402
+ lastChecked: result.investigatedAt,
403
+ });
404
+ if (result.recommendWhitelist) {
405
+ reporter_1.discoveryReporter.addLog('INFO', `✅ Whitelisted after investigation: ${result.dappName}`);
406
+ }
407
+ if (result.riskScore > 70) {
408
+ reporter_1.discoveryReporter.addLog('WARN', `⚠️ High risk dApp flagged: ${result.dappName} (risk: ${result.riskScore})`);
409
+ }
410
+ }
411
+ catch (error) {
412
+ log.error(tag, `Failed to update dapp ${result.dappId}:`, error);
413
+ }
414
+ }
415
+ log.info(tag, 'DApp investigation complete');
416
+ }
417
+ catch (error) {
418
+ log.error(tag, 'Failed to investigate dApps:', error);
419
+ reporter_1.discoveryReporter.addLog('ERROR', `DApp investigation failed: ${error}`);
420
+ // Non-fatal - continue with other phases
421
+ }
422
+ }
349
423
  /**
350
424
  * Check if agent is currently running
351
425
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agent/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,8BAAoC;AACpC,0CAA2C;AAC3C,0CAAgD;AAChD,0CAAgD;AAQhD,MAAM,GAAG,GAAG,OAAO,CAAC,6BAA6B,CAAC,EAAE,CAAC;AACrD,MAAM,GAAG,GAAG,uBAAuB,CAAC;AAEpC,MAAM,aAAa,GAAG,OAAO,CAAC;AAE9B,MAAa,cAAc;IAA3B;QACU,cAAS,GAAG,KAAK,CAAC;IA2Y5B,CAAC;IAzYC;;OAEG;IACH,KAAK,CAAC,GAAG;QACP,MAAM,GAAG,GAAG,GAAG,GAAG,QAAQ,CAAC;QAE3B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,+CAA+C,CAAC,CAAC;YAC/D,OAAO;QACT,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,IAAI,CAAC;YACH,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,gCAAgC,CAAC,CAAC;YAEhD,eAAe;YACf,MAAM,MAAM,GAAG,4BAAiB,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;YAE5D,uBAAuB;YACvB,MAAM,gBAAW,CAAC,kBAAkB,CAAC;gBACnC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;gBACnB,SAAS,EAAE,IAAI;gBACf,YAAY,EAAE,UAAU;aACzB,CAAC,CAAC;YAEH,+BAA+B;YAC/B,4BAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,iCAAiC,CAAC,CAAC;YACpE,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAE/B,kCAAkC;YAClC,MAAM,gBAAW,CAAC,kBAAkB,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC;YACpE,4BAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,mCAAmC,CAAC,CAAC;YACtE,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAElC,yCAAyC;YACzC,4BAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,0CAA0C,CAAC,CAAC;YAC7E,MAAM,IAAI,CAAC,0BAA0B,EAAE,CAAC;YAExC,6CAA6C;YAC7C,MAAM,gBAAW,CAAC,kBAAkB,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,CAAC;YACnE,4BAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,oDAAoD,CAAC,CAAC;YACvF,iCAAiC;YAEjC,2BAA2B;YAC3B,MAAM,gBAAW,CAAC,kBAAkB,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC;YACpE,4BAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAC;YAC/D,MAAM,WAAW,GAAG,MAAM,4BAAiB,CAAC,cAAc,EAAE,CAAC;YAE7D,gBAAgB;YAChB,MAAM,OAAO,GAAG,4BAAiB,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YAC/D,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC;YAE9B,uBAAuB;YACvB,MAAM,gBAAW,CAAC,kBAAkB,CAAC;gBACnC,SAAS,EAAE,KAAK;gBAChB,YAAY,EAAE,SAAS;gBACvB,gBAAgB,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,kBAAkB;aAClE,CAAC,CAAC;YAEH,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,0CAA0C,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,2BAA2B,EAAE,KAAK,CAAC,CAAC;YACnD,4BAAiB,CAAC,MAAM,CAAC,OAAO,EAAE,iBAAiB,KAAK,EAAE,CAAC,CAAC;YAE5D,uBAAuB;YACvB,MAAM,gBAAW,CAAC,kBAAkB,CAAC;gBACnC,SAAS,EAAE,KAAK;gBAChB,YAAY,EAAE,SAAS;aACxB,CAAC,CAAC;YAEH,MAAM,KAAK,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,iBAAiB;QAC7B,MAAM,GAAG,GAAG,GAAG,GAAG,sBAAsB,CAAC;QAEzC,IAAI,CAAC;YACH,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,kDAAkD,CAAC,CAAC;YAElE,mBAAmB;YACnB,MAAM,OAAO,GAAG,MAAM,uBAAY,CAAC,cAAc,EAAE,CAAC;YACpD,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;YAExC,4BAAiB,CAAC,MAAM,CACtB,MAAM,EACN,SAAS,OAAO,CAAC,UAAU,WAAW,OAAO,CAAC,aAAa,cAAc,OAAO,CAAC,WAAW,SAAS,CACtG,CAAC;YAEF,gDAAgD;YAChD,MAAM,QAAQ,GAAG,MAAM,uBAAY,CAAC,gBAAgB,EAAE,CAAC;YACvD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAClC,CAAC;YAED,4BAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,QAAQ,CAAC,MAAM,iCAAiC,CAAC,CAAC;YAE7F,qDAAqD;YACrD,MAAM,mBAAmB,GAAG,MAAM,uBAAY,CAAC,wBAAwB,EAAE,CAAC;YAC1E,KAAK,MAAM,KAAK,IAAI,mBAAmB,EAAE,CAAC;gBACxC,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAC9B,CAAC;YAED,4BAAiB,CAAC,MAAM,CACtB,MAAM,EACN,UAAU,mBAAmB,CAAC,MAAM,8CAA8C,CACnF,CAAC;YAEF,iDAAiD;YACjD,MAAM,QAAQ,GAAG,MAAM,uBAAY,CAAC,cAAc,EAAE,CAAC;YACrD,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;gBAC7B,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAC9B,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,4BAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,QAAQ,CAAC,MAAM,kBAAkB,CAAC,CAAC;YAChF,CAAC;YAED,6CAA6C;YAC7C,MAAM,KAAK,GAAG,MAAM,uBAAY,CAAC,aAAa,EAAE,CAAC;YACjD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC;YAED,4BAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,KAAK,CAAC,MAAM,8BAA8B,CAAC,CAAC;YAEvF,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,gCAAgC,EAAE,KAAK,CAAC,CAAC;YACxD,4BAAiB,CAAC,MAAM,CAAC,OAAO,EAAE,kCAAkC,KAAK,EAAE,CAAC,CAAC;YAC7E,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,oBAAoB;QAChC,MAAM,GAAG,GAAG,GAAG,GAAG,yBAAyB,CAAC;QAE5C,IAAI,CAAC;YACH,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,6BAA6B,CAAC,CAAC;YAE7C,kEAAkE;YAClE,MAAM,YAAY,GAAG,MAAM,gBAAW,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;YAChE,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,YAAY,CAAC,MAAM,yBAAyB,CAAC,CAAC;YAErE,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;gBAChC,IAAI,CAAC;oBACH,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,mBAAmB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBAE/C,mBAAmB;oBACnB,MAAM,QAAQ,GAAG,MAAM,4BAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBAE3D,uBAAuB;oBACvB,MAAM,SAAS,GAAG,4BAAiB,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;oBAEjE,gCAAgC;oBAChC,MAAM,eAAe,GAAG,4BAAiB,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;oBAEpE,qBAAqB;oBACrB,MAAM,gBAAW,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE;wBACpC,QAAQ;wBACR,SAAS;wBACT,SAAS,EAAE,eAAe;wBAC1B,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;qBACxB,CAAC,CAAC;oBAEH,kBAAkB;oBAClB,4BAAiB,CAAC,sBAAsB,EAAE,CAAC;oBAE3C,IAAI,eAAe,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;wBACvC,4BAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBAC3C,4BAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,qBAAqB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBACrE,CAAC;oBAED,IAAI,SAAS,GAAG,GAAG,EAAE,CAAC;wBACpB,4BAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBAC1C,4BAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,2BAA2B,IAAI,CAAC,IAAI,YAAY,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBAC5G,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,0BAA0B,IAAI,CAAC,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;oBAC9D,4BAAiB,CAAC,MAAM,CAAC,OAAO,EAAE,qBAAqB,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC;gBAChF,CAAC;YACH,CAAC;YAED,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,0BAA0B,EAAE,KAAK,CAAC,CAAC;YAClD,4BAAiB,CAAC,MAAM,CAAC,OAAO,EAAE,4BAA4B,KAAK,EAAE,CAAC,CAAC;YACvE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,0BAA0B;QACtC,MAAM,GAAG,GAAG,GAAG,GAAG,+BAA+B,CAAC;QAElD,IAAI,CAAC;YACH,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,4CAA4C,CAAC,CAAC;YAE5D,gCAAgC;YAChC,MAAM,eAAe,GAAG,MAAM,gBAAW,CAAC,YAAY,CAAC;gBACrD,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,oBAAoB,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC;aACjH,CAAC,CAAC;YAEH,6DAA6D;YAC7D,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,GAAG,CAAC,CAAC;YAC7E,MAAM,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;YAE/D,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,aAAa,CAAC,MAAM,8BAA8B,eAAe,CAAC,MAAM,SAAS,CAAC,CAAC;YAE1G,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;gBAClC,IAAI,CAAC;oBACH,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,oBAAoB,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;oBAEnD,mDAAmD;oBACnD,MAAM,QAAQ,GAAG,MAAM,4BAAiB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;oBAE7D,sBAAsB;oBACtB,MAAM,gBAAW,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE;wBACxC,QAAQ;wBACR,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;qBACxB,CAAC,CAAC;oBAEH,kBAAkB;oBAClB,4BAAiB,CAAC,uBAAuB,EAAE,CAAC;oBAE5C,4BAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;gBACtF,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,2BAA2B,KAAK,CAAC,MAAM,GAAG,EAAE,KAAK,CAAC,CAAC;oBAClE,4BAAiB,CAAC,MAAM,CAAC,OAAO,EAAE,qBAAqB,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC,CAAC;gBACnF,CAAC;YACH,CAAC;YAED,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;QAC3C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,2BAA2B,EAAE,KAAK,CAAC,CAAC;YACnD,4BAAiB,CAAC,MAAM,CAAC,OAAO,EAAE,6BAA6B,KAAK,EAAE,CAAC,CAAC;YACxE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,WAAW,CAAC,OAAY;QACpC,MAAM,GAAG,GAAG,GAAG,GAAG,gBAAgB,CAAC;QAEnC,IAAI,CAAC;YACH,kCAAkC;YAClC,MAAM,QAAQ,GAAG,MAAM,gBAAW,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAEjE,IAAI,QAAQ,EAAE,CAAC;gBACb,kBAAkB;gBAClB,MAAM,gBAAW,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,EAAE;oBACjD,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI;oBACnC,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO;oBAC5C,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU;oBACrD,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;iBACxB,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,aAAa;gBACb,MAAM,gBAAgB,GAA2B;oBAC/C,IAAI,EAAE,SAAS;oBACf,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,OAAO,EAAE;oBAClE,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,SAAS;oBAC3C,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;oBACtB,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;oBACvB,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;oBACvB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,KAAK;oBACrC,QAAQ,EAAE,OAAO,CAAC,QAAQ,KAAK,KAAK;oBACpC,SAAS,EAAE,CAAC;oBACZ,UAAU,EAAE,CAAC;iBACd,CAAC;gBAEF,MAAM,gBAAW,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;gBAClD,4BAAiB,CAAC,yBAAyB,EAAE,CAAC;YAChD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,0BAA0B,OAAO,CAAC,SAAS,GAAG,EAAE,KAAK,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,SAAS,CAAC,KAAU;QAChC,MAAM,GAAG,GAAG,GAAG,GAAG,cAAc,CAAC;QAEjC,IAAI,CAAC;YACH,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBAChB,OAAO,CAAC,2BAA2B;YACrC,CAAC;YAED,gCAAgC;YAChC,MAAM,QAAQ,GAAG,MAAM,gBAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAExD,IAAI,QAAQ,EAAE,CAAC;gBACb,kBAAkB;gBAClB,MAAM,gBAAW,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE;oBACxC,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM;oBACvC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI;oBACjC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;iBACxB,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,aAAa;gBACb,MAAM,cAAc,GAAyB;oBAC3C,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI;oBAClC,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,EAAE;oBAChC,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE;oBAC5B,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;oBACtB,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;oBACvB,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;oBACvB,SAAS,EAAE,CAAC;oBACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK;iBAClC,CAAC;gBAEF,MAAM,gBAAW,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;gBAC9C,4BAAiB,CAAC,uBAAuB,EAAE,CAAC;YAC9C,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,wBAAwB,KAAK,CAAC,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,QAAQ,CAAC,IAAS;QAC9B,MAAM,GAAG,GAAG,GAAG,GAAG,aAAa,CAAC;QAEhC,IAAI,CAAC;YACH,+BAA+B;YAC/B,MAAM,QAAQ,GAAG,MAAM,gBAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAEpD,IAAI,QAAQ,EAAE,CAAC;gBACb,kBAAkB;gBAClB,MAAM,gBAAW,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE;oBACpC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI;oBAChC,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC,GAAG;oBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW;oBACrD,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ;oBAC5C,SAAS,EAAE,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS;oBAC7E,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;iBACxB,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,aAAa;gBACb,MAAM,aAAa,GAAwB;oBACzC,IAAI,EAAE,MAAM;oBACZ,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;oBACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;oBAC7B,KAAK,EAAE,EAAE,EAAE,4CAA4C;oBACvD,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;oBACtB,WAAW,EAAE,CAAC;oBACd,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;oBACvB,MAAM,EAAE,QAAQ;oBAChB,QAAQ,EAAE,KAAK;oBACf,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,KAAK;oBAClC,SAAS,EAAE,GAAG;iBACf,CAAC;gBAEF,MAAM,gBAAW,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,uBAAuB,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;CACF;AA5YD,wCA4YC;AAED,4BAA4B;AACf,QAAA,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agent/index.ts"],"names":[],"mappings":"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"}
@@ -176,7 +176,7 @@ export interface CrawlerState {
176
176
  lastRun: number;
177
177
  nextScheduledRun: number;
178
178
  isRunning: boolean;
179
- currentPhase?: 'fetching' | 'analyzing' | 'crawling' | 'reporting';
179
+ currentPhase?: 'fetching' | 'analyzing' | 'price-discovery' | 'dapp-investigation' | 'crawling' | 'reporting';
180
180
  progress?: {
181
181
  total: number;
182
182
  completed: number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,110 @@
1
+ /**
2
+ * DApp Investigator Worker
3
+ *
4
+ * Deep investigation of dApps including:
5
+ * 1. Contract verification and audits
6
+ * 2. Social media presence validation
7
+ * 3. Community sentiment analysis
8
+ * 4. TVL and usage metrics
9
+ * 5. Security incident history
10
+ * 6. Team transparency check
11
+ *
12
+ * This runs as part of the discovery service to provide comprehensive dApp analysis
13
+ */
14
+ import type { DappDiscoveryRecord } from '../types';
15
+ interface DAppInvestigationResult {
16
+ dappId: string;
17
+ dappName: string;
18
+ investigationComplete: boolean;
19
+ findings: {
20
+ contractVerification?: {
21
+ verified: boolean;
22
+ auditor?: string;
23
+ auditDate?: string;
24
+ auditUrl?: string;
25
+ };
26
+ socialPresence?: {
27
+ twitter?: {
28
+ handle?: string;
29
+ followers?: number;
30
+ verified?: boolean;
31
+ lastPost?: string;
32
+ };
33
+ discord?: {
34
+ serverSize?: number;
35
+ active?: boolean;
36
+ };
37
+ github?: {
38
+ repos?: number;
39
+ stars?: number;
40
+ lastCommit?: string;
41
+ contributors?: number;
42
+ };
43
+ };
44
+ metrics?: {
45
+ tvl?: number;
46
+ dailyActiveUsers?: number;
47
+ transactionVolume?: number;
48
+ source?: string;
49
+ };
50
+ security?: {
51
+ incidents?: Array<{
52
+ date: string;
53
+ type: string;
54
+ severity: string;
55
+ description: string;
56
+ }>;
57
+ bugBounty?: boolean;
58
+ bugBountyUrl?: string;
59
+ };
60
+ team?: {
61
+ public?: boolean;
62
+ kyc?: boolean;
63
+ experience?: string;
64
+ };
65
+ };
66
+ riskScore: number;
67
+ recommendWhitelist: boolean;
68
+ investigatedAt: number;
69
+ }
70
+ export declare class DAppInvestigatorWorker {
71
+ /**
72
+ * Main investigation run
73
+ */
74
+ run(dapps: DappDiscoveryRecord[]): Promise<DAppInvestigationResult[]>;
75
+ /**
76
+ * Investigate a single dApp comprehensively
77
+ */
78
+ private investigateDApp;
79
+ /**
80
+ * Check if contracts are verified on block explorers
81
+ */
82
+ private checkContractVerification;
83
+ /**
84
+ * Analyze social media presence
85
+ */
86
+ private analyzeSocialPresence;
87
+ /**
88
+ * Fetch dApp metrics from DeFiLlama and other sources
89
+ */
90
+ private fetchDAppMetrics;
91
+ /**
92
+ * Check security incident history
93
+ */
94
+ private checkSecurityHistory;
95
+ /**
96
+ * Check team transparency
97
+ */
98
+ private checkTeamTransparency;
99
+ /**
100
+ * Calculate overall risk score (0-100)
101
+ */
102
+ private calculateRiskScore;
103
+ /**
104
+ * Determine if dApp should be whitelisted
105
+ */
106
+ private shouldWhitelist;
107
+ }
108
+ export declare const dappInvestigatorWorker: DAppInvestigatorWorker;
109
+ export {};
110
+ //# sourceMappingURL=dapp-investigator.worker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dapp-investigator.worker.d.ts","sourceRoot":"","sources":["../../src/workers/dapp-investigator.worker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAgB,MAAM,UAAU,CAAC;AAKlE,UAAU,uBAAuB;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,QAAQ,EAAE;QACN,oBAAoB,CAAC,EAAE;YACnB,QAAQ,EAAE,OAAO,CAAC;YAClB,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,cAAc,CAAC,EAAE;YACb,OAAO,CAAC,EAAE;gBACN,MAAM,CAAC,EAAE,MAAM,CAAC;gBAChB,SAAS,CAAC,EAAE,MAAM,CAAC;gBACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;gBACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;aACrB,CAAC;YACF,OAAO,CAAC,EAAE;gBACN,UAAU,CAAC,EAAE,MAAM,CAAC;gBACpB,MAAM,CAAC,EAAE,OAAO,CAAC;aACpB,CAAC;YACF,MAAM,CAAC,EAAE;gBACL,KAAK,CAAC,EAAE,MAAM,CAAC;gBACf,KAAK,CAAC,EAAE,MAAM,CAAC;gBACf,UAAU,CAAC,EAAE,MAAM,CAAC;gBACpB,YAAY,CAAC,EAAE,MAAM,CAAC;aACzB,CAAC;SACL,CAAC;QACF,OAAO,CAAC,EAAE;YACN,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,gBAAgB,CAAC,EAAE,MAAM,CAAC;YAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;YAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;SACnB,CAAC;QACF,QAAQ,CAAC,EAAE;YACP,SAAS,CAAC,EAAE,KAAK,CAAC;gBACd,IAAI,EAAE,MAAM,CAAC;gBACb,IAAI,EAAE,MAAM,CAAC;gBACb,QAAQ,EAAE,MAAM,CAAC;gBACjB,WAAW,EAAE,MAAM,CAAC;aACvB,CAAC,CAAC;YACH,SAAS,CAAC,EAAE,OAAO,CAAC;YACpB,YAAY,CAAC,EAAE,MAAM,CAAC;SACzB,CAAC;QACF,IAAI,CAAC,EAAE;YACH,MAAM,CAAC,EAAE,OAAO,CAAC;YACjB,GAAG,CAAC,EAAE,OAAO,CAAC;YACd,UAAU,CAAC,EAAE,MAAM,CAAC;SACvB,CAAC;KACL,CAAC;IACF,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;CAC1B;AAYD,qBAAa,sBAAsB;IAC/B;;OAEG;IACG,GAAG,CAAC,KAAK,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC;IA8B3E;;OAEG;YACW,eAAe;IA2C7B;;OAEG;YACW,yBAAyB;IAiBvC;;OAEG;YACW,qBAAqB;IAwCnC;;OAEG;YACW,gBAAgB;IAkC9B;;OAEG;YACW,oBAAoB;IAiBlC;;OAEG;YACW,qBAAqB;IAiBnC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA8C1B;;OAEG;IACH,OAAO,CAAC,eAAe;CAgB1B;AAGD,eAAO,MAAM,sBAAsB,wBAA+B,CAAC"}
@@ -0,0 +1,277 @@
1
+ "use strict";
2
+ /**
3
+ * DApp Investigator Worker
4
+ *
5
+ * Deep investigation of dApps including:
6
+ * 1. Contract verification and audits
7
+ * 2. Social media presence validation
8
+ * 3. Community sentiment analysis
9
+ * 4. TVL and usage metrics
10
+ * 5. Security incident history
11
+ * 6. Team transparency check
12
+ *
13
+ * This runs as part of the discovery service to provide comprehensive dApp analysis
14
+ */
15
+ var __importDefault = (this && this.__importDefault) || function (mod) {
16
+ return (mod && mod.__esModule) ? mod : { "default": mod };
17
+ };
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.dappInvestigatorWorker = exports.DAppInvestigatorWorker = void 0;
20
+ const axios_1 = __importDefault(require("axios"));
21
+ const log = require('@pioneer-platform/loggerdog')();
22
+ const TAG = ' | dapp-investigator | ';
23
+ // Free data sources for dApp investigation
24
+ const DAPP_DATA_SOURCES = {
25
+ defillama: 'https://api.llama.fi',
26
+ coingecko: 'https://api.coingecko.com/api/v3',
27
+ github: 'https://api.github.com',
28
+ etherscan: 'https://api.etherscan.io/api',
29
+ bscscan: 'https://api.bscscan.com/api',
30
+ polygonscan: 'https://api.polygonscan.com/api',
31
+ };
32
+ class DAppInvestigatorWorker {
33
+ /**
34
+ * Main investigation run
35
+ */
36
+ async run(dapps) {
37
+ const tag = TAG + 'run | ';
38
+ log.info(tag, `🔍 Starting deep investigation of ${dapps.length} dApps...`);
39
+ const results = [];
40
+ for (const dapp of dapps) {
41
+ try {
42
+ log.debug(tag, `Investigating: ${dapp.name}`);
43
+ const result = await this.investigateDApp(dapp);
44
+ results.push(result);
45
+ // Log findings
46
+ if (result.riskScore > 70) {
47
+ log.warn(tag, `⚠️ HIGH RISK: ${dapp.name} (score: ${result.riskScore})`);
48
+ }
49
+ else if (result.recommendWhitelist) {
50
+ log.info(tag, `✅ WHITELIST RECOMMENDED: ${dapp.name}`);
51
+ }
52
+ // Rate limiting delay
53
+ await new Promise(resolve => setTimeout(resolve, 1000));
54
+ }
55
+ catch (error) {
56
+ log.error(tag, `Failed to investigate ${dapp.name}:`, error);
57
+ }
58
+ }
59
+ log.info(tag, `✅ Investigation complete: ${results.length} dApps analyzed`);
60
+ return results;
61
+ }
62
+ /**
63
+ * Investigate a single dApp comprehensively
64
+ */
65
+ async investigateDApp(dapp) {
66
+ const tag = TAG + 'investigateDApp | ';
67
+ const result = {
68
+ dappId: dapp.id,
69
+ dappName: dapp.name,
70
+ investigationComplete: false,
71
+ findings: {},
72
+ riskScore: 50, // Start neutral
73
+ recommendWhitelist: false,
74
+ investigatedAt: Date.now(),
75
+ };
76
+ try {
77
+ // Phase 1: Check contract verification
78
+ result.findings.contractVerification = await this.checkContractVerification(dapp);
79
+ // Phase 2: Analyze social presence
80
+ result.findings.socialPresence = await this.analyzeSocialPresence(dapp);
81
+ // Phase 3: Fetch metrics (TVL, users, volume)
82
+ result.findings.metrics = await this.fetchDAppMetrics(dapp);
83
+ // Phase 4: Check security history
84
+ result.findings.security = await this.checkSecurityHistory(dapp);
85
+ // Phase 5: Team transparency check
86
+ result.findings.team = await this.checkTeamTransparency(dapp);
87
+ // Calculate final risk score
88
+ result.riskScore = this.calculateRiskScore(result.findings);
89
+ // Whitelist recommendation
90
+ result.recommendWhitelist = this.shouldWhitelist(result);
91
+ result.investigationComplete = true;
92
+ }
93
+ catch (error) {
94
+ log.error(tag, `Error during investigation of ${dapp.name}:`, error);
95
+ }
96
+ return result;
97
+ }
98
+ /**
99
+ * Check if contracts are verified on block explorers
100
+ */
101
+ async checkContractVerification(dapp) {
102
+ const tag = TAG + 'checkContractVerification | ';
103
+ // TODO: Extract contract addresses from dapp data
104
+ // TODO: Query Etherscan/BSCScan/Polygonscan APIs
105
+ log.debug(tag, `Checking contract verification for ${dapp.name}`);
106
+ // Placeholder implementation
107
+ return {
108
+ verified: false,
109
+ // auditor: 'CertiK',
110
+ // auditDate: '2024-01-01',
111
+ // auditUrl: 'https://certik.com/audit/...'
112
+ };
113
+ }
114
+ /**
115
+ * Analyze social media presence
116
+ */
117
+ async analyzeSocialPresence(dapp) {
118
+ const tag = TAG + 'analyzeSocialPresence | ';
119
+ const presence = {};
120
+ try {
121
+ // Check if URL contains social links
122
+ // TODO: Crawl dapp website for social links
123
+ // TODO: Verify Twitter/Discord/GitHub presence
124
+ // GitHub check (if we can find a repo)
125
+ if (dapp.url && dapp.url.includes('github.com')) {
126
+ try {
127
+ const repoPath = new URL(dapp.url).pathname;
128
+ const response = await axios_1.default.get(`${DAPP_DATA_SOURCES.github}/repos${repoPath}`, {
129
+ timeout: 5000,
130
+ headers: {
131
+ 'User-Agent': 'Pioneer-Discovery-Service',
132
+ },
133
+ });
134
+ presence.github = {
135
+ repos: 1,
136
+ stars: response.data.stargazers_count,
137
+ lastCommit: response.data.pushed_at,
138
+ contributors: null, // Would need separate API call
139
+ };
140
+ }
141
+ catch (error) {
142
+ log.debug(tag, `GitHub check failed for ${dapp.name}`);
143
+ }
144
+ }
145
+ log.debug(tag, `Social presence analysis for ${dapp.name}:`, presence);
146
+ }
147
+ catch (error) {
148
+ log.debug(tag, `Error analyzing social presence for ${dapp.name}:`, error);
149
+ }
150
+ return presence;
151
+ }
152
+ /**
153
+ * Fetch dApp metrics from DeFiLlama and other sources
154
+ */
155
+ async fetchDAppMetrics(dapp) {
156
+ const tag = TAG + 'fetchDAppMetrics | ';
157
+ try {
158
+ // Try DeFiLlama first
159
+ const response = await axios_1.default.get(`${DAPP_DATA_SOURCES.defillama}/protocols`, {
160
+ timeout: 5000,
161
+ });
162
+ // Find matching protocol
163
+ const protocols = response.data;
164
+ const match = protocols.find((p) => p.name.toLowerCase() === dapp.name.toLowerCase() ||
165
+ p.url?.toLowerCase().includes(dapp.url.toLowerCase()));
166
+ if (match) {
167
+ log.info(tag, `Found DeFiLlama data for ${dapp.name}`);
168
+ return {
169
+ tvl: match.tvl,
170
+ dailyActiveUsers: null, // Not available from DeFiLlama
171
+ transactionVolume: null,
172
+ source: 'DeFiLlama',
173
+ };
174
+ }
175
+ log.debug(tag, `No DeFiLlama data found for ${dapp.name}`);
176
+ }
177
+ catch (error) {
178
+ log.debug(tag, `Error fetching metrics for ${dapp.name}:`, error);
179
+ }
180
+ return {};
181
+ }
182
+ /**
183
+ * Check security incident history
184
+ */
185
+ async checkSecurityHistory(dapp) {
186
+ const tag = TAG + 'checkSecurityHistory | ';
187
+ // TODO: Query security databases:
188
+ // - Rekt News API
189
+ // - Immunefi (bug bounties)
190
+ // - CertiK Security Oracle
191
+ // - SlowMist
192
+ log.debug(tag, `Checking security history for ${dapp.name}`);
193
+ return {
194
+ incidents: [],
195
+ bugBounty: false,
196
+ };
197
+ }
198
+ /**
199
+ * Check team transparency
200
+ */
201
+ async checkTeamTransparency(dapp) {
202
+ const tag = TAG + 'checkTeamTransparency | ';
203
+ // TODO: Check:
204
+ // - Team page on website
205
+ // - LinkedIn profiles
206
+ // - Previous projects
207
+ // - KYC badges (CertiK, etc.)
208
+ log.debug(tag, `Checking team transparency for ${dapp.name}`);
209
+ return {
210
+ public: false,
211
+ kyc: false,
212
+ };
213
+ }
214
+ /**
215
+ * Calculate overall risk score (0-100)
216
+ */
217
+ calculateRiskScore(findings) {
218
+ let score = 50; // Start neutral
219
+ // Contract verification: -20 points if verified
220
+ if (findings.contractVerification?.verified) {
221
+ score -= 20;
222
+ }
223
+ else {
224
+ score += 10; // +10 if not verified
225
+ }
226
+ // Social presence: -10 points if strong
227
+ const social = findings.socialPresence;
228
+ if (social?.twitter?.verified || (social?.github?.stars && social.github.stars > 100)) {
229
+ score -= 10;
230
+ }
231
+ else if (!social || Object.keys(social).length === 0) {
232
+ score += 15; // +15 if no social presence
233
+ }
234
+ // TVL: -15 points if high TVL
235
+ if (findings.metrics?.tvl && findings.metrics.tvl > 1000000) {
236
+ score -= 15;
237
+ }
238
+ // Security incidents: +25 per incident
239
+ const incidents = findings.security?.incidents?.length || 0;
240
+ score += incidents * 25;
241
+ // Bug bounty: -5 points
242
+ if (findings.security?.bugBounty) {
243
+ score -= 5;
244
+ }
245
+ // Team transparency: -10 points if public
246
+ if (findings.team?.public) {
247
+ score -= 10;
248
+ }
249
+ // KYC: -10 points
250
+ if (findings.team?.kyc) {
251
+ score -= 10;
252
+ }
253
+ // Clamp to 0-100
254
+ return Math.max(0, Math.min(100, score));
255
+ }
256
+ /**
257
+ * Determine if dApp should be whitelisted
258
+ */
259
+ shouldWhitelist(result) {
260
+ // Whitelist criteria:
261
+ // - Risk score < 30
262
+ // - Contract verified OR high TVL
263
+ // - Some social presence
264
+ // - No major security incidents
265
+ if (result.riskScore >= 30)
266
+ return false;
267
+ const verified = result.findings.contractVerification?.verified || false;
268
+ const highTVL = (result.findings.metrics?.tvl || 0) > 1000000;
269
+ const hasSocial = !!(result.findings.socialPresence && Object.keys(result.findings.socialPresence).length > 0);
270
+ const noIncidents = (result.findings.security?.incidents?.length || 0) === 0;
271
+ return (verified || highTVL) && hasSocial && noIncidents;
272
+ }
273
+ }
274
+ exports.DAppInvestigatorWorker = DAppInvestigatorWorker;
275
+ // Export singleton instance
276
+ exports.dappInvestigatorWorker = new DAppInvestigatorWorker();
277
+ //# sourceMappingURL=dapp-investigator.worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dapp-investigator.worker.js","sourceRoot":"","sources":["../../src/workers/dapp-investigator.worker.ts"],"names":[],"mappings":"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"}