4ad701c1a5
- mark_helped! gated broadcast on if save, but save returns false when needs_help is already false (no dirty attributes in CouchDB) - Same fix applied to remove_needs_payment! - Broadcast is the important side effect — save is just persistence