Skip to content

fix(mobile): stabilize timeline initial load and scroll behavior#4856

Merged
DIYgod merged 1 commit intodevfrom
DIYgod/mobile-real-device
Feb 18, 2026
Merged

fix(mobile): stabilize timeline initial load and scroll behavior#4856
DIYgod merged 1 commit intodevfrom
DIYgod/mobile-real-device

Conversation

@DIYgod
Copy link
Member

@DIYgod DIYgod commented Feb 18, 2026

Description

This PR refactors mobile timeline initial loading to avoid rendering cached entries before remote data in timeline views. It changes useEntries to use remote-first behavior for timeline view queries with local fallback only on remote errors. It also scopes query state by viewId + active across list components and adjusts top reset timing so the list only resets once after first ready state.

PR Type

  • Feature
  • Bugfix
  • Hotfix
  • Other (please describe):

Screenshots (if UI change)

N/A

Demo Video (if new feature)

N/A

Linked Issues

N/A

Additional context

Please focus review on initial timeline load consistency and scroll-position stability during refresh.

Changelog

  • I have updated the changelog/next.md with my changes.

@safedep
Copy link

safedep bot commented Feb 18, 2026

SafeDep Report Summary

Green Malicious Packages Badge Green Vulnerable Packages Badge Green Risky License Badge

No dependency changes detected. Nothing to scan.

This report is generated by SafeDep Github App

@DIYgod DIYgod merged commit d9a426b into dev Feb 18, 2026
9 of 10 checks passed
@DIYgod DIYgod deleted the DIYgod/mobile-real-device branch February 18, 2026 12:09
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: c5c9fe1178

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

return remoteQuery
}

if (remoteQuery.error) {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Surface first-load remote errors before returning fallback state

For timeline view queries, this branch assumes remoteQuery.error will be set when the remote fetch fails, but useRemoteEntries above returns fallbackReturn whenever !query.data, which is also true for an initial failed request with no cached pages. In that common offline/timeout scenario, remoteQuery.error stays null, this local fallback path never runs, and the list remains in the empty loading state instead of showing local entries, contradicting the intended "local fallback on remote errors" behavior.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant