etouch
Iniciar sesión
Volver a novedades
por 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 ExternalClientLink identity 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 card rendition 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