Skip to main content

Changelog

All notable changes to Acusight are documented here.

Increment 4 (Current Development)

Documentation & Polish

  • Added Mintlify documentation site
  • Improved Swagger API annotations for provisioning and organization endpoints
  • Added DeviceKeyAuth security definition for device API documentation

Increment 3 - Cloud Deployment Ready

Highlights

  • Complete cloud deployment architecture with Caddy HTTPS reverse proxy
  • Multi-tenant organization isolation
  • Secure device provisioning workflow

Features

Device Provisioning
  • Token-based device onboarding via curl | sh setup script
  • Single-use tokens that auto-revoke after first use
  • Automatic Portainer Edge endpoint creation during provisioning
  • Device API key authentication (X-Device-Key header)
Authentication & Security
  • Zitadel OIDC integration with PKCE flow
  • Caddy reverse proxy with auto-generated self-signed TLS
  • Organization auto-creation on first login
  • Silent token renewal
  • Complete OIDC logout with Zitadel session termination
Multi-tenant Isolation
  • All device endpoints scoped to organization
  • Data service endpoints scoped to organization
  • Device API keys tied to specific organizations
Cloud Mode
  • Device image upload proxy through core service
  • Edge devices no longer need direct MinIO access
  • Supports NAT/firewall environments

API Changes

  • POST /api/provisioning-tokens - Create provisioning token
  • GET /api/provisioning-tokens - List tokens
  • DELETE /api/provisioning-tokens/{id} - Revoke token
  • POST /api/devices/provision - Provision device (public endpoint)
  • GET /setup - Download device setup script
  • GET /api/device/self - Device self-info (device auth)
  • POST /api/device/checkin - Device heartbeat (device auth)
  • POST /api/device/images/upload - Upload image (device auth)

Increment 2 - MLOps Pipeline

Features

Container Management
  • Full Portainer proxy integration
  • Container attach console
  • Enhanced log viewer with search, copy, time filtering
  • Stack management with compose file viewer
  • Resource detail pages with host info
Data Pipeline
  • Batch collection workflow
  • Image annotation interface
  • Dataset versioning with train/val/test splits
Monitoring
  • Prometheus metrics integration
  • Grafana dashboards
  • Alertmanager webhook handler

Bug Fixes

  • Fixed container images endpoint
  • Fixed tab UX issues
  • Replaced window.confirm/alert with proper UI dialogs
  • Fixed runtime bugs in resource hooks and stacks service

Increment 1 - Foundation

Features

Core Platform
  • React/TypeScript frontend with Vite and Tailwind
  • Go microservices (core, data, pipeline-data)
  • PostgreSQL database with GORM
  • Redis job queue
  • MinIO object storage
Device Management
  • Device registration and approval
  • Virtual device simulator for testing
  • Telemetry collection
Video & Timeline
  • Multi-device WebRTC streaming grid
  • Global timeline with zoom/pan
  • HLS playback with Watchman-style controls

Infrastructure

  • Docker Compose orchestration
  • Prometheus/Grafana monitoring stack
  • OpenTelemetry tracing

Versioning

Acusight uses increment-based versioning during development. Each increment represents a major feature milestone. After GA release, we’ll switch to semantic versioning.

Contributing

Found an issue or have a suggestion? Open an issue on GitHub.