2026-10-30
2026-10-30
Upgraded the application to Angular 20 with updated Angular Material and related libraries
Admin
- Upgraded the application to Angular 20 with updated Angular Material and related libraries
- Improved runtime configuration handling so environment-based frontend settings update reliably without cached stale values
- Added a dedicated
/healthzendpoint for improved deployment health and readiness checks - Hardened the production container with non-root execution and read-only filesystem support for more secure deployments
- Internal environment template files are no longer publicly accessible
Hub API
- Added passkey/WebAuthn authentication support, including APIs for registering, managing, and signing in with passkeys
- Passkey registration now requires password confirmation and respects MFA verification when enabled for improved account security
- Added feature-flag support for passkeys, with unsupported deployments now returning clear
FEATURE_NOT_SUPPORTEDAPI responses - Added a new
Forwardablemedia filter for querying recordings and timeline/chart data tied to forwarded media metadata - Improved Slack alert channel configuration by validating and normalizing webhook and bot settings, preserving credentials across mode changes, and returning clearer errors for invalid configurations
- Slack test notifications now use the account owner identity for more accurate delivery behavior
- Improved audit logs across subscriptions, devices, groups, shares, and notification settings with clearer before/after values, safer handling of sensitive data, and more readable change tracking
- Private case audit logs now better protect sensitive information by redacting case titles from stored audit changes
Hub Audit
- Added support for delivering audit logs to S3-compatible object storage as gzip-compressed NDJSON batches
- Added validation and configuration support for S3 destinations, including custom endpoints, path-style access, prefixes, and credential file loading with automatic credential reloads
- S3 uploads now include integrity checksums and optional Object Lock verification to help ensure tamper-resistant audit storage
- Audit event failure metadata is now normalized into consistent failure reason codes and messages for more reliable downstream analysis and reporting
- Improved destination reliability by isolating destination initialization failures so other configured destinations can continue processing events
Hub Workflows
- Hardened container images to run as a non-root user with a minimal read-only runtime footprint and reduced exposed surface area
- Standardized runtime behavior around metrics exposure on port 8080 and documented updated deployment/runtime requirements for container environments
- Improved container reliability validation with expanded smoke testing covering service connectivity, queue handling, graceful shutdown, and secure runtime operation
- Updated core runtime dependencies, including Kafka, RabbitMQ, gRPC, and OpenTelemetry components, to newer supported versions
Hub Objecttracking
- Improved distributed tracing compatibility by switching workflow queue messages to standard W3C trace context fields and ensuring workflow results propagate the correct trace context
- Updated container images to include curl/libcurl security fixes for CVE-2026-92392
- Upgraded the runtime and build environment to Go 1.26.10 for improved platform stability and compatibility
Hub ANPR
- Improved container runtime compatibility and stability with a rebuilt native media/OCR stack, updated FFmpeg support, and bundled OCR language data
- Added runtime validation checks during container builds to catch OCR and media-processing issues before deployment
- Updated architecture detection for ONNX Runtime to improve support for x86_64 and ARM64 container builds
- Included fixes and security hardening for bundled native dependencies used by video encoding and OCR processing
Hub Loitering
- Container images now run as a non-root user in a minimal hardened runtime image, improving deployment security and compatibility with locked-down Kubernetes environments
- Added documented configuration for RabbitMQ, logging, OpenTelemetry, and queue settings to simplify deployment and runtime configuration
- Prometheus metrics are now documented as available at
GET /metricson port8080for easier monitoring integration
Hub Vlm
- Improved security and runtime stability through updated platform, networking, and container dependencies
Hub Frontend
- Added full passkey/WebAuthn support, including passkey sign-in, account management, enrollment/removal flows, translated error handling, and feature-flagged profile controls
- Redesigned the login experience with a more responsive layout, improved mobile behavior, and a modal-based “Forgot password” flow with better validation and feedback
- Improved media playback reliability with automatic refresh of expired media URLs, smarter buffering/preloading between recordings, and smoother scrubbing transitions
- Updated timelines, charts, markers, and playback calculations to correctly handle local time zones and daylight saving time changes
- Enhanced the mobile recordings timeline with pinch zoom, touch scrub previews, resizable bottom-sheet modes, clustered markers, larger touch targets, and accessibility improvements
- Added timeline marker clustering to improve readability and interaction in dense recording timelines
- Expanded Slack integration options with webhook and bot delivery modes, inline recording uploads, improved validation, masked credentials, and preserved settings when switching modes
- Added a reusable accessible settings modal system with focus trapping, draggable behavior, translated error messages, and customizable backdrop blur
- Updated face redaction and floor-plan editing tools for improved object handling, resizing, pointer interactions, and rendering consistency
- Improved recording thumbnail support for extensionless and Vault-signed image URLs
- Updated recordings wall hover behavior to reduce visual clutter while keeping names accessible on hover, focus, and drag interactions
- Removed browser zoom restrictions and improved mobile toolbar, dropdown, and language-switcher behavior for better accessibility and usability
- Improved site-map marker animations with reduced-motion accessibility support
- Refined device alert duration controls with clearer defaults, minimum values, and updated duration text
- Improved audit labels and links with better translated fallback names and more direct livestream device navigation
- Media forwarding actions are now feature-flagged and shown only when supported recordings are available
Hub Cleanup
- Container images now expose the metrics endpoint on port 8080, with
/metricsavailable by default on that port - Container images now run as a non-root user in a minimal hardened runtime image, with support for read-only filesystems and reduced Linux capabilities
Hub Monitor Device
- Added grouped device status notifications that batch multiple camera changes into a single alert for email, Slack, Telegram, Pushover, Pushbullet, SMS, and Alexa
- Added configurable notification grouping delays with new
DEVICE_GROUPING_HOLD_SECONDSandDEVICE_SCAN_INTERVAL_SECONDSsettings to control batching behavior and scan frequency - Improved grouped notifications with summaries organized by site/group, customizable titles and email templates, tenant-aware device links, and clearer messaging when devices briefly disconnect and recover
- Continued sending webhook, IFTTT, and realtime feed notifications immediately even when grouped notifications are enabled for user-facing channels
- Improved device status messaging with clearer recovery states such as cameras coming back online or reconnecting streams
- Fixed offline detection timing so devices are marked offline as soon as the configured threshold is reached
- Improved notification reliability in multi-instance deployments by preventing duplicate grouped notifications and making user data handling more tolerant of inconsistent account records
Pipeline Event
- Improved RabbitMQ connectivity and stability through an update to the underlying AMQP client library
Pipeline Monitor
- Added a
/metricsendpoint for metrics collection and liveness monitoring - Expanded runtime configuration support and documentation for MongoDB, RabbitMQ, and OpenTelemetry environment variables
- Improved container runtime security by running as a non-root user with a minimized read-only runtime image
- Container deployments now expose TCP port
8080by default
Pipeline Sequence
- Forwarded recordings with dated object keys now reuse existing undated media records instead of creating duplicates, preserving existing IDs, annotations, provenance, ordering, and marker references
- Improved reliability when matching and updating existing on-demand media records by retrying temporary lookup and marker update failures instead of creating duplicate entries
- Added a
/metricsendpoint on port 8080 for liveness checks and metrics access
Pipeline Throttler
- Container images now run as a non-root user in a minimal hardened runtime image with support for read-only deployments
- The service now listens on port 8080 by default, with the
/metricsendpoint exposed on the same port - Updated container packaging and runtime libraries to improve compatibility and reliability for Kafka-based workloads
Pipeline Notification
- Added configurable notification retry behavior with delayed retry queues for more reliable delivery and backoff handling
- Improved retry handling by distinguishing temporary delivery issues from permanent provider rejections, preventing unnecessary resend attempts
- Slack notifications now support selectable delivery modes using either incoming webhooks or Slack bots
- Slack bot delivery can now upload playable video files directly into Slack channels instead of only sending links
- Slack delivery configuration is now validated more strictly to prevent accidental delivery to the wrong channel or fallback behavior
- Slack notification sending now includes request timeouts, cancellation handling, and improved handling of transient Slack API failures and rate limits
- Slack webhook overrides now reliably force webhook delivery for alert-specific channels
- Updated device group notification wording to describe cameras “changing status together” instead of only going offline together
Pipeline Notification Test
- Slack notification tests are now sent directly by the service, improving delivery reliability and retry handling for failed test messages
- Added support for Slack bot and webhook delivery modes with validation for the required configuration in each mode
- Slack test messages now better match real deliveries by including media URLs and thumbnail previews when available
- Slack notification tests now correctly resolve account and inherited organization-level Slack settings during delivery validation
Pipeline Analysis
- Added support for overriding analysis queue names with the
ANALYSIS_QUEUEenvironment variable while keeping existing default queue names unchanged. - Added a documented
/metricsendpoint on port 8080 for container health checks and monitoring integrations. - Updated deployment requirements for RabbitMQ configuration, including required host, exchange, username, and password environment variables.
- Hardened the container runtime to support read-only filesystem deployments and reduced Linux capabilities for improved security.
Pipeline Dominantcolors
- Updated the runtime environment and minimum supported Go version to newer patched releases, including security-related updates for Alpine, curl, and libcurl components
Pipeline Thumbnail
- Vault jobs now detect and fail empty source downloads instead of attempting thumbnail generation on invalid media
- Empty or truncated media downloads are now retried automatically, improving thumbnail generation reliability for transient download issues
Pipeline Counting
- Updated the container image to use a hardened minimal runtime with stricter security defaults, including non-root execution and read-only filesystem support
- Upgraded the service runtime to Go 1.26.10 and updated the bundled Kafka client runtime libraries
- Clarified deployment expectations for container environments, including supported health-check behavior and hardened runtime requirements
Pipeline Sprite
- Improved handling of pipeline events with incomplete ownership metadata by automatically filling in missing organisation and project identifiers before validation, reducing avoidable processing failures
Pipeline Export
- Updated build and runtime requirements to Go 1.26.10+ and Alpine 3.24.3
- Added updated curl/libcurl runtime requirements to address CVE-2026-92392 security vulnerabilities
Pipeline Redaction
- Updated the runtime image and bundled media stack, including newer FFmpeg and image-processing libraries, for improved compatibility and stability when handling audio, video, and image content
- Added compatibility updates for newer FFmpeg/libavcodec versions to improve video processing and hardware encoding support across modern media environments
- Included fixes and security hardening for OpenCV/OpenJPEG processing to improve reliability and safer handling of JPEG 2000 media inputs
- Improved container security defaults by running the application as a dedicated non-root runtime user
Vault
- Container images now run as a non-root user by default and listen on port
8080instead of80; deployments using custom networking, health checks, or mounted volumes may need configuration updates. - Added a built-in
healthcheckcommand and improved container health check behavior for more reliable orchestration and monitoring. - Added support for Kafka via bundled
librdkafkaruntime libraries in the container image. - Frontend tooling migrated to Vite, improving development and build performance while adding support for
PUBLIC_URLasset paths and injectedREACT_APP_*environment variables. - Frontend development now requires Node.js
20.19.0or newer.
Factory
- Added support for custom Agent tag registries, including OCI-compatible registries such as GHCR and Harbor, with optional authenticated access
- Improved Agent tag browsing with pagination, deduplicated results, search filtering, and more consistent version sorting
- Improved reliability of Agent tag retrieval with clearer error handling for invalid registry configuration and upstream registry failures
- Updated the UI terminology from “Cameras” to “Agents” across navigation, deployment flows, forms, upgrade screens, and empty-state guidance
- Improved Agent upgrade workflows to better detect and handle container image tags and digests when selecting versions for upgrades
Design
- Added a comprehensive reusable “Hub Widgets” UI library with themed components for forms, tables, scheduling, navigation, notifications, modals, selections, feedback states, and dashboards, including light/dark theme support and accessibility-focused interactions.
- Expanded Storybook with interactive Hub Widget demos covering validation flows, async states, scheduling editors, searchable selects, notifications, modals, KPI layouts, and responsive component behaviors.
- Added browser-based branding tools for generating and exporting social banners and logos with live customization, PNG export, embeddable modes, and shareable URL-configured settings.
- Added downloadable favicon bundles and refreshed favicon handling with cache-busted assets and updated manifest/app icon support.
- Replaced the in-app Components page with direct links and redirects to the external Storybook component catalog.
- Added new animated isometric illustration components and themed figure variants for use across product and marketing experiences.
- Upgraded the interactive world map with a real map image layer, responsive badge positioning, improved badge visibility behavior, and smoother interactive overlays.
- Production container/runtime now uses port
8080and includes a new/healthzhealth-check endpoint for deployments and monitoring.
Learn
- Added podcast support across Learn content, including embedded audio players, chapter navigation, playback controls, resume progress, and podcast-optimized page layouts
- Introduced collapsible grouped “Topics” navigation with custom ordering and improved site-wide table-of-contents behavior
- Refreshed Learn site styling with product-specific themes, redesigned dark-mode code blocks, improved copy controls, and smoother horizontal scrolling
- Added animated product illustrations and reusable interactive embeds with accessibility support
- Expanded product overview and onboarding content for Agent, Factory, Hub, and Vault
- Added cookie consent management and enhanced analytics support, including GA4 Consent Mode v2 and optional third-party analytics integrations
- Improved privacy by replacing Google-hosted fonts with self-hosted font assets
- Expanded Hub documentation for authentication, MFA, passkeys, OIDC SSO, audit events, notifications, organisations, roles, and scoped resource assignments
- Added the latest release notes covering API updates, recordings UI improvements, workflow and media handling updates, Vault routing, retry behavior, and Helm configuration changes
- Refreshed favicon, web manifest, and application icon assets for improved cache handling and branding consistency
Website
- Added new Privacy, GDPR, Security, and Legal pages with detailed information on data handling, compliance, security disclosures, and website terms.
- Introduced new deployment solution pages for RTSP camera AI and Kubernetes camera management with implementation guidance and product links.
- Added a new “Drone Engineering Internship” careers page with structured job details and application metadata.
- Added a cookie consent banner and privacy controls for analytics preferences across the site.
- Integrated Google Analytics 4 with consent-aware tracking for contact submissions and careers interactions.
- Added a new interactive livestream demo experience with searchable, filterable, paginated multi-camera views and expandable previews on the Hub product page.
- Expanded product pages with FAQ sections, contextual solution links, richer structured SEO metadata, and updated product messaging.
- Improved site SEO and sharing metadata with canonical URLs, structured data, dedicated social preview images, and automatically generated sitemaps.
- Updated branding assets, application icons, and site manifest details across the website.
- Improved site performance with precompressed asset delivery, browser caching support, self-hosted fonts, and optimized image loading.
- Added redirects and canonical URL handling for consistent routing, including redirecting
www.uug.aito the primary domain. - Added new footer navigation links for legal resources, deployment guides, AI crawler information, and analytics preference controls.
- Removed the public CV/resume page and related downloadable profile content.
Helm Charts
- Added passkey (WebAuthn) authentication support, including passwordless sign-in and passkey management in the user profile UI
- Added optional S3-backed audit log archiving with configurable bucket, retention, endpoint, and credential settings
- Added grouped camera status notifications that combine multiple device state changes into a single notification email
- Added configurable device monitoring scan intervals to control camera status check frequency and grouped notification timing
- Added frontend feature flags for bulk media forwarding actions and media analysis visibility in media details
- Expanded Helm chart hardening options with configurable security contexts, non-root runtime support, read-only filesystems, health checks, and custom container ports across frontend, admin, and worker services
- Added dedicated ServiceAccount configuration support for the audit service deployment