Run a contest without paying the prize twice
Snapshot the standings, pay from the snapshot, mark the contest closed — all in one transaction, with the entry rules decided before it opens.
5 entries
Snapshot the standings, pay from the snapshot, mark the contest closed — all in one transaction, with the entry rules decided before it opens.
Generate the day's tasks once, track progress against a date key, and pay the completion bonus exactly once — no midnight cron required.
A table of conditions, a checker that runs after activity, and a unique key so an achievement can only be awarded once.
Rank from a summary table rather than the raw ledger, snapshot the winners before you clear, and pay from the snapshot.
Production runs only while fuel lasts, and fuel comes from doing the thing you actually want done. Turns idle earning into a loop.