Changelog — 2026-08-31
Window: 2026-08-30T19:20:27Z → 2026-08-31T19:20:27Z (UTC) · Branch: main · PRs merged: 5
At a glance
Line counts come from git log --numstat on main and include generated, vendored, and lock files. "Today" line counts are bucketed by commit date, while PR/issue counts use merge/close date.
Bug Fixes
#1614 — fix(payments): narrow ApplyCapturedPaymentAsync DbUpdateException backstop to unique violation 23505 (#1416)
by @jdooley-clt · 2026-08-31
Summary
#1616 — fix(admin): populate link-invite modal after XHR pagination via document-delegated handler (#1273)
by @jdooley-clt · 2026-08-31
Summary
Other
#1615 — Rename Set duplicate action to Copy as New
by @jdooley-clt · 2026-08-30
Summary
- rename the standalone Set duplication affordance to Copy as New for parity with ScaleModels
- clarify that Set members are not copied
- update the success message and focused controller coverage
#1613 — Show pre-order status on public checklists
by @jdooley-clt · 2026-08-31
Summary
- distinguish owned, pre-ordered, and missing catalog models on public checklist details
- classify in-collection
PieceStatus.PreOrderedrows as pre-ordered rather than owned, while letting a received copy take precedence - treat pending standalone Set pre-orders as covering their member models, including standalone checklist model rows -…
#1617 — Make SendGrid webhook event processing idempotent
by @jdooley-clt · 2026-08-31
Summary
- persist SendGrid
sg_event_idvalues in an additive processed-event ledger - atomically claim each event and serialize per-recipient suppression updates with a PostgreSQL advisory lock
- treat replayed events as no-ops while rolling back claims when downstream processing fails
- document the behavior and add unit, constraint, controller,…
Generated 2026-08-31T19:20:27Z UTC by scripts/generate-changelog.ps1. Summaries: github-models (openai/gpt-4o-mini).