@lagoon-protocol/lagoon-mcp 0.2.19 → 0.2.21

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.
Files changed (43) hide show
  1. package/dist/graphql/queries/index.d.ts +1 -1
  2. package/dist/graphql/queries/index.d.ts.map +1 -1
  3. package/dist/graphql/queries/index.js +1 -1
  4. package/dist/graphql/queries/index.js.map +1 -1
  5. package/dist/graphql/queries/vault.queries.d.ts +17 -0
  6. package/dist/graphql/queries/vault.queries.d.ts.map +1 -1
  7. package/dist/graphql/queries/vault.queries.js +30 -0
  8. package/dist/graphql/queries/vault.queries.js.map +1 -1
  9. package/dist/server.js +1 -1
  10. package/dist/services/analytics/risk.service.d.ts +2 -2
  11. package/dist/services/analytics/risk.service.d.ts.map +1 -1
  12. package/dist/services/analytics/risk.service.js +51 -2
  13. package/dist/services/analytics/risk.service.js.map +1 -1
  14. package/dist/tools/compare-vaults.d.ts.map +1 -1
  15. package/dist/tools/compare-vaults.js +76 -12
  16. package/dist/tools/compare-vaults.js.map +1 -1
  17. package/dist/tools/predict-yield.d.ts.map +1 -1
  18. package/dist/tools/predict-yield.js +32 -0
  19. package/dist/tools/predict-yield.js.map +1 -1
  20. package/dist/utils/comparison-metrics.d.ts +2 -2
  21. package/dist/utils/comparison-metrics.d.ts.map +1 -1
  22. package/dist/utils/comparison-metrics.js +22 -10
  23. package/dist/utils/comparison-metrics.js.map +1 -1
  24. package/dist/utils/portfolio-optimization.d.ts.map +1 -1
  25. package/dist/utils/portfolio-optimization.js +66 -17
  26. package/dist/utils/portfolio-optimization.js.map +1 -1
  27. package/dist/utils/risk-scoring.d.ts +61 -2
  28. package/dist/utils/risk-scoring.d.ts.map +1 -1
  29. package/dist/utils/risk-scoring.js +109 -32
  30. package/dist/utils/risk-scoring.js.map +1 -1
  31. package/dist/utils/safe-math.d.ts +64 -0
  32. package/dist/utils/safe-math.d.ts.map +1 -0
  33. package/dist/utils/safe-math.js +116 -0
  34. package/dist/utils/safe-math.js.map +1 -0
  35. package/dist/utils/yield-prediction.d.ts +7 -0
  36. package/dist/utils/yield-prediction.d.ts.map +1 -1
  37. package/dist/utils/yield-prediction.js +49 -31
  38. package/dist/utils/yield-prediction.js.map +1 -1
  39. package/package.json +1 -1
  40. package/dist/services/analytics/protocol-overview.service.d.ts +0 -61
  41. package/dist/services/analytics/protocol-overview.service.d.ts.map +0 -1
  42. package/dist/services/analytics/protocol-overview.service.js +0 -182
  43. package/dist/services/analytics/protocol-overview.service.js.map +0 -1
@@ -463,30 +463,62 @@ export function calculateCapacityUtilizationRisk(utilizationData) {
463
463
  return 0.8; // Near capacity (>90%) = deposit risk
464
464
  }
465
465
  }
466
+ /**
467
+ * Risk factor weights for calculating overall risk score.
468
+ *
469
+ * Weights are derived from DeFi risk research and empirical analysis:
470
+ *
471
+ * **Market & Liquidity (24%)**
472
+ * - TVL (8%): Liquidity depth and market validation signal
473
+ * - Concentration (8%): Protocol-wide exposure and systemic risk
474
+ * - Liquidity (8%): Redemption coverage and operational liquidity
475
+ *
476
+ * **Performance & Stability (27%)**
477
+ * - Volatility (14%): Primary indicator of price instability and risk
478
+ * - APR Consistency (13%): Yield reliability signals strategy health
479
+ *
480
+ * **Operational (21%)**
481
+ * - Age (8%): Operational track record and battle-testing
482
+ * - Curator (8%): Management quality and experience
483
+ * - Settlement (5%): Operational efficiency and delay risk
484
+ *
485
+ * **Fee Structure (8%)**
486
+ * - Fee (8%): Cost drag on returns and alignment of interests
487
+ *
488
+ * **Strategy Composition (20%)**
489
+ * - Yield Sustainability (5%): Native vs incentive-based yield mix
490
+ * - Integration Complexity (5%): Smart contract attack surface
491
+ * - Capacity Utilization (5%): Demand signals and deposit headroom
492
+ * - Protocol Diversification (5%): HHI-based protocol concentration
493
+ * - Top Protocol Concentration (5%): Single protocol exposure risk
494
+ *
495
+ * Total: 100% (weights sum to 1.0)
496
+ */
497
+ export const RISK_WEIGHTS = {
498
+ tvl: 0.08,
499
+ concentration: 0.08,
500
+ volatility: 0.14,
501
+ age: 0.08,
502
+ curator: 0.08,
503
+ fee: 0.08,
504
+ liquidity: 0.08,
505
+ aprConsistency: 0.13,
506
+ yieldSustainability: 0.05,
507
+ settlement: 0.05,
508
+ integrationComplexity: 0.05,
509
+ capacityUtilization: 0.05,
510
+ protocolDiversification: 0.05,
511
+ topProtocolConcentration: 0.05,
512
+ };
466
513
  /**
467
514
  * Calculate overall risk score with weighted factors
468
515
  *
469
- * @param breakdown - Individual risk factor scores
516
+ * @param breakdown - Individual risk factor scores (excluding overall and data quality fields)
470
517
  * @returns Overall risk score 0-1 and risk level
471
518
  */
