/pirate_cards_rebuild — Rebuild all pirate cards
Runs a full pass that makes sure each verified pirate has a fresh, accurate card in the configured channel.
Access
  - Moderator-only.
 
  - Must be used in a server channel (not DMs). The confirmation is sent ephemerally.
 
What it updates
  - Card fields: Account name, Threat %, “In groups” bucket, “Destructive” bucket, total encounters, and last encounter date (UTC).
 
  - Colors: Unknown samples → dark gray. Otherwise a green→red gradient based on Threat %.
 
  - Safety: User-provided names are escaped and mentions are neutralized (no pings).
 
Behavior
  - For each pirate in the internal list:
    
      - If their card already exists, it edits the embed in place.
 
      - If it can’t find the message, it posts a new card and records the message ID.
 
    
   
  - Works serially per guild to avoid race conditions.
 
Output
Ephemeral summary, e.g.:
Rebuilt/updated 27 pirate cards.
Setup notes
  - Uses 
pirates_list_channel_id for the destination channel. 
  - Threat %, group/destructive buckets, and last seen are computed from stored encounters.
 
  - Bucket thresholds respect your server settings (e.g., 
threat_group_threshold, threat_min_samples_for_stats). 
When to run it
  - After importing or migrating data.
 
  - After a batch of new pirates is approved.
 
  - Any time the cards look out of date.