feat: clout system with tier-based queue pacing#106
Merged
GraysonCAdams merged 20 commits intomainfrom Mar 11, 2026
Merged
Conversation
Add queue management endpoints, clip_queue table, share pacing group columns, queued clip status, and new files to the architecture tree.
Computes rolling engagement score from last 10 matured clips. Tiers (Fresh/Rising/Viral/Iconic) adjust cooldown multiplier, burst size, and queue depth limits per user.
Shows tier transition when rank changes, with a "How to rank up" button that fetches tips and lists clips with zero engagement. Deferred display avoids conflicts with sheets/dialogs.
Displays tier icon, name, effective cooldown/burst, and engagement dot visualization at the top of the queue sheet.
Service worker's postMessage is silently dropped when the PWA client is frozen by the OS. Stash the notification URL in Cache API so the client can pick it up via visibilitychange when the app resumes. Also defer the feed's deep-link overlay open to avoid pushState before router init.
Add cloutEnabled toggle to groups table and cloutTier/cloutChangeShownAt tracking columns to users table for server-side tier change detection.
- Conditionally skip clout scoring when cloutEnabled is off in share-limit - Add tier change detection with 3-day cooldown in clout API - Add POST /api/clout endpoint to acknowledge tier change modals - Add dev-only ?tier= query param for testing - Support cloutEnabled in share-pacing PATCH endpoint
Extract tips/breakdown view into CloutTipsView component to stay under max-lines limit. Add tier cycling animation, drag-to-dismiss gesture, and close button to CloutChangeModal.
Add reputation adjustments toggle in queue pacing settings, allowing the host to enable/disable clout-based pacing. Pass cloutEnabled prop from settings page.
Display clout tier icon next to username on profile page. Tapping the badge opens the CloutChangeModal for viewing current rank details.
Replace localStorage-based tier tracking with server-side tier change detection. Acknowledge tier changes via POST /api/clout to sync across devices and enforce 3-day cooldown.
Move clout banner template and styles into a dedicated component to keep QueueSheet under max-lines limit.
Update the vulnerable tar package inside npm's own node_modules in the Node.js base image. The override in package.json was ineffective since tar ships with npm itself, not as a project dependency.
Revert Dockerfile tar patch that broke the image build. Instead, suppress the upstream npm tar CVE in trivyignore until the Node.js base image is updated.
auto-merge was automatically disabled
March 11, 2026 02:25
Pull Request is not mergeable
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Test plan