Show Content page skeleton during startup - #4604
Draft
3mdistal wants to merge 2 commits into
Draft
Conversation
This comment has been minimized.
This comment has been minimized.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Content currently shows a full-screen animated label while the protected app hydrates and resolves its session. This replaces that label with an impersonal sidebar and document skeleton, so users see the shape of the page during startup.
The change uses the existing app-owned
clientOnlyFallbackextension point and reusesDocumentEditorSkeleton. Desktop placeholders match the 240px default sidebar; below 1100px the sidebar placeholder is hidden. The fallback contains no private document content or interactive controls. Public page rendering and the shared session gate remain unchanged.Verification
Local Vite/PGlite observations, milliseconds, median (min–max; IQR), n=7 per cell:
Same source base 3bde94f, owner fixtures, 1280px viewport, ordinary HTTP cache and passive observer. New tabs/reloads use a new query client; warm clicks retain it. Shared machine load and dev optimization were not controlled, so lower medians do not establish a causal speedup or production performance improvement. Sidebar medians remain frame-scale on warm navigation. Body visibility and owner editability were measured separately; title arrival was not readiness. Instrumentation is absent from the committed code.
Open draft gates
Frozen combined build
QA-only overlays: PR1
1052cd39, PR284f27a3a, PR3f88ee7eb, PR4c1c1cbe9on PR654613cee6. Root preserves focus restoration, extracted search and loading fallback; the sidebar preserves accessible chrome with PR4 personal sections rendered once. Database sidebar commands merged automatically. Combined TypeScript and 43 focused tests pass. Two reloads and four warm transitions reached correct editable fixtures without the full-screen label; search results/focus return, Enter navigation, pin/rename-dialog/cancel/unpin, keyboard resize and compact Recent navigation pass. This is bounded integration evidence, not another benchmark; Recent adds matching links and changes the passive sidebar readiness predicate. D1 lifecycle was not overlaid. All sibling source changes and temporary instrumentation were removed, standalone generated output rebuilt, and the branch remains clean at the same head. Broad lifecycle/revocation and the previously reported repository checks are not claimed green.