Move module declaration and all internal imports from github.com/Snider/Mining to forge.lthn.ai/Snider/Mining. Also updates Borg, Enchantrix, and Poindexter dependency paths to forge.lthn.ai. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add context cancellation tests for database InsertHashratePoint - Add context timeout tests for database operations - Add NopStore context handling tests - Add container shutdown timeout and double-shutdown tests - Add repository concurrent update, corrupt file, and permission tests - Verify all error paths handle edge cases gracefully 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Reliability fixes: - Fix HTTP response body drainage in xmrig, ttminer, miner - Fix database init race condition (nil before close) - Fix empty minerType bug in P2P StartMinerPayload - Add context timeout to InsertHashratePoint (5s default) Architecture improvements: - Extract HashrateStore interface with DefaultStore/NopStore - Create ServiceContainer for centralized initialization - Extract protocol response handler (ValidateResponse, ParseResponse) - Create generic FileRepository[T] with atomic writes 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>