Job FB5639C0-B95F-46FC-BC1C-69F147EC4104

Dispatched Back to batch
Batch
6A44B2DD-955B-4601-A4BE-5AEDA09B6589
Template
InsufficientHours
Recipient
aparna.shankar@kwglobal.com (Aparna Shankar)
User id
F4138029-08C1-4210-BCC1-D700A45F85FF
Status
Dispatched
Attempts
3
Claimed by
thr-17276 at 2026-07-27 02:50:48.117382
Created
2026-07-27 02:50:42.471206
Completed
2026-07-27 02:50:48.300638

Attachments — what the end user receives in the email

#FilenameSizeStatusAction
1 F4138029-08C1-4210-BCC1-D700A45F85FF-Minimum Working Hours Report - 2026-07-26.csv
runs/6a44b2dd-955b-4601-a4be-5aeda09b6589-attachments/F4138029-08C1-4210-BCC1-D700A45F85FF-Minimum Working Hours Report - 2026-07-26.csv
- missing file missing

Stage 4 — QA gate

Pass
15 checks run · 12 pass · 0 warn · 0 fail/error · 77 ms · evaluated 2026-07-27 02:50:48.114377
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: aparna.shankar@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
0 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)
74 active reportee(s) (3 inactive ignored)
Total In Tree
78
Active Others
74
Inactive Others
3
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=11211 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=73
Section counts declared in the data
  • Users: 73
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 (22844 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 (22844 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\6a44b2dd-955b-4601-a4be-5aeda09b6589-attachments\F4138029-08C1-4210-BCC1-D700A45F85FF-Minimum Working Hours Report - 2026-07-26.csv2759
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 1 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 73 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-27 02:50:47.801377 · 11211 bytes

Users 73
Users · 73 row(s) × 6 column(s)
ManagerNameUserNameEmployeeIdSpentTimeMinimumHoursRoleName
Aparna Shankar Agnes Ruby 47669 00:00 07:30 User
Aparna Shankar Alpanakiran Singh 44697 05:16 07:30 User
Aparna Shankar Anandhan S 41904 00:00 07:30 User
Aparna Shankar Annamalai Ganapathi 48479 00:00 07:30 User
Aparna Shankar Anu S 46235 00:00 07:30 User
Aparna Shankar Anupam Ray 44671 00:00 07:30 User
Aparna Shankar Arshiya Y 49191 00:02 07:30 User
Aparna Shankar Asha Kumari 46998 00:09 07:30 User
Aparna Shankar Bavadharani L 47847 00:16 07:30 User
Aparna Shankar Bavanikadevi M 48037 00:34 07:30 User
Aparna Shankar Bhuvana C 47917 00:00 07:30 User
Aparna Shankar Catherinshelin A 47002 00:00 07:30 User
Aparna Shankar D. Mohanambigai D 49102 00:00 07:30 User
Aparna Shankar Dheenbala P 47206 00:00 07:30 User
Aparna Shankar Dinesh C 48889 00:00 07:30 User
Aparna Shankar Divya Mandanna 42619 00:00 07:30 User
Aparna Shankar Divya Murugesan 49344 00:00 07:30 User
Aparna Shankar Ekkhim Mohamed 44885 00:00 07:30 User
Aparna Shankar Gomathi K 47611 00:00 07:30 User
Aparna Shankar Gracepaulin Jeeva 46754 00:00 07:30 User
Aparna Shankar Harshika D 49179 00:00 07:30 User
Aparna Shankar Jamalddin C 47783 00:00 07:30 User
Aparna Shankar Janaki Sockalingam 48365 00:38 07:30 User
Aparna Shankar Kaaviya P 45405 00:00 07:30 User
Aparna Shankar Karkuzhali A 49053 00:00 07:30 User
Aparna Shankar Karnika Nm 48850 00:00 07:30 User
Aparna Shankar Karthiga Jeyaprakash 45442 00:02 07:30 User
Aparna Shankar Kasthuri A 46882 00:00 07:30 User
Aparna Shankar Kavinilavu C 49238 00:00 07:30 User
Aparna Shankar Keerthana Pinagabani 47298 00:00 07:30 User
Aparna Shankar Keerthiga M 46037 00:00 07:30 User
Aparna Shankar L.Meenakshi Meenakshi 48818 00:00 07:30 User
Aparna Shankar Lakshmipriya M 47241 00:00 07:30 User
Aparna Shankar Leelakshi Mv 46488 00:00 07:30 User
Aparna Shankar M.Azarudeen M 47363 00:00 07:30 User
Aparna Shankar Manikandan C 49108 00:00 07:30 User
Aparna Shankar Meenakshi Nathan 42587 00:00 07:30 User
Aparna Shankar Mohanapriya E 48397 00:00 07:30 User
Aparna Shankar Muthukumar S 49305 00:00 07:30 User
Aparna Shankar Naveen L 49290 00:00 07:30 User
Aparna Shankar P.Preethi P 49014 00:00 07:30 User
Aparna Shankar Panjabakesan Thanavel 43121 00:00 07:30 User
Aparna Shankar Pavithra C 47923 00:00 07:30 User
Aparna Shankar Poulomi Ghoshal 46347 00:00 07:30 User
Aparna Shankar Praveenkumar P 45969 00:00 07:30 User
Aparna Shankar Premalatha Wilson 46372 00:00 07:30 User
Aparna Shankar Princy P 46833 00:38 07:30 User
Aparna Shankar Ragavendira V 49235 00:00 07:30 User
Aparna Shankar Raghu Nathan 45048 03:58 07:30 User
Aparna Shankar Rajalakshmi T 47098 00:00 07:30 User
Aparna Shankar Ramya Kv 42071 00:00 07:30 User
Aparna Shankar Ramya S 47553 00:00 07:30 User
Aparna Shankar Rani S 46214 00:00 07:30 User
Aparna Shankar Ravi G 49295 00:00 07:30 User
Aparna Shankar Rohini R 48151 00:00 07:30 User
Aparna Shankar Ruby S 46544 00:00 07:30 User
Aparna Shankar Rupa M 46038 00:06 07:30 User
Aparna Shankar Rupriya S 47432 00:00 07:30 User
Aparna Shankar Shabithabanu J 45937 00:00 07:30 User
Aparna Shankar Shahana Baskar 49209 00:00 07:30 User
Aparna Shankar Shamila S 47038 00:37 07:30 User
Aparna Shankar Shanmathi Velmurugan 47898 00:00 07:30 User
Aparna Shankar Shanthi G 46264 00:00 07:30 User
Aparna Shankar Shriram V 49122 00:00 07:30 User
Aparna Shankar Sivaraj P 48794 00:00 07:30 User
Aparna Shankar Subashree Gautham 47763 00:00 07:30 User
Aparna Shankar Suhirtha R 48970 00:04 07:30 User
Aparna Shankar Sujeetha S 47870 00:06 07:30 User
Aparna Shankar Susan Biju 44643 00:00 07:30 User
Aparna Shankar T.Durga T 48952 00:00 07:30 User
Aparna Shankar Tamilselvan Sekar 46650 00:00 07:30 User
Aparna Shankar Vinoth R 46839 00:10 07:30 User
Aparna Shankar Vittal Babu 48288 00:00 07:30 User
Meta · non-tabular fields
{
  "row_counts": {
    "users": 73
  }
}
Raw JSON
{"users": [{"ManagerName": "Aparna Shankar", "UserName": "Agnes Ruby", "EmployeeId": "47669", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Alpanakiran Singh", "EmployeeId": "44697", "SpentTime": "05:16", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Anandhan S", "EmployeeId": "41904", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Annamalai Ganapathi", "EmployeeId": "48479", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Anu S", "EmployeeId": "46235", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Anupam Ray", "EmployeeId": "44671", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Arshiya Y", "EmployeeId": "49191", "SpentTime": "00:02", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Asha Kumari", "EmployeeId": "46998", "SpentTime": "00:09", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Bavadharani L", "EmployeeId": "47847", "SpentTime": "00:16", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Bavanikadevi M", "EmployeeId": "48037", "SpentTime": "00:34", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Bhuvana C", "EmployeeId": "47917", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Catherinshelin A", "EmployeeId": "47002", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "D. Mohanambigai D", "EmployeeId": "49102", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Dheenbala P", "EmployeeId": "47206", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Dinesh C", "EmployeeId": "48889", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Divya Mandanna", "EmployeeId": "42619", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Divya Murugesan", "EmployeeId": "49344", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Ekkhim Mohamed", "EmployeeId": "44885", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Gomathi K", "EmployeeId": "47611", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Gracepaulin Jeeva", "EmployeeId": "46754", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Harshika D", "EmployeeId": "49179", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Jamalddin C", "EmployeeId": "47783", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Janaki Sockalingam", "EmployeeId": "48365", "SpentTime": "00:38", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Kaaviya P", "EmployeeId": "45405", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Karkuzhali A", "EmployeeId": "49053", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Karnika Nm", "EmployeeId": "48850", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Karthiga Jeyaprakash", "EmployeeId": "45442", "SpentTime": "00:02", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Kasthuri A", "EmployeeId": "46882", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Kavinilavu C", "EmployeeId": "49238", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Keerthana Pinagabani", "EmployeeId": "47298", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Keerthiga M", "EmployeeId": "46037", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "L.Meenakshi Meenakshi", "EmployeeId": "48818", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Lakshmipriya M", "EmployeeId": "47241", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Leelakshi Mv", "EmployeeId": "46488", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "M.Azarudeen M", "EmployeeId": "47363", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Manikandan C", "EmployeeId": "49108", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Meenakshi Nathan", "EmployeeId": "42587", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Mohanapriya E", "EmployeeId": "48397", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Muthukumar S", "EmployeeId": "49305", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Naveen L", "EmployeeId": "49290", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "P.Preethi P", "EmployeeId": "49014", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Panjabakesan Thanavel", "EmployeeId": "43121", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Pavithra C", "EmployeeId": "47923", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Poulomi Ghoshal", "EmployeeId": "46347", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Praveenkumar P", "EmployeeId": "45969", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Premalatha Wilson", "EmployeeId": "46372", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Princy P", "EmployeeId": "46833", "SpentTime": "00:38", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Ragavendira V", "EmployeeId": "49235", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Raghu Nathan", "EmployeeId": "45048", "SpentTime": "03:58", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Rajalakshmi T", "EmployeeId": "47098", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Ramya Kv", "EmployeeId": "42071", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Ramya S", "EmployeeId": "47553", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Rani S", "EmployeeId": "46214", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Ravi G", "EmployeeId": "49295", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Rohini R", "EmployeeId": "48151", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Ruby S", "EmployeeId": "46544", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Rupa M", "EmployeeId": "46038", "SpentTime": "00:06", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Rupriya S", "EmployeeId": "47432", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Shabithabanu J", "EmployeeId": "45937", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Shahana Baskar", "EmployeeId": "49209", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Shamila S", "EmployeeId": "47038", "SpentTime": "00:37", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Shanmathi Velmurugan", "EmployeeId": "47898", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Shanthi G", "EmployeeId": "46264", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Shriram V", "EmployeeId": "49122", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Sivaraj P", "EmployeeId": "48794", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Subashree Gautham", "EmployeeId": "47763", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Suhirtha R", "EmployeeId": "48970", "SpentTime": "00:04", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Sujeetha S", "EmployeeId": "47870", "SpentTime": "00:06", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Susan Biju", "EmployeeId": "44643", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "T.Durga T", "EmployeeId": "48952", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Tamilselvan Sekar", "EmployeeId": "46650", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Vinoth R", "EmployeeId": "46839", "SpentTime": "00:10", "MinimumHours": "07:30", "RoleName": "User"}, {"ManagerName": "Aparna Shankar", "UserName": "Vittal Babu", "EmployeeId": "48288", "SpentTime": "00:00", "MinimumHours": "07:30", "RoleName": "User"}], "row_counts": {"users": 73}}

Stage 3 — Rendered

Rendered 2026-07-27 02:50:47.877377 · 22844 bytes

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

Attachments
[{"name": "Minimum Working Hours Report - 2026-07-26.csv", "path": "runs/6a44b2dd-955b-4601-a4be-5aeda09b6589-attachments/F4138029-08C1-4210-BCC1-D700A45F85FF-Minimum Working Hours Report - 2026-07-26.csv", "sizeBytes": 2759, "contentType": "text/csv", "kind": "csv"}]
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 Aparna Shankar,</b> </p>
                                <p
                                  style="color: #363636; margin-left: 29px; font-size: 15px;line-height:23px;margin-bottom: 0px;">
                                  For the day <b> Jul 26, 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
Inserted
SentMailId
981B29A1-73D9-4E9D-B749-21682AD31F0B
Skip reason
Error
At
2026-07-27 02:50:48.298639

Events

AtStageLevelMessagemsWorker
2026-07-27 02:50:46.745427 DataFetch Info --- Stage 2 begin --- template=InsufficientHours recipient=aparna.shankar@kwglobal.com userId=F4138029-08C1-4210-BCC1-D700A45F85FF thr-17276
2026-07-27 02:50:46.756429 DataFetch Info >>> EXEC USP_EmailComp_InsufficientHoursUsers(@LineManagerId='F4138029-08C1-4210-BCC1-D700A45F85FF', @Date='2026-07-26') thr-17276
2026-07-27 02:50:47.790380 DataFetch Info <<< USP_EmailComp_InsufficientHoursUsers returned 73 row(s) in 1028ms; cols=[ManagerName,UserName,EmployeeId,SpentTime,MinimumHours,RoleName]; first_row={ManagerName=Aparna Shankar, UserName=Agnes Ruby, EmployeeId=47669, SpentTime=00:00, MinimumHours=07:30, RoleName=User} 1028 thr-17276
2026-07-27 02:50:47.808375 DataFetch Info Wrote EmailComp_Job_Data (11211 bytes); shape=dict, top-level=['users', 'row_counts'] 1040 thr-17276
2026-07-27 02:50:47.837375 Render Info --- Stage 3 begin --- template=InsufficientHours recipient=aparna.shankar@kwglobal.com thr-17276
2026-07-27 02:50:47.848377 Render Info dbo.HtmlTemplates lookup 'InsufficientHours': OK (14803 chars, batch-cache hit) thr-17276
2026-07-27 02:50:47.895377 Render Info Rendered (22844 bytes, subject='Minimum Required Working Hours Not Met Jul 26, 2026', attachments=1) 59 thr-17276
2026-07-27 02:50:48.115381 QA Info QA passed (15 check(s)) 77 thr-17276
2026-07-27 02:50:48.135384 Dispatch Info >>> EXEC USP_EmailComp_InsertMail(@From='anuradha.bhardwaj@kwglobal.com', @To='aparna.shankar@kwglobal.com', @Subject='Minimum Required Working Hours Not Met Jul 26, 2026...', @AttachmentCount=1, @SiteAddress='kwglobal', @TrackingId='6e206910-04d5-47b2-ae92-27772cf772c8') thr-17276
2026-07-27 02:50:48.187640 Dispatch Info <<< USP_EmailComp_InsertMail returned MailId=981b29a1-73d9-4e9d-b749-21682ad31f0b in 33ms (inserted) 33 thr-17276
2026-07-27 02:50:48.275640 Dispatch Info >>> EXEC USP_EmailComp_InsertMailAttchment(@MailId=981b29a1-73d9-4e9d-b749-21682ad31f0b, @AttacchmentPath='https://timechampv2storage.blob.core.windows.net/6e919cfe-74dd-4ebc-8665-3c0d44866649/MailAttachments/255cf534399f4826a2bdc8a06941a367_F4138029-08C1-4210-BCC1-D700A45F85FF-Minimum%20Working%20Hours%20Report%20-%202026-07-26.csv') thr-17276
2026-07-27 02:50:48.288642 Dispatch Info <<< USP_EmailComp_InsertMailAttchment OK in 5ms 5 thr-17276
2026-07-27 02:50:48.294643 Dispatch Info Inserted into SentMail. MailId=981b29a1-73d9-4e9d-b749-21682ad31f0b thr-17276