Hours tracked
44.5
6 days tracked
Hours per day
7.4
on days with tracked time
Mean activity
29.0%
never scored
PRs opened
0
in this period
PRs merged
0
none opened
Median time to merge
—
nothing merged
Commits
19
3 repositories
Lines changed
23,670
context only — never scored
Identity
A person is only measurable across the providers they are linked to.
Evidence confidence for this person
0.40 against a 0.60 floor — no composite score is computed and no alert can fire for this person (AC-05).
Delivery signal
An input to a conversation, not a verdict.
79
rank 6 of 12
Why this reads as “Steady”
The band is cut from this period's own distribution, not a fixed threshold. The arithmetic is below so it can be checked rather than believed.
79 of 100, ranked 6 of 12 people with a score, against a cohort median of 78. The bands are cut from this period's own distribution, not fixed thresholds: ≤ 78 is behind, ≥ 81 is leading, and this person is in the middle 40% of people with a score this period. With every component at the cohort median this person would score 82; they score 79. That difference is carried by craft (63 against a cohort median of 98, worth -12.5 points). 2 of 6 components (completed work, review) could not be measured at all, so the remaining weights were rescaled — this score rests on 70% of the intended evidence.
A band compares this person to the 12 people who have a score in this window — nothing more. It is not a rating, it does not persist, and it moves when the cohort or the window moves.
How this number was built
Every term is shown with the rows it came from and the cohort figure it was judged against. If a term looks wrong, the tables below are the argument.
| Component | Weight | Score | Cohort median | Effect | Computed from |
|---|---|---|---|---|---|
| Craft | 25% | 63 | 98 | -12.5 | 75 of 133 commits name what they changed |
| Change discipline | 18% | 100 | 100 | 0 | median commit 99 lines |
| Consistency | 12% | 57 | 55 | +0.3 | code landed on 26 separate days |
| Infrastructure | 15% | 100 | 53 | +10.1 | 4640 points from 1387 AWS changes on 26 days |
| Completed work | 22% | — | — | — | not scored — never assigned a task in any connected tracker. Scoring 0 here would read as "delivered nothing" when the truth is that no tracker describes this person’s work. |
| Review | 8% | — | — | — | not scored — no review is recorded anywhere in the organisation, so this term has no data for anyone. It is withheld rather than scored 0 — a 0 would read as "does not collaborate". |
Effect is a counterfactual, not a share: how many points this person’s score would move if that one component dropped to the cohort median for it. The effects sum to 79 − 82 = -3, where 82 is what this person would score with every one of their components at the cohort median. Negative rows are the reason the total sits where it does. A component with no data is withheld and the remaining weights are rescaled — it is never scored as zero, and it never counts against anyone.
Measured but deliberately not scored: 44.5 hours tracked, 19 commits, 23,670 lines changed, 27% activity. The first four measure motion rather than delivery and are trivially inflated. CI is excluded because it exists on a minority of repositories, so scoring it would rank people by which repository they work in. This score cannot see architecture, planning, mentoring, incident response or infrastructure work at all.
Infrastructure work
From CloudTrail — the only record of work that leaves no trace in git.
Weighted points
1014
Changes
309
Days
6
Unscored
16
sign-ins, own MFA, shells
What they actually did
- route53 ChangeResourceRecordSets×81 · 162 pts
- amplify CreateDomainAssociation×27 · 135 pts
- ec2 DeleteSecurityGroup×42 · 126 pts
- amplify CreateApp×18 · 90 pts
- amplify DeleteDomainAssociation×16 · 80 pts
- amplify StartJob×12 · 48 pts
- amplify CreateBranch×8 · 40 pts
- autoscaling SuspendProcesses×19 · 38 pts
CloudTrail records the API call, not the intent. It cannot tell a considered change from one corrected a minute later, and it retains 90 days — so an empty earlier period means “not retained”, never “nothing happened”.
Employee KPIs
Six of the twelve. Where a value is absent the reason is stated — never rendered as a zero.
Focused project ratio
conf 0.9063.5%
28.29h of 44.52h on mapped projects. A project-mapping metric, not a diligence metric.
Evidence confidence
conf 1.0040%
Below the 0.6 floor, so no composite score is computed and no alert can fire (AC-05).
| Accepted difficulty points | blocked | None of this person's 0 work units reached acceptance (merged + first CI green + ≥1 review). |
| First-pass acceptance | blocked | Nothing accepted, so there is no first-pass rate. |
| Idle classification mix | blocked | 0 of 328 intervals carry a class. |
| Tokens per accepted point | blocked | No AI usage data connected. |
Day by day
Tracked time beside code that landed. Click a day for the raw Hubstaff intervals behind its hours.
| Day | Hours | Act% | Commits | PRs opened | PRs merged |
|---|---|---|---|---|---|
| ▸ 2026-09-26 | 0.00 | — | 0 | 0 | 0 |
| ▸ 2026-09-25 | 8.11 | 25.0 | 0 | 0 | 0 |
| ▸ 2026-09-24 | 8.11 | 41.6 | 0 | 0 | 0 |
| ▾ 2026-09-23 | 8.05 | 36.3 | 0 | 0 | 0 |
| ▸ 2026-09-22 | 8.05 | 16.8 | 12 | 0 | 0 |
| ▸ 2026-09-21 | 8.03 | 21.0 | 7 | 0 | 0 |
| ▸ 2026-09-20 | 4.17 | 15.9 | 0 | 0 | 0 |
| ▸ 2026-09-19 | 0.00 | — | 0 | 0 | 0 |
Raw Hubstaff intervals · 2026-09-23
| Start | End | Act% | Project | Source | Provider row |
|---|---|---|---|---|---|
| 02:30 | 02:40 | 45.58 | CMS | hubstaff | hubstaff:10282577941 |
| 02:40 | 02:50 | 37.83 | CMS | hubstaff | hubstaff:10282604196 |
| 02:50 | 03:00 | 50.50 | CMS | hubstaff | hubstaff:10282626103 |
| 03:00 | 03:10 | 52.17 | CMS | hubstaff | hubstaff:10282650613 |
| 03:10 | 03:18 | 37.27 | CMS | hubstaff | hubstaff:10282660807 |
| 03:29 | 03:30 | 78.79 | CMS | hubstaff | hubstaff:10282697194 |
| 03:30 | 03:40 | 64.33 | CMS | hubstaff | hubstaff:10282720466 |
| 03:40 | 03:50 | 62.67 | CMS | hubstaff | hubstaff:10282787399 |
| 03:50 | 03:50 | 6.98 | CMS | hubstaff | hubstaff:10282787430 |
| 04:37 | 04:40 | 39.73 | CMS | hubstaff | hubstaff:10282867335 |
| 04:40 | 04:50 | 69.67 | CMS | hubstaff | hubstaff:10282893129 |
| 04:50 | 05:00 | 69.50 | CMS | hubstaff | hubstaff:10282920766 |
| 05:00 | 05:10 | 39.33 | CMS | hubstaff | hubstaff:10282948683 |
| 05:10 | 05:20 | 64.50 | CMS | hubstaff | hubstaff:10282977182 |
| 05:20 | 05:30 | 84.17 | CMS | hubstaff | hubstaff:10283007554 |
| 05:30 | 05:40 | 7.17 | CMS | hubstaff | hubstaff:10283037706 |
| 05:40 | 05:50 | 72.50 | CMS | hubstaff | hubstaff:10283067887 |
| 05:50 | 05:52 | 90.18 | CMS | hubstaff | hubstaff:10283067921 |
| 06:13 | 06:17 | 7.20 | CMS | hubstaff | hubstaff:10283151490 |
| 06:36 | 06:40 | 25.00 | CMS | hubstaff | hubstaff:10283244064 |
| 06:40 | 06:50 | 15.50 | CMS | hubstaff | hubstaff:10283286436 |
| 06:50 | 06:55 | 20.06 | CMS | hubstaff | hubstaff:10283289300 |
| 07:32 | 07:40 | 62.58 | CMS | hubstaff | hubstaff:10283494069 |
| 07:40 | 07:50 | 15.83 | CMS | hubstaff | hubstaff:10283514919 |
| 07:50 | 08:00 | 23.83 | CMS | hubstaff | hubstaff:10283558486 |
| 08:00 | 08:10 | 54.83 | CMS | hubstaff | hubstaff:10283596810 |
| 08:10 | 08:20 | 11.00 | CMS | hubstaff | hubstaff:10283635241 |
| 08:20 | 08:30 | 22.00 | CMS | hubstaff | hubstaff:10283675219 |
| 08:30 | 08:40 | 22.50 | CMS | hubstaff | hubstaff:10283728941 |
| 08:40 | 08:50 | 0.33 | CMS | hubstaff | hubstaff:10283763215 |
| 08:50 | 09:00 | 1.67 | CMS | hubstaff | hubstaff:10283806755 |
| 09:00 | 09:10 | 1.50 | CMS | hubstaff | hubstaff:10283837360 |
| 09:10 | 09:17 | 5.75 | CMS | hubstaff | hubstaff:10283850987 |
| 09:53 | 10:00 | 12.11 | CMS | hubstaff | hubstaff:10284059691 |
| 10:00 | 10:10 | 26.00 | CMS | hubstaff | hubstaff:10284079254 |
| 10:10 | 10:20 | 33.50 | CMS | hubstaff | hubstaff:10284127584 |
| 10:20 | 10:29 | 7.69 | CMS | hubstaff | hubstaff:10284144659 |
| 11:14 | 11:20 | 49.67 | CMS | hubstaff | hubstaff:10284373553 |
| 11:20 | 11:28 | 56.19 | CMS | hubstaff | hubstaff:10284394686 |
| 11:28 | 11:30 | 50.96 | CMS | hubstaff | hubstaff:10284411040 |
| 11:30 | 11:40 | 10.67 | CMS | hubstaff | hubstaff:10284473049 |
| 11:40 | 11:50 | 28.67 | CMS | hubstaff | hubstaff:10284508291 |
| 11:50 | 11:52 | 44.19 | CMS | hubstaff | hubstaff:10284508407 |
| 12:31 | 12:40 | 5.91 | CMS | hubstaff | hubstaff:10284782314 |
| 12:40 | 12:43 | 1.33 | CMS | hubstaff | hubstaff:10284782347 |
| 12:49 | 12:50 | 100.00 | CMS | hubstaff | hubstaff:10284838387 |
| 12:50 | 13:00 | 53.50 | CMS | hubstaff | hubstaff:10284903787 |
| 13:00 | 13:10 | 62.33 | CMS | hubstaff | hubstaff:10284973124 |
| 13:10 | 13:20 | 46.83 | CMS | hubstaff | hubstaff:10285024347 |
| 13:20 | 13:20 | 38.10 | CMS | hubstaff | hubstaff:10285024532 |
| 13:47 | 13:50 | 64.46 | CMS | hubstaff | hubstaff:10285274404 |
| 13:50 | 14:00 | 37.67 | CMS | hubstaff | hubstaff:10285352661 |
| 14:00 | 14:10 | 34.83 | CMS | hubstaff | hubstaff:10285433120 |
| 14:10 | 14:20 | 43.83 | CMS | hubstaff | hubstaff:10285513545 |
| 14:20 | 14:30 | 29.33 | CMS | hubstaff | hubstaff:10285585536 |
| 14:30 | 14:32 | 26.28 | CMS | hubstaff | hubstaff:10285585768 |
| 14:40 | 14:50 | 38.49 | CMS | hubstaff | hubstaff:10285754835 |
| 14:50 | 15:00 | 42.83 | CMS | hubstaff | hubstaff:10285837851 |
| 15:00 | 15:10 | 27.50 | CMS | hubstaff | hubstaff:10285919727 |
| 15:10 | 15:19 | 51.61 | CMS | hubstaff | hubstaff:10285966689 |
| 15:54 | 16:00 | 23.85 | CMS | hubstaff | hubstaff:10286338020 |
| 16:00 | 16:04 | 18.28 | CMS | hubstaff | hubstaff:10286347448 |
62 rows from time_intervals. This is the bottom of the chain — there is nothing below it but the Hubstaff API response.
Where the time went
Hubstaff project attribution.
| CMS | 28.3h | 209 rows |
| (no project selected) | 11.1h | 80 rows |
| Coxa Internship | 2.8h | 21 rows |
| Coxahub | 2.3h | 18 rows |
What was not counted
Commits excluded from output, with the reason stored on the row.
Nothing of this person's was excluded in this window.
Pull requests · 0
The rows behind “merged” and “reviewed before merge”. Every one links to GitHub.
No pull requests opened or merged by this person in this window.
Commits · 19 counted, 0 excluded
Default-branch history only. Work on unmerged PR branches does not appear here — see the pull requests above.
| SHA | Repo | Message | When | +/− | Counted |
|---|---|---|---|---|---|
| f95d6cb | coxa-hub | fix(web): remove stale react-hooks/exhaustive-deps disable comment | 2026-09-22 | +4 −1 | counted |
| 5da0e4d | NexusAI | Fix i18n gaps found in production E2E: wire Video Jobs UI strings to … | 2026-09-22 | +46 −35 | counted |
| 0bd983e | NexusAI | i18n (EN + PT-BR) Frontend | 2026-09-22 | +7,051 −2,325 | counted |
| 0008691 | coxa-hub | chore: added user and admin manuals | 2026-09-22 | +2,343 −14 | counted |
| b5e44c4 | coxa-hub | Merge branch 'feat/harsh-roadmap-followups' into master | 2026-09-22 | +3,740 −94 | counted |
| 43f6764 | coxa-hub | merge: catch up with origin/master (438c6f0 launch-sector-backfill) | 2026-09-22 | +425 −1 | counted |
| b88d0dc | coxa-hub | feat(admin): AdminAuditLog + four-eyes approval for admin deactivate/… | 2026-09-22 | +1,900 −36 | counted |
| 6c71220 | coxa-hub | fix(test): update e2e-flows SearchService constructor calls for Meili… | 2026-09-22 | +3 −3 | counted |
| 58d65c8 | coxa-hub | docs(infra): AWS runbooks for Prometheus/Grafana and Meilisearch | 2026-09-22 | +511 −0 | counted |
| c96e7fe | coxa-hub | fix(storage): support EC2/EB instance-role S3 auth when static keys a… | 2026-09-22 | +611 −41 | counted |
| 5fcc8a9 | coxa-hub | feat(twenty-crm): admin sync-status UI + manual resync endpoint | 2026-09-22 | +634 −2 | counted |
| 5e04578 | coxa-hub | feat(seed): flip all 24 sectors to launch + seed anchor businesses fo… | 2026-09-22 | +86 −13 | counted |
| 6603e11 | coxa-hub | Ship Phase 2 design system, offers with QR, profile logo upload, and … | 2026-09-21 | +2,483 −205 | counted |
| aacbbd2 | coxa-hub | Update http-metrics.interceptor.ts | 2026-09-21 | +12 −4 | counted |
| 40a778b | coxa-hub | Ship Phase 1 newsroom, events calendar, and Prometheus metrics, and r… | 2026-09-21 | +873 −79 | counted |
| 09faebb | coxa-hub | Fix the Amplify favicon 500 and let admins update the city hostname a… | 2026-09-21 | +8 −0 | counted |
| af9a1f6 | coxa_crm | Update checkFileSafety.test.ts | 2026-09-21 | +1 −1 | counted |
| dd25c22 | coxa_crm | npm version fixes | 2026-09-21 | +64 −15 | counted |
| 2bdcaff | coxa_crm | Update amplify.yml | 2026-09-21 | +6 −0 | counted |
This is wrong
Anything on this page can be disputed. A correction is a stored row, not an email — it stays attached to the figure it challenges.
Corrections on record · 0
Open disputes are shown to anyone reading this person's numbers.
Nothing disputed yet.