Job EF218C6A-33FE-4C1B-A607-5B99D53CB582

Dispatched Back to batch
Batch
DB8C91CF-1EB1-43AE-9B88-8C4389409DE1
Template
InsufficientHours
Recipient
gopalakrishnan.kalaimani@kwglobal.com (Gopalakrishnan Kalaimani)
User id
6B4F2E33-B27F-4C2B-A510-7D38854A9E33
Status
Dispatched
Attempts
3
Claimed by
thr-50876 at 2026-07-31 16:11:07.376315
Created
2026-07-31 16:11:00.320935
Completed
2026-07-31 16:11:07.482317

Attachments — what the end user receives in the email

#FilenameSizeStatusAction
1 6B4F2E33-B27F-4C2B-A510-7D38854A9E33-Minimum Working Hours Report - 2026-07-30.xlsx
runs/db8c91cf-1eb1-43ae-9b88-8c4389409de1-attachments/6B4F2E33-B27F-4C2B-A510-7D38854A9E33-Minimum Working Hours Report - 2026-07-30.xlsx
5.8 KB on disk Preview Download

Stage 4 — QA gate

Pass
15 checks run · 12 pass · 0 warn · 0 fail/error · 172 ms · evaluated 2026-07-31 16:11:07.370313
VerdictRuleExpected GotTime
Pass R1_RECIPIENT_EMAIL
Recipient's email address looks valid
severity: Block
A real email address (with @, no commas/semicolons/angle-brackets, max 320 characters)
valid: gopalakrishnan.kalaimani@kwglobal.com
0 ms
Pass R2_RECIPIENT_ACTIVE
Recipient is an active employee in this company
severity: Block
Recipient is a current, active employee of this company
OK
14 ms
Pass R3_ACCESSIBLE_USERS
Recipient is a manager (has at least one team member)
severity: Block
Recipient is a manager who has at least one team member to report on (skipped for UrgentAttention -- those recipients are HR-scoped, not line-manager-scoped)
8 active reportee(s)
Total In Tree
9
Active Others
8
Inactive Others
0
0 ms
Pass R4_SUBJECT_NONEMPTY
Email has a clean, non-empty subject line
severity: Block
Email has a subject line that's filled in (no leftover {{name}} markers, max 500 characters)
len=51
0 ms
Pass R5_PAYLOAD_PRESENT
Stage 2 saved data for this recipient
severity: Block
Stage 2 saved data for this recipient
size=6026 bytes
0 ms
Pass R6_PAYLOAD_NONEMPTY
The email actually has content (not empty)
severity: Block
The data has at least some rows in it (not empty)
total rows=5
Section counts declared in the data
  • Users: 2
  • Tos Users: 3
0 ms
Pass R7_BODY_NO_PLACEHOLDERS
Email body has no unfilled placeholders like {{ManagerName}}
severity: Block
Email body has no unfilled placeholders like {{ManagerName}} or ${date}
body OK (22854 bytes)
0 ms
Pass R8_BODY_COMPLETE
Email body is complete (not cut off)
severity: Warn
Email body is complete (at least 200 characters and ends with a closing tag, not cut off)
body looks complete (22854 bytes)
0 ms
Pass R9_ATTACHMENTS_EXIST
All attachment files are saved correctly
severity: Block
Every attachment file the email references actually exists on disk
1 attachment(s) present
Files attached
pathsize
runs\db8c91cf-1eb1-43ae-9b88-8c4389409de1-attachments\6B4F2E33-B27F-4C2B-A510-7D38854A9E33-Minimum Working Hours Report - 2026-07-30.xlsx5934
0 ms
Pass R10_ATTACHMENT_SIZE
Attachments are not too large to be emailed
severity: Warn
Each attachment is 25 MB or less (so the email can actually be sent)
OK
0 ms
Skipped R11_PAYLOAD_USERS_ACCESSIBLE
Email shows exactly this manager's team members
severity: Warn
Every person shown in the email is accessible to this recipient (no leakage). For AssociateSummary / TeamSummary the accessible set is the recipient's line-manager reportee tree. For UrgentAttention the accessible set is the recipient's HR scope (the users returned by USP_*_GetUrgentNotificationUserDetails for their HrUserId), which is broader than the reportee tree. For InsufficientHours the reportee tree is used but the 'missing reportees' half is skipped (the report only lists users who triggered the threshold).
no UID-shaped fields recognised in payload
0 ms
Pass R12_ROW_COUNTS_CONSISTENT
The counts shown match the actual number of rows
severity: Warn
The 'count' numbers shown at the top of the data match how many rows are actually there
all 2 row_counts consistent
0 ms
Skipped R13_ATTACHMENT_SHEETS
Excel attachment has all the expected sheets
severity: Block
The Excel attachment contains exactly the sheets it should - no missing, no extras
no expected-sheets defined for template 'InsufficientHours'
0 ms
Pass R14_METRICS_RANGE
Time and percentage values look reasonable
severity: Warn
Time values (productive/unproductive/neutral/no-impact/idle/total) are within realistic bounds and percentages are 0-100
all metrics in 5 row(s) within bounds (1 field(s) checked)
0 ms
Skipped R15_ATTACHMENT_MATCHES_DASHBOARD
Attachment sheets match the proc data the email was built from
severity: Warn
Every sheet in the .xlsx attachment has the same number of rows as the proc result the email was built from (no rows dropped or duplicated during rendering).
rule applies only to AssociateSummary (this is InsufficientHours); other templates' attachments aren't built from a per-recipient payload
0 ms

Stage 2 — Data

Fetched 2026-07-31 16:11:07.087140 · 6026 bytes

