Server Changelog
All notable changes to the horizOn Server (Backend API).
1.29.2 (2026-02-20)
Bug Fixes
- ci: enforce clean commit message policy in project guidelines (b369a2e)
1.29.1 (2026-02-20)
Bug Fixes
- account: complete data export with settings, testimonials, sessions, and missing fields (44eddea)
- gift-codes: ensure isActive defaults to true on creation and allow re-creation after soft-delete (bbb3b06)
- remove erroneous googleId assignment in anonymous user creation (6e825cb)
- tickets: fix createdAt 1970 timestamp and guest ticket 400 error with integration tests (9f2a85a)
- user-logs: remove internal accountId from UserLogResponse DTO (bbbd220)
1.29.0 (2026-02-19)
Bug Fixes
- tracking: disable Bing CAPI until pilot activation (75e5dca)
Features
- add Meta CAPI and Bing CAPI configuration properties (568b481)
- add PublicCollectController for server-side tracking (4309d06)
- add server-side tracking feature DTOs (ef0fc39)
- implement BingConversionsClient for server-side Bing CAPI (6d17af7)
- implement Ga4TrackingClient for server-side GA4 events (6b32e78)
- implement MetaConversionsClient for server-side Meta CAPI (e12adb5)
- implement TrackingDispatcherService with client stubs (6a32017)
1.28.1 (2026-02-19)
Bug Fixes
1.28.0 (2026-02-17)
Features
- seo: add separate sitemap base URL property (47dd0c6)
1.27.0 (2026-02-16)
Features
- seo: add dynamic sitemap.xml endpoint with blog posts (5ec6a94)
1.26.0 (2026-02-15)
Features
- blog: add image consistency check and improve image retrieval flow (d0f2a8e)
1.25.0 (2026-02-15)
Features
- blog: add admin endpoint to retrieve blog post images (2f614b0)
1.24.0 (2026-02-15)
Features
- blog: expose hasImage field in blog response DTO (ac50f91)
1.23.0 (2026-02-15)
Features
- blog: add URL-friendly slug support for blog posts (ba7eb3d)
1.22.0 (2026-02-15)
Features
- blog: accept slug or UUID in public blog endpoints (9567684)
- blog: add slug field to Blog entity with unique index (05eabf7)
- blog: add slug field to PublicBlogResponse and BlogResponse DTOs (8b96fc7)
- blog: add slug finder methods to BlogRepository (88a07b6)
- blog: add slug generation and lookup to BlogService (724a95d)
- blog: add startup migration to generate slugs for existing posts (0846ab4)
- blog: use slug in imageUrl paths (ef5d9d2)
1.21.0 (2026-02-14)
Features
- blog: add blog image upload and serve via MongoDB GridFS (4afc5b9)
1.20.0 (2026-02-13)
Features
- ci: trigger changelog sync after new release (d9d3bac)
1.19.0 (2026-02-12)
Features
- auth: grant actuator user admin role for n8n blog automation (7667858)
1.18.0 (2026-02-11)
Bug Fixes
- align commit workflow with frontend and document semantic-release (e7f6f06)
Features
- add disposable email blocking and admin accounts list caching (18ad94c)
1.17.0 (2026-02-09)
Features
- blog: add blog management feature with admin and public endpoints (1291253)
1.16.1 (2026-02-08)
Bug Fixes
- move customer testimonial endpoints to /api/v1/admin/ and store gift code on entity (badc9f7)
1.16.0 (2026-02-08)
Features
- testimonial: add approval reward email template with gift code display (e2f5eb3)
- testimonial: add customer DTOs and repository query methods (60f49c7)
- testimonial: add customer submission and admin review endpoints (db60837)
- testimonial: add customer submission fields and reward system config (1175bbc)
- testimonial: implement submission, review, and gift code reward logic (3677308)
- testimonial: trigger release for customer submission and review endpoints (1ba8bbc)
1.15.0 (2026-02-04)
Features
- enhance GA4 conversion tracking with dedicated event methods and GCLID extraction (a9815b5)
1.14.0 (2026-01-30)
Features
- add test endpoint for GA4 conversion service (9bccdfc)
1.13.0 (2026-01-30)
Features
- add Google Ads conversion tracking for free account signups (e8dae5d)
1.12.1 (2026-01-28)
Bug Fixes
- security: register DaoAuthenticationProvider for HTTP Basic auth (686ddb3)
1.12.0 (2026-01-28)
Features
- security: enable HTTP Basic auth for actuator/prometheus endpoint (12a1e7d)
1.11.0 (2026-01-28)
Features
- allow all authenticated users to update their own GCLID (39e1a5c)
1.10.3 (2026-01-28)
Bug Fixes
- add startup log message for better observability (2db5a65)
[Unreleased]
1.10.0 (2026-01-28)
Features
- add GCLID tracking and GA4 server-side conversion events
- optimize ticket queries, improve test infrastructure, and enhance error handling
- add security headers and bulk rank calculation
- add gift code redemption cleanup task
- add caching to user feedback statistics
Bug Fixes
- propagate account context to virtual threads in GiftCodeService
- set AccountContextHolder in GiftCodeServiceUnitTest for virtual thread context propagation
Performance Improvements
- optimize API key fetching to reduce N+1 queries
- replace in-memory log aggregation with MongoDB aggregation pipeline
- replace in-memory statistics calculation in LeaderboardRepositoryCustomImpl
- batch user count queries in AccountUsageService
- make email sending asynchronous with @Async annotation
Refactoring
- split large SupportTicketService into focused services
- remove redundant EmailManager wrapper class
- refactor to constructor injection and remove field injection
- standardize documentation language
- secure Spring Boot Actuator endpoints
- remove hardcoded secrets from configuration files
1.9.7 (2026-01-20)
Bug Fixes
- enable Spring scheduling for scheduled tasks to run (a661400)
1.9.6 (2025-12-14)
Bug Fixes
- use manual JSON parsing when Stripe deserializer fails (e1fa417)
1.9.5 (2025-12-14)
Bug Fixes
- add diagnostic logging to Stripe webhook for debugging (7cf2c41)
1.9.4 (2025-12-14)
Bug Fixes
- extract role from session metadata in Stripe webhook (e1c7eb9)
1.9.3 (2025-12-14)
Bug Fixes
- handle empty Optional in Stripe webhook account resolution (e9f095e)
1.9.2 (2025-12-14)
Bug Fixes
- allow webhook endpoints through security filter (dd017ca)
1.9.1 (2025-12-09)
Bug Fixes
- return empty response instead of 404 for missing LLM settings (195c097)
- return empty response instead of 404 for missing LLM settings (cd23d32)
1.9.0 (2025-12-07)
Bug Fixes
- add missing EmailService mock in GoogleSignInServiceTest (3d17d41)
Features
- add server-side logging to MongoDB with rate limiting (75d0288)
1.8.0 (2025-12-07)
Features
- add admin email notifications for new accounts and support tickets (f78095a)
- integrate email service into support ticket functionality (708ebe4)
1.7.0 (2025-12-07)
Features
- enhance user feedback functionality with additional fields and email verification endpoint (09f8fc6)
1.6.0 (2025-12-05)
Features
- add Discord invite code retrieval and update email templates for dark mode support (1d236a4)
1.5.0 (2025-12-04)
Features
- update Google sign-in flow to include redirect URI in requests (d8c8506)
1.4.0 (2025-12-04)
Features
- add Google redirect URI configuration for OAuth integration (8584549)
1.3.0 (2025-12-04)
Bug Fixes
- enhance ProductService and PublicProductController tests for price and payment link functionalities (d2dc0e0)
Features
- implement Stripe price cache management with refresh and status endpoints (2a5110e)
1.2.0 (2025-12-04)
Features
- add testimonial management feature with public and admin APIs (19548d7)
1.1.0 (2025-12-04)
Features
- add public platform statistics endpoint (e1892bf)
1.0.0 (2025-12-03)
Features
- add semantic-release automation and input validation security (88d1d50)
Changelog
All notable changes to this project will be documented in this file.
This file is automatically updated by semantic-release.