@@ -3,6 +3,7 @@ const axios = require('axios');
33const express = require ( "express" ) ;
44const app = express ( ) ;
55const port = process . env . PORT || 3000 ;
6+ const CONFIGURATION = require ( "./config" ) ;
67
78let lastRecordedTotalSupply = {
89 value : undefined ,
@@ -78,7 +79,7 @@ const getSupply = async () => {
7879 "https://explorer-v5.syscoin.org/api?module=stats&action=coinsupply"
7980 ) ,
8081 explorerApi . get (
81- " https://explorer.syscoin.org/api?module=account&action=balance&address=0xA738a563F9ecb55e0b2245D1e9E380f0fE455ea1"
82+ ` https://explorer.syscoin.org/api?module=account&action=balance&address=${ CONFIGURATION . SyscoinVaultManager } `
8283 )
8384 ] ) ;
8485
@@ -121,38 +122,11 @@ const getCirculatingSupply = async () => {
121122 throw new Error ( "Dependency Error: Total Supply unavailable" ) ;
122123 }
123124
124- try {
125- const treasuryResponse = await explorerApi . get (
126- "https://explorer.syscoin.org/api?module=account&action=balance&address=0x94EBc5528bE5Ec6914B0d7366aF68aA4b6cB2696"
127- ) ;
128-
129- // Validate treasury balance response
130- const treasuryData = treasuryResponse . data ;
131- if ( ! treasuryData || treasuryData . status !== "1" || typeof treasuryData . result !== 'string' ) {
132- throw new Error ( `Invalid treasury balance response structure or status: ${ JSON . stringify ( treasuryData ) } ` ) ;
133- }
134- const treasuryBalanceWei = treasuryData . result ;
135-
136- const balanceInEther = parseFloat ( treasuryBalanceWei ) / largeNumber ;
137- if ( isNaN ( balanceInEther ) ) throw new Error ( `Could not parse treasuryBalanceWei: ${ treasuryBalanceWei } ` ) ;
138- if ( balanceInEther < 0 ) throw new Error ( `Invalid treasury balance calculated: ${ balanceInEther } ` ) ;
125+ const treasuryBalance = 0 ; // Treasury is now factored into sys5 governance/utxo
126+ const finalCirculatingSupply = lastRecordedTotalSupply . value - treasuryBalance ;
139127
140- console . log ( `Treasury Balance (SYS): ${ balanceInEther } ` ) ;
141- const circulatingSupply = lastRecordedTotalSupply . value - balanceInEther ;
142-
143- if ( isNaN ( circulatingSupply ) ) throw new Error ( `Circulating supply calculation resulted in NaN` ) ;
144- if ( circulatingSupply < - 1 ) { // Allow small negative tolerance
145- throw new Error ( `Calculated circulatingSupply is unexpectedly negative: ${ circulatingSupply } ` ) ;
146- }
147- const finalCirculatingSupply = Math . max ( 0 , circulatingSupply ) ; // Clamp to 0
148-
149- console . log ( "Circulating supply calculated successfully." ) ;
150- return finalCirculatingSupply ;
151- } catch ( error ) {
152- console . error ( `Error in getCirculatingSupply: ${ error . message } ` ) ;
153- if ( error . response ) console . error ( " -> Axios Response Error Data:" , error . response . data ) ;
154- throw error ; // Re-throw
155- }
128+ console . log ( "Circulating supply calculated successfully." ) ;
129+ return finalCirculatingSupply ;
156130} ;
157131
158132const recordTotalSupply = async ( ) => {
0 commit comments