Skip to content

Change Log

  • Admin user management now includes clearer user status, role editing, delete confirmation, and password reset support
  • Agent pages now make it easier to inspect agent health, view log connection state, and restart agents from the logs page
  • Fix: agent restart requests are no longer lost when the agent tunnel is temporarily down; Grail queues the restart and delivers it after reconnect
  • Fix: jobs assigned to offline agents, disabled agents, or agents that never start work are recovered automatically so work can be picked up again
  • Fix: storage source capacity and health indicators now avoid showing stale healthy-looking values when a source is offline or not reporting
  • Asset tables now use a denser sortable layout for scanning and sorting larger libraries
  • Fix: macOS agents now handle existing or numbered SMB mounts more reliably, reducing false mount failures when macOS keeps a share at a path like /Volumes/share-1
  • Fix: Watch + Poll storage sources continue scheduled polling even if real-time SMB watching cannot start
  • Fix: real-time SMB watching now follows the configured base path instead of watching the whole share
  • Fix: large downloads through the tunnel no longer abort when the browser response finishes normally
  • Asset batch actions now support up to 1,000 selected assets, with the app showing when the selection limit is reached
  • Storage source cards now show mount health separately from watcher health, including the latest mount or watcher error when available
  • Fix: storage sources with base paths are normalized consistently so paths with missing leading slashes or trailing slashes resolve correctly
  • Fix: SMB paths with spaces and special characters are handled more reliably during agent scans
  • Fix: index scans now fail visibly when the scan root is missing or inaccessible instead of reporting a misleading success
  • Fix: storage capacity is cleared when a share is no longer reachable, preventing stale capacity numbers from looking current
  • Fix: agent startup no longer hangs indefinitely when tunnel authentication is slow
  • Fix: change detector startup now times out cleanly so one unhealthy storage source does not block the rest of the agent
  • Fix: SMB watcher startup now surfaces stalled NAS or watcher-container connectivity problems faster
  • Fix: change detection now recovers cleanly after watcher failures instead of silently staying offline until the agent restarts
  • Fix: macOS agents now automatically resolve Colima network gateway conflicts that can block Docker containers from reaching NAS or LAN hosts
  • Improved background job throughput and reliability for busy libraries by reducing queue stalls under heavy write load
  • Improved short-running job handling so quick tasks complete with less unnecessary progress churn
  • Smarter proxy streaming — prefers an existing proxy over re-encoding, plays the original while a proxy generates, and falls back gracefully on codec mismatches
  • Copy SMB path uses Windows UNC format when the client is on Windows
  • Proxy generation preserves the original aspect ratio
  • Fix: agent reconnection no longer permanently marks agents as unreachable after pod restarts
  • Fix: stale proxy and thumbnail URLs are automatically cleared when files are missing on the agent
  • Fix: transcript panel no longer shows an error for videos with no audio track
  • Fix: download menu no longer hidden behind the preview error overlay
  • Fix: metadata filter dropdown handles unexpected metadata values without crashing
  • Fix: log search no longer crashes with very large result sets
  • Google and Microsoft SSO login with per-organization provider toggles and auto-signup domains
  • Fix: agent crash-loop on macOS when running under launchd — ioreg was not in the launchd PATH, causing hardware UUID lookup to fail during config encryption migration
  • Agent reactivation flow — generate a reactivation code in the web UI and run grail-agent reactivate to move an agent to a new machine
  • Transcription progress indicator on the asset detail page with real-time polling
  • Fix: transcript viewer retry storm — capped retries with exponential backoff and added a visible error card with manual Retry button
  • Fix: tunnel disconnect detection — server and agent now detect dead connections within 60 seconds instead of waiting indefinitely
  • Fix: automatic metadata jobs no longer trigger tape recalls on cold/archived storage
  • Asset metadata system with three metadata types: path metadata extracted from folder structure, file metadata from FFprobe, and custom user-defined fields with text, number, date, and list types
  • Metadata filtering in the asset browser across all three metadata types
  • Bulk metadata editing for updating user metadata fields across multiple selected assets
  • Search query carry-through from asset browser to transcript search on the asset detail page
  • Fix: agent tunnel reconnection after internet drops — UI now shows “Unreachable” status when the agent is alive but the tunnel is down
  • Fix: video streaming and download reliability in multi-replica deployments
  • Download button on asset detail page with Original and Proxy options
  • Custom video seek bar with comment timestamp markers — click a marker to jump to that point in the video
  • Auto-check timestamp checkbox when playing or scrubbing video, resets after submitting a comment
  • Delete button with confirmation dialog on user management pages
  • Fix: tunnel server memory usage during large file downloads
  • Promote-to-priority button for pending jobs and sort-by-updated-date on the Jobs page
  • Performance improvements for job polling and cache eviction queries
  • Fix: SMB file watcher no longer permanently stops after repeated failures — uses continuous backoff instead
  • Fix: agent startup failure when log files are unwritable (e.g., after running with sudo)
  • Proxy and thumbnail file storage optimization for large libraries — automatic 2-level directory sharding reduces filesystem bottlenecks
  • Video streaming throughput improvements — disabled WebSocket compression and added end-to-end backpressure for significantly faster proxy playback
  • Thumbnail generation now uses consistent sizing and skips redundant jobs for assets that already have thumbnails
  • Fix: agent crash loop caused by Docker failures on SMB change detection and slow shutdown exceeding launchd timeout
  • Agent component health monitoring with colored status dots on agent cards
  • Archive asset UI — archive icon on cold-only thumbnails, “Archived Asset” banner with restore button on detail page, disabled transcription for cold assets
  • Fix: NAS-stored cached thumbnails now served correctly via SMB
  • Tiered storage support for Quantum StorNext — detect archived/tape files during scanning without triggering recalls, skip job creation for cold assets, and detect cold-to-hot transitions on rescan
  • Batch tag dropdown with search and inline tag creation from the dropdown
  • Batch action bar UI improvements — pill-style buttons, “Create Previews” label, unified layout
  • Fix: Safari proxy video playback no longer fails on oversized range requests
  • Fix: transcription jobs for files without audio streams now complete instead of failing
  • Fix: reduced redundant agent polling from rapid job notifications
  • Automatic dependency installation on macOS: agent detects and installs missing FFmpeg, Whisper, Docker, and Colima via Homebrew on first launch
  • Dependency version tracking displayed on the agent card in the web app
  • Fix: reduced redundant agent polling during storage source scans
  • Agent restart command (grail-agent restart) and Restart button in the web app
  • Backfill confirmation when toggling auto-transcribe or thumbnail pre-generation on existing storage sources
  • User permissions documentation with role-based access grid
  • Automatic thumbnail pre-generation for new assets on discovery
  • Fix user creation bug when creating users in a different organization
  • Auto-transcribe option on storage sources with configurable exclude patterns
  • Agent troubleshooting guide in documentation
  • Fix broken thumbnails and video streams in proxy streaming mode
  • Storage capacity reporting for connected shares
  • Filter dropdown pills replace sidebar filter panel
  • Video streaming improvements for large files
  • UI polish and font update
  • Real-time storage source sync
  • macOS code signing and notarization for agent
  • Built-in NAS system folder ignore list
  • Public documentation site
  • UX improvements and bug fixes
  • Improved job progress visibility
  • UX improvements and bug fixes
  • Agent server connection dialog auto-approval
  • Add macOS permission dialog auto-approval helper for agent
  • Fix transcription progress tracking
  • Optimize thumbnail loading performance
  • Agent log streaming
  • Asset selection bin with persistent selection and copy SMB paths
  • Transcript full-text search with highlighting
  • Fix duplicate notifications on bulk operations
  • Fix auto-update reliability
  • Detect file changes and re-index updated assets
  • Fix file watcher reliability issues
  • UX improvements and bug fixes
  • Fix thumbnail generation path handling
  • Fix agent self-update replacement issues
  • Asset thumbnail system
  • Performance improvements
  • Agent health check and rollback for auto-update
  • Integrate auto-update system into agent
  • Filter macOS AppleDouble files from scans
  • Agent auto-update system
  • Agent CLI commands for installation and service management
  • Multiple storage sources per SMB share with different base paths
  • Hamburger menu navigation
  • Comment count indicator on asset list
  • Fix SMB authentication for special characters
  • Public share page for unauthenticated asset viewing
  • Agent version tracking and display
  • Security fix
  • Optimize search for large libraries (400k+ assets)
  • Asset browser date sort and UI consistency improvements
  • Improved fuzzy search ranking
  • Improve assets page usability and styling
  • Indexing performance improvements for large storage sources
  • UX polish
  • Scheduled scans
  • Organization management
  • Security improvements
  • Fix file watcher reconnect issues
  • Proxy generation modes
  • Asset comments
  • Fix SMB path support for directory names with spaces
  • Installation documentation
  • Improve asset list UX with better click targets and compact layout
  • Display version info on login page
  • New Grail wordmark logo
  • Performance improvements
  • Improve file watcher reliability
  • Real-time file change detection
  • Security fix
  • File change detection for storage sources
  • Automatic job recovery when agent reconnects
  • Agent binary releases for macOS Apple Silicon
  • UI layout improvements
  • Real-time file watching for storage sources
  • Agent management and folder rename detection
  • Transcription button on asset detail page
  • Initial release