SvelteKit layout reset (+layout@(group).svelte) silently breaks await event.parent() data assumptions. When a route uses a layout reset (e.g., +layout@(app).svelte), parent layouts in the reset chain DON'T run for that route. Code that does const parent_data = await event.parent() and accesses fields from those skipped layouts gets undefined — and TypeScript type assertions like (parent_data as { field?: T }) mask the bug at compile time. The svelte-check error about missing fields on LayoutParentData was actually correct.
SvelteKit's layout reset feature (+layout@(group).svelte) skips intermediate layout load functions. If a child route's +layout.ts does await event.parent() expecting data from a skipped parent, those fields are undefined. The svelte-check type error ('field does not exist on LayoutParentData') is the correct diagnostic — don't suppress it with type assertions. Instead, the child layout must fetch its own data independently. Check for layout resets (@ suffix in layout filenames) before assuming parent data availability.