# Changelog

## 2026-11-11

- Initial implementation on `develop`: client, request engine, resources,
  embeds, markdown, interactions, tests, CI, agent docs.

## 0.1.0

- Initial release: Discord REST API v10 client for Elixir (REST-only, no gateway)
- `Noizu.Discord.Client` — token precedence opts -> app env -> `DISCORD_BOT_TOKEN`;
  `Bot` auth; Discord-format `User-Agent`; token redacted in `inspect/1`
- `Noizu.Discord.Request` — bounded retry (3 attempts): 429 for every method
  honouring `retry_after` / `X-RateLimit-Reset-After` (clamped 30 s), 5xx for
  idempotent methods; `meta: true` exposes `X-RateLimit-*`; `:reason` audit header
- Resources: `Users`, `Guilds`, `Channels`, `Reactions`, `Webhooks`, `Interactions`
- `Noizu.Discord.Pagination.stream/2` — lazy snowflake `before`/`after` paging
- `Noizu.Discord.Embeds` — builders + validation (strict or truncate)
- `Noizu.Discord.Markdown` — GFM -> Discord conversion; 2000-char `chunk/2`
- `Noizu.Discord.Interactions.verify_signature/4` — Ed25519 via `:crypto`
- Structured `Noizu.Discord.Error` (returned, never raised)
