Vibe admin

Generates trait scores for any show that doesn't have them yet. Calls Claude one batch at a time until all caught up. Re-score all refreshes every existing report too — useful when the prompt or model improves. Fill-missing also runs automatically in the background every 15 minutes — close the page anytime, the queue keeps draining. Re-score still needs the page open.