Repository navigation
Fix middle section headers stuck loading - #120
Conversation
The isPaused option in SWR blocks ALL fetching including the initial fetch. This caused section headers to be stuck in perpetual loading skeleton state when any editing session was active during mount. Changes: - Add hasLoadedRef to useBreadcrumbs, usePageTree, useConversations - Only pause revalidation AFTER initial data has loaded successfully - Update documentation with correct isPaused pattern in CLAUDE.md - Update ui-refresh-protection.md with detailed pattern explanation The fix ensures initial data always loads, while still preventing unnecessary revalidation during active editing/streaming sessions.
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
WalkthroughUpdates SWR pause logic across multiple hooks to track initial data load completion via a ref. Previously, isPaused was a static boolean that blocked even first fetches. New pattern allows initial fetch to proceed while pausing subsequent revalidations during editing. Also updates documentation with the refined guidance. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: defaults Review profile: CHILL Plan: Pro 📒 Files selected for processing (5)
🧰 Additional context used📓 Path-based instructions (4)**/*.{ts,tsx}📄 CodeRabbit inference engine (CLAUDE.md)
Files:
apps/**/*.{ts,tsx}📄 CodeRabbit inference engine (CLAUDE.md)
Files:
**/*.ts📄 CodeRabbit inference engine (AGENTS.md)
Files:
**/*.{ts,tsx,js,jsx,json}📄 CodeRabbit inference engine (AGENTS.md)
Files:
🧠 Learnings (6)📓 Common learnings📚 Learning: 2025-12-14T14:54:15.319ZApplied to files:
📚 Learning: 2025-12-22T20:04:40.892ZApplied to files:
📚 Learning: 2025-12-14T14:54:15.319ZApplied to files:
📚 Learning: 2025-12-14T14:54:15.319ZApplied to files:
📚 Learning: 2025-12-14T14:54:45.713ZApplied to files:
🧬 Code graph analysis (3)apps/web/src/hooks/usePageTree.ts (1)
apps/web/src/lib/ai/shared/hooks/useConversations.ts (1)
apps/web/src/hooks/useBreadcrumbs.ts (1)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
🔇 Additional comments (10)
Comment |
…ay args (#120-#123) Switch infrastructure test files from execSync() with template-literal string interpolation to execFileSync() with array arguments, bypassing the shell entirely. Resolves 4 CodeQL js/shell-command-injection-from-environment alerts (CWE-78) in tenant-stack, generate-tenant-env, and image-runtime tests. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…ay args (#120-#123) (#847) Switch infrastructure test files from execSync() with template-literal string interpolation to execFileSync() with array arguments, bypassing the shell entirely. Resolves 4 CodeQL js/shell-command-injection-from-environment alerts (CWE-78) in tenant-stack, generate-tenant-env, and image-runtime tests. Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The isPaused option in SWR blocks ALL fetching including the initial fetch. This caused section headers to be stuck in perpetual loading skeleton state when any editing session was active during mount.
Changes:
The fix ensures initial data always loads, while still preventing unnecessary revalidation during active editing/streaming sessions.
Summary by CodeRabbit
Bug Fixes
Documentation
✏️ Tip: You can customize this high-level summary in your review settings.