| review_agents |
|
|---|
TypeScript monorepo: Vanilla TS panels (no React), sebuf proto RPCs, Redis-cached seed data, Vercel edge functions, Railway cron seeds.
Key patterns:
- Panels extend
Panelbase class withfetchData()returning boolean,setContent(html),showError(msg, retry) - Private
_hasDataguard prevents overwriting good data with error on retry - Seed scripts use
runSeed(domain, name, key, fetchFn, options)with TTL ≥ 3× seed interval - RPC handlers read from Redis via
getCachedJson(key, true), return typed proto response cachedFetchJsoncoalesces concurrent cache misses — use it for on-demand fetches- All panels registered in
src/config/panels.ts(FINANCE_PANELS + FULL_PANELS) andsrc/app/panel-layout.ts