472
519
  export function calculateOverallRisk(breakdown) {
473
- // Weighted average of 14 risk factors (updated to include composition)
474
- const weights = {
475
- tvl: 0.08, // Reduced from 0.1
476
- concentration: 0.08, // Reduced from 0.1
477
- volatility: 0.14, // Reduced from 0.15
478
- age: 0.08, // Reduced from 0.1
479
- curator: 0.08, // Reduced from 0.1
480
- fee: 0.08, // Reduced from 0.1
481
- liquidity: 0.08, // Reduced from 0.1
482
- aprConsistency: 0.13, // Reduced from 0.15
483
- yieldSustainability: 0.05,
484
- settlement: 0.05,
485
- integrationComplexity: 0.05,
486
- capacityUtilization: 0.05,
487
- protocolDiversification: 0.05, // NEW: Composition-based
488
- topProtocolConcentration: 0.05, // NEW: Composition-based
489
- };
520
+ // Use the documented risk weights
521
+ const weights = RISK_WEIGHTS;
490
522
  const overallRisk = breakdown.tvlRisk * weights.tvl +
491
523
  breakdown.concentrationRisk * weights.concentration +
492
524
  breakdown.volatilityRisk * weights.volatility +
@@ -524,29 +556,70 @@ export function calculateOverallRisk(breakdown) {
524
556
  * @returns Complete risk score breakdown
525
557
  */
526
558
  export function analyzeRisk(params) {
559
+ // Track data quality notes for transparency
560
+ const dataQualityNotes = [];
527
561
  const tvlRisk = calculateTVLRisk(params.tvl);
528
562
  const concentrationRisk = calculateConcentrationRisk(params.tvl, params.totalProtocolTVL);
563
+ // Volatility risk - track if insufficient price history
529
564
  const volatilityRisk = calculateVolatilityRisk(params.priceHistory);
565
+ if (params.priceHistory.length < 7) {
566
+ dataQualityNotes.push('Limited price history for volatility calculation');
567
+ }
530
568
  const ageRisk = calculateAgeRisk(params.ageInDays);
569
+ // Curator risk - track if new curator with limited track record
531
570
  const curatorRisk = calculateCuratorRisk(params.curatorVaultCount, params.curatorSuccessRate, params.curatorProfessionalSignals);
571
+ if (params.curatorVaultCount < 3) {
572
+ dataQualityNotes.push('New curator with limited track record');
573
+ }
532
574
  const feeRisk = calculateFeeRisk(params.managementFee, params.performanceFee, params.performanceFeeActive);
533
575
  const liquidityRisk = calculateLiquidityRisk(params.safeAssets, params.pendingRedemptions);
534
576
  // Calculate new risk factors (with defaults if data not provided)
535
- const aprConsistencyRisk = params.aprData ? calculateAPRConsistencyRisk(params.aprData) : 0.5; // Default to medium risk if no data
536
- const yieldSustainabilityRisk = params.yieldComposition
537
- ? calculateYieldSustainabilityRisk(params.yieldComposition)
538
- : 0.5; // Default to medium risk if no data
539
- const settlementRisk = params.settlementData
540
- ? calculateSettlementRisk(params.settlementData)
541
- : 0.5; // Default to medium risk if no data
542
- const integrationComplexityRisk = params.integrationCount !== undefined
543
- ? calculateIntegrationComplexityRisk(params.integrationCount)
544
- : 0.5; // Default to medium risk if no data
545
- const capacityUtilizationRisk = params.capacityData
546
- ? calculateCapacityUtilizationRisk(params.capacityData)
547
- : 0.2; // Default to low risk (no capacity limit)
548
- // NEW: Calculate composition-based risk factors
577
+ // Track when defaults are used for transparency
578
+ let aprConsistencyRisk;
579
+ if (params.aprData) {
580
+ aprConsistencyRisk = calculateAPRConsistencyRisk(params.aprData);
581
+ }
582
+ else {
583
+ aprConsistencyRisk = 0.5; // Default to medium risk if no data
584
+ dataQualityNotes.push('APR consistency using default (no historical APR data)');
585
+ }
586
+ let yieldSustainabilityRisk;
587
+ if (params.yieldComposition) {
588
+ yieldSustainabilityRisk = calculateYieldSustainabilityRisk(params.yieldComposition);
589
+ }
590
+ else {
591
+ yieldSustainabilityRisk = 0.5; // Default to medium risk if no data
592
+ dataQualityNotes.push('Yield sustainability using default (no composition data)');
593
+ }
594
+ let settlementRisk;
595
+ if (params.settlementData) {
596
+ settlementRisk = calculateSettlementRisk(params.settlementData);
597
+ }
598
+ else {
599
+ settlementRisk = 0.5; // Default to medium risk if no data
600
+ dataQualityNotes.push('Settlement risk using default (no settlement data)');
601
+ }
602
+ let integrationComplexityRisk;
603
+ if (params.integrationCount !== undefined) {
604
+ integrationComplexityRisk = calculateIntegrationComplexityRisk(params.integrationCount);
605
+ }
606
+ else {
607
+ integrationComplexityRisk = 0.5; // Default to medium risk if no data
608
+ dataQualityNotes.push('Integration complexity using default (no integration data)');
609
+ }
610
+ let capacityUtilizationRisk;
611
+ if (params.capacityData) {
612
+ capacityUtilizationRisk = calculateCapacityUtilizationRisk(params.capacityData);
613
+ }
614
+ else {
615
+ capacityUtilizationRisk = 0.2; // Default to low risk (no capacity limit)
616
+ // Not adding note - no capacity limit is normal and not a data quality issue
617
+ }
618
+ // Calculate composition-based risk factors
549
619
  const protocolDiversificationRisk = calculateProtocolDiversificationRisk(params.compositionData?.compositions);
620
+ if (!params.compositionData?.compositions?.length) {
621
+ dataQualityNotes.push('Protocol diversification using default (no composition data)');
622
+ }
550
623
  const topProtocolConcentrationRisk = calculateTopProtocolConcentrationRisk(params.compositionData?.topProtocolPercent);
551
624
  const { overallRisk, riskLevel } = calculateOverallRisk({
552
625
  tvlRisk,
@@ -564,6 +637,8 @@ export function analyzeRisk(params) {
564
637
  protocolDiversificationRisk,
565
638
  topProtocolConcentrationRisk,
566
639
  });
640
+ // Determine overall data quality based on number of notes
641
+ const dataQuality = dataQualityNotes.length === 0 ? 'high' : dataQualityNotes.length <= 2 ? 'medium' : 'low';
567
642
  return {
568
643
  tvlRisk,
569
644
  concentrationRisk,
@@ -581,6 +656,8 @@ export function analyzeRisk(params) {
581
656
  topProtocolConcentrationRisk,
582
657
  overallRisk,
583
658
  riskLevel,
659
+ dataQuality,
660
+ dataQualityNotes,
584
661
  };
585
662
  }
586
663
  //# sourceMappingURL=risk-scoring.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"risk-scoring.js","sourceRoot":"","sources":["../../src/utils/risk-scoring.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"risk-scoring.js","sourceRoot":"","sources":["../../src/utils/risk-scoring.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoCH;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,uBAAuB;IACvB,aAAa,EAAE,UAAU,EAAE,wBAAwB;IACnD,QAAQ,EAAE,SAAS,EAAE,kBAAkB;IACvC,UAAU,EAAE,OAAO,EAAE,uBAAuB;IAC5C,OAAO,EAAE,MAAM,EAAE,oBAAoB;IACrC,6BAA6B;IAE7B,wDAAwD;IACxD,iBAAiB,EAAE,GAAG,EAAE,kBAAkB;IAC1C,oBAAoB,EAAE,IAAI,EAAE,qBAAqB;IACjD,kBAAkB,EAAE,GAAG,EAAE,mBAAmB;IAC5C,uBAAuB;IAEvB,8DAA8D;IAC9D,cAAc,EAAE,IAAI,EAAE,iBAAiB;IACvC,iBAAiB,EAAE,IAAI,EAAE,oBAAoB;IAC7C,eAAe,EAAE,GAAG,EAAE,mBAAmB;IACzC,uBAAuB;IAEvB,wBAAwB;IACxB,UAAU,EAAE,GAAG,EAAE,qBAAqB;IACtC,eAAe,EAAE,EAAE,EAAE,0BAA0B;IAC/C,OAAO,EAAE,EAAE,EAAE,uBAAuB;IACpC,2BAA2B;IAE3B,gCAAgC;IAChC,WAAW,EAAE,GAAG;IAChB,cAAc,EAAE,GAAG;IACnB,YAAY,EAAE,GAAG;IACjB,kBAAkB;CACnB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAW;IAC1C,IAAI,GAAG,IAAI,eAAe,CAAC,aAAa,EAAE,CAAC;QACzC,OAAO,GAAG,CAAC,CAAC,gBAAgB;IAC9B,CAAC;SAAM,IAAI,GAAG,IAAI,eAAe,CAAC,QAAQ,EAAE,CAAC;QAC3C,OAAO,GAAG,CAAC,CAAC,WAAW;IACzB,CAAC;SAAM,IAAI,GAAG,IAAI,eAAe,CAAC,UAAU,EAAE,CAAC;QAC7C,OAAO,GAAG,CAAC,CAAC,cAAc;IAC5B,CAAC;SAAM,IAAI,GAAG,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;QAC1C,OAAO,GAAG,CAAC,CAAC,YAAY;IAC1B,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAC,CAAC,gBAAgB;IAC9B,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,0BAA0B,CAAC,QAAgB,EAAE,gBAAwB;IACnF,IAAI,gBAAgB,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,GAAG,CAAC,CAAC,kCAAkC;IAChD,CAAC;IAED,MAAM,aAAa,GAAG,QAAQ,GAAG,gBAAgB,CAAC;IAElD,IAAI,aAAa,GAAG,eAAe,CAAC,iBAAiB,EAAE,CAAC;QACtD,OAAO,GAAG,CAAC,CAAC,+BAA+B;IAC7C,CAAC;SAAM,IAAI,aAAa,GAAG,eAAe,CAAC,oBAAoB,EAAE,CAAC;QAChE,OAAO,GAAG,CAAC,CAAC,uBAAuB;IACrC,CAAC;SAAM,IAAI,aAAa,GAAG,eAAe,CAAC,kBAAkB,EAAE,CAAC;QAC9D,OAAO,GAAG,CAAC,CAAC,qBAAqB;IACnC,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAC,CAAC,8BAA8B;IAC5C,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,WAAqB;IAC3D,8EAA8E;IAC9E,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,GAAG,CAAC,CAAC,yCAAyC;IACvD,CAAC;IAED,2DAA2D;IAC3D,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/E,sFAAsF;QACtF,+DAA+D;QAC/D,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,GAAG,EAAE,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,GAAG,CAAC,CAAC,kCAAkC;IAChD,CAAC;IAED,+BAA+B;IAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAC7F,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEnC,uCAAuC;IACvC,IAAI,MAAM,GAAG,eAAe,CAAC,cAAc,EAAE,CAAC;QAC5C,OAAO,GAAG,CAAC,CAAC,4BAA4B;IAC1C,CAAC;SAAM,IAAI,MAAM,GAAG,eAAe,CAAC,iBAAiB,EAAE,CAAC;QACtD,OAAO,GAAG,CAAC,CAAC,oBAAoB;IAClC,CAAC;SAAM,IAAI,MAAM,GAAG,eAAe,CAAC,eAAe,EAAE,CAAC;QACpD,OAAO,GAAG,CAAC,CAAC,kBAAkB;IAChC,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAC,CAAC,2BAA2B;IACzC,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAiB;IAChD,IAAI,SAAS,IAAI,eAAe,CAAC,UAAU,EAAE,CAAC;QAC5C,OAAO,GAAG,CAAC,CAAC,0BAA0B;IACxC,CAAC;SAAM,IAAI,SAAS,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC;QACxD,OAAO,GAAG,CAAC,CAAC,sCAAsC;IACpD,CAAC;SAAM,IAAI,SAAS,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;QAChD,OAAO,GAAG,CAAC,CAAC,wBAAwB;IACtC,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAC,CAAC,iCAAiC;IAC/C,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAClC,iBAAyB,EACzB,qBAA6B,GAAG,EAChC,mBAKC;IAED,wCAAwC;IACxC,IAAI,cAAsB,CAAC;IAC3B,IAAI,iBAAiB,IAAI,EAAE,EAAE,CAAC;QAC5B,cAAc,GAAG,GAAG,CAAC,CAAC,qBAAqB;IAC7C,CAAC;SAAM,IAAI,iBAAiB,IAAI,CAAC,EAAE,CAAC;QAClC,cAAc,GAAG,GAAG,CAAC,CAAC,yBAAyB;IACjD,CAAC;SAAM,IAAI,iBAAiB,IAAI,CAAC,EAAE,CAAC;QAClC,cAAc,GAAG,GAAG,CAAC,CAAC,qBAAqB;IAC7C,CAAC;SAAM,CAAC;QACN,cAAc,GAAG,GAAG,CAAC,CAAC,cAAc;IACtC,CAAC;IAED,+BAA+B;IAC/B,MAAM,qBAAqB,GAAG,CAAC,CAAC,GAAG,kBAAkB,CAAC,GAAG,GAAG,CAAC,CAAC,qBAAqB;IAEnF,0CAA0C;IAC1C,IAAI,sBAAsB,GAAG,CAAC,CAAC;IAC/B,IAAI,mBAAmB,EAAE,CAAC;QACxB,oDAAoD;QACpD,IAAI,mBAAmB,CAAC,UAAU,EAAE,CAAC;YACnC,sBAAsB,IAAI,GAAG,CAAC;QAChC,CAAC;QAED,oDAAoD;QACpD,IAAI,mBAAmB,CAAC,cAAc,EAAE,CAAC;YACvC,sBAAsB,IAAI,GAAG,CAAC;QAChC,CAAC;QAED,uDAAuD;QACvD,IAAI,mBAAmB,CAAC,gBAAgB,EAAE,CAAC;YACzC,sBAAsB,IAAI,IAAI,CAAC;QACjC,CAAC;QAED,4DAA4D;QAC5D,IAAI,mBAAmB,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;YACzC,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;YACxF,sBAAsB,IAAI,iBAAiB,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,GAAG,qBAAqB,GAAG,sBAAsB,CAAC,CAAC,CAAC;AACnG,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAC9B,aAAqB,EACrB,cAAsB,EACtB,oBAA6B;IAE7B,iDAAiD;IACjD,MAAM,aAAa,GAAG,aAAa,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,cAAc,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAExF,kCAAkC;IAClC,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,GAAG,CAAC,CAAC,2BAA2B;IACzC,CAAC;SAAM,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,GAAG,CAAC,CAAC,WAAW;IACzB,CAAC;SAAM,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,GAAG,CAAC,CAAC,gBAAgB;IAC9B,CAAC;SAAM,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,GAAG,CAAC,CAAC,YAAY;IAC1B,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAC,CAAC,iCAAiC;IAC/C,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CAAC,UAAkB,EAAE,kBAA0B;IACnF,mDAAmD;IACnD,IAAI,kBAAkB,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,GAAG,CAAC,CAAC,oCAAoC;IAClD,CAAC;IAED,2BAA2B;IAC3B,MAAM,aAAa,GAAG,UAAU,GAAG,kBAAkB,CAAC;IAEtD,0BAA0B;IAC1B,IAAI,aAAa,IAAI,GAAG,EAAE,CAAC;QACzB,OAAO,GAAG,CAAC,CAAC,iCAAiC;IAC/C,CAAC;SAAM,IAAI,aAAa,IAAI,GAAG,EAAE,CAAC;QAChC,OAAO,GAAG,CAAC,CAAC,4BAA4B;IAC1C,CAAC;SAAM,IAAI,aAAa,IAAI,GAAG,EAAE,CAAC;QAChC,OAAO,GAAG,CAAC,CAAC,+BAA+B;IAC7C,CAAC;SAAM,IAAI,aAAa,IAAI,GAAG,EAAE,CAAC;QAChC,OAAO,GAAG,CAAC,CAAC,4BAA4B;IAC1C,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAC,CAAC,gCAAgC;IAC9C,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAK3C;IACC,MAAM,IAAI,GAAG;QACX,OAAO,CAAC,SAAS;QACjB,OAAO,CAAC,UAAU;QAClB,OAAO,CAAC,SAAS;QACjB,OAAO,CAAC,YAAY;KACrB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAiB,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC;IAEtE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,GAAG,CAAC,CAAC,kCAAkC;IAChD,CAAC;IAED,0DAA0D;IAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;IAEnE,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;QACf,OAAO,GAAG,CAAC,CAAC,2BAA2B;IACzC,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3F,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,sBAAsB,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAEvD,qDAAqD;IACrD,IAAI,sBAAsB,GAAG,GAAG,EAAE,CAAC;QACjC,OAAO,GAAG,CAAC,CAAC,8CAA8C;IAC5D,CAAC;SAAM,IAAI,sBAAsB,GAAG,IAAI,EAAE,CAAC;QACzC,OAAO,GAAG,CAAC,CAAC,yCAAyC;IACvD,CAAC;SAAM,IAAI,sBAAsB,GAAG,GAAG,EAAE,CAAC;QACxC,OAAO,GAAG,CAAC,CAAC,gCAAgC;IAC9C,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAC,CAAC,+CAA+C;IAC7D,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gCAAgC,CAAC,gBAKhD;IACC,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,gBAAgB,CAAC;IAEvD,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,GAAG,CAAC,CAAC,8BAA8B;IAC5C,CAAC;IAED,MAAM,gBAAgB,GAAG,eAAe,GAAG,QAAQ,CAAC;IAEpD,mEAAmE;IACnE,IAAI,gBAAgB,GAAG,GAAG,EAAE,CAAC;QAC3B,OAAO,GAAG,CAAC,CAAC,mCAAmC;IACjD,CAAC;SAAM,IAAI,gBAAgB,GAAG,GAAG,EAAE,CAAC;QAClC,OAAO,GAAG,CAAC,CAAC,gCAAgC;IAC9C,CAAC;SAAM,IAAI,gBAAgB,GAAG,GAAG,EAAE,CAAC;QAClC,OAAO,GAAG,CAAC,CAAC,2CAA2C;IACzD,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAC,CAAC,iDAAiD;IAC/D,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,cAGvC;IACC,MAAM,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,GAAG,cAAc,CAAC;IAEzE,uDAAuD;IACvD,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,qBAAqB,GAAG,CAAC,EAAE,CAAC;QAC9B,SAAS,GAAG,GAAG,CAAC,CAAC,sBAAsB;IACzC,CAAC;SAAM,IAAI,qBAAqB,GAAG,CAAC,EAAE,CAAC;QACrC,SAAS,GAAG,GAAG,CAAC,CAAC,WAAW;IAC9B,CAAC;SAAM,IAAI,qBAAqB,GAAG,CAAC,EAAE,CAAC;QACrC,SAAS,GAAG,GAAG,CAAC,CAAC,WAAW;IAC9B,CAAC;SAAM,CAAC;QACN,SAAS,GAAG,GAAG,CAAC,CAAC,UAAU;IAC7B,CAAC;IAED,yDAAyD;IACzD,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,sBAAsB,GAAG,GAAG,EAAE,CAAC;QACjC,YAAY,GAAG,GAAG,CAAC,CAAC,eAAe;IACrC,CAAC;SAAM,IAAI,sBAAsB,GAAG,GAAG,EAAE,CAAC;QACxC,YAAY,GAAG,GAAG,CAAC,CAAC,eAAe;IACrC,CAAC;SAAM,IAAI,sBAAsB,GAAG,GAAG,EAAE,CAAC;QACxC,YAAY,GAAG,GAAG,CAAC,CAAC,eAAe;IACrC,CAAC;SAAM,CAAC;QACN,YAAY,GAAG,GAAG,CAAC,CAAC,wCAAwC;IAC9D,CAAC;IAED,OAAO,CAAC,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kCAAkC,CAAC,gBAAwB;IACzE,IAAI,gBAAgB,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,GAAG,CAAC,CAAC,wCAAwC;IACtD,CAAC;SAAM,IAAI,gBAAgB,KAAK,CAAC,EAAE,CAAC;QAClC,OAAO,GAAG,CAAC,CAAC,wDAAwD;IACtE,CAAC;SAAM,IAAI,gBAAgB,IAAI,CAAC,EAAE,CAAC;QACjC,OAAO,GAAG,CAAC,CAAC,sBAAsB;IACpC,CAAC;SAAM,IAAI,gBAAgB,IAAI,CAAC,EAAE,CAAC;QACjC,OAAO,GAAG,CAAC,CAAC,kBAAkB;IAChC,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAC,CAAC,8CAA8C;IAC5D,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oCAAoC,CAClD,YAA+D;IAE/D,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;QAC1B,OAAO,GAAG,CAAC,CAAC,oCAAoC;IAClD,CAAC;IAED,8EAA8E;IAC9E,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,GAAG,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAEvF,wBAAwB;IACxB,IAAI,GAAG,GAAG,IAAI;QAAE,OAAO,GAAG,CAAC,CAAC,mBAAmB;IAC/C,IAAI,GAAG,GAAG,IAAI;QAAE,OAAO,IAAI,CAAC,CAAC,yBAAyB;IACtD,IAAI,GAAG,GAAG,GAAG;QAAE,OAAO,IAAI,CAAC,CAAC,qBAAqB;IACjD,OAAO,GAAG,CAAC,CAAC,0BAA0B;AACxC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,qCAAqC,CACnD,kBAA6C;IAE7C,IAAI,kBAAkB,KAAK,IAAI,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;QACpE,OAAO,GAAG,CAAC,CAAC,wBAAwB;IACtC,CAAC;IAED,IAAI,kBAAkB,GAAG,EAAE;QAAE,OAAO,GAAG,CAAC,CAAC,uBAAuB;IAChE,IAAI,kBAAkB,GAAG,EAAE;QAAE,OAAO,IAAI,CAAC,CAAC,uBAAuB;IACjE,IAAI,kBAAkB,GAAG,EAAE;QAAE,OAAO,IAAI,CAAC,CAAC,qBAAqB;IAC/D,OAAO,GAAG,CAAC,CAAC,0BAA0B;AACxC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gCAAgC,CAAC,eAGhD;IACC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,eAAe,CAAC;IAErD,IAAI,CAAC,WAAW,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;QACtC,OAAO,GAAG,CAAC,CAAC,0CAA0C;IACxD,CAAC;IAED,MAAM,gBAAgB,GAAG,WAAW,GAAG,WAAW,CAAC;IAEnD,IAAI,gBAAgB,GAAG,GAAG,EAAE,CAAC;QAC3B,OAAO,GAAG,CAAC,CAAC,yCAAyC;IACvD,CAAC;SAAM,IAAI,gBAAgB,GAAG,GAAG,EAAE,CAAC;QAClC,OAAO,GAAG,CAAC,CAAC,+BAA+B;IAC7C,CAAC;SAAM,IAAI,gBAAgB,GAAG,GAAG,EAAE,CAAC;QAClC,OAAO,GAAG,CAAC,CAAC,wBAAwB;IACtC,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAC,CAAC,sCAAsC;IACpD,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,GAAG,EAAE,IAAI;IACT,aAAa,EAAE,IAAI;IACnB,UAAU,EAAE,IAAI;IAChB,GAAG,EAAE,IAAI;IACT,OAAO,EAAE,IAAI;IACb,GAAG,EAAE,IAAI;IACT,SAAS,EAAE,IAAI;IACf,cAAc,EAAE,IAAI;IACpB,mBAAmB,EAAE,IAAI;IACzB,UAAU,EAAE,IAAI;IAChB,qBAAqB,EAAE,IAAI;IAC3B,mBAAmB,EAAE,IAAI;IACzB,uBAAuB,EAAE,IAAI;IAC7B,wBAAwB,EAAE,IAAI;CACtB,CAAC;AAEX;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAClC,SAGC;IAKD,kCAAkC;IAClC,MAAM,OAAO,GAAG,YAAY,CAAC;IAE7B,MAAM,WAAW,GACf,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG;QAC/B,SAAS,CAAC,iBAAiB,GAAG,OAAO,CAAC,aAAa;QACnD,SAAS,CAAC,cAAc,GAAG,OAAO,CAAC,UAAU;QAC7C,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG;QAC/B,SAAS,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO;QACvC,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG;QAC/B,SAAS,CAAC,aAAa,GAAG,OAAO,CAAC,SAAS;QAC3C,SAAS,CAAC,kBAAkB,GAAG,OAAO,CAAC,cAAc;QACrD,SAAS,CAAC,uBAAuB,GAAG,OAAO,CAAC,mBAAmB;QAC/D,SAAS,CAAC,cAAc,GAAG,OAAO,CAAC,UAAU;QAC7C,SAAS,CAAC,yBAAyB,GAAG,OAAO,CAAC,qBAAqB;QACnE,SAAS,CAAC,uBAAuB,GAAG,OAAO,CAAC,mBAAmB;QAC/D,SAAS,CAAC,2BAA2B,GAAG,OAAO,CAAC,uBAAuB;QACvE,SAAS,CAAC,4BAA4B,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAE5E,uBAAuB;IACvB,IAAI,SAAiD,CAAC;IACtD,IAAI,WAAW,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC;QAC9C,SAAS,GAAG,KAAK,CAAC;IACpB,CAAC;SAAM,IAAI,WAAW,GAAG,eAAe,CAAC,cAAc,EAAE,CAAC;QACxD,SAAS,GAAG,QAAQ,CAAC;IACvB,CAAC;SAAM,IAAI,WAAW,GAAG,eAAe,CAAC,YAAY,EAAE,CAAC;QACtD,SAAS,GAAG,MAAM,CAAC;IACrB,CAAC;SAAM,CAAC;QACN,SAAS,GAAG,UAAU,CAAC;IACzB,CAAC;IAED,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;AACpC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,MA6C3B;IACC,4CAA4C;IAC5C,MAAM,gBAAgB,GAAa,EAAE,CAAC;IAEtC,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC7C,MAAM,iBAAiB,GAAG,0BAA0B,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAE1F,wDAAwD;IACxD,MAAM,cAAc,GAAG,uBAAuB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACpE,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,gBAAgB,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;IAC5E,CAAC;IAED,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAEnD,gEAAgE;IAChE,MAAM,WAAW,GAAG,oBAAoB,CACtC,MAAM,CAAC,iBAAiB,EACxB,MAAM,CAAC,kBAAkB,EACzB,MAAM,CAAC,0BAA0B,CAClC,CAAC;IACF,IAAI,MAAM,CAAC,iBAAiB,GAAG,CAAC,EAAE,CAAC;QACjC,gBAAgB,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,OAAO,GAAG,gBAAgB,CAC9B,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,cAAc,EACrB,MAAM,CAAC,oBAAoB,CAC5B,CAAC;IACF,MAAM,aAAa,GAAG,sBAAsB,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAE3F,kEAAkE;IAClE,gDAAgD;IAChD,IAAI,kBAA0B,CAAC;IAC/B,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,kBAAkB,GAAG,2BAA2B,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACnE,CAAC;SAAM,CAAC;QACN,kBAAkB,GAAG,GAAG,CAAC,CAAC,oCAAoC;QAC9D,gBAAgB,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;IAClF,CAAC;IAED,IAAI,uBAA+B,CAAC;IACpC,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC5B,uBAAuB,GAAG,gCAAgC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACtF,CAAC;SAAM,CAAC;QACN,uBAAuB,GAAG,GAAG,CAAC,CAAC,oCAAoC;QACnE,gBAAgB,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;IACpF,CAAC;IAED,IAAI,cAAsB,CAAC;IAC3B,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;QAC1B,cAAc,GAAG,uBAAuB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAClE,CAAC;SAAM,CAAC;QACN,cAAc,GAAG,GAAG,CAAC,CAAC,oCAAoC;QAC1D,gBAAgB,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,yBAAiC,CAAC;IACtC,IAAI,MAAM,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;QAC1C,yBAAyB,GAAG,kCAAkC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAC1F,CAAC;SAAM,CAAC;QACN,yBAAyB,GAAG,GAAG,CAAC,CAAC,oCAAoC;QACrE,gBAAgB,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;IACtF,CAAC;IAED,IAAI,uBAA+B,CAAC;IACpC,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;QACxB,uBAAuB,GAAG,gCAAgC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAClF,CAAC;SAAM,CAAC;QACN,uBAAuB,GAAG,GAAG,CAAC,CAAC,0CAA0C;QACzE,6EAA6E;IAC/E,CAAC;IAED,2CAA2C;IAC3C,MAAM,2BAA2B,GAAG,oCAAoC,CACtE,MAAM,CAAC,eAAe,EAAE,YAAY,CACrC,CAAC;IACF,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;QAClD,gBAAgB,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,4BAA4B,GAAG,qCAAqC,CACxE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAC3C,CAAC;IAEF,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,oBAAoB,CAAC;QACtD,OAAO;QACP,iBAAiB;QACjB,cAAc;QACd,OAAO;QACP,WAAW;QACX,OAAO;QACP,aAAa;QACb,kBAAkB;QAClB,uBAAuB;QACvB,cAAc;QACd,yBAAyB;QACzB,uBAAuB;QACvB,2BAA2B;QAC3B,4BAA4B;KAC7B,CAAC,CAAC;IAEH,0DAA0D;IAC1D,MAAM,WAAW,GACf,gBAAgB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;IAE3F,OAAO;QACL,OAAO;QACP,iBAAiB;QACjB,cAAc;QACd,OAAO;QACP,WAAW;QACX,OAAO;QACP,aAAa;QACb,kBAAkB;QAClB,uBAAuB;QACvB,cAAc;QACd,yBAAyB;QACzB,uBAAuB;QACvB,2BAA2B;QAC3B,4BAA4B;QAC5B,WAAW;QACX,SAAS;QACT,WAAW;QACX,gBAAgB;KACjB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,64 @@
1
+ /**
2
+ * Safe Math Utilities
3
+ *
4
+ * Defensive arithmetic operations to prevent division by zero,
5
+ * NaN propagation, and empty array exceptions.
6
+ */
7
+ /**
8
+ * Safe division with fallback value
9
+ * @param numerator - The numerator
10
+ * @param denominator - The denominator
11
+ * @param fallback - Value to return if division would fail (default: 0)
12
+ * @returns Result of division or fallback if denominator is 0, NaN, or undefined
13
+ */
14
+ export declare function safeDivide(numerator: number, denominator: number, fallback?: number): number;
15
+ /**
16
+ * Safe reduce with empty array guard
17
+ * @param arr - Array to reduce
18
+ * @param reducer - Reducer function
19
+ * @param initial - Initial value
20
+ * @param emptyFallback - Value to return if array is empty (defaults to initial)
21
+ */
22
+ export declare function safeReduce<T, R>(arr: T[] | null | undefined, reducer: (acc: R, item: T, index: number) => R, initial: R, emptyFallback?: R): R;
23
+ /**
24
+ * Safe average calculation
25
+ * @param values - Array of numbers
26
+ * @param fallback - Value to return if array is empty or all values are invalid
27
+ */
28
+ export declare function safeAverage(values: number[] | null | undefined, fallback?: number): number;
29
+ /**
30
+ * Safe toFixed that handles NaN/undefined
31
+ * @param value - Number to format
32
+ * @param decimals - Decimal places
33
+ * @param fallback - Fallback string if value is invalid
34
+ */
35
+ export declare function safeToFixed(value: number | null | undefined, decimals?: number, fallback?: string): string;
36
+ /**
37
+ * Safe percentile calculation
38
+ * Returns fallback for empty or single-element arrays (where percentile is meaningless)
39
+ * @param value - The value to find percentile for
40
+ * @param arr - Array of values to calculate percentile against
41
+ * @param fallback - Fallback percentile for edge cases (default: 50)
42
+ */
43
+ export declare function safePercentile(value: number, arr: number[], fallback?: number): number;
44
+ /**
45
+ * Guard for operations that require non-empty arrays
46
+ * @param arr - Array to check
47
+ * @param context - Context description for error message
48
+ * @returns Object with isEmpty flag and optional data
49
+ */
50
+ export declare function guardEmptyArray<T>(arr: T[] | null | undefined, context?: string): {
51
+ isEmpty: true;
52
+ message: string;
53
+ } | {
54
+ isEmpty: false;
55
+ data: T[];
56
+ };
57
+ /**
58
+ * Safe min/max finder that handles empty arrays
59
+ * @param arr - Array of numbers
60
+ * @param type - 'min' or 'max'
61
+ * @param fallback - Fallback value if array is empty
62
+ */
63
+ export declare function safeMinMax(arr: number[] | null | undefined, type: 'min' | 'max', fallback?: number): number;
64
+ //# sourceMappingURL=safe-math.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safe-math.d.ts","sourceRoot":"","sources":["../../src/utils/safe-math.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAU,GAAG,MAAM,CAM/F;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,CAAC,EAC7B,GAAG,EAAE,CAAC,EAAE,GAAG,IAAI,GAAG,SAAS,EAC3B,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,CAAC,EAC9C,OAAO,EAAE,CAAC,EACV,aAAa,CAAC,EAAE,CAAC,GAChB,CAAC,CAKH;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,EAAE,QAAQ,GAAE,MAAU,GAAG,MAAM,CAS7F;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAChC,QAAQ,GAAE,MAAU,EACpB,QAAQ,GAAE,MAAc,GACvB,MAAM,CAKR;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,QAAQ,GAAE,MAAW,GAAG,MAAM,CAkB1F;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAC/B,GAAG,EAAE,CAAC,EAAE,GAAG,IAAI,GAAG,SAAS,EAC3B,OAAO,GAAE,MAAoB,GAC5B;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,CAAC,EAAE,CAAA;CAAE,CAQpE;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CACxB,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,EAChC,IAAI,EAAE,KAAK,GAAG,KAAK,EACnB,QAAQ,GAAE,MAAU,GACnB,MAAM,CASR"}
@@ -0,0 +1,116 @@
1
+ /**
2
+ * Safe Math Utilities
3
+ *
4
+ * Defensive arithmetic operations to prevent division by zero,
5
+ * NaN propagation, and empty array exceptions.
6
+ */
7
+ /**
8
+ * Safe division with fallback value
9
+ * @param numerator - The numerator
10
+ * @param denominator - The denominator
11
+ * @param fallback - Value to return if division would fail (default: 0)
12
+ * @returns Result of division or fallback if denominator is 0, NaN, or undefined
13
+ */
14
+ export function safeDivide(numerator, denominator, fallback = 0) {
15
+ if (denominator === 0 || !Number.isFinite(denominator) || !Number.isFinite(numerator)) {
16
+ return fallback;
17
+ }
18
+ const result = numerator / denominator;
19
+ return Number.isFinite(result) ? result : fallback;
20
+ }
21
+ /**
22
+ * Safe reduce with empty array guard
23
+ * @param arr - Array to reduce
24
+ * @param reducer - Reducer function
25
+ * @param initial - Initial value
26
+ * @param emptyFallback - Value to return if array is empty (defaults to initial)
27
+ */
28
+ export function safeReduce(arr, reducer, initial, emptyFallback) {
29
+ if (!arr || arr.length === 0) {
30
+ return emptyFallback !== undefined ? emptyFallback : initial;
31
+ }
32
+ return arr.reduce(reducer, initial);
33
+ }
34
+ /**
35
+ * Safe average calculation
36
+ * @param values - Array of numbers
37
+ * @param fallback - Value to return if array is empty or all values are invalid
38
+ */
39
+ export function safeAverage(values, fallback = 0) {
40
+ if (!values || values.length === 0) {
41
+ return fallback;
42
+ }
43
+ const validValues = values.filter((v) => Number.isFinite(v));
44
+ if (validValues.length === 0) {
45
+ return fallback;
46
+ }
47
+ return validValues.reduce((sum, v) => sum + v, 0) / validValues.length;
48
+ }
49
+ /**
50
+ * Safe toFixed that handles NaN/undefined
51
+ * @param value - Number to format
52
+ * @param decimals - Decimal places
53
+ * @param fallback - Fallback string if value is invalid
54
+ */
55
+ export function safeToFixed(value, decimals = 2, fallback = 'N/A') {
56
+ if (value === null || value === undefined || !Number.isFinite(value)) {
57
+ return fallback;
58
+ }
59
+ return value.toFixed(decimals);
60
+ }
61
+ /**
62
+ * Safe percentile calculation
63
+ * Returns fallback for empty or single-element arrays (where percentile is meaningless)
64
+ * @param value - The value to find percentile for
65
+ * @param arr - Array of values to calculate percentile against
66
+ * @param fallback - Fallback percentile for edge cases (default: 50)
67
+ */
68
+ export function safePercentile(value, arr, fallback = 50) {
69
+ // Guard: empty array
70
+ if (!arr || arr.length === 0) {
71
+ return fallback;
72
+ }
73
+ // Guard: single element - percentile is meaningless
74
+ if (arr.length === 1) {
75
+ return arr[0] === value ? fallback : 0;
76
+ }
77
+ const sorted = [...arr].sort((a, b) => a - b);
78
+ const index = sorted.indexOf(value);
79
+ if (index === -1)
80
+ return 0;
81
+ // sorted.length - 1 is now guaranteed > 0
82
+ const percentile = (index / (sorted.length - 1)) * 100;
83
+ return Math.round(percentile * 100) / 100;
84
+ }
85
+ /**
86
+ * Guard for operations that require non-empty arrays
87
+ * @param arr - Array to check
88
+ * @param context - Context description for error message
89
+ * @returns Object with isEmpty flag and optional data
90
+ */
91
+ export function guardEmptyArray(arr, context = 'operation') {
92
+ if (!arr || arr.length === 0) {
93
+ return {
94
+ isEmpty: true,
95
+ message: `No data available for ${context}`,
96
+ };
97
+ }
98
+ return { isEmpty: false, data: arr };
99
+ }
100
+ /**
101
+ * Safe min/max finder that handles empty arrays
102
+ * @param arr - Array of numbers
103
+ * @param type - 'min' or 'max'
104
+ * @param fallback - Fallback value if array is empty
105
+ */
106
+ export function safeMinMax(arr, type, fallback = 0) {
107
+ if (!arr || arr.length === 0) {
108
+ return fallback;
109
+ }
110
+ const validValues = arr.filter((v) => Number.isFinite(v));
111
+ if (validValues.length === 0) {
112
+ return fallback;
113
+ }
114
+ return type === 'min' ? Math.min(...validValues) : Math.max(...validValues);
115
+ }
116
+ //# sourceMappingURL=safe-math.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safe-math.js","sourceRoot":"","sources":["../../src/utils/safe-math.ts"],"names":[],"mappings":"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"}
@@ -58,6 +58,13 @@ export declare function predictYield(historicalData: YieldDataPoint[], feeParams
58
58
  managementFee: number;
59
59
  performanceFee: number;
60
60
  performanceFeeActive: boolean;
61
+ /**
62
+ * Actual profit margin calculated from historical period summaries.
63
+ * Used to calculate accurate performance fee impact.
64
+ * If not provided and performanceFeeActive is true, fee-adjusted predictions
65
+ * will be omitted entirely (no placeholder assumptions).
66
+ */
67
+ actualProfitMargin?: number;
61
68
  }): YieldPrediction;
62
69
  /**
63
70
  * Calculate compound APR from multiple yield sources
@@ -1 +1 @@
1
- {"version":3,"file":"yield-prediction.d.ts","sourceRoot":"","sources":["../../src/utils/yield-prediction.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,YAAY,GAAG,YAAY,GAAG,QAAQ,CAAC;IAC9C,gBAAgB,EAAE;QAChB,SAAS,EAAE,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC;QACvC,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,EAAE,CAAC;IACJ,kBAAkB,CAAC,EAAE;QACnB,SAAS,EAAE,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC;QACvC,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,EAAE,CAAC;IACJ,SAAS,CAAC,EAAE;QACV,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,oBAAoB,EAAE,OAAO,CAAC;KAC/B,CAAC;IACF,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAoGD;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAC1B,cAAc,EAAE,cAAc,EAAE,EAChC,SAAS,CAAC,EAAE;IACV,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB,EAAE,OAAO,CAAC;CAC/B,GACA,eAAe,CAoJjB;AAuGD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAW7D"}
1
+ {"version":3,"file":"yield-prediction.d.ts","sourceRoot":"","sources":["../../src/utils/yield-prediction.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,YAAY,GAAG,YAAY,GAAG,QAAQ,CAAC;IAC9C,gBAAgB,EAAE;QAChB,SAAS,EAAE,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC;QACvC,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,EAAE,CAAC;IACJ,kBAAkB,CAAC,EAAE;QACnB,SAAS,EAAE,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC;QACvC,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,EAAE,CAAC;IACJ,SAAS,CAAC,EAAE;QACV,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,oBAAoB,EAAE,OAAO,CAAC;KAC/B,CAAC;IACF,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAoGD;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAC1B,cAAc,EAAE,cAAc,EAAE,EAChC,SAAS,CAAC,EAAE;IACV,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB,EAAE,OAAO,CAAC;IAC9B;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,GACA,eAAe,CAsKjB;AAuGD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAW7D"}
@@ -149,38 +149,56 @@ export function predictYield(historicalData, feeParams) {
149
149
  let feeAdjustedReturns;
150
150
  let feeImpact;
151
151
  if (feeParams) {
152
- // Calculate total annual fee drag
153
- const performanceFeeDrag = feeParams.performanceFeeActive
154
- ? feeParams.performanceFee * 0.1 // Assume 10% average profit for performance fee impact
155
- : 0;
156
- const totalAnnualFeeDrag = feeParams.managementFee + performanceFeeDrag;
157
- // Calculate fee-adjusted APR (gross APR - fees)
158
- feeAdjustedAPR = Math.max(0, predictedAPR - totalAnnualFeeDrag);
159
- // Calculate fee-adjusted projected returns
160
- feeAdjustedReturns = projectedReturns.map((p) => {
161
- const feeAdjustment = (((totalAnnualFeeDrag / 100) *
162
- (p.timeframe === '7d'
163
- ? 7
164
- : p.timeframe === '30d'
165
- ? 30
166
- : p.timeframe === '90d'
167
- ? 90
168
- : 365)) /
169
- 365) *
170
- 100;
171
- return {
172
- timeframe: p.timeframe,
173
- expectedReturn: Math.max(0, p.expectedReturn - feeAdjustment),
174
- minReturn: Math.max(0, p.minReturn - feeAdjustment),
175
- maxReturn: Math.max(0, p.maxReturn - feeAdjustment),
152
+ // Calculate performance fee drag only if we have actual profit margin data
153
+ // Without actual profit data, we cannot accurately estimate performance fee impact
154
+ let performanceFeeDrag;
155
+ if (feeParams.performanceFeeActive) {
156
+ if (feeParams.actualProfitMargin !== undefined) {
157
+ // Use actual profit margin for accurate performance fee calculation
158
+ performanceFeeDrag = feeParams.performanceFee * feeParams.actualProfitMargin;
159
+ }
160
+ else {
161
+ // No actual profit data available - cannot calculate fee-adjusted predictions
162
+ // Omit fee-adjusted predictions entirely rather than using placeholder assumptions
163
+ performanceFeeDrag = -1; // Sentinel value to indicate unavailable
164
+ }
165
+ }
166
+ else {
167
+ performanceFeeDrag = 0; // Performance fee not active
168
+ }
169
+ // Only calculate fee-adjusted predictions if we have accurate data
170
+ if (performanceFeeDrag >= 0) {
171
+ const totalAnnualFeeDrag = feeParams.managementFee + performanceFeeDrag;
172
+ // Calculate fee-adjusted APR (gross APR - fees)
173
+ feeAdjustedAPR = Math.max(0, predictedAPR - totalAnnualFeeDrag);
174
+ // Calculate fee-adjusted projected returns
175
+ feeAdjustedReturns = projectedReturns.map((p) => {
176
+ const feeAdjustment = (((totalAnnualFeeDrag / 100) *
177
+ (p.timeframe === '7d'
178
+ ? 7
179
+ : p.timeframe === '30d'
180
+ ? 30
181
+ : p.timeframe === '90d'
182
+ ? 90
183
+ : 365)) /
184
+ 365) *
185
+ 100;
186
+ return {
187
+ timeframe: p.timeframe,
188
+ expectedReturn: Math.max(0, p.expectedReturn - feeAdjustment),
189
+ minReturn: Math.max(0, p.minReturn - feeAdjustment),
190
+ maxReturn: Math.max(0, p.maxReturn - feeAdjustment),
191
+ };
192
+ });
193
+ feeImpact = {
194
+ managementFee: feeParams.managementFee,
195
+ performanceFee: feeParams.performanceFee,
196
+ totalAnnualFeeDrag,
197
+ performanceFeeActive: feeParams.performanceFeeActive,
176
198
  };
177
- });
178
- feeImpact = {
179
- managementFee: feeParams.managementFee,
180
- performanceFee: feeParams.performanceFee,
181
- totalAnnualFeeDrag,
182
- performanceFeeActive: feeParams.performanceFeeActive,
183
- };
199
+ }
200
+ // If performanceFeeDrag is -1 (sentinel), feeAdjustedAPR, feeAdjustedReturns,
201
+ // and feeImpact remain undefined - indicating data unavailable
184
202
  }
185
203
  // Generate insights
186
204
  const insights = generateInsights({
@@ -1 +1 @@
1
- {"version":3,"file":"yield-prediction.js","sourceRoot":"","sources":["../../src/utils/yield-prediction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"yield-prediction.js","sourceRoot":"","sources":["../../src/utils/yield-prediction.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lagoon-protocol/lagoon-mcp",
3
- "version": "0.2.19",
3
+ "version": "0.2.21",
4
4
  "description": "MCP server for Lagoon DeFi vault analytics - FOR INFORMATIONAL USE ONLY, NOT FINANCIAL ADVICE. Natural language access to vault data, portfolios, and performance metrics",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",