This release is mostly a repair release. The headline is reply threading: replies now land on the ticket they belong to instead of opening a duplicate. Alongside that, several places that reported a save as successful when it had actually failed now tell you the truth, and workflows can react to linked tickets for the first time.
Highlights
- 🧵 Replies thread onto the original ticket. No more duplicates from HappyFox tickets or tickets created in CougarDesk.
- ↕️ Pick your message order. Newest First or Oldest First for the messages inside a ticket.
- 💾 Saves that used to fail silently now save, or tell you why they did not. This covers drafts and team and agent assignment.
- 🌙 Dark mode email preview is readable. Inbound email in the ticket side preview no longer renders dark on dark.
- 🔗 Workflows can react to linked tickets and to side conversations being resolved.
✨ New Features
- Choose your message order. Messages inside a ticket can now be shown Newest First or Oldest First, set per person under Profile > Appearance. Your choice sticks across tickets and devices.
🛠️ Improvements & Fixes
Email and threading
- Replies to tickets migrated from HappyFox, and to tickets created inside CougarDesk, now thread onto the original ticket instead of opening a duplicate.
- Older HappyFox knowledge base links now resolve to the right article instead of a not-found page.
Tickets and replies
- An internal note with someone CC'd no longer fails to autosave.
- A draft that cannot be saved is now kept in your browser and reported to you, instead of showing "Saved" when nothing was stored.
- Changing a ticket's team no longer clears the assignee or quietly unassigns the ticket. The "refresh the page to save Team/Agent" behavior is gone.
- In dark mode, emails shown in the ticket side preview now adapt their colors, so text that used to disappear stays readable.
Navigation and lists
- Paging through a list brings you back to the top of the page instead of leaving you mid-scroll.
- Search in the top bar now shows a loading indicator while it is working, so a slow search no longer looks like nothing happened.
- The collapsed sidebar no longer stays expanded after you navigate to another page.
Reliability
- Fixed a family of "it said it saved but it didn't" problems. Several screens reported success even when the request behind them was refused. Those now surface the real result.
- When filing a bug report fails, the actual reason is now shown instead of a generic error.
- Hardened service startup so a caching misconfiguration cannot take the application down.
- Retired the HappyFox import jobs and scripts now that the migration is complete.
⚙️ For Administrators
These changes affect the admin area only.
Workflows
- Workflows can reason about linked tickets. A new "Related Ticket Changed" trigger runs a workflow on a ticket when one of its linked tickets changes status, so a ticket can react to its side conversation being resolved. New conditions let you specify which kind of link you mean ("Ticket relationship", "Relationship that changed") and whether anything is still outstanding ("Unresolved relationship").
- New "run only once per ticket" option. Because "every side conversation is resolved" describes a state rather than a moment, a side conversation that is reopened and resolved again would otherwise re-fire the rule and send the customer a duplicate reply. Enabling this suppresses the second run. Existing workflows are unchanged, the option defaults to off.
- Workflow run logs now show which steps were skipped, instead of reporting a successful run while applying nothing.
- Workflow activity is credited to the workflow in ticket history, rather than to the customer.
- A workflow action can no longer be pointed at a category that cannot actually be used. The save is now rejected with an explanation.
- Workflow run logs now name the related ticket involved in a cascade, and cover both Forward paths.
- Workflow debug mode: a request that does not specify how long to stay on is now rejected as an error, instead of quietly switching debug off and reporting success.