Retour aux nouveautés
par Théo Daguier
Changelog — August 3, 2026
Redesigned dashboard and list pages, atomic multi-client merge with one Pennylane sync identity, notification emails actually delivered and unified, project invoices built from live data, and lighter gallery thumbnails.
#feature#bugfix#performance#refactor#infrastructure
Release
v1.58.1✨ New Features
- Dashboard and list pages redesign — A draggable bento dashboard with an AI briefing and consolidated analytics cards, and every list page (clients, projects, sessions, guidelines, retouchers, users, products, machines) on one shared data table.
#859 - Merge several clients at once — A merge now takes several duplicates in one transaction, with a preview and blockers, and a single
ExternalClientLinkidentity stops pollers from recreating merged clients.#867 - User activation status — Admins can set a user's status (active, pending activation, inactive) from the user sheet; invitation resends follow that status.
#869 - Mobile studio hub — Studio tabs gated by role, invoice detail, session invoice and reschedule sheets, client and user creation, and an analytics screen on mobile.
#888 - Notifications targeted at project stakeholders — Studio action emails and reminders go to the people involved in the project instead of the whole organisation, with duplicate-send guards.
#884
🐛 Bug Fixes
- Notification emails recorded as delivered without being sent — When the email provider was not configured, notifications were marked "delivered" silently. Only a real send is now recorded as delivered; deliberate non-sends are "skipped" and a production misconfiguration fails loudly.
#887 - In-app notification panel — Clipped tooltips, a stray vertical bar, reservation notifications that did nothing on click, and missing, duplicated or miscounted items were fixed.
#891 - Retoucher assignment notifications — Newly assigned retouchers are notified in their own organisation (and past assignments caught up), and notification texts render in the reader's language.
#897 - Unified email design and comment notifications — Every transactional email shares one layout, and comment notifications are sent again.
#900 - Project invoice lines — The billing tab opened with no lines; the base line is now computed from the project's billable media and the studio's prices.
#892 - Empty gallery — A stale media tab could hide every asset of a project with no way to reset it.
#894 - Project workflow review — Correctness fixes from the UX audit: clients can bulk-validate their images, and asset priority is reserved to studio and retoucher.
#883 - Flicker-free project page — Loading skeletons and spinners were removed in favour of prefetching, and the workflow transition dialog no longer flashes mid-transition.
#893 - Broken build after two merges — Production builds failing after the #898 and #901 merges were repaired.
#902
⚡ Performance
- Gallery thumbnails — A pre-cropped
cardrendition and inline LQIP placeholders replace full-width previews in grids, the browser cache is no longer busted on every refetch, and FTP/Dropbox imports get real derivatives.#904
♻️ Refactoring & Technical Improvements
- Workers, workflow and invoices — The twelve worker processors share one registration, the workflow service became testable, the session/project invoice code was merged, and 9,600 lines of dead code were removed.
#895#898#899#901
📦 Dependencies & Infrastructure
- Release workflow restored — The broken GitHub workflows were dropped and the semantic-release workflow restored; versioning resumed at 1.58.0.
#885#886