-
Notifications
You must be signed in to change notification settings - Fork 87
Build a deterministic contribution score normalisation engine #387
Copy link
Copy link
Closed
Labels
GrantFox OSSGrantFox Open Source Sponsorship program tagGrantFox Open Source Sponsorship program tagMaybe RewardedIssue may qualify for a reward upon successful completion per campaign rulesIssue may qualify for a reward upon successful completion per campaign rulesThird CampaignOfficial FWC26 campaign issue — eligible for campaign scoring and rewardsOfficial FWC26 campaign issue — eligible for campaign scoring and rewardsbackendBackend services, application logic, persistence integration, and server-side functionalityBackend services, application logic, persistence integration, and server-side functionalityconsistencyPattern and convention standardization across the codebase for uniformityPattern and convention standardization across the codebase for uniformitycontributionsContribution tracking, participation signals, scoring, and member contribution logicContribution tracking, participation signals, scoring, and member contribution logicexpertExpert difficulty tasks requiring deep expertise and architectural decision-makingExpert difficulty tasks requiring deep expertise and architectural decision-making
Description
Activity
Metadata
Metadata
Assignees
Labels
GrantFox OSSGrantFox Open Source Sponsorship program tagGrantFox Open Source Sponsorship program tagMaybe RewardedIssue may qualify for a reward upon successful completion per campaign rulesIssue may qualify for a reward upon successful completion per campaign rulesThird CampaignOfficial FWC26 campaign issue — eligible for campaign scoring and rewardsOfficial FWC26 campaign issue — eligible for campaign scoring and rewardsbackendBackend services, application logic, persistence integration, and server-side functionalityBackend services, application logic, persistence integration, and server-side functionalityconsistencyPattern and convention standardization across the codebase for uniformityPattern and convention standardization across the codebase for uniformitycontributionsContribution tracking, participation signals, scoring, and member contribution logicContribution tracking, participation signals, scoring, and member contribution logicexpertExpert difficulty tasks requiring deep expertise and architectural decision-makingExpert difficulty tasks requiring deep expertise and architectural decision-making
Difficulty: Expert
Type: Feature
Recommended labels (if available in this repo): contributions, backend, consistency, expert
Background
GuildPass communities may eventually combine different contribution metrics, such as code contributions, participation or completed tasks, into comparable scoring dimensions.
Raw metrics can operate on incompatible scales. A standalone normalisation engine provides a mathematical primitive for later contribution systems without implementing the entire contribution engine.
Problem
There is currently no shared Core utility for converting heterogeneous weighted metrics into a deterministic bounded score.
Floating-point calculations, undefined missing-value behaviour and inconsistent clamping rules can make scoring difficult to reproduce.
Expected Outcome
Implement a pure contribution score normalisation engine using exact or explicitly controlled arithmetic and a documented scoring model.
Suggested Implementation
Inputs may resemble:
The engine should:
Acceptance Criteria
pnpm typecheckpasses.pnpm buildpasses.pnpm testpasses.Likely Affected Files/Directories
Independence Requirement
This task must remain a pure scoring primitive and must not depend on the reward engine, contribution persistence or another campaign issue.