September 16, 2025
Introduction
We would like to share more details about the events that occurred with Phrase between 12:45 PM CEST and 13:45 PM CEST on September 16, 2025 which led to a performance disruption of Phrase TMS (EU and US) CAT Web Editor Component and what Phrase engineers are doing to prevent these issues from reoccurring.
Timeline
Sep 16, 2025 @ 12:45 PM – Deployment of TMS core component was delivered to the production environment.
Sep 16, 2025 @ 12:56 PM – The CAT editor team was alerted to an issue affecting the CAT web editor.
Sep 16, 2025 @ 13:12 PM – Engineers identified an incompatibility issue between two components being deployed to production shortly after each other.
Sep 16, 2025 @ 13:30 PM – Duration of one component's deployment prolonged the restoration of correct UI behavior.
Sep 16, 2025 @ 13:45 PM – All deployments were finished, resolving the original issue for customers.
Root Cause
To improve browser rendering (via CSS1Compat aka standard mode), changes were made to the CAT editor page. These changes set the default editor window height to a very small value which was corrected by the styling rules in another component.
Delivery of the second component, which included the style fix, was delayed. This caused users opening the CAT Editor during that timeframe to encounter an unusable UI with barely visible content.
Once the second component successfully deployed, the issue was resolved. Some customers experienced temporary UI issues due to cached browser artifacts which were fixed by refreshing or clearing the browser cache.
Actions to Prevent Recurrence
Improved deployment flexibility - we're heavily reducing deployment time of related components to enable quicker recovery when issues are detected.
Enhanced automated testing - we will evaluate how to integrate UI scenarios like CAT Editor loading into automated testing in canary environments prior to the final stage of production deployment.
Frontend modernization - as part of an ongoing modernization effort, we are completely decoupling UI components to ensure future changes are self-contained and more resilient.