Intelligence

The explainable score

The score is arithmetic, not a model. Every number in it traces to a row you can open, and the same breakdown is shown to the employee, the lead and the team. The AI explains the score; it never computes it.

Pillars and weights

Weights are normalised over the pillars that apply. A pillar with no data or no load is dropped and its weight redistributed, so nobody is penalised for not being on call, for a week with too few pings, or for an unrated month. Weights are editable per team and per role in the dashboard, and every change is audited.

scoring.weight_progress
scoring.weight_presence
scoring.weight_reliability
scoring.weight_integrity
scoring.weight_responsibility
scoring.weight_manager
Progress40 — quality and quantity of delivered work from the standups, with completed tasks credited and stalls penalised
Presence and hours25 — days present over expected days, blended with hours credited over hours expected (full marks at 97% or above)
Reliability15 — on-time sign-ins, sign-offs, and a recorded hand-off before planned leave
Integrity10 — presence pings answered (late replies earn half credit) and time shown online during work windows
Responsibility10 — on-call and support load handled; dropped entirely when a person carries no load
Manager feedbackabout 5 — a manager’s 0 to 100 rating; dropped when unrated

Role profiles

A person’s job function selects their profile, overriding the team name. Built-in profiles: default, developer, DevOps, sales, manager, project manager, designer, HR, finance, partner and support. Examples of how they differ:

  • Role alignment (does the reported work match the role’s functions?) is computed alongside and shown as advisory; it never changes the number.
SalesProgress 45 · Presence 15 · Reliability 10 · Integrity 10 · Responsibility 20
ManagerProgress 25 · Presence 25 · Reliability 15 · Integrity 10 · Responsibility 25
DesignerProgress 45 · Presence 25 · Reliability 12 · Integrity 5 · Responsibility 13
SupportProgress 30 · Presence 20 · Reliability 20 · Integrity 10 · Responsibility 20

Overlays, bonuses and caps

  • Format strikes: 1 point each, capped at 3. Attendance strikes: 10 points each, capped at 30. Waived strikes stay visible in the report, greyed out with the waiver reason.
  • Day-off work: +2 flat plus 0.75 per hour, capped at 8 per week. Overtime on normal days: +0.5 per genuine hour beyond the window’s expected total, capped at 6.
  • Kudos: a lead’s reaction on a standup adds 1 point, capped at 4; self-kudos are ignored.
  • Hard cap: a confirmed integrity red flag caps the score at 50 no matter the output, and no bonus can bypass it. Red requires at least two independent corroborating signals; presence colour alone never triggers it.
  • Confidence: a window with fewer than three expected days or fewer than two scored pillars is marked low confidence and should not drive pay.

Bands and the KPI curve

The KPI multiplier maps efficiency to a pay-scale percentage: below 25 gives 0, 25 to 40 rises linearly from 0 to 40, and 40 to 100 rises linearly from 40 to 110. It is quarterly: the average of the quarter’s three monthly KPIs, published only on quarter-end months. Monthly reports in between show the efficiency and band and say when the KPI settles.

Below 25exit risk
25 to 39needs attention
40 to 89on track
90 and abovetop

Hours, fairly

  • Expected hours come from your working days, your weekly-hours override and your team’s holiday calendar; leave, sick days and holidays leave the denominator entirely.
  • A long day repairs a short day: hours are netted over the window and capped at 100% of expected, so padding cannot push the ratio past full.
  • A missed sign-off credits the activity estimate minus a deduction (3 hours by default), escalating only after repeated charged days in the same month. A day the system forgave never raises a later day’s tier.
  • Days beyond 12 hours are capped and handed to an admin queue; a confirmed day is credited in full.
  • A nightly sweep reconciles the chat server’s event list with the bot’s own log; on a day with a recorded ingest gap the missed-sign-off deduction is zero.

/pulse me

Any employee can post /pulse me in Matrix, Slack or Teams and receive their live scorecard privately: efficiency, band, the pillar breakdown, which pillars were not scored and why, the adjustments (strikes, day-off, overtime, kudos) and a low-confidence note when the week is thin. Admin-only signals such as the pattern label are stripped from the self-view. The command is intercepted before the standup parser so it is never mistaken for a check-in.

/pulse me