Changelog

What We Shipped

Every feature, improvement, and fix. Newest first.

117
Updates
52
Features
43
Improvements
10
Fixes
Improvement

Supplier Assignments Feel Simpler, Search Works Better

Supplier and reviewer assignment management now feels like one system instead of a pile of similar-looking screens.

  • The same assignment flow everywhere: suppliers and reviewers now share the same add and edit patterns, the same assignment cards, and the same searchable pickers
  • Less scope clutter: assignment options are trimmed down to All products, Product type or Category fallback, Brand, plus a separate Specific products mode when you need to target exact SKUs
  • Better product search for multilingual catalogs: product lookups now normalize accents and rank exact phrase and all-token matches ahead of fuzzy fallback, which fixes searches that used to fail once you typed the full query
Improvement

Vendor Delivery Paths Are Easier to Control

If you use the vendor portal, you now get much more control over where approved and rejected files land in Sirv.

  • Separate approved and rejected delivery roots let you route each outcome into its own Sirv folder instead of forcing everything through one shared base path
  • Safer rollback behavior means undoing an approval removes the exact delivered file and restores the original file to the right canonical path
  • Clearer delivery audit trail records which base-folder source was used when a file was delivered, which makes it much easier to debug path issues
New Feature

Image Specs: Check Catalog and CRUD

A new image specs entity for managing and reusing image validation rules.

  • Specs catalog with all available image checks and their configurations
  • Create, edit, and delete specs through the UI or API
  • Slot thumbnail strip shows all slots with group containers and fade overflow for quick visual reference
Improvement

Library Keyboard Navigation and Accessibility

Keyboard navigation in the library grid is faster and the whole grid is now accessible to screen readers.

  • ARIA grid roles added across the data grid, so screen readers can announce rows, columns, sort state, and selection
  • Focus recovery after toolbar use: arrow keys recapture grid focus after interacting with sort, filter, or view mode controls
  • No more selection ghosting: recycled virtualizer rows no longer show stale checkbox state during rapid keyboard scrolling
  • Debounced selection commits so holding arrow keys feels smooth instead of causing checkbox flicker
  • GPU-composited cursor ring replaces the old outline, which was slow to repaint inside the virtualized scroll container
Fix

Library List View and Selection Fixes

Several fixes for the library's list view and selection behavior.

  • Folder double-click fixed: the second click of a double-click no longer triggers selection, which was causing navigation to fail intermittently
  • ThumbHash placeholders in list view so rows show blurred previews while thumbnails load
  • Column resize and reorder work correctly with DOM-direct drag for smooth performance
  • Selection flicker gone: keyboard navigation no longer causes checkbox flickering during rapid arrow key holds
  • Sidebar resize is smoother with inline-size containment and no inset freeze
Fix

Fix: Video Credit Estimates Now Match Actual Charges

Fixed a bug where video generation cost estimates in the UI were 2-4x lower than actual charges.

  • The UI was reading from a stale pricing file instead of the authoritative credit table
  • Video cost estimates and pipeline step calculations now use the correct values
  • The stale pricing file has been removed to prevent future drift
Improvement

Vendor Portal: Security and UI Quality Pass

A focused audit across the vendor portal covering security, database safety, and UI consistency.

  • Error messages no longer leak internals: three vendor API routes now return safe client messages instead of raw error details
  • Request validation added to the notifications endpoint with zod, and notification queries are scoped to the caller's org
  • Faster product and requirements pages from parallelized database queries
  • ShadCN components replace raw HTML buttons, inputs, selects, and tables across vendor pages
  • Cache key fix in vendor SFTP hook that caused stale credentials after reconnect
Improvement

Library Folder Navigation is Faster

Opening folders in the library is now noticeably faster with smarter prefetching and fewer loading flashes.

  • Intent-based prefetch fires on pointer hover and keyboard focus, so folders feel ready before you click
  • No more stale folder flashes: switching folders shows a clean loading state instead of briefly displaying the previous folder's content
  • Lighter prefetch requests skip exact totals and tag hydration, then backfill in the background after navigation
  • Cache-aware guards prevent duplicate prefetch requests when a folder is already fresh or loading
Improvement

Review Autofix: Clearer Repair Flow

The review autofix flow is now more predictable and transparent.

  • Repairs don't auto-approve: applying an autofix keeps the asset in review so you still make the final approval decision
  • Bulk autofix is queued: repair previews generate in the background and you approve or reject each one individually
  • Credits shown upfront: the UI now clearly shows when previews are being generated, when credits are charged, and when a repaired asset still needs your review
  • Quality-aware repairs: whitespace margin fixes only add paid AI upscale when the crop would noticeably enlarge the source, and block repairs on already blurry assets
New Feature

Drop a Spreadsheet into Vendor Batch Upload

Vendors can now drop CSV, TXT, or Excel files directly into the batch upload tab to import images from URLs.

  • Drag and drop a spreadsheet with image URLs and it routes straight into the URL import flow
  • Better CSV parsing handles BOM markers, UTF-16, Windows exports, multiline rows, duplicate headers, and malformed quotes
  • The imported images go through the same batch-upload pipeline with validation and slot assignment