What’s new
Reports
Reports can now be scheduled to run and deliver automatically on a daily, weekly, or monthly cadence.When a scheduled report fires, the system generates the report as an XLSX file and emails it directly to the configured recipients. Each email includes the report title, the date range covered, and the next scheduled run date.Date ranges are calculated using the tenant’s configured timezone, so “yesterday” is always correct regardless of where a tenant is located — particularly important for regions like the Gulf where UTC offsets mean calendar day boundaries differ significantly from the server’s local time.Distributed locking (ShedLock) ensures each scheduled run fires exactly once, even in multi-instance deployments.
Reports
A new Spill Detection report type is now available for sensors configured as spill detectors.Spill detection data is reported as a percentage per period, formatted consistently in the XLSX output with appropriate percentage styling. The report follows the same daily/weekly matrix structure as other sensor report types.
Bug fixes
ReportsBug Fix
Fixed an issue with daily reports where date columns were derived from the timestamps present in sensor data, rather than from the full calendar range requested. This meant that days with no sensor readings produced no column at all, resulting in gaps in the output.Daily reports now pre-populate their date columns from the tenant’s local timezone calendar — every day in the requested range appears as a column, whether or not sensor data exists for that day.
PlatformBug Fix
ShedLock distributed locking has been applied to scheduled background jobs across services, including the support ticket scheduler. This prevents jobs from running simultaneously across multiple server instances in K8s, which could previously result in duplicate operations or conflicting writes during high-availability deployments.
Platform
The underlying server infrastructure has been upgraded in this release. The platform now runs on higher-capacity hardware with increased compute and memory headroom, improving overall responsiveness under load and providing a more resilient foundation for continued growth.
SensorsPlatform
The Sensor Configuration Management service now exposes an OpenAPI/Swagger UI, accessible at
/swagger-ui.html on the service. This provides an interactive reference for all endpoints, request schemas, and response types directly from the running service.