Window: 2026-05-18T14:00:24Z → 2026-05-19T14:00:24Z (UTC) · Branch: main · PRs merged: 15
Features
#611 — feat(piecesets): pre-fill currency from user DefaultCurrency on Create (#550)
by @jdooley-clt · 2026-05-18
SetsController already prefills MSRPCurrency from the user's DefaultCurrency on both Create GET and Edit GET (when blank), shipped as part of Epic #453 Set parity. The remaining gap was the sweep item in #550: PieceSetsController.Create GET constructed a fresh PieceSetEditViewModel + FinancialsEditViewModel with no currency, forcing use…
#612 — feat(admin-feedback): make status summary cards clickable filter pills (#551)
by @jdooley-clt · 2026-05-18
The Beta Feedback admin list already met two of the three asks from #551: the default filter hid Closed items via showClosed=false, the toggle switch persisted state through the URL query string, and a row of count cards above the table showed Total / Submitted / Acknowledged / Accepted / Closed / Open. The remaining gap was the issue''s "Click a…
#613 — feat(pieces): fall back to ScaleModel image on QR printout when Piece has none (#554)
by @jdooley-clt · 2026-05-18
The QR Code Share card on /Pieces/Details now renders a small product thumbnail above the QR code. Image-resolution order:
#614 — feat(admin-feedback): inline-render image attachments with PhotoSwipe (#560)
by @jdooley-clt · 2026-05-18
Image attachments on /Admin/FeedbackDetails now render inline in a responsive Bootstrap grid (col-6 col-md-4 col-lg-3) at the bottom of the feedback card. Clicking opens PhotoSwipe via the existing wwwroot/js/lightbox.js wrapper that the Albums detail view already uses. Non-image attachments keep their existing outline-secondary download bu…
#615 — feat(pieces): pre-fill currency from user DefaultCurrency on Create
by @jdooley-clt · 2026-05-18
Follow-on to #550. PiecesController.Create GET constructed PieceEditViewModel + FinancialsEditViewModel with no currency, so users had to edit USD to their preference on every new piece. Mirrors the same fix just applied to PieceSetsController, and the existing ScaleModel/Set pattern.
Bug Fixes
#619 — fix(ci): diagnostic raw-SQL probe after EF PieceSets.ExecuteDelete
by @jdooley-clt · 2026-05-18
Symptom
#616 — fix(uploads): tier request-size limit by admin status (closes #188, #189)
by @jdooley-clt · 2026-05-18
Both DocumentsController.Upload and ImagesController.Upload used a static [RequestSizeLimit(50 * 1024 * 1024)] attribute, so Kestrel would buffer up to 50 MB from any authenticated caller. Non-admins were rejected post-parse via the file.Length check against GetMaxFileSizeBytes(isAdmin) / GetMaxDocumentSizeBytes, which is fine for data…
#617 — fix(admin): preserve User Management accordion on search submit (closes #548)
by @jdooley-clt · 2026-05-18
The User Management search form was missing asp-fragment="user-management". Submitting the form (Enter key or Search button) reloaded /Admin without a fragment, which scrolled to the top of the page and collapsed the accordion.
#618 — fix(sets): block catalog Set deletion when a user owns it as a PieceSet
by @jdooley-clt · 2026-05-18
Deleting a catalog Set whose row was already added to any user''s collection (via PieceSet) crashed the request with an EF Restrict FK violation, leaving the admin staring at a 500 page with no explanation.
Documentation
#610 — docs(AGENTS): refresh Docs editor entry after shared partial rollout (#591)
by @jdooley-clt · 2026-05-18
The AdminDocs/Edit.cshtml block in AGENTS.md still described the pre-partial hand-rolled toolbar, Ctrl+B/I/K shortcuts, debounced preview timing, and the stale docEditorToastContainer id. All three admin Edit views (Blog, Docs, Albums) now consume the shared _MarkdownEditor.cshtml partial backed by EasyMDE + markdown-editor.js, and the to…
Other
#621 — Add RLS-bypass diagnostic to PieceSets clear (issue #620)
by @jdooley-clt · 2026-05-18
Why
#622 — Add 'Stay logged in' option on login form
by @jdooley-clt · 2026-05-18
Summary
#623 — Fix #199: set-based username PII backfill + CONCURRENTLY index
by @jdooley-clt · 2026-05-18
Closes #199.
#624 — Fix #216: batch notification fan-out via CreateManyAsync
by @jdooley-clt · 2026-05-18
Closes #216.
#625 — Fix #223: perf pass — eliminate N+1s in top-owned, invite reconcile, ContributionScore
by @jdooley-clt · 2026-05-18
Closes #223.
Generated 2026-05-19T14:00:24Z UTC by scripts/generate-changelog.ps1. Summaries: github-models (openai/gpt-4o-mini).