Plans credits
Credit balances
Image and story credits live on the users row; generation checks before enqueue and deducts after successful render.
Implemented Verified from source User-facing
In one sentence
Users need at least one image credit to queue a render; the worker deducts the credit only after the render row is inserted.
Current behavior
auth_user_has_credits() / auth_user_consume_credit() map types to users.image_credits / users.story_credits. If deduction fails after insert, the worker deletes the render and fails the queue item.
Known limitations
- Pre-check at submit + later deduction allows race conditions under concurrent submissions.
upscale_credits/video_creditsare referenced elsewhere without confirmed schema creation.