Release Notes

2026-07-11

Tickets can now act on time — close themselves when solved, escalate when nobody answers, and count the clock against your real business hours. Plus a reworked Settings → Users screen with admin password resets.

⏱️ Service Desk: Time-Based Ticket Automations

Support automations have always reacted to something happening — a customer replies, a ticket is created. This release adds the opposite, which is where most of the tedium in running a desk actually lives: acting on something that hasn't happened. Nobody has answered this customer in a working day. This ticket has sat Solved for four days and nobody objected. We replied a week ago and never heard back.

🧹 The Ticket Time Sweep trigger

A new Ticket Time Sweep trigger walks your open tickets once an hour and matches on how long it's been since a handful of moments:

  • Hours Since Created
  • Hours Since Status Changed
  • Hours Since Staff Reply — your team's last public reply. Internal notes don't count; the customer never saw them.
  • Hours Since Customer Reply

Each takes is at least or is less than, a number of hours, and a choice of Calendar hours or Business hours. Combine them with ordinary ticket conditions — Customer Status, priority, team, work type — to build first-response escalations, no-reply nudges, and automatic closure.

A ticket nobody has ever answered counts from when it was raised, so a first-response escalation fires on exactly the tickets that need it most rather than skipping them for lack of a reply to measure from.

📪 Solved tickets close themselves

Enabling Service Desk now creates one automation for you: close tickets that have been Solved for 4 days, emailing the requester when it closes theirs. It's the "did we actually finish?" safety net most desks build by hand — the customer gets a few days to come back and say "actually, it's still broken", and if they don't, the ticket closes itself and they're told.

It's an ordinary automation on the Automate Workflows page, and it's yours: change the 4-day threshold, add conditions, pause it, delete it. Nothing recreates an automation you deliberately delete.

🕘 Business hours, resolved per ticket

An escalation that measures "no reply in 8 hours" on wall-clock time fires at 3am on a Sunday. So business-hours conditions now resolve which working calendar to count against, per ticket:

  1. The owning team's schedule — teams gain a Business Hours field (Settings → Teams), so your EMEA desk and your US desk each keep their own.
  2. The organization's default — a new Default business schedule in Settings → Service Desk, for tickets whose team has none.
  3. Calendar time, if neither applies.

If your organization has exactly one schedule, it's now your explicit default and every team inherits it — same behavior as before, but visible and changeable instead of implicit. And a schedule that a team, the default, or an SLA policy still points at can't be deleted until you detach it: DevStride names what's still using it rather than silently switching that work to round-the-clock counting.

✏️ The auto-close automation is fully editable

Opening the seeded auto-close automation used to show an empty condition list — all four of its conditions, including the 4-day threshold (the one number anyone would ever want to change), were invisible and editable only through the API. Worse, any condition you did add was silently combined with four you couldn't see. The builder now shows and edits them normally, and organizations that had added their own conditions keep them.

Relatedly, a Ticket Time Sweep with no conditions is now rejected. It doesn't mean "match nothing" — it means match every open ticket, every hour, which with a closing action attached is your whole backlog closed and every customer emailed.

📚 Learn more: Time-Based Ticket Automations.

👥 Invite Fixes in Settings → Users

Two quiet failures in the invite flow, both now surfaced.

Inviting someone you archived before

Inviting a previously archived member used to do nothing at all — no email, no error, no membership. The invite just evaporated, and the admin had no way to know. Now DevStride asks:

Previously Archived User — Would you like to re-enable this user?

Confirm and their membership is reactivated, keeping their history, and they're emailed to let them know their account is back. Every reinstatement now emails the member — including via the existing Reinstate button, which used to bring an account back to life without telling anyone.

Invitation emails that fail to send

When an invitation email failed to send, the failure was swallowed and the UI reported success — the classic "I sent the invite, they say they never got it" dead end. The Users list now shows a red Email failed marker on that member's row, with a Resend action to try again.

If a row shows Invited with no failure marker, the email left DevStride successfully — so the place to look next is the recipient's spam folder, not DevStride.

📚 Learn more: Users, Roles & MFA.

🔑 Reset a Member's Password — from Settings → Users

Until now, the only way back into a locked-out account was the Forgot Password email. That's a dead end exactly when you need it most: the person who's lost access to their email can't receive the reset. So an Admin or Owner can now reset a member's password directly.

Open Settings → Organization → Users, edit the member, and in the Security section click Reset on the password row. DevStride hands you a temporary password, shown once — you copy it and pass it to the member however you trust. No email is sent; the credential travels through you.

The member signs in with it and is taken straight to a "choose a new password" screen — they can't get into the app until they set their own. The moment they do, the temporary password dies. It's a genuine one-time handoff, not a password you now both know.

✏️ Settings → Users, Reworked

The Users screen is now a clean, read-only table you scan at a glance, with the two actions you'd expect on every row: a pencil to edit and a red to archive.

Editing a member — role, labels, reinstating them, resending an invite, resetting a password or MFA, or just reading their details — all now lives in one place: the Edit User dialog behind the pencil. The old separate "info" popup is gone; there's a single window for everything about a person, with a dedicated Security section for the password and MFA controls.

The "who can…" permission filter at the top of the screen — the one that answers "who can delete work items?" — is no longer a wall of every permission in one flat list. It's grouped and ordered identically to Configure Settings → Permissions, so a permission sits where you'd expect to find it.

📚 Learn more: Users, Roles & MFA.