Users 2 Tos Users 3
Users · 2 row(s) × 11 column(s)
ManagerNameUserNameEmployeeIdSpentTimeMinimumHoursRoleNameReportToEmployeeNameSkipSupervisorNameBranchNameFormJsonFormDataJson
Gopalakrishnan Kalaimani Dhanalakshmi P 47705 00:00 07:30 User Gopalakrishnan Kalaimani Antony Vincent KGL-CHE {"components":[{"label":"Work Mode","key":"select","id":"0d748563-bd43-4aa9-b8ea-abf914a18526","type":"select","placeholder":"","sublabel":"","isRequired":false,"futureDateAllowed":false,"minlength":null,"maxlength":null,"multiSelection":false,"IncludeTimeField":false,"fieldValidations":false,"fieldValidationValue":null,"fieldDependency":false,"dependencyField":null,"dependencyFieldValue":null,"manager":false,"fieldExclusive":false,"data":{"values":[{"id":"47d6f369-adfa-4f02-a815-f1e0bb507123","value":"PWFH"},{"id":"ff5ab541-93b7-4ed1-b505-f3362fc69b04","value":"WFO"},{"id":"2d633cb9-6791-4833-9c6f-b3988e2ea14a","value":"Hybrid"},{"id":"cc56b597-f8c5-4ff8-9a84-06a600ab2a37","value":"TWFH"}]}}]} {"0d748563-bd43-4aa9-b8ea-abf914a18526":"ff5ab541-93b7-4ed1-b505-f3362fc69b04"}
Gopalakrishnan Kalaimani Kingsley M 47236 07:22 07:30 User Gopalakrishnan Kalaimani Antony Vincent KGL-CHE {"components":[{"label":"Work Mode","key":"select","id":"0d748563-bd43-4aa9-b8ea-abf914a18526","type":"select","placeholder":"","sublabel":"","isRequired":false,"futureDateAllowed":false,"minlength":null,"maxlength":null,"multiSelection":false,"IncludeTimeField":false,"fieldValidations":false,"fieldValidationValue":null,"fieldDependency":false,"dependencyField":null,"dependencyFieldValue":null,"manager":false,"fieldExclusive":false,"data":{"values":[{"id":"47d6f369-adfa-4f02-a815-f1e0bb507123","value":"PWFH"},{"id":"ff5ab541-93b7-4ed1-b505-f3362fc69b04","value":"WFO"},{"id":"2d633cb9-6791-4833-9c6f-b3988e2ea14a","value":"Hybrid"},{"id":"cc56b597-f8c5-4ff8-9a84-06a600ab2a37","value":"TWFH"}]}}]} {"0d748563-bd43-4aa9-b8ea-abf914a18526":"ff5ab541-93b7-4ed1-b505-f3362fc69b04"}
Tos Users · 3 row(s) × 11 column(s)
ManagerNameUserNameEmployeeIdSpentTimeMinimumHoursRoleNameReportToEmployeeNameSkipSupervisorNameBranchNameFormJsonFormDataJson
Gopalakrishnan Kalaimani Dhanalakshmi P 47705 00:00 07:30 User Gopalakrishnan Kalaimani Antony Vincent KGL-CHE {"components":[{"label":"Work Mode","key":"select","id":"0d748563-bd43-4aa9-b8ea-abf914a18526","type":"select","placeholder":"","sublabel":"","isRequired":false,"futureDateAllowed":false,"minlength":null,"maxlength":null,"multiSelection":false,"IncludeTimeField":false,"fieldValidations":false,"fieldValidationValue":null,"fieldDependency":false,"dependencyField":null,"dependencyFieldValue":null,"manager":false,"fieldExclusive":false,"data":{"values":[{"id":"47d6f369-adfa-4f02-a815-f1e0bb507123","value":"PWFH"},{"id":"ff5ab541-93b7-4ed1-b505-f3362fc69b04","value":"WFO"},{"id":"2d633cb9-6791-4833-9c6f-b3988e2ea14a","value":"Hybrid"},{"id":"cc56b597-f8c5-4ff8-9a84-06a600ab2a37","value":"TWFH"}]}}]} {"0d748563-bd43-4aa9-b8ea-abf914a18526":"ff5ab541-93b7-4ed1-b505-f3362fc69b04"}
Gopalakrishnan Kalaimani Kingsley M 47236 07:22 07:30 User Gopalakrishnan Kalaimani Antony Vincent KGL-CHE {"components":[{"label":"Work Mode","key":"select","id":"0d748563-bd43-4aa9-b8ea-abf914a18526","type":"select","placeholder":"","sublabel":"","isRequired":false,"futureDateAllowed":false,"minlength":null,"maxlength":null,"multiSelection":false,"IncludeTimeField":false,"fieldValidations":false,"fieldValidationValue":null,"fieldDependency":false,"dependencyField":null,"dependencyFieldValue":null,"manager":false,"fieldExclusive":false,"data":{"values":[{"id":"47d6f369-adfa-4f02-a815-f1e0bb507123","value":"PWFH"},{"id":"ff5ab541-93b7-4ed1-b505-f3362fc69b04","value":"WFO"},{"id":"2d633cb9-6791-4833-9c6f-b3988e2ea14a","value":"Hybrid"},{"id":"cc56b597-f8c5-4ff8-9a84-06a600ab2a37","value":"TWFH"}]}}]} {"0d748563-bd43-4aa9-b8ea-abf914a18526":"ff5ab541-93b7-4ed1-b505-f3362fc69b04"}
Gopalakrishnan Kalaimani Nasir Hussain 47207 07:15 07:30 User Gopalakrishnan Kalaimani Antony Vincent KGL-CHE {"components":[{"label":"Work Mode","key":"select","id":"0d748563-bd43-4aa9-b8ea-abf914a18526","type":"select","placeholder":"","sublabel":"","isRequired":false,"futureDateAllowed":false,"minlength":null,"maxlength":null,"multiSelection":false,"IncludeTimeField":false,"fieldValidations":false,"fieldValidationValue":null,"fieldDependency":false,"dependencyField":null,"dependencyFieldValue":null,"manager":false,"fieldExclusive":false,"data":{"values":[{"id":"47d6f369-adfa-4f02-a815-f1e0bb507123","value":"PWFH"},{"id":"ff5ab541-93b7-4ed1-b505-f3362fc69b04","value":"WFO"},{"id":"2d633cb9-6791-4833-9c6f-b3988e2ea14a","value":"Hybrid"},{"id":"cc56b597-f8c5-4ff8-9a84-06a600ab2a37","value":"TWFH"}]}}]} {"0d748563-bd43-4aa9-b8ea-abf914a18526":"ff5ab541-93b7-4ed1-b505-f3362fc69b04"}
Meta · non-tabular fields
{
  "row_counts": {
    "tos_users": 3,
    "users": 2
  }
}
Raw JSON
{"users": [{"ManagerName": "Gopalakrishnan Kalaimani", "UserName": "Dhanalakshmi P", "EmployeeId": "47705", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": " User", "ReportToEmployeeName": "Gopalakrishnan Kalaimani", "SkipSupervisorName": "Antony Vincent", "BranchName": "KGL-CHE", "FormJson": "{\"components\":[{\"label\":\"Work Mode\",\"key\":\"select\",\"id\":\"0d748563-bd43-4aa9-b8ea-abf914a18526\",\"type\":\"select\",\"placeholder\":\"\",\"sublabel\":\"\",\"isRequired\":false,\"futureDateAllowed\":false,\"minlength\":null,\"maxlength\":null,\"multiSelection\":false,\"IncludeTimeField\":false,\"fieldValidations\":false,\"fieldValidationValue\":null,\"fieldDependency\":false,\"dependencyField\":null,\"dependencyFieldValue\":null,\"manager\":false,\"fieldExclusive\":false,\"data\":{\"values\":[{\"id\":\"47d6f369-adfa-4f02-a815-f1e0bb507123\",\"value\":\"PWFH\"},{\"id\":\"ff5ab541-93b7-4ed1-b505-f3362fc69b04\",\"value\":\"WFO\"},{\"id\":\"2d633cb9-6791-4833-9c6f-b3988e2ea14a\",\"value\":\"Hybrid\"},{\"id\":\"cc56b597-f8c5-4ff8-9a84-06a600ab2a37\",\"value\":\"TWFH\"}]}}]}", "FormDataJson": "{\"0d748563-bd43-4aa9-b8ea-abf914a18526\":\"ff5ab541-93b7-4ed1-b505-f3362fc69b04\"}"}, {"ManagerName": "Gopalakrishnan Kalaimani", "UserName": "Kingsley M", "EmployeeId": "47236", "SpentTime": "07:22", "MinimumHours": "07:30", "RoleName": " User", "ReportToEmployeeName": "Gopalakrishnan Kalaimani", "SkipSupervisorName": "Antony Vincent", "BranchName": "KGL-CHE", "FormJson": "{\"components\":[{\"label\":\"Work Mode\",\"key\":\"select\",\"id\":\"0d748563-bd43-4aa9-b8ea-abf914a18526\",\"type\":\"select\",\"placeholder\":\"\",\"sublabel\":\"\",\"isRequired\":false,\"futureDateAllowed\":false,\"minlength\":null,\"maxlength\":null,\"multiSelection\":false,\"IncludeTimeField\":false,\"fieldValidations\":false,\"fieldValidationValue\":null,\"fieldDependency\":false,\"dependencyField\":null,\"dependencyFieldValue\":null,\"manager\":false,\"fieldExclusive\":false,\"data\":{\"values\":[{\"id\":\"47d6f369-adfa-4f02-a815-f1e0bb507123\",\"value\":\"PWFH\"},{\"id\":\"ff5ab541-93b7-4ed1-b505-f3362fc69b04\",\"value\":\"WFO\"},{\"id\":\"2d633cb9-6791-4833-9c6f-b3988e2ea14a\",\"value\":\"Hybrid\"},{\"id\":\"cc56b597-f8c5-4ff8-9a84-06a600ab2a37\",\"value\":\"TWFH\"}]}}]}", "FormDataJson": "{\"0d748563-bd43-4aa9-b8ea-abf914a18526\":\"ff5ab541-93b7-4ed1-b505-f3362fc69b04\"}"}], "tos_users": [{"ManagerName": "Gopalakrishnan Kalaimani", "UserName": "Dhanalakshmi P", "EmployeeId": "47705", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": " User", "ReportToEmployeeName": "Gopalakrishnan Kalaimani", "SkipSupervisorName": "Antony Vincent", "BranchName": "KGL-CHE", "FormJson": "{\"components\":[{\"label\":\"Work Mode\",\"key\":\"select\",\"id\":\"0d748563-bd43-4aa9-b8ea-abf914a18526\",\"type\":\"select\",\"placeholder\":\"\",\"sublabel\":\"\",\"isRequired\":false,\"futureDateAllowed\":false,\"minlength\":null,\"maxlength\":null,\"multiSelection\":false,\"IncludeTimeField\":false,\"fieldValidations\":false,\"fieldValidationValue\":null,\"fieldDependency\":false,\"dependencyField\":null,\"dependencyFieldValue\":null,\"manager\":false,\"fieldExclusive\":false,\"data\":{\"values\":[{\"id\":\"47d6f369-adfa-4f02-a815-f1e0bb507123\",\"value\":\"PWFH\"},{\"id\":\"ff5ab541-93b7-4ed1-b505-f3362fc69b04\",\"value\":\"WFO\"},{\"id\":\"2d633cb9-6791-4833-9c6f-b3988e2ea14a\",\"value\":\"Hybrid\"},{\"id\":\"cc56b597-f8c5-4ff8-9a84-06a600ab2a37\",\"value\":\"TWFH\"}]}}]}", "FormDataJson": "{\"0d748563-bd43-4aa9-b8ea-abf914a18526\":\"ff5ab541-93b7-4ed1-b505-f3362fc69b04\"}"}, {"ManagerName": "Gopalakrishnan Kalaimani", "UserName": "Kingsley M", "EmployeeId": "47236", "SpentTime": "07:22", "MinimumHours": "07:30", "RoleName": " User", "ReportToEmployeeName": "Gopalakrishnan Kalaimani", "SkipSupervisorName": "Antony Vincent", "BranchName": "KGL-CHE", "FormJson": "{\"components\":[{\"label\":\"Work Mode\",\"key\":\"select\",\"id\":\"0d748563-bd43-4aa9-b8ea-abf914a18526\",\"type\":\"select\",\"placeholder\":\"\",\"sublabel\":\"\",\"isRequired\":false,\"futureDateAllowed\":false,\"minlength\":null,\"maxlength\":null,\"multiSelection\":false,\"IncludeTimeField\":false,\"fieldValidations\":false,\"fieldValidationValue\":null,\"fieldDependency\":false,\"dependencyField\":null,\"dependencyFieldValue\":null,\"manager\":false,\"fieldExclusive\":false,\"data\":{\"values\":[{\"id\":\"47d6f369-adfa-4f02-a815-f1e0bb507123\",\"value\":\"PWFH\"},{\"id\":\"ff5ab541-93b7-4ed1-b505-f3362fc69b04\",\"value\":\"WFO\"},{\"id\":\"2d633cb9-6791-4833-9c6f-b3988e2ea14a\",\"value\":\"Hybrid\"},{\"id\":\"cc56b597-f8c5-4ff8-9a84-06a600ab2a37\",\"value\":\"TWFH\"}]}}]}", "FormDataJson": "{\"0d748563-bd43-4aa9-b8ea-abf914a18526\":\"ff5ab541-93b7-4ed1-b505-f3362fc69b04\"}"}, {"ManagerName": "Gopalakrishnan Kalaimani", "UserName": "Nasir Hussain", "EmployeeId": "47207", "SpentTime": "07:15", "MinimumHours": "07:30", "RoleName": " User", "ReportToEmployeeName": "Gopalakrishnan Kalaimani", "SkipSupervisorName": "Antony Vincent", "BranchName": "KGL-CHE", "FormJson": "{\"components\":[{\"label\":\"Work Mode\",\"key\":\"select\",\"id\":\"0d748563-bd43-4aa9-b8ea-abf914a18526\",\"type\":\"select\",\"placeholder\":\"\",\"sublabel\":\"\",\"isRequired\":false,\"futureDateAllowed\":false,\"minlength\":null,\"maxlength\":null,\"multiSelection\":false,\"IncludeTimeField\":false,\"fieldValidations\":false,\"fieldValidationValue\":null,\"fieldDependency\":false,\"dependencyField\":null,\"dependencyFieldValue\":null,\"manager\":false,\"fieldExclusive\":false,\"data\":{\"values\":[{\"id\":\"47d6f369-adfa-4f02-a815-f1e0bb507123\",\"value\":\"PWFH\"},{\"id\":\"ff5ab541-93b7-4ed1-b505-f3362fc69b04\",\"value\":\"WFO\"},{\"id\":\"2d633cb9-6791-4833-9c6f-b3988e2ea14a\",\"value\":\"Hybrid\"},{\"id\":\"cc56b597-f8c5-4ff8-9a84-06a600ab2a37\",\"value\":\"TWFH\"}]}}]}", "FormDataJson": "{\"0d748563-bd43-4aa9-b8ea-abf914a18526\":\"ff5ab541-93b7-4ed1-b505-f3362fc69b04\"}"}], "row_counts": {"users": 2, "tos_users": 3}}

Stage 3 — Rendered

Rendered 2026-07-31 16:11:07.183142 · 22854 bytes

Subject: Minimum Required Working Hours Not Met Jul 30, 2026

Attachments
[{"name": "Minimum Working Hours Report - 2026-07-30.xlsx", "path": "runs/db8c91cf-1eb1-43ae-9b88-8c4389409de1-attachments/6B4F2E33-B27F-4C2B-A510-7D38854A9E33-Minimum Working Hours Report - 2026-07-30.xlsx", "sizeBytes": 5934, "contentType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "kind": "xlsx"}]
Body HTML (source)
<!doctype html>
<html lang="en">

<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  <meta name="x-apple-disable-message-reformatting">
  <meta name="viewport" content="width=device-width" />
  <link rel="stylesheet" type="text/css" href="bootstrap.min.css">
  <script type="text/javascript" src="css3-mediaqueries.js"></script>
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <title>First Team Added Milestone</title>
  <style type="text/css">
    a {
      text-decoration: none;
      outline: none;
    }

    p {
      font-size: 14px;
      font-family: roboto;
    }

    b {
      font-size: 14px;
      font-family: roboto;
    }

    .text-overflow {
      width: 200px;
      text-overflow: ellipsis;
      overflow: hidden;
      display: inline-block;
      white-space: nowrap;
    }

    @media (max-width: 649px) {
      .o_col-full {
        max-width: 100% !important;
      }

      .o_col-half {
        max-width: 50% !important;
      }

      .o_hide-lg {
        display: inline-block !important;
        font-size: inherit !important;
        max-height: none !important;
        line-height: inherit !important;
        overflow: visible !important;
        width: auto !important;
        visibility: visible !important;
      }

      .o_hide-xs,
      .o_hide-xs.o_col_i {
        display: none !important;
        font-size: 0 !important;
        max-height: 0 !important;
        width: 0 !important;
        line-height: 0 !important;
        overflow: hidden !important;
        visibility: hidden !important;
        height: 0 !important;
      }

      .o_xs-center {
        text-align: center !important;
      }

      .o_xs-left {
        text-align: left !important;
      }

      .o_xs-right {
        text-align: left !important;
      }

      table.o_xs-left {
        margin-left: 0 !important;
        margin-right: auto !important;
        float: none !important;
      }

      table.o_xs-right {
        margin-left: auto !important;
        margin-right: 0 !important;
        float: none !important;
      }

      table.o_xs-center {
        margin-left: auto !important;
        margin-right: auto !important;
        float: none !important;
      }

      h1.o_heading {
        font-size: 32px !important;
        line-height: 41px !important;
      }

      h2.o_heading {
        font-size: 26px !important;
        line-height: 37px !important;
      }

      h3.o_heading {
        font-size: 20px !important;
        line-height: 30px !important;
      }

      .o_xs-py-md {
        padding-top: 24px !important;
        padding-bottom: 24px !important;
      }

      .o_xs-pt-xs {
        padding-top: 8px !important;
      }

      .o_xs-pb-xs {
        padding-bottom: 8px !important;
      }
    }

    @media screen {
      @font-face {
        font-family: Roboto;
        font-style: normal;
        font-weight: 400;
        src: local("Roboto"), local("Roboto-Regular"), url(https://fonts.gstatic.com/s/roboto/v18/KFOmCnqEu92Fr1Mu7GxKOzY.woff2) format("woff2");
        unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
      }

      @font-face {
        font-family: Roboto;
        font-style: normal;
        font-weight: 400;
        src: local("Roboto"), local("Roboto-Regular"), url(https://fonts.gstatic.com/s/roboto/v18/KFOmCnqEu92Fr1Mu4mxK.woff2) format("woff2");
        unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
      }

      @font-face {
        font-family: Roboto;
        font-style: normal;
        font-weight: 700;
        src: local("Roboto Bold"), local("Roboto-Bold"), url(https://fonts.gstatic.com/s/roboto/v18/KFOlCnqEu92Fr1MmWUlfChc4EsA.woff2) format("woff2");
        unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
      }

      @font-face {
        font-family: Roboto;
        font-style: normal;
        font-weight: 700;
        src: local("Roboto Bold"), local("Roboto-Bold"), url(https://fonts.gstatic.com/s/roboto/v18/KFOlCnqEu92Fr1MmWUlfBBc4.woff2) format("woff2");
        unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
      }

      .o_sans,
      .o_heading {
        font-family: "Roboto", sans-serif !important;
      }

      .o_heading,
      strong,
      b {
        font-weight: 700 !important;
      }

      a[x-apple-data-detectors] {
        color: inherit !important;
        text-decoration: none !important;
      }
    }

    @media (max-width: 600px) {
      .small_font {
        font-size: 10px;
      }
    }

    @media (max-width: 400px) {
      .small_font {
        font-size: 7px;
      }
    }

    @media (max-width: 425px) {
      .small_font {
        font-size: 10px;
      }
    }

    @media screen and (max-width: 375px) {
      .small_font {
        font-size: 7px;
      }
    }

    @media (min-width: 321px) and (max-width: 374px) {
      .small_font {
        font-size: 9px;
      }
    }

    @media (min-width: 301px) and (max-width: 374px) {
      .ccc {
        padding-top: 4px;
      }
    }

    @media (min-width: 321px) and (max-width: 374px) {
      .youtube {
        height: 10px !important;
        width: 10px !important;
      }
    }

    @media screen and (max-width: 375px) {
      .youtube {
        height: 8px !important;
        width: 8px !important;
      }
    }

    @media screen and (max-width: 300px) {
      .small_font {
        font-size: 7px;
        margin-top: 2px !important;
      }
    }

    @media screen and (max-width: 300px) {
      .youtube {
        width: 5px !important;
        height: 5px !important;
      }
    }

    @media screen and (max-width: 450px) {
      .bbb {
        align-items: center;
        flex-direction: column-reverse;
      }
    }

    @media screen and (max-width: 320px) {
      .youtube {
        width: 8px !important;
        height: 8px !important;
      }
    }

    @media (max-width: 320px) {
      .image {
        font-size: 7px;
      }
    }

    @media only screen and (max-width: 320px) {
      table.youtube {
        width: 7px !important;
        height: 7px !important;
      }
    }
  </style>
</head>

<body class="o_body o_bg-light"
  style="width: 100%;margin: 0px;padding: 0px;-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;background-color: #f9f8fa;">
  <table width="100%" cellspacing="0" cellpadding="0" border="0" role="presentation">
  <tbody>
    <tr>
      <td class="o_bg-light o_px-xs" align="center"
        style="background-color: #f9f8fa; padding-left: 8px; padding-right: 8px;">
        <table class="o_block" width="100%" cellspacing="0" cellpadding="0" border="0" role="presentation"
          style="max-width: 632px; margin: 0 auto;">
          <tbody>
            <tr>
              <td style="padding: 10px 0; text-align: left;">
                
              </td>
            </tr>
          </tbody>
        </table>
      </td>
    </tr>
  </tbody>
</table>
<table width="100%" cellspacing="0" cellpadding="0" border="0" role="presentation" 
       style="background-color:#f9f8fa; margin:0; padding:0;">
  <tbody>
    <tr>
      <td align="center">
        <table width="100%" cellspacing="0" cellpadding="0" border="0" role="presentation" style=" max-width:632px;">
          <tbody>
            <tr>
              <td align="center" style=" max-width:632px;">
                <div style="text-align:center;  max-width:632px;">
                  <table width="100%" cellspacing="0" cellpadding="0" border="0" role="presentation">
    <tbody>
      <tr>
        <td class="o_bg-light o_px-xs o_pt-lg o_xs-pt-xs" align="center"
          style="background-color: #f9f8fa;">
          <!--[if mso]><table width="632" cellspacing="0" cellpadding="0" border="0" role="presentation"><tbody><tr><td><![endif]-->
          <table class="o_block" width="100%" cellspacing="0" cellpadding="0" border="0" role="presentation"
            style="margin: 0 auto;">
            <tbody>
              <tr>
                <td class="o_re o_bg-white o_px o_pb-md o_br-t" align="center"
                  style="font-size: 0;vertical-align: top;background-color: #ecf9fb;border-radius: 4px 4px 0px 0px;padding-left: 16px;padding-right: 16px;padding-top: 7px;padding-bottom: 7px;">
                  <!--[if mso]><table cellspacing="0" cellpadding="0" border="0" role="presentation"><tbody><tr><td width="200" align="left" valign="top" style="padding:0px 8px;"><![endif]-->
                  <div class="o_col o_col-2"
                    style="display: inline-block;vertical-align: top;width: 100%;max-width: 200px;">
                    <div class="o_px-xs o_sans o_text o_left o_xs-center"
                      style="font-family: Helvetica, Arial, sans-serif;margin-top: 0px;margin-bottom: 0px;font-size: 16px;line-height: 24px;text-align: center;padding-left: 8px;padding-right: 8px;">
                      <p style="margin-top: 0px;margin-bottom: 0px;"><a class="o_text-primary"
                          style="text-decoration: none;outline: none;color: #126de5;"><img
                            src="https://timechampimages.blob.core.windows.net/icons/timechamp_logo.png" width="150" height="36"
                            style="max-width: 150px;-ms-interpolation-mode: bicubic;vertical-align: middle;border: 0;line-height: 100%;height: auto;outline: none;text-decoration: none;"></a>
                      </p>
                    </div>
                  </div>
                </td>
              </tr>
            </tbody>
          </table>
        </td>
      </tr>
    </tbody>
  </table>
                </div>
              </td>
            </tr>
          </tbody>
        </table>
      </td>
    </tr>
  </tbody>
</table>
  <table width="100%" cellspacing="0" cellpadding="0" border="0" role="presentation">
    <tbody>
      <tr>
        <td class="o_bg-light o_px-xs" align="center" style="background:#f9f8fa">
          <table class="o_block" width="100%" cellspacing="0" cellpadding="0" border="0" role="presentation"
            style="max-width: 632px;margin: 0 auto;">
            <tbody>
              <tr>
                <table class="o_block" width="100%" cellspacing="0" cellpadding="0" border="0" role="presentation"
                  style="max-width: 632px;">
                  <tbody>
                    <tr style="margin-bottom: 0px;display: flex;background-color:white" class="bbb">
                      <td width="340" class="es-m-p20b esd-container-frame" align="left">
                        <table cellpadding="0" cellspacing="0" width="100%">
                          <tbody>
                            <tr>
                              <td align="left" class="esd-block-text es-p10t"
                                style="background-color:white;padding-left: 10px;"> <br>
                                <p
                                  style="color: #363636;line-height:23px;  margin-left: 29px; font-family: Arial, Helvetica, sans-serif; font-weight:SemiBold; font-size:15px;margin-top: 20px;">
                                  <b> Dear Gopalakrishnan Kalaimani,</b> </p>
                                <p
                                  style="color: #363636; margin-left: 29px; font-size: 15px;line-height:23px;margin-bottom: 0px;">
                                  For the day <b> Jul 30, 2026 </b>, Review the attached Excel sheet to identify
                                  employees who did not meet the minimum Expected hours for the day. </p>
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </td>
                      <td width="250" align="left" class="esd-container-frame">
                        <table cellpadding="0" cellspacing="0" width="100%">
                          <tbody>
                            <tr>
                              <td align="center" class="esd-block-image es-p30t es-m-p0t" style="font-size: 0px;"><img
                                  class="sideimage" style="margin-top:10%;padding-left: 10px;"
                                  src="https://img.freepik.com/free-vector/lateness-concept-illustration_114360-5950.jpg?w=740&t=st=1690988515~exp=1690989115~hmac=d20dec6ad868daff38a88dc676bfa7e5dffb495ff2048675453e493cd4c34a82"
                                  alt width="175" height="150"></td>
                            </tr>
                          </tbody>
                        </table>
                      </td>
                    </tr>
                  </tbody>
                </table>
                <table class="o_block" width="100%" cellspacing="0" cellpadding="0" border="0" role="presentation"
                  style="max-width: 632px;margin-top:0px">
                  <tbody>
                    <tr style="margin-bottom: 0px;background-color:white">
                      <td align="left"
                        style="background-color:white;align-items: center;                                           flex-direction: row;padding-left: 10px;">
                        <br>
                        <p
                          style="color: #363636; margin-left: 29px;margin-right: 95px; font-size: 15px;line-height: 25px;margin-top: -8px;">
                          This may have been due to unforeseen circumstances or any other reasons beyond their control.
                        </p><br>
                        <p
                          style="color: #363636; margin-left: 29px; margin-right: 92px; font-size: 14px;line-height: 25px;margin-top: -3px;">
                          As the manager overseeing the team, we kindly request you to have a discussion with each
                          employee to understand their respective situations better and offer any necessary support or
                          guidance </p>
                        </p><br>
                        <p
                          style="color: #363636; margin-left: 29px; margin-right: 90px; font-size: 14px;line-height: 25px;margin-top: -3px;">
                          Please ensure that appropriate steps are taken to address this issue and help each employee
                          maintain their productivity and adherence to working hours moving forward. </p> <br>
                        <p
                          style="color: #363636; margin-left: 29px; margin-right: 93px; font-size: 14px;line-height: 25px;margin-top: -3px;">
                          If you have any questions or require further information, please do not hesitate to reach out
                          to <a href="https://support.timechamp.io/" target="_blank"
                            style="color: #1E9999;font-size:15px;text-decoration: none;">support@timechamp.io.</a> </p>
                        <br>
                        <p
                          style="color: #363636; margin-left: 29px;  font-size: 14px;line-height: 25px;margin-top: -3px;">
                          Thank you for your attention to this matter. <br><br> <b>Best Regards,</b><br><img
                            src="https://i.stack.imgur.com/SRhpR.png" alt="signature"
                            style="margin-left: -1px;width:100px"> </p> <br>
                      </td>
                    </tr>
                  </tbody>
                </table>
              </tr>
            </tbody>
          </table>
        </td>
      </tr>
    </tbody>
  </table>
  </table>
 <table width="100%" cellspacing="0" cellpadding="0" border="0" role="presentation" 
       style="background-color:#f9f8fa; margin:0; padding:0;">
  <tbody>
    <tr>
      <td align="center">
        <table width="100%" cellspacing="0" cellpadding="0" border="0" role="presentation" style="width:632px; max-width:632px;">
          <tbody>
            <tr>
              <td align="center" style="max-width:632px;">
                <div style="text-align:center; max-width:632px;">
                  <table width="100%" cellspacing="0" cellpadding="0" border="0" role="presentation">
    <tbody>
      <tr>
        <td class="o_bg-light o_px-xs o_pb-lg o_xs-pb-xs" align="center"
          style="background-color: #f9f8fa;padding-bottom:32px;white-space: nowrap;">
          <table class="o_block" width="100%" cellspacing="0" cellpadding="0" border="0" role="presentation"
            style="margin:0 auto;">
            <tbody>
              <tr style="background-color: #ecf9fb;">
                <td class="o_re o_px o_pb-lg" style="font-size:0;padding-left:10px;">
                  <div class="small_font ccc"
                    style="display:inline-block;vertical-align:top;width:100%;max-width:200px">
                    <div class="o_px-xs o_sans o_text-xs o_text-dark_light o_left o_xs-center"
                      style="font-family:Helvetica,Arial,sans-serif;margin-bottom:0;font-size:14px;text-align:left;padding-left:8px;padding-right:8px;white-space: nowrap;">
                      <p style="margin-top:0;margin-bottom:0" class="small_font">For support <a class="small_font"
                          class="o_text-dark_light o_underline"
                          href="https://timechamp.freshdesk.com/support/solutions/articles/101000451716" target="_blank"
                          style="outline:0;color:#1e9999;text-decoration: none;">Contact us</a> </p>
                    </div>
                  </div>
                </td>
                <td style="height: 35px;white-space: nowrap;">
                  <div class="small_font ccc"
                    style="display:inline-block;vertical-align:top;width:100%;max-width:135px">
                    <div class="o_px-xs o_sans o_text-xs o_text-dark_light o_left o_xs-center"
                      style="font-family:Helvetica,Arial,sans-serif;margin-bottom:0;font-size:14px;text-align:Center;padding-left:8px;padding-right:8px;white-space: nowrap;">
                      <span><a class="small_font" href="https://timechamp.io/documents/TimeChampTermsAndConditions.pdf"
                          target="_blank" style="color: #1e9999;text-decoration: none;padding-left: 8px;">Terms &
                          Conditions</a> </span> </div>
                  </div>
                <td>
                  <div class="small_font"
                    style="display:inline-block;vertical-align:top;width:100%;max-width:200px;white-space: nowrap;">
                    <div class="o_px-xs o_sans o_text-xs o_text-dark_light o_right"
                      style="font-family:Helvetica,Arial,sans-serif;margin-top:0;margin-bottom:0;font-size:15px;line-height:21px;text-align:right;padding-left:8px;padding-right:8px;white-space: nowrap;">
                      <p style="margin-top:0;margin-bottom:0"> <a class="o_text-dark_light"
                          href="https://www.youtube.com/@timechamp_io" target="_blank"
                          style="text-decoration:none;outline:0;"> <img class="youtube"
                            src="https://timechampimages.blob.core.windows.net/icons/youtube_logo.png" width="19" height="19" alt="fb"
                            style="max-width:36px;-ms-interpolation-mode:bicubic;vertical-align:middle;border:0;line-height:100%;height:auto;outline:0;text-decoration:none">
                        </a><span>&nbsp;</span> <a class="o_text-dark_light" href="https://www.facebook.com/TimeChamp1/"
                          target="_blank" style="text-decoration:none;outline:0;"> <img class="youtube"
                            src="https://timechampimages.blob.core.windows.net/icons/facebook_logo.png" width="14" height="14" alt="fb"
                            style="max-width:36px;-ms-interpolation-mode:bicubic;vertical-align:middle;border:0;line-height:100%;height:auto;outline:0;text-decoration:none">
                        </a> <span>&nbsp;</span> <a class="o_text-dark_light" href="https://twitter.com/timechamp_io"
                          target="_blank" style="text-decoration:none;outline:0;"> <img class="youtube"
                            src="https://timechampimages.blob.core.windows.net/icons/twitter_logo.png" width="14" height="14" alt="tw"
                            style="max-width:36px;-ms-interpolation-mode:bicubic;vertical-align:middle;border:0;line-height:100%;height:auto;outline:0;text-decoration:none">
                        </a> <span>&nbsp;</span> <a class="o_text-dark_light"
                          href="https://www.linkedin.com/showcase/timechamp/" target="_blank"
                          style="text-decoration:none;outline:0;"> <img class="youtube"
                            src="https://timechampimages.blob.core.windows.net/icons/linkdin_logo.png" width="14" height="14" alt="ig"
                            style="max-width:36px;-ms-interpolation-mode:bicubic;vertical-align:middle;border:0;line-height:100%;height:auto;outline:0;text-decoration:none">
                        </a> <span>&nbsp;</span> <a class="o_text-dark_light"
                          href="https://www.instagram.com/timechamp.io/" target="_blank"
                          style="text-decoration:none;outline:0;"> <img class="youtube"
                            src="https://timechampimages.blob.core.windows.net/icons/instagram_logo.png" width="14" height="14" alt="ig"
                            style="max-width:36px;-ms-interpolation-mode:bicubic;vertical-align:middle;border:0;line-height:100%;height:auto;outline:0;text-decoration:none">
                        </a><span>&nbsp;&nbsp;&nbsp;</span> </p>
                    </div>
                  </div>
                </td>
              </tr>
            </tbody>
          </table>
          <div class="o_hide-xs" style="font-size:64px;line-height:64px;height:64px">&nbsp;</div>
        </td>
      </tr>
    </tbody>
  </table>
                </div>
              </td>
            </tr>
          </tbody>
        </table>
      </td>
    </tr>
  </tbody>
</table>
</body>

</html>
Rendered preview (sandboxed)

Stage 5 — Dispatched

Outcome
DryRun
SentMailId
Skip reason
Error
At
2026-07-31 16:11:07.479314

Events

AtStageLevelMessagemsWorker
2026-07-31 16:11:06.803142 DataFetch Info --- Stage 2 begin --- template=InsufficientHours recipient=gopalakrishnan.kalaimani@kwglobal.com userId=6B4F2E33-B27F-4C2B-A510-7D38854A9E33 thr-50876
2026-07-31 16:11:06.812135 DataFetch Info >>> EXEC USP_EmailComp_InsufficientHoursUsers(@LineManagerId='6B4F2E33-B27F-4C2B-A510-7D38854A9E33', @Date='2026-07-30', @IsTimeOnSystem=0) thr-50876
2026-07-31 16:11:06.909142 DataFetch Info <<< USP_EmailComp_InsufficientHoursUsers returned 2 row(s) in 89ms; cols=[ManagerName,UserName,EmployeeId,SpentTime,MinimumHours,RoleName,ReportToEmployeeName,SkipSupervisorName,BranchName,FormJson,FormDataJson]; first_row={ManagerName=Gopalakrishnan Kalaimani, UserName=Dhanalakshmi P, EmployeeId=47705, SpentTime=00:00, MinimumHours=07:30, RoleName= User, ReportToEmployeeName=Gopalakrishnan Kalaimani, SkipSupervisorName=Antony Vincent} 89 thr-50876
2026-07-31 16:11:06.927144 DataFetch Info >>> EXEC USP_EmailComp_InsufficientHoursUsers[TimeOnSystem](@LineManagerId='6B4F2E33-B27F-4C2B-A510-7D38854A9E33', @Date='2026-07-30', @IsTimeOnSystem=1) thr-50876
2026-07-31 16:11:07.075140 DataFetch Info <<< USP_EmailComp_InsufficientHoursUsers[TimeOnSystem] returned 3 row(s) in 137ms; cols=[ManagerName,UserName,EmployeeId,SpentTime,MinimumHours,RoleName,ReportToEmployeeName,SkipSupervisorName,BranchName,FormJson,FormDataJson]; first_row={ManagerName=Gopalakrishnan Kalaimani, UserName=Dhanalakshmi P, EmployeeId=47705, SpentTime=00:00, MinimumHours=07:30, RoleName= User, ReportToEmployeeName=Gopalakrishnan Kalaimani, SkipSupervisorName=Antony Vincent} 137 thr-50876
2026-07-31 16:11:07.092139 DataFetch Info Wrote EmailComp_Job_Data (6026 bytes); shape=dict, top-level=['users', 'tos_users', 'row_counts'] 274 thr-50876
2026-07-31 16:11:07.106141 Render Info --- Stage 3 begin --- template=InsufficientHours recipient=gopalakrishnan.kalaimani@kwglobal.com thr-50876
2026-07-31 16:11:07.111141 Render Info dbo.HtmlTemplates lookup 'InsufficientHours': OK (14803 chars, batch-cache hit) thr-50876
2026-07-31 16:11:07.189143 Render Info Rendered (22854 bytes, subject='Minimum Required Working Hours Not Met Jul 30, 2026', attachments=1) 84 thr-50876
2026-07-31 16:11:07.372315 QA Info QA passed (15 check(s)) 172 thr-50876
2026-07-31 16:11:07.474318 Dispatch Info Report mode: wrote runs/db8c91cf-1eb1-43ae-9b88-8c4389409de1-rendered/EF218C6A-33FE-4C1B-A607-5B99D53CB582.html thr-50876