Figures on this page verified 2026-08-11; sources listed under “Sources of truth” at the end.
Bounty tasks
Lifecycle (five states)
When a review returns a task, it goes back toassigned rather than being released. It remains yours, and you can revise per the feedback and resubmit.
Preconditions for claiming
The server validates each condition on claim and rejects on the first failure:
Submission additionally validates ownership and state:
So a task you have already submitted and that is awaiting review cannot be resubmitted; to change the content you must wait for an administrator to return it.
Fields carried on a task
When creating a task an administrator can set: the diamond reward (rewardDiamonds), the claim limit (maxClaims, unlimited if omitted), a creator level requirement (levelRequirement), a deadline, and the two display flags “urgent” and “featured.”
Achievements
Five achievements (fixed; the list does not grow dynamically)
Progress is not real-time
Achievement progress is updated by a background worker that runs once every 24 hours, so meeting a threshold does not take effect instantly:Rewards must be claimed manually
Meeting the threshold only marks the achievement complete — diamonds do not arrive automatically. You must click “Claim” in the creator dashboard, at which point the server:- Locks the claim record with a conditional update (preventing double claims)
- Credits the corresponding amount to your diamond account
- Writes an earning record with
earningType=reward, already in theunlockedstate
Current limitations
The 'First Withdrawal' achievement is currently unattainable
The 'First Withdrawal' achievement is currently unattainable
Two reasons compound. First, withdrawals are hard-blocked on the server (
WITHDRAWAL_CREATE_ENABLED = false), so no withdrawal request can be created at all. Second, even if one could, the background worker only scans first_expert, ten_sales, hundred_sales, and ten_thousand_earned — no code writes progress for first_withdrawal. This will be wired up when withdrawals open. See Withdrawal.A task completed but no diamonds arrived
A task completed but no diamonds arrived
That is the designed v1 state, not a fault. Bounty rewards are settled manually by operations (see the warning above). Achievement rewards require you to click “Claim” — nothing arrives if you do not.
Achievement progress doesn't match my actual sales count
Achievement progress doesn't match my actual sales count
The criterion is the number of rows in the
creator_earning table, and that table records more than sales revenue — achievement payouts (earningType=reward) and other non-sales entries also land there. So the count can run slightly higher than pure sales.I claimed a task and want to abandon it
I claimed a task and want to abandon it
There is currently no creator-side “abandon task” endpoint. The task stays under your name until it is submitted and approved. Contact operations if it needs to be released.
Verifying your state
- Check achievement progress — the achievements page in the creator dashboard shows current progress and target for all five. Not seeing a just-met threshold is expected; the worker runs at most once every 24 hours.
- Confirm a reward landed — after claiming, look in your diamond ledger for the entry with
type=rewardand the descriptionAchievement: <key>. If that entry is absent, the claim did not go through. - Confirm bounty ownership — check the status under “My Tasks.”
submittedmeans it is awaiting review;assignedmeans the ball is in your court (either newly claimed or returned).
Sources of truth
Verified 2026-08-11. Sources:
- The five achievement definitions and reward amounts:
services/core/src/db/service/creator-achievement.ts(ACHIEVEMENT_DEFS) - Scan interval and criteria:
services/core/src/workers/achievement-checker.ts - Claim logic and freeze exemption:
services/core/src/db/service/creator-achievement.ts(claimReward) - Bounty lifecycle and the v1 manual-settlement constraint:
services/core/src/db/service/bounty.ts - Withdrawal hard-block:
services/core/src/db/service/withdrawal.ts
Next steps
Revenue System
Revenue share rates and level thresholds
Withdrawal
Freeze periods and withdrawal rules

