## What it does

- Builds a compact, alphabetized list of verified pirates and posts it in the configured list channel.
- Entries are chunked to stay under Discord’s 2000-character limit; old chunks are edited or deleted as needed.
- No one gets pinged — all content is sanitized to avoid accidental mentions.

## Entry format

    - Character (Account#12345) [Threat%]
      - In group: bucket. Destructive: bucket. Encounters: N. Last: <t:UNIX:R>

- Threat% reflects combined encounter signals (kills, destructive behavior, group size, skill).
- In group / Destructive use buckets: `unknown`, `never`, `rarely`, `sometimes`, `often`, `always`.
- Last shows the most recent encounter as a relative timestamp.

## When to use

- After a new pirate is approved or removed.
- After logging encounters that meaningfully change threat or buckets.
- When the list looks stale or out of order.

## Behavior & notes

- Sorts by character name, then account.
- If there are no pirates yet, shows a single placeholder line.
- If the list channel isn’t configured or can’t be found, nothing is posted (check your config).
- Per-guild cooldown: 10 seconds (prevents spam).

## Config that affects output

- `pirates_list_channel_id` — where the list is posted.
- `threat_group_threshold` — minimum party size that counts as “in group”.
- `threat_min_samples_for_stats` — encounters needed before buckets stop showing `unknown`.

## Permissions

- Moderator-only.
- Bot needs permission to read and write in the list channel.