mirror of
https://github.com/NoFxAiOS/nofx.git
synced 2026-07-13 15:57:01 +08:00
fix: division-by-zero guard, rate-limit wallet endpoints, safer JSON parse, Lighter HTTP checks
- Guard GridCount-1 division by zero in grid spacing calculation (both grid.go and grid_levels.go) - Rate-limit /wallet/validate and /wallet/generate endpoints (prevent DoS on key generation) - Wrap JSON.parse(localStorage) in try-catch in AuthContext (corrupted data → graceful re-login) - Wrap handleJSONResponse JSON.parse in try-catch with descriptive error - Add HTTP status code checks for Lighter GetActiveOrders and sendTx - Replace deprecated strings.Title with cases.Title (golang.org/x/text) - Reuse HTTP client in checkClaw402Health (was creating new client per call)
This commit is contained in:
@@ -326,8 +326,12 @@ func (at *AutoTrader) InitializeGrid() error {
|
||||
at.gridState.LowerPrice = gridConfig.LowerPrice
|
||||
}
|
||||
|
||||
// Calculate grid spacing
|
||||
at.gridState.GridSpacing = (at.gridState.UpperPrice - at.gridState.LowerPrice) / float64(gridConfig.GridCount-1)
|
||||
// Calculate grid spacing (guard against division by zero when GridCount <= 1)
|
||||
if gridConfig.GridCount > 1 {
|
||||
at.gridState.GridSpacing = (at.gridState.UpperPrice - at.gridState.LowerPrice) / float64(gridConfig.GridCount-1)
|
||||
} else {
|
||||
at.gridState.GridSpacing = 0
|
||||
}
|
||||
|
||||
// Initialize grid levels
|
||||
at.initializeGridLevels(price, gridConfig)
|
||||
|
||||
Reference in New Issue
Block a user