[BUG] [iOS App] Long conversations with code blocks take minutes to load — app blocks interaction until fully rendered
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Long Claude Code conversations containing many large code blocks take several minutes to load on the iOS native app. The app appears to download the full conversation and render every message — including syntax-highlighted code blocks — before allowing any user interaction. On a session with 50+ turns of code-heavy responses this blocks the app for 3–5 minutes on modern iPhone hardware.
Exiting and re-entering the app restarts the loading process from scratch, making it impractical to send a quick task from a mobile context.
What Should Happen?
The input field should be interactive within a few seconds. Only the most recent messages need to be rendered immediately — older history can load progressively or on scroll (virtual scrolling).
Error Messages/Logs
Steps to Reproduce
Steps to reproduce:
Create a long Claude Code session with many multi-hundred-line code responses
Open the session in the Claude iOS native app
Observe: full render must complete before the input field is usable
Background the app, re-open it
Observe: loading process restarts from the beginning
Claude Model
Sonnet (default)
Is this a regression?
No, this never worked
Last Working Version
_No response_
Claude Code Version
2.1.114 (Claude Code)
Platform
Anthropic API
Operating System
Other
Terminal/Shell
Other
Additional Information
Suggested fix:
Implement virtual/windowed rendering so only visible messages are in the DOM. Most modern chat apps (iMessage, WhatsApp, Slack) do this. Render the last N messages on load and lazy-load upward as the user scrolls. This would make initial load time proportional to viewport size, not conversation length.
Impact:
Makes the iOS app unusable for quick task input on long coding sessions — the primary mobile use case.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