Brighter = higher XP. Each square is a day.
All available badges. Locked ones show what you can earn next.
Recent recognition across the team.
Where you sit in the producer chain. Diagnostic — coach yourself.
Customize your daily targets. Leave blank to use the team default. Changes apply to your tracker only.
All recent peer-vote submissions with reasons. Grouped by week. The week's vote winner is marked with a 🏆.
Symmetric pairs (or 3-person triads). Buddy DMs fire on badges, level-ups, streak-at-risk, and a Monday recap.
First-time setup: after creating pairs, run installBuddyRecapTrigger in Apps Script → Run. This installs the daily 8am-ET trigger that fires the Monday morning buddy recap DM.
Applies to the Monthly Submitted Production bar (current SFG month). Persists across deployments.
Re-runs the XP formula on every existing log. Use after tuning XP values in the script. Safe to run anytime — idempotent.
"The Constant" posts team celebrations to Slack (badges, commits, level-ups) with hourly rate limiting so the team isn't spammed.
First-time setup: after saving a webhook URL, open the Apps Script editor → function dropdown → installSlackQueueTrigger → Run. This installs the 1-minute background trigger that paces queued messages 45s apart.
Sends a private Slack DM to any agent who hasn't logged today by their local warning hour, if their current streak is at or above the threshold. Uses a separate Slack Bot Token (not the webhook above) so DMs stay private.
First-time setup: after saving the Bot Token, open the Apps Script editor → function dropdown → installStreakAtRiskTrigger → Run. This installs the hourly background trigger that checks each agent's local time and sends DMs only at their warning hour. Set up the Slack App at api.slack.com/apps with scopes chat:write and im:write.
Wipes every daily log, badge, and kudos vote. Resets every event's commit + production counters to 0 (event names, dates, targets are kept). Resets every agent's streak, XP, level, and quotas to defaults (agents themselves, PINs, custom targets, and roles are preserved).
This cannot be undone. Intended for one-time pre-launch cleanup or quarterly resets between events.