Telos autonomy proof · corrected safe dry run
Timesheet audit repaired for payroll reconciliation.
Period 2026-05-16 → 2026-05-31. The script now discovers payroll rows from
Timesheets.Employee first, then reconciles to People DB for rate and tax classification. No external mutations were performed.Read-onlyJaden recovered: 3.70hKristen verified: 10.99h
Total hours
95.03
Grand gross
$6,118.75
W-2 gross
$6,036.85
1099 gross
$81.90
Payroll Entry Summary
| Employee | Tax | Hours | Rate | Gross | Roster match |
|---|---|---|---|---|---|
| Ava Salzman ava@telosprep.com | W-2 | 9.75 | $70.00 | $682.50 | user_id |
| Danielle Kim danielle@telosprep.com | 1099 | 1.08 | $20.00 | $21.60 | user_id |
| Danny Jacobs danny@telosprep.com | W-2 | 10.57 | $90.00 | $951.30 | user_id |
| Darren Grodsky darren@telosprep.com | W-2 | 14.79 | $90.00 | $1,331.10 | user_id |
| Eric Cheng eric@telosprep.com | W-2 | 2.62 | $90.00 | $235.80 | user_id |
| Harold Ruiz harold@telosprep.com | 1099 | 6.03 | $10.00 | $60.30 | user_id |
| Jackie Li jackie@telosprep.com | W-2 | 2.00 | $20.00 | $40.00 | user_id |
| Jaden Pon jaden@telosprep.com | W-2 | 3.70 | $35.00 | $129.50 | name |
| Joanne Bang joanne@telosprep.com | W-2 | 31.11 | $70.00 | $2,177.70 | user_id |
| Kristen Chong kristen@telosprep.com | W-2 | 10.99 | $35.00 | $384.65 | user_id |
| Reena Thomas reena@telosprep.com | W-2 | 1.74 | $45.00 | $78.30 | user_id |
| Robert Chew robert@telosprep.com | W-2 | 0.65 | $40.00 | $26.00 | user_id |
Data Quality / Roster Reconciliation
ROSTER_MISSING_PERSON_OR_EMAIL— Jaden Pon: Active hourly People DB row has blank/stale Person identity; payroll rows must be reconciled by Timesheets.Employee.UNMATCHED_TIMESHEET_EMPLOYEE— Jon Kang: Timesheet employee could not be matched to an active hourly People DB roster row; hours are not assigned a trusted rate/tax class.ROSTER_MATCHED_BY_NAME— Jaden Pon: Timesheet employee was reconciled to active hourly People DB by exact normalized name rather than Person user id/email.UNMATCHED_TIMESHEET_EMPLOYEE— Jon Kang: Timesheet employee could not be matched to an active hourly People DB roster row; hours are not assigned a trusted rate/tax class.UNMATCHED_TIMESHEET_EMPLOYEE— Jon Kang: Timesheet employee could not be matched to an active hourly People DB roster row; hours are not assigned a trusted rate/tax class.UNMATCHED_TIMESHEET_EMPLOYEE— Jon Kang: Timesheet employee could not be matched to an active hourly People DB roster row; hours are not assigned a trusted rate/tax class.UNMATCHED_TIMESHEET_EMPLOYEE— George Mailat: Timesheet employee could not be matched to an active hourly People DB roster row; hours are not assigned a trusted rate/tax class.UNMATCHED_TIMESHEET_EMPLOYEE— Jon Kang: Timesheet employee could not be matched to an active hourly People DB roster row; hours are not assigned a trusted rate/tax class.UNMATCHED_TIMESHEET_EMPLOYEE— Chris Lee: Timesheet employee could not be matched to an active hourly People DB roster row; hours are not assigned a trusted rate/tax class.UNMATCHED_TIMESHEET_EMPLOYEE— George Mailat: Timesheet employee could not be matched to an active hourly People DB roster row; hours are not assigned a trusted rate/tax class.UNMATCHED_TIMESHEET_EMPLOYEE— Chris Lee: Timesheet employee could not be matched to an active hourly People DB roster row; hours are not assigned a trusted rate/tax class.UNMATCHED_TIMESHEET_EMPLOYEE— Jon Kang: Timesheet employee could not be matched to an active hourly People DB roster row; hours are not assigned a trusted rate/tax class.UNMATCHED_TIMESHEET_EMPLOYEE— Chris Lee: Timesheet employee could not be matched to an active hourly People DB roster row; hours are not assigned a trusted rate/tax class.UNMATCHED_TIMESHEET_EMPLOYEE— George Mailat: Timesheet employee could not be matched to an active hourly People DB roster row; hours are not assigned a trusted rate/tax class.UNMATCHED_TIMESHEET_EMPLOYEE— Jon Kang: Timesheet employee could not be matched to an active hourly People DB roster row; hours are not assigned a trusted rate/tax class.UNMATCHED_TIMESHEET_EMPLOYEE— Jon Kang: Timesheet employee could not be matched to an active hourly People DB roster row; hours are not assigned a trusted rate/tax class.UNMATCHED_TIMESHEET_EMPLOYEE— Chris Lee: Timesheet employee could not be matched to an active hourly People DB roster row; hours are not assigned a trusted rate/tax class.UNMATCHED_TIMESHEET_EMPLOYEE— Jon Kang: Timesheet employee could not be matched to an active hourly People DB roster row; hours are not assigned a trusted rate/tax class.- 114 additional warnings in JSON, mostly non-active/hourly Timesheets employees intentionally excluded from payroll scope.
Review Flags
| Group | Employee | Date | Title | Hours | Exposure |
|---|---|---|---|---|---|
| transcript_or_policy_review | Kristen Chong | 2026-05-31 | Connor Nguyen - Geometry final exam review | 0.92 | $32.20 |
| manual_calendar_review | Ava Salzman | 2026-05-28 | Kexin Cai - async Notion site editing, preparing materials for parents | 3.00 | $210.00 |
| manual_calendar_review | Danny Jacobs | 2026-05-17 | Ruoxi Chen - Editing | 0.75 | $67.50 |
| manual_calendar_review | Danny Jacobs | 2026-05-18 | Ruoxi - Essay Editing | 0.50 | $45.00 |
| manual_calendar_weak_evidence | Darren Grodsky | 2026-05-18 | Bowen Gong, Connor Nguyen, Leo Wong Summer planning on Notion | 1.00 | $90.00 |
| manual_calendar_review | Darren Grodsky | 2026-05-28 | Prep/Research for Leo, Sarah, & Bowen | 1.20 | $108.00 |
| manual_calendar_weak_evidence | Joanne Bang | 2026-05-18 | Prep work for Laney Suh | 0.40 | $28.00 |
| manual_calendar_weak_evidence | Joanne Bang | 2026-05-19 | Prep work for Leo Xu (EF) | 0.30 | $21.00 |
| manual_calendar_weak_evidence | Joanne Bang | 2026-05-19 | Prep work for meeting with Aireen (EF) | 0.60 | $42.00 |
| manual_calendar_review | Joanne Bang | 2026-05-20 | Async work (summer planning) | 2.30 | $161.00 |
| manual_calendar_weak_evidence | Joanne Bang | 2026-05-20 | EF presentation | 1.00 | $70.00 |
| manual_calendar_weak_evidence | Joanne Bang | 2026-05-20 | Internal meeting: Aireen & Joanne | 0.75 | $52.50 |
| manual_calendar_weak_evidence | Joanne Bang | 2026-05-20 | Prep work for Elly Kim | 0.40 | $28.00 |
| manual_calendar_weak_evidence | Joanne Bang | 2026-05-20 | Prep work for Evelyn Ha | 0.50 | $35.00 |
| manual_calendar_weak_evidence | Joanne Bang | 2026-05-20 | Prep work for meeting with Aireen | 0.50 | $35.00 |
| manual_calendar_weak_evidence | Joanne Bang | 2026-05-21 | Prep work for Claire Liu | 0.40 | $28.00 |
| manual_calendar_weak_evidence | Joanne Bang | 2026-05-26 | Prep work for Claire Liu | 0.50 | $35.00 |
| manual_calendar_weak_evidence | Joanne Bang | 2026-05-26 | Prep work for Laney Suh | 0.50 | $35.00 |
| manual_calendar_review | Joanne Bang | 2026-05-27 | Prep work for Arusha Das | 0.40 | $28.00 |
| manual_calendar_review | Joanne Bang | 2026-05-27 | Prep work for Emmie Lin | 0.50 | $35.00 |
| manual_calendar_review | Joanne Bang | 2026-05-27 | Summer planning | 1.50 | $105.00 |
| manual_calendar_weak_evidence | Joanne Bang | 2026-05-28 | Ef slides revision | 1.00 | $70.00 |
| manual_calendar_weak_evidence | Joanne Bang | 2026-05-29 | Prep work for Natalie Wong | 0.50 | $35.00 |