34d61c2e69
CI / test (push) Successful in 9s
A campaign.md is meant to stay around after it's sent as a record of what went out and when. Treating any non-draft campaign as a hard rejection forced deleting it just to keep CI green, and there was no way to fail on resolving a stale list/attachment reference either -- an archived campaign has nothing left to resolve, so check status before doing any of that work. Non-draft campaigns now report as a distinct, non-error "skipped" bucket instead of "rejected".