Repository navigation
Fixed
- Four-Sided Valkyrie Deployment Edge Scaling & Slot Reconciliation (
internal/attack/executor.go,internal/attack/hero_manager.go,internal/attack/orchestrator.go):- Fixed edge coordinate scaling in
TapDeployFourSidesto dynamically scale authored edges to physical screen resolution and push 20px outward into clear grass. - Fixed
applyCornerOverridein orchestrator so existing pinned edges are preserved rather than overwritten by the primary target edge. - Added post-deploy verification and top-up pass to
DeployTroops: verifies slot is genuinely empty before marking deployed; leaves undeployed slots for the sweeper to finish all remaining troops.
- Fixed edge coordinate scaling in
- Accurate Star Counting Outcome Ground Truth (
internal/bot/bot.go):- Authoritative star count now follows deterministic Clash of Clans destruction rules derived from live battle percentage and Town Hall status (<50% = 0⭐, >=50% = 1⭐, TH+50% = 2⭐, 100% = 3⭐), preventing 0-star defeats from misreading as 2⭐ due to victory ribbon pixel overlap.
- Obstacle Dialog & Return Home Dismissal Watchdog (
internal/bot/bot.go,internal/attack/attack.go):- Added fast dismissal for accidental obstacle dialog popups during village capture loops.
- Handled
StateConnectionLostand ticker deadline bounds inWaitForBattleEndCtxto eliminate battle end hangs.
- Streamlined 1-Click Auto-Update & In-Place Replacement (
app.go,internal/updater/updater.go,build/darwin/install_update.sh):- Fixed premature state transition:
ApplyAuto()andApply()now permit bothStateReadyandStateRestarting, resolving the "download not ready" error that blocked auto-installations. - Spawns helper in a detached process group (
Setpgid: true) with redirected logging to avoid broken pipe signals on process termination. - Implemented atomic bundle swap with rollback fallback in
install_update.sh, ad-hoc code-signing re-seal, and quarantine cleanup.
- Fixed premature state transition:
- Persistent In-App Update Banner & Settings Integration (
web/src/App.tsx,web/src/components/UpdateBanner.tsx,web/src/components/SettingsView.tsx):- Retains header update badge even when modal dialog is dismissed ("Later" or closed), ensuring 1-click update is always reachable.
- Added direct "Update Now" / "Install Now" launcher in Settings App Version section.