Skip to main content

image.png

COSMOS Builder - 20240227

Release Notes


Revision History
VersionDateRevision AuthorSummary of changes
1.014-02-2024Maria KeshavarzInitial version
------------

UAT:15-02-24 PRD:27-02-24

Notification- email builder:

  1. The new HTML Email Builder now includes drag and drop components like layouts, text, links, buttons, and images. It also incorporates existing styling and layers functionality to improve email template creation.

  2. Added ability to include personalization tags in email template text body and subject line. Tags can be copied from new dismissible tooltip listing available parameters, or manually entered. Validation checks for correct tag format on template save, with error messaging if invalid tags are used. This feature allows email content to be dynamically personalized with customer data from participation forms.

Consumer Journey- Participation form

  1. Integrated address search functionality into Address Line 1 field using Loqate. Users can now search for an address which displays a selectable list of suggestions. Selecting a suggestion auto-fills the corresponding address fields in the participation form. Users can also manually type in an address without selecting a suggestion. Already auto-filled fields can be manually overwritten as needed. Overall, this feature significantly improves address input and makes completion of participation forms easier for end users.

Other:

  1. Test tag added to new features: This means the feature is currently under user testing by specific users and is likely to contain bugs. Thus, this feature should NOT be used for campaigns that are going live in the coming 2 weeks. (NOTE: if you use these feature on any campaigns going live in this time frame we will not be able to support you in a timely manner)._ In "Test" Tag added to the following features:
  • Video Component
  • Barcodes & QR Codes
  • Address listing filter
  • Offer restriction by website
  1. Deployment log clean-up: Implemented automated daily clean-up of website deployment logs to optimize database storage. For archived or deleted websites, all deployment logs are now removed. For active websites:
  • On the Live environment, logs are retained for the latest 5 deployments and any deployments within the last 28 days.
  • On the Test environment, logs are retained for the latest 5 deployments and any deployments within the last 7 days. This ensures useful deployment data is retained for active sites while clearing unnecessary logs over time. Overall, the automation improves storage efficiency without losing recent or relevant deployment history.
  1. Handle aborted request: Previously aborted requests could disrupt critical data writes, leading to inconsistent system state. Request cancellation handling has been updated to ignore aborts for key write endpoints, ensuring database changes complete fully before request abortion. This improves data integrity across create, update, and delete flows.

Tech debt:

  1. Website services - enable EF Core resiliency: Optimized transaction handling and enabled automatic retries of failed database operations on the participation endpoint using EF Core functionality. Transactions are now executed as retriable units to prevent partial commits. Retries can be disabled for specific cases like migrations. These changes improve performance and resilience of the participation endpoint under load, reducing failed requests.

  2. Revisit workers configuration: Optimized message retry handling across all workers and consumers by switching from incremental to immediate retries. This prevents message congestion and queues blocking. Removed fault consumers and publishing. Defaults to DLQ instead of manual error/skipped queues. Configured immediate retry policy on exceptions and transient errors. Disabled unused exchange publishing and prefetch counts. Updated Dynamics redelivery logic to increase delays based on retry count. Ensured consistent usage of TelemetryBus sender instead of manualIds. Together these changes improve resilience and delivery of messages through immediate retries instead of delays. Removes unused functionality to optimize throughput.

  3. Admin Portal - Angular 16 upgrade: Upgraded Angular framework and related packages to version 16. This included: • Migration of any deprecated code according to Angular's migration guide. • Updated README with correct Node.js version and build instructions. • Updated 3rd party notice files for new dependencies. • Changed default bundler to ESBuild for faster local and CI builds. These updates bring the latest capabilities, performance improvements, and security fixes from Angular 16 and modern versions of associated libraries. The required code migrations and build process updates were completed as part of the upgrade.

  4. Websites - Internal links availability Removed internal domain automation code and dependencies now that wildcard DNS handling is in place. This includes: • Deleted 'website-domain-internal' consumer, queue, messages, and related code. • When archiving a website, base info is deployed to test and live environments including website state. • Updated tenant resolver to filter out archived websites. • Added 'State' column to TenantMapping table. With these changes, website accessibility through internal URLs is now handled seamlessly via wildcard domains. No separate automation is needed. Archived sites are inaccessible as expected. Overall this simplifies and optimizes internal domain.