Delete an antigen.
Cascade. complex_results.antigen_id is ON DELETE CASCADE,
so deleting an antigen also drops any complex-prediction result rows
that referenced it. The underlying jobs stay (jobs.antigen_id is
ON DELETE SET NULL) but their result blobs are gone. Callers that
want to retain historical complex results should keep the antigen
row.
Cost: write — burns rate + quota. Does not debit credits.