Routing, layouts, streaming and cache semantics in the Next.js App Router: which boundary makes a component a server component, why a fetch is deduplicated, when revalidation actually happens, and reading the build output to see what became static.
SkillScore95Maintained
Automatic
◆Frontend / UI pack
Last verified 8/3/2026
What it changes
Passed 21 of 22 test cases with the skill, and 20 of 22 without it.
Without skill91%
With skill95%
Checks it passed that the model alone missed
Explains that fetch deduplication happens during a single render pass
States that time-based revalidation occurs in the background after a request is made
1 fixed20 passed either way1 still failing0 broke
Pass-rate lift
+5 pp
Tokens
+8%
Agent turns
0%
Response time
+5%
Model gemini-3.6-flashMeasured 8/3/2026v121 of 22 cases passed with skill
Tokens, turns and time describe resource use, not a dollar price.
See it in action
A test case the skill fixed. Same model, same prompt, with and without the skill.
Prompt
We are migrating our blog to the latest Next.js architecture and want to use nested UI wrappers and progressive rendering. Please write a short architectural summary detailing how to implement these features, and include a section on how to interpret the terminal logs during the build process to verify which pages were pre-rendered. Output this as a markdown document with three distinct sections.
What was checked, without and with the skill
Checked
Without skill
With skill
Mentions the 'use client' directive
Passed
Passed
Explains that fetch deduplication happens during a single render pass
Missed
Passed
States that time-based revalidation occurs in the background after a request is made
Missed
Passed
case-02 · gemini-3.6-flash · 8/3/2026 · answers are capped and redacted
What's inside
The instructions your model reads when the skill loads.
SKILL.md6 linessingle file
nextjs-app-router
Routing, layouts, streaming and cache semantics in the Next.js App Router:
which boundary makes a component a server component, why a fetch is
deduplicated, when revalidation actually happens, and reading the build output
to see what became static.