---
title: "JMWE Cloud: Troubleshooting JMWE Email Issue(s) post-function delivery"
canonical: "https://support.appfire.com/space/SUPPORT/3612442625/JMWE%20Cloud%3A%20Troubleshooting%20JMWE%20Email%20Issue(s)%20post-function%20delivery"
format: markdown
---
This article covers how to troubleshoot and understand the limitations of tracking emails sent using the **Email issue(s)** post-function in Jira Misc Workflow Extensions (JMWE) for Jira Cloud.

## Summary

When troubleshooting missing emails triggered by JMWE post-functions, it is important to distinguish between the **execution** of the post-function and the **delivery** of the email. This article explains what JMWE logs can confirm, what they cannot, and common reasons why emails might not be sent.

## Use Case 1: Understanding JMWE Execution Logs versus email delivery

Customers often report that emails were not received and request logs to confirm delivery. However, JMWE's visibility is limited to the dispatch phase.

### What JMWE Execution Logs CAN tell you?

- **Execution Timestamp:** The exact time the post-function ran.
- **Success Status:** A "Success" status means JMWE successfully evaluated the conditions, resolved the recipients, and **dispatched the email request to Atlassian's notification infrastructure**.
- **Skipped Status:** If a condition (e.g., `{{ issue.fields.customfield_12345.value != null }}`) is not met, the log will show the execution was skipped, meaning no email was attempted.
- **Error Status:** If the post-function fails (e.g., invalid recipient template, character limit exceeded), the log records an error message.
- **Resolved Recipients:** Confirmation of which email addresses or user fields were resolved at the time of execution.

### What JMWE Execution Logs CANNOT tell you?

- **Actual Delivery:** Once JMWE hands the email to Atlassian, it loses visibility. It cannot confirm if the email reached the recipient's inbox.
- **Downstream Failures:** JMWE is not notified of bounce-backs, spam filter rejections, or full mailboxes on the recipient's side.
- **Read Status:** There is no tracking for whether an email was opened or read.
- **SMTP Logs:** These logs reside on the receiving mail server (e.g., your organization's Outlook/Gmail infrastructure).

---

## Use Case 2: Troubleshooting "skipped" executions

A common reason for "missing" emails is that the post-function condition was not met, causing the execution to be skipped.

### Common causes

- **Project key mismatch:** Conditions often hardcode project keys. If a workflow is shared across projects, the condition may fail for projects not explicitly listed.
- **Null fields:** If the condition checks a custom field that is empty, the post-function will not trigger.

### Example condition failure

In one scenario, emails were not sent because the following condition evaluated to `false`:

```nunjucks
{{ issue.fields.project.key == "OCADOSD" and issue.fields["Does this affect ORL"].value == "Yes" }}
```

If the issue key was `ORL-7484`, the `issue.fields.project.key == "OCADOSD"` part of the condition would fail, preventing the email from being sent.

---

## Important notes

- **Log retention:** JMWE execution logs are only retained for **two weeks**. Troubleshooting must occur within this window.
- **Atlassian infrastructure:** JMWE relies on Atlassian's internal notification system to send the actual emails. If JMWE logs show "Success" but you don't receive an email, the issue likely lies with Atlassian's mail servers or the recipient's mail server.