Repository navigation
perf(registry): load related skills in the browser, not in SSR - #306
Merged
Merged
Conversation
No-JS crawlers render unique Skill pages in bursts, and each SSR paid about five D1 reads for /api/skill-related. The 2026-09-29 overload was one such burst. Related skills and commit history now load client-side when either section nears the viewport, with skeletons and a scoped retry.
Collaborator
Author
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.




❓ Type of change
📚 Description
The 2026-09-29 D1 overload was a no-JS crawler rendering 392 unique Skill pages in two minutes. Every SSR awaited
/api/skill-related, about five D1 reads each, and per-URL caching cannot help when every URL is new. Skill pages now fetch it in the browser once the History or Related skills section nears the viewport. Crawlers that run no JavaScript never trigger it.SSR log for
GET /gh/cursor/plugins/deslopon a localwrangler devof.output:Things a reviewer should know:
.mdoutput do not use related data, so they are unchanged.This touches only
SkillDetail.vueand its tests, so it should merge cleanly next to #303 and #305.