Skip to content

Change Log

  • Quantum StorNext tiered storage is now enabled per organization from Organization Settings. Once enabled, admins configure per-source detection on storage sources and manage StorNext connection behavior on the agent.
  • Admins can now pause StorNext requests for an agent without turning off tiered storage — useful if a StorNext appliance needs a break. Archived files stay protected while paused, and Grail-generated proxies and thumbnails keep serving.
  • StorNext detection is now much lighter on the appliance: viewing a page of thumbnails or an asset issues far fewer StorNext requests, proxies and thumbnails are served without residency checks, and Grail automatically backs off from an overloaded appliance so it can recover.
  • Fix: viewing an asset now re-checks tier status for its whole folder, so files that have moved to archive no longer keep showing as available.
  • Fix: Quantum StorNext residency checks stay reliable when many storage sources scan the same appliance at once, so resident assets are no longer briefly treated as unavailable during heavy scans, and live playback and restores take priority over background scanning.
  • Grail now supports Quantum StorNext tiered storage: it detects whether each file is resident on disk or archived to tape, skips content processing for cold files (no thumbnails, proxies, or transcripts, and no unnecessary tape recalls), and picks up files automatically once they are recalled. Archived assets show an archive indicator, and Restore from Archive can request a restore when that option is enabled.
  • Asset views now show media processing progress and pending archive restores, and clear the restore status once a file is back on disk.
  • Fix: a single non-archival file in a folder (such as a macOS .DS_Store) no longer causes the other files in that folder to be misidentified as archived.
  • The asset detail page is now a tabbed workspace with an adjustable layout that organizes the preview, transcript, metadata, file info, and face review into tabs, and remembers your preferred layout.
  • Visual indexing is clearer to follow: the People page scales better for large libraries, indexing progress and terminal states are easier to read, empty results are distinguished from assets that were never indexed, and you can filter visual job history.
  • Fix: assets whose original is archived but still have a cached proxy now preview and stream correctly.
  • Fix: visual indexing no longer keeps large numbers of repeated or lower-quality face samples, keeping face review focused on the best results.
  • Fix: email addresses are now matched exactly and case-insensitively across sign-in and account management, preventing duplicate accounts that differ only by capitalization.
  • Fix: expired or invalid sessions now prompt a clean sign-in instead of surfacing an error.
  • Agent cards now report startup and service health more clearly, including waiting or unhealthy service checks when startup work is still in progress or needs attention
  • Fix: agent health details now separate overall startup/service health from individual storage source watcher issues, making troubleshooting less noisy
  • Storage source forms now include Test Connection for SMB settings, with recommendations and suggested settings when Grail can identify a working connection
  • The Assets page now includes advanced filters for duplicates, transcription status, transcript phrases, comments, tags, duration, and day of week
  • User permissions are clearer: all users can copy asset paths and export selected assets, while agent and storage source management is Admin-only
  • Fix: broad asset searches and advanced filters are faster and more reliable on large libraries
  • Fix: macOS agents now recover Docker and Colima more reliably when Docker is on the default context or Colima takes longer to restore its required mounts
  • Fix: agents that hit permanent cloud credential failures now pause cloud activity cleanly and guide you toward reactivation instead of repeatedly retrying with bad credentials
  • Fix: agent maintenance actions and tunnel cleanup are more reliable when Grail is running across multiple cloud replicas
  • Fix: macOS agents now back off repeated SMB authentication retries after a login failure, reducing noisy capacity checks while you correct share credentials
  • Fix: Docker-backed SMB watching now recovers more reliably when Colima networking blocks NAS access and surfaces clearer watcher startup errors
  • Fix: local visual indexing on macOS now verifies the required Colima mounts for both NAS media access and local face-crop uploads
  • Fix: proxy generation uses clearer available-memory headroom thresholds so busy agents avoid starting too many heavy jobs at once
  • Agent settings now include Restart, Update, and Reset Colima maintenance actions for supported online agents
  • Fix: local visual indexing now stages media automatically when Docker cannot read the original NAS mount directly
  • Fix: local visual indexing recovers more reliably from broken Colima mount state on macOS
  • Auto-transcribe is now enabled by default for new storage sources
  • Fix: local visual indexing resolves agent-side media paths more reliably on mounted SMB volumes
  • Fix: storage source capacity summaries use clearer units for large shares
  • The Assets page now supports list and grid layouts with adjustable thumbnail sizes that persist in your browser
  • Grail can now run local visual indexing for video assets, including face review on asset detail pages and a People page for named appearances
  • Bulk actions can now queue visual indexing jobs for multiple assets at once
  • Fix: asset search and folder browsing are faster and more stable for broad filename searches in large libraries
  • Fix: archived assets and multi-location assets now choose online locations more reliably for previews, thumbnails, streaming, and proxy generation
  • Fix: tiered storage scans now detect archive-only changes during scheduled polling without triggering cold-storage reads
  • Fix: FCPXML exports now include additional media metadata for better compatibility with Adobe Premiere Pro
  • Changed: YouTube channel and playlist sync has been removed
  • Fix: stalled thumbnail requests now time out instead of leaving the asset browser waiting indefinitely
  • Agent job scheduling now adapts to each agent’s available CPU, memory, disk space, and configured job capacity so busy agents keep working without oversubscribing the machine
  • Agent cards now include state history so administrators can inspect recent online, offline, unreachable, and error transitions
  • Fix: agents now ignore more NAS system folders during change detection and polling, reducing noisy scans from recycle bins and vendor metadata folders
  • Assets can now be exported to FCPXML from the bulk action toolbar for easier handoff into Final Cut Pro and compatible editors
  • Copy path actions now choose the right local path format for the client platform, including Windows UNC paths and macOS Finder paths
  • Fix: agents now prevent duplicate local agent processes and tunnel connections from starting for the same configuration
  • Fix: signing out or revoking a session now prevents that session from refreshing access again
  • Fix: agents use less idle memory on large watched storage sources by releasing persisted scan state between scheduled checks
  • Fix: storage capacity checks now time out and clean up more reliably when a share is slow or unresponsive
  • Fix: asset browsing no longer jumps straight into the only connected source, making mixed source lists and folder navigation more predictable
  • Fix: account tokens are validated by token purpose so sign-in, refresh, and password reset links cannot be used interchangeably
  • The Assets page now supports indexed folder browsing, including storage source roots, folder navigation, breadcrumbs, and folder-level asset counts when available
  • New churches can now create a Grail organization from the signup page, with the first account becoming the organization admin
  • Fix: disabled agents now stop reconnecting tunnels and polling for jobs until they are enabled again
  • Fix: agent tunnel status now recovers more reliably after reconnects or tunnel service restarts
  • Fix: live agent logs are checked against organization access before streaming or searching
  • Fix: the mobile login page keeps the footer from overlapping the sign-in form
  • Agent status now includes memory and disk telemetry so administrators can better understand agent capacity
  • Fix: agents running at their configured job limit stay healthy instead of being treated as stalled
  • Fix: macOS agents report memory pressure more accurately
  • 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