Local operations
Trend Finder collection and scoring run locally through the scoped scheduler job. Source and AI runtime readiness are independent: healthy public evidence can still use deterministic analysis, and a ready model runtime does not make an unreviewed source valid.
Run and inspect
Section titled “Run and inspect”bun run scheduler:trend-finder:statusbun run scheduler:trend-finder:runbun run scheduler:trend-finder:statusThe first status can correctly report that no run exists yet. After a run, read the data, analysis, and source labels in the UI instead of assuming that every configured path succeeded.
Browser run control
Section titled “Browser run control”The Trends run button is a local development control. It saves a dirty Creator Lens first, starts the scoped job, shows bounded progress, and refreshes the current browser data after completion.
The button remains usable when a provider is disabled or a source is missing. Those conditions belong in explicit readiness, degraded, blocked, or fallback states. Starting a second run while one is active returns an overlap state instead of launching another writer.
Account-backed analysis
Section titled “Account-backed analysis”For the implemented local text provider, authenticate and test the intended model first:
bun run auth:openai -- statusbun run codex:smoke -- --model gpt-5.6-sol --jsonThen run Trend Finder and inspect its own status. Runtime readiness alone is not end-to-end collector proof. See OpenAI subscription runtime.
Brief export
Section titled “Brief export”bun run trend-finder:export-briefThe export uses the validated current payload and writes a local static Brief. It preserves the current provenance and excludes local diagnostics and source internals.
Historical backtests
Section titled “Historical backtests”bun run trend-finder:backtest -- --sources producthunt-ai-launches --window-start 2026-01-01 --window-end 2026-01-07 --windows 4 --dry-runBacktests are script-only. Full archives remain private local artifacts. Only an explicitly published bounded aggregate can reach browser data. Engine Replay remains a sanitized latest-run surface; it is not a historical backtest UI.
Before sharing a run or branch, use bun run runtime:check-private and make
sure fixture, fallback, degraded, and live labels match what you claim.