The brief
Objective
A manager links a challenge to a public Slack channel and defines contribution signals. A daily job fetches new messages via conversations.history and matches authors to leaderboard users by email. A GPT-4o agent then detects the signals, and each detection is credited as a ledger row.
Expected result
• Signal rewards are fixed and out of pool: they never drain the challenge budget
• Every reward is auditable (signal, message, excerpt, one-sentence AI justification)
• The per-challenge cursor only advances on success, and deduplication guarantees a (user, signal, message) triple is paid once
• Detection stays conservative: no match when in doubt
• Contributor profiles show signals as compact chips