Rep Ping Scorecard — last 14 days
Generated 2026-09-21T11:40:01.829Z. Window: 2026-09-07T11:40:01.829Z -> 2026-09-21T11:40:01.829Z.
data/store/leads.json last synced: 2026-09-21T11:35:01.164Z.
What this can prove: a customer replied (memory/reply-ledger.jsonl, the same event that triggers the rep text), whether a genuinely human outbound (not in message-log.json) landed on that customer's file afterward, and how fast. What it cannot prove: that the rep read the TEXT itself, only that the CUSTOMER got a real human response afterward — a rep could act without ever opening the text (e.g. already working the deal by phone), or a text could bounce and go unnoticed while someone else in the store answers the customer.
UNVERIFIED means data/store/leads.json's sync for that customer is more than 6h stale as of report time — it is NOT counted as "no response," because the real answer may exist in VinSolutions and just hasn't synced down yet.
PINGS (proxy) vs LEDGER SENDS: "Pings" below = reply-ledger events in-window joined to a rep via leads.json. "Ledger sends" = actual confirmed text sends from memory/staff-text-sent.jsonl for that rep in the same window (class "reply"). They will not match exactly — reply-coalescing (repeat replies from the same customer inside 2h roll into one later text), quiet-hours deferral, and the governor's consolidation hold all mean one ping event doesn't always equal one text, and vice versa. Treat "Ledger sends" as the hard number of texts that went out, and "Pings" as the number of reply events the table below is scored against.
36 reply-ledger event(s) in-window had no matching leads.json record (skipped — can't attribute). 32 more had no valid roster rep assigned (Unassigned / Will Robbins / a corrupted "Assigned Salesperson" grid-scrape string — not a salesperson text, skipped from the per-rep table).
No phone on file: Abdelhak Zerrouk, Christopher Tait, Daniel Arce, Gary Brophy, Kendra Parrish, Malachi Betancourth, Manuel Bran, Michael Naszkiewicz, Ramon Silos, Ryan Forbus, Sujey Bello, Tariq Halawani — have customers assigned to them but no phone number in config/team-roster.json, so messageStaff() can never text them. A reply from one of their customers falls back to a "callback" ping to Will instead. Structural gap, not a reading-their-texts problem — they show up below with 0 ledger sends even where they have pings.
Per rep
| Rep | Pings (proxy) | Ledger sends | <1h | <4h | Same day | Later | Never | Unverified |
|---|---|---|---|---|---|---|---|---|
| Ajay Malani | 94 | 4 | 3 | 2 | 0 | 0 | 0 | 89 |
| Cesar Hernandez Jr | 26 | 0 | 0 | 0 | 0 | 0 | 0 | 26 |
| Edward Cavaness | 145 | 57 | 16 | 17 | 7 | 15 | 45 | 45 |
| Emely Tellez | 44 | 46 | 9 | 2 | 0 | 2 | 0 | 31 |
| Henry Smith | 107 | 69 | 16 | 22 | 2 | 12 | 0 | 55 |
| La Marcus Burnette | 133 | 70 | 17 | 8 | 0 | 16 | 0 | 92 |
| Manuel Bran | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 2 |
| Matthew Cavaness | 0 | 23 | 0 | 0 | 0 | 0 | 0 | 0 |
| Orlando Alston | 119 | 28 | 5 | 8 | 2 | 14 | 0 | 90 |
| Oscar Pulido | 13 | 20 | 0 | 0 | 7 | 5 | 0 | 1 |
| Pedro Barrera | 96 | 31 | 6 | 2 | 1 | 7 | 0 | 80 |
| Robert Faust | 30 | 0 | 11 | 8 | 0 | 5 | 6 | 0 |
| Shane Inman | 94 | 66 | 23 | 26 | 4 | 17 | 0 | 24 |
| Will Goodwin | 162 | 53 | 9 | 10 | 4 | 67 | 0 | 72 |
| STORE TOTAL | 1065 | 467 | 115 | 105 | 27 | 160 | 51 | 607 |
10 oldest unanswered pings (bucket = Never, i.e. fresh sync + no human outbound found since)
| Rep | Customer | Ping at | Age | What the ping was about |
|---|---|---|---|---|
| Robert Faust | Erik Fleming | 2026-09-07T22:45:29.875Z | 13d 12h | Email reply from prospect: Thank you for your persistence. The charity director just bought a van. I will keep you in mind for the future. T |
| Robert Faust | Erik Fleming | 2026-09-07T23:45:34.115Z | 13d 11h | (reply detected via email — text unavailable) |
| Robert Faust | Erik Fleming | 2026-09-08T00:48:31.629Z | 13d 10h | (reply detected via email — text unavailable) |
| Robert Faust | Erik Fleming | 2026-09-08T02:04:30.776Z | 13d 9h | (reply detected via email — text unavailable) |
| Robert Faust | Erik Fleming | 2026-09-08T13:12:06.285Z | 12d 22h | (reply detected via email — text unavailable) |
| Robert Faust | Erik Fleming | 2026-09-08T13:33:21.935Z | 12d 22h | (reply detected via email — text unavailable) |
| Edward Cavaness | Alejandro Hernandez Presa | 2026-09-17T19:20:06.577Z | 3d 16h | Inbound Text Message: Buenas tardes Eduardo ya agarré troca gracias |
| Edward Cavaness | Alejandro Hernandez Presa | 2026-09-17T19:51:58.797Z | 3d 15h | (reply detected via text — text unavailable) |
| Edward Cavaness | Alejandro Hernandez Presa | 2026-09-17T20:23:59.928Z | 3d 15h | (reply detected via text — text unavailable) |
| Edward Cavaness | Alejandro Hernandez Presa | 2026-09-17T20:56:04.412Z | 3d 14h | (reply detected via text — text unavailable) |