Hey Martin,
We tried multiple scenarios and I am posting the results here:
1. Customer A sends an email to support address, copying Customer B(To: Support address; CC: Customer . This email creates a ticket and the agent replies. Now Customer B replies to the agent's reply(Reply all). This reply gets added to the ticket. The 'Customer responded' flag gets added to the ticket on the ticket list page.
2. Customer A sends an email to support address, copying Customer B(To: Support address; CC: Customer B). This email creates a ticket and the agent replies. Now Customer B replies to the agent's reply(Reply). This reply gets added to the ticket. The 'Customer responded' flag gets added to the ticket on the ticket list page.
3. Customer A sends an email to support address and Customer B(To: Support address; To: Customer B). This email creates a ticket. No agent reply in this ticket. Now Customer B replies customer A's email(Reply-all). This reply gets added to the ticket. The ticket will still display the 'New' flag in the ticket list page, as there is no agent response so far.
4. Customer A sends an email to support address and Customer B(To: Support address; To: Customer B). This email creates a ticket. No agent reply in this ticket. Now Customer B replies customer A's email(Reply). The reply won't be appended to the ticket, since the support address is not in the loop
5. Customer A sends an email to support address, copying Customer B(To: Support address; To: Customer B). This email creates a ticket. No agent reply in this ticket. Now Customer B replies customer A's email(Reply-all, both support address and customer A's address in TO:. This reply gets added to the ticket. The ticket will still display the 'New' flag in the ticket list page, as there is no agent response so far.
Basically, if the customer responds after a agent reply, it will display the Customer responded flag. Until that the ticket will be in New flag. Let me know if you want any other scenarios to be checked.