Forums Feature Requests Thread

[New] mobieusHelp: No ticket merge or split — duplicate threads can't be consolidated

Patrick Bass · Jun 6 · 10 · 1 Locked
[High Priority] [New Feature] [Deployed to Production]
🚀 OP Jun 6, 2026 6:25pm

Area: mobieusHelp (audit p7) · Surface: mobieusHelp (helpdesk) — agent workspace · Dimension: competitor-gap · Severity: major

Every major helpdesk (Zendesk, Intercom, Help Scout) lets agents merge duplicate tickets into one canonical thread and split a single thread into a new ticket when a customer raises a second issue. Without merge, the same customer emailing twice (very common over inbound email, which mobieusHelp supports) creates two parallel threads that two agents can answer separately, producing contradictory replies. Without split, an off-topic request buried in a thread gets lost. This is core hygiene for any queue with real volume.

Evidence

`grep -riE '\bmerge\b|\bsplit\b|merged_into|parent_ticket' src/Models/Helpdesk src/Services/Helpdesk src/Controllers/Helpdesk` returns nothing. helpdesk_tickets has no merged_into_ticket_id / parent column (phase1 schema). AgentController exposes reply/status/assign/move-queue/tag/collaborator/task actions (AgentController.php:189-592) but no merge or split handler. TicketService public methods are create/reply/changeStatus/assign/getWithThread/moveQueue only (TicketService.php).

Suggested fix. Add merge (move source thread entries + attachments into target, redirect requester replies to target via email_message_id mapping, mark source merged/closed with a merged_into_ticket_id link and a system_event entry) and split (create new ticket from a selected thread entry, re-anchor downstream replies). Surface both as agent actions with audit log entries.

Filed by the automated tenant-app audit and adversarially evidence-verified. Status: verified. Open — not yet actioned.


Patrick Bass
@mobieus

🚀 Jun 7, 2026 12:31pm

Shipped and deployed to production. Commit 34575952ac.

Ticket merge: POST /help/agent/ticket/{reference}/merge moves all thread entries to target, closes source with merged tombstone, redirects to target.

Closed as: deployed.


Patrick Bass
@mobieus

Log in or register to reply to this thread.