Mining/pkg/mining
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
..
component feat: Implement logging functionality for miners with log buffer and retrieval endpoint 2025-12-29 22:10:45 +00:00
component.go feat: Implement logging functionality for miners with log buffer and retrieval endpoint 2025-12-29 22:10:45 +00:00
config_manager.go feat: Add rate limiting, race condition fix, and shutdown improvements 2025-12-31 09:51:48 +00:00
container.go refactor: Add reliability fixes and architecture improvements 2025-12-31 12:43:46 +00:00
container_test.go test: Add error path unit tests for context cancellation and cleanup 2025-12-31 13:04:20 +00:00
dual_mining_test.go feat: Add context propagation, state sync, and tests 2025-12-31 10:10:39 +00:00
errors.go feat: Add rate limiter with cleanup and custom error types 2025-12-31 10:56:26 +00:00
errors_test.go feat: Add rate limiter with cleanup and custom error types 2025-12-31 10:56:26 +00:00
events.go refactor: Replace log.Printf with structured logging 2025-12-31 11:48:45 +00:00
events_test.go feat: Add context propagation, state sync, and tests 2025-12-31 10:10:39 +00:00
manager.go refactor: Add reliability fixes, centralized version fetching, and CHANGELOG 2025-12-31 13:33:42 +00:00
manager_interface.go feat: Enhance mining configuration management and API documentation 2025-12-07 16:26:18 +00:00
manager_race_test.go test: Add race condition tests and fix AVG float64 scan bug 2025-12-31 11:07:29 +00:00
manager_test.go fix: Update tests to handle autostart behavior 2025-12-31 10:17:14 +00:00
miner.go refactor: Add StatsCollector pattern with miner type identification 2025-12-31 13:02:01 +00:00
miner_factory.go refactor: Add MinerFactory to centralize miner instantiation 2025-12-31 11:12:33 +00:00
miner_factory_test.go refactor: Add MinerFactory to centralize miner instantiation 2025-12-31 11:12:33 +00:00
mining.go refactor: Add StatsCollector pattern with miner type identification 2025-12-31 13:02:01 +00:00
mining_profile.go feat: Add setup wizard and profile management components with styling 2025-12-10 22:17:38 +00:00
mining_test.go fix: Update tests to handle autostart behavior 2025-12-31 10:17:14 +00:00
node_service.go refactor: Add reliability fixes and architecture improvements 2025-12-31 12:43:46 +00:00
profile_manager.go fix: Add timeouts, atomic writes, and thread safety improvements 2025-12-31 02:55:30 +00:00
ratelimiter.go feat: Add rate limiter with cleanup and custom error types 2025-12-31 10:56:26 +00:00
ratelimiter_test.go feat: Add rate limiter with cleanup and custom error types 2025-12-31 10:56:26 +00:00
repository.go refactor: Add reliability fixes and architecture improvements 2025-12-31 12:43:46 +00:00
repository_test.go test: Add error path unit tests for context cancellation and cleanup 2025-12-31 13:04:20 +00:00
service.go refactor: Add reliability fixes, centralized version fetching, and CHANGELOG 2025-12-31 13:33:42 +00:00
service_test.go refactor: Add StatsCollector pattern with miner type identification 2025-12-31 13:02:01 +00:00
settings_manager.go fix: Address critical security and concurrency issues 2025-12-31 00:50:06 +00:00
settings_manager_test.go feat: Add CPU throttling, settings manager, and multi-miner tests 2025-12-30 16:35:02 +00:00
simulated_miner.go refactor: Add StatsCollector pattern with miner type identification 2025-12-31 13:02:01 +00:00
stats_collector.go refactor: Add StatsCollector pattern with miner type identification 2025-12-31 13:02:01 +00:00
stats_collector_test.go refactor: Add StatsCollector pattern with miner type identification 2025-12-31 13:02:01 +00:00
syslog_unix.go refactor: Replace log.Printf with structured logging 2025-12-31 11:48:45 +00:00
syslog_windows.go refactor: Replace log.Printf with structured logging 2025-12-31 11:48:45 +00:00
throttle_test.go test: Add race condition tests and fix AVG float64 scan bug 2025-12-31 11:07:29 +00:00
ttminer.go refactor: Add reliability fixes, centralized version fetching, and CHANGELOG 2025-12-31 13:33:42 +00:00
ttminer_start.go refactor: Replace log.Printf with structured logging 2025-12-31 11:48:45 +00:00
ttminer_stats.go refactor: Add StatsCollector pattern with miner type identification 2025-12-31 13:02:01 +00:00
version.go refactor: Add reliability fixes, centralized version fetching, and CHANGELOG 2025-12-31 13:33:42 +00:00
xmrig.go refactor: Add reliability fixes, centralized version fetching, and CHANGELOG 2025-12-31 13:33:42 +00:00
xmrig_gpu_test.go feat: Add OpenCL GPU support for ProgPowZ, ETChash, and Blake3DCR 2025-12-30 23:01:16 +00:00
xmrig_start.go refactor: Add reliability fixes, centralized version fetching, and CHANGELOG 2025-12-31 13:33:42 +00:00
xmrig_stats.go refactor: Add StatsCollector pattern with miner type identification 2025-12-31 13:02:01 +00:00
xmrig_test.go fix: Address race conditions and network blocking issues 2025-12-31 01:55:24 +00:00