Mining/CHANGELOG.md
snider fa3047a314 refactor: Add reliability fixes, centralized version fetching, and CHANGELOG
Reliability fixes:
- Fix race condition on uninitialized HTTP server in transport.go
- Add proper error logging for HTTP server startup errors
- Fix potential goroutine leak in process cleanup (xmrig_start.go)
- Propagate context to DB writes for proper timeout handling

Architecture improvements:
- Centralize GitHub version fetching via FetchLatestGitHubVersion()
- Add respondWithMiningError() helper for standardized API error responses
- Update XMRig and TTMiner to use centralized version fetcher

Documentation:
- Add CHANGELOG.md with release history
- Update FUTURE_IDEAS.md with demo GIF task

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-31 13:33:42 +00:00

2.5 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Unreleased

Added

  • Structured logging package with configurable log levels
  • Rate limiter with automatic cleanup for API protection
  • X-Request-ID middleware for request tracing
  • Structured API error responses with error codes and suggestions
  • MinerFactory pattern for centralized miner instantiation
  • StatsCollector pattern for parallel stats collection
  • Context propagation throughout the codebase
  • WebSocket event system for real-time updates
  • Simulation mode for UI development and testing
  • Mermaid architecture diagrams in documentation

Changed

  • Optimized collectMinerStats() for parallel execution
  • Replaced log.Printf with structured logging throughout
  • Improved hashrate history with two-tier storage (high-res and low-res)
  • Enhanced shutdown handling with proper cleanup

Fixed

  • Race conditions in concurrent database access
  • Memory leaks in hashrate history retention
  • Context cancellation propagation to database operations

0.0.9 - 2025-12-11

Added

  • Enhanced dashboard layout with responsive stats bar
  • Setup wizard for first-time configuration
  • Admin panel for miner management
  • Profile management with multiple miner support
  • Live hashrate visualization with Highcharts
  • Comprehensive docstrings throughout the mining package
  • CI/CD matrix testing and conditional releases

Changed

  • Refactored profile selection to support multiple miners
  • Improved UI layout and accessibility
  • Enhanced mining configuration management

Fixed

  • UI build and server configuration issues

0.0.8 - 2025-11-09

Added

  • Web dashboard (mbe-mining-dashboard.js) included in release binaries
  • Interactive web interface for miner-cli

0.0.7 - 2025-11-09

Fixed

  • Windows build compatibility

0.0.6 - 2025-11-09

Added

  • Initial public release
  • XMRig miner support
  • TT-Miner (GPU) support
  • RESTful API with Swagger documentation
  • CLI with interactive shell
  • Miner autostart configuration
  • Hashrate history tracking