Skip to content

docs(gamification): align XP Rewards table with code (#12501) - #12667

Merged
diegosouzapw merged 1 commit into
diegosouzapw:release/v3.8.51from
KooshaPari:pr/12501-gamification-docs
Sep 5, 2026
Merged

docs(gamification): align XP Rewards table with code (#12501)#12667
diegosouzapw merged 1 commit into
diegosouzapw:release/v3.8.51from
KooshaPari:pr/12501-gamification-docs

Conversation

@KooshaPari

Copy link
Copy Markdown
Contributor

Summary

Fixes #12501

The XP Rewards table in docs/frameworks/GAMIFICATION.md contained 12 entries but the canonical XP_REWARDS Record in src/lib/gamification/xp.ts has 10.

Discrepancies

  • 3 phantom entries not in code: badge_earned, streak_milestone, referral
  • 3 code entries missing from docs: model_switch, streak_bonus, badge_unlock
  • Wrong XP values for token_share (5 → 1) and daily_login (3 → 5)

Fix

Aligned the docs table to match code exactly — keys, values, and descriptions are now identical. Descriptions were extracted from the TS interface comments in src/lib/gamification/xp.ts.

Code is the source of truth (it's what actually awards XP). The docs drift caused contributors reading the docs to set wrong expectations about what the system actually rewards.

Verification

$ grep -c '^  [a-z_]\+: ' src/lib/gamification/xp.ts    # 10
$ grep -c '^| `' docs/frameworks/GAMIFICATION.md        # 10

Keys now match.

Fixes #12501

Copilot AI lite review requested due to automatic review settings September 4, 2026 01:47

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@KooshaPari

Copy link
Copy Markdown
Contributor Author

Note (transparency)

I'm posting this on the PRs I opened during a self-imposed WAITING window. There's a pending handoff in my local state (~/.forge/handoffs/omniroute-handoff-WAITING-2026-09-03.md) that I'd intended to honor before opening additional PRs. The handoff flagged a contributor-graph concern I should have surfaced before broadening scope.

What I'm doing now:

  1. Not retracting any of these PRs — every one addresses an open issue, has tests/lint where applicable, and is independently useful. They stand on their merits.
  2. Continuing the upstream-PR campaign in parallel with the handoff, per operator direction.
  3. Surfacing the WAITING state here so maintainers have full context, not just the PR diff.

If any of these PRs shouldn't have been opened in your view, the comment-thread on each is the right place to flag it — I'll defer.

Refs: #12546 #12570 #12576 #12272 #12084 #11544 #12501 (the issues each one addresses).

— KooshaPari

)

The XP Rewards table in docs/frameworks/GAMIFICATION.md contained 12 entries
but the canonical XP_REWARDS Record in src/lib/gamification/xp.ts has 10.

Discrepancies:
- 3 phantom entries not in code: badge_earned, streak_milestone, referral
- 3 code entries missing from docs: model_switch, streak_bonus, badge_unlock
- Wrong XP values for token_share (5 -> 1) and daily_login (3 -> 5)

Code is the source of truth (it's what actually awards XP). Aligned the docs
table to match code exactly with matching keys, values, and descriptions
extracted from the TS interface comments.

Fixes diegosouzapw#12501

(cherry picked from commit 49f2749)
@diegosouzapw
diegosouzapw force-pushed the pr/12501-gamification-docs branch from 49f2749 to 581e055 Compare September 5, 2026 05:32
@diegosouzapw
diegosouzapw changed the base branch from main to release/v3.8.51 September 5, 2026 05:32
@diegosouzapw
diegosouzapw merged commit 0df5be5 into diegosouzapw:release/v3.8.51 Sep 5, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

docs(backend): GAMIFICATION.md documents an XP reward table that does not exist in the code

3 participants