Skip to content

Conversation

@lachlancollins
Copy link
Member

@lachlancollins lachlancollins commented Dec 5, 2025

🎯 Changes

Adjusts verify-links to ensure links can resolve locally (i.e. as intended), rather than having to resolve 1 level higher

The level adjusting is then handled by the TanStack website in #563

✅ Checklist

  • I have followed the steps in the Contributing guide.
  • I have tested this code locally with pnpm run test:pr.

🚀 Release Impact

  • This change affects published code, and I have generated a changeset.
  • This change is docs/CI/dev-only (no release).

Summary by CodeRabbit

  • Documentation

    • Standardized and fixed many internal documentation links across React, Angular, Vue, Svelte, Solid, and core reference docs for more reliable navigation.
    • Minor content updates: added a cache lifecycle note, clarified retry/onMutate behavior, and expanded a few options/returns descriptions in select reference pages.
  • Chores

    • Improved link verification to report more precise link errors.
    • Removed automatic markdown post-processing from the docs generation workflow.

✏️ Tip: You can customize this high-level summary in your review settings.

@changeset-bot
Copy link

changeset-bot bot commented Dec 5, 2025

⚠️ No Changeset found

Latest commit: 733ae16

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@github-actions github-actions bot added the documentation Improvements or additions to documentation label Dec 5, 2025
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 5, 2025

Walkthrough

Systematically updates relative documentation link paths across 80+ files from longer patterns (e.g., ../../../, and .././) to shorter, more direct references. Refactors link verification script with improved error tracking and boundary enforcement. Removes markdown post-processing workflow from documentation generation.

Changes

Cohort / File(s) Summary
React Framework Guides
docs/framework/react/guides/{prefetching,advanced-ssr,caching,dependent-queries,important-defaults,initial-query-data,invalidations-from-mutations,migrating-to-react-query-{3,4},migrating-to-v5,mutations,network-mode,placeholder-query-data,queries,query-functions,query-invalidation,query-keys,query-options,render-optimizations,request-waterfalls,ssr,suspense,updates-from-mutation-responses}.md
Updated internal relative link paths to use shorter patterns (e.g., .././, ../../../); minor wording or example tweaks in a few guides. No functional code changes.
React Framework Setup & Reference
docs/framework/react/{installation,overview,quick-start,typescript}.md
docs/framework/react/reference/{infiniteQueryOptions,mutationOptions,queryOptions,useInfiniteQuery,useIsFetching,useIsMutating,useMutation,useMutationState,usePrefetchInfiniteQuery,usePrefetchQuery,useQueries,useQuery,useSuspenseInfiniteQuery,useSuspenseQueries,useSuspenseQuery}.md
docs/framework/react/plugins/{createAsyncStoragePersister,createSyncStoragePersister,persistQueryClient}.md
Normalized many relative doc links to shallower paths and adjusted a few option/return docs (some Options sections gained clarifications). Documentation-only edits.
Angular Framework Documentation
docs/framework/angular/{installation,overview,quick-start}.md
docs/framework/angular/guides/{caching,invalidations-from-mutations,mutation-options}.md
docs/framework/angular/reference/{index,functions/*,interfaces/BaseQueryNarrowing,interfaces/CreateQueryOptions,type-aliases/*}.md
Adjusted relative link targets (e.g., ../../../, .././) and added a short lifecycle note in the caching guide. One doc signature display changed (return type in injectInfiniteQuery.md) — documentation-only.
Solid, Svelte, Vue Framework Docs
docs/framework/solid/*, docs/framework/svelte/*, docs/framework/vue/* (guides, reference, installation, overview, quick-start, ssr, typescript, reactivity, suspense)
Shortened/normalized relative link paths across installation, guides, reference, and SSR docs. Minor content notes added in a few guides.
Core Reference Documentation
docs/reference/{InfiniteQueryObserver,QueriesObserver,QueryCache,QueryClient,QueryObserver,streamedQuery}.md
Updated relative framework-reference link paths from deeper ../../framework/... to shallower ../framework/.... Documentation-only updates.
ESLint Plugin Documentation
docs/eslint/eslint-plugin-query.md
Updated rule reference links from ../ to ./ relative paths.
Documentation Tooling — Link Verifier
scripts/verify-links.ts
Refactored link validation: added structured global error accumulation (file/link/resolvedPath/reason), tightened relative-link detection (exclude fragments and mailto), replaced normalizePath with extension stripping, renamed/refactored existence check to relativeLinkExists with /docs boundary enforcement, added special handling for examples paths, and improved error reporting and final output format.
Documentation Generation
scripts/generate-docs.ts
Removed markdown post-processing workflow: deleted file-glob discovery, read/write and replacement loop, and related imports; left reference docs generation invocation and final success messaging.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

  • Large but largely homogeneous documentation edits make review faster.
  • Areas needing extra attention:
    • scripts/verify-links.ts — verify path resolution, /docs boundary enforcement, and example-dir handling.
    • A few reference docs where option/return bullets were expanded (ensure accuracy and consistency).
    • Confirm removal of generate-docs post-processing doesn't break downstream tooling.

Possibly related PRs

Suggested reviewers

  • TkDodo

Poem

🐰 Hop, hop, the paths now align,
Shorter links stitch docs so fine.
From ../../ to a tidy ./,
I nudge each link with a happy purr.
Tiny paws—big clarity!

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 25.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title 'docs: correct local relative links' clearly and concisely describes the main change - correcting relative links in documentation files.
Description check ✅ Passed The PR description follows the template with filled-in 🎯 Changes section, completed ✅ Checklist, and clear 🚀 Release Impact marking as docs/CI/dev-only.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch docs-relative-links

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 81fcb35 and 733ae16.

📒 Files selected for processing (1)
  • scripts/verify-links.ts (5 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • scripts/verify-links.ts
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Test

Comment @coderabbitai help to get the list of available commands and usage tips.

@nx-cloud
Copy link

nx-cloud bot commented Dec 5, 2025

View your CI Pipeline Execution ↗ for commit 733ae16

Command Status Duration Result
nx affected --targets=test:sherif,test:knip,tes... ✅ Succeeded 1m 16s View ↗
nx run-many --target=build --exclude=examples/*... ✅ Succeeded 1s View ↗

☁️ Nx Cloud last updated this comment at 2025-12-05 08:05:04 UTC

@pkg-pr-new
Copy link

pkg-pr-new bot commented Dec 5, 2025

More templates

@tanstack/angular-query-experimental

npm i https://pkg.pr.new/@tanstack/angular-query-experimental@9947

@tanstack/eslint-plugin-query

npm i https://pkg.pr.new/@tanstack/eslint-plugin-query@9947

@tanstack/query-async-storage-persister

npm i https://pkg.pr.new/@tanstack/query-async-storage-persister@9947

@tanstack/query-broadcast-client-experimental

npm i https://pkg.pr.new/@tanstack/query-broadcast-client-experimental@9947

@tanstack/query-core

npm i https://pkg.pr.new/@tanstack/query-core@9947

@tanstack/query-devtools

npm i https://pkg.pr.new/@tanstack/query-devtools@9947

@tanstack/query-persist-client-core

npm i https://pkg.pr.new/@tanstack/query-persist-client-core@9947

@tanstack/query-sync-storage-persister

npm i https://pkg.pr.new/@tanstack/query-sync-storage-persister@9947

@tanstack/react-query

npm i https://pkg.pr.new/@tanstack/react-query@9947

@tanstack/react-query-devtools

npm i https://pkg.pr.new/@tanstack/react-query-devtools@9947

@tanstack/react-query-next-experimental

npm i https://pkg.pr.new/@tanstack/react-query-next-experimental@9947

@tanstack/react-query-persist-client

npm i https://pkg.pr.new/@tanstack/react-query-persist-client@9947

@tanstack/solid-query

npm i https://pkg.pr.new/@tanstack/solid-query@9947

@tanstack/solid-query-devtools

npm i https://pkg.pr.new/@tanstack/solid-query-devtools@9947

@tanstack/solid-query-persist-client

npm i https://pkg.pr.new/@tanstack/solid-query-persist-client@9947

@tanstack/svelte-query

npm i https://pkg.pr.new/@tanstack/svelte-query@9947

@tanstack/svelte-query-devtools

npm i https://pkg.pr.new/@tanstack/svelte-query-devtools@9947

@tanstack/svelte-query-persist-client

npm i https://pkg.pr.new/@tanstack/svelte-query-persist-client@9947

@tanstack/vue-query

npm i https://pkg.pr.new/@tanstack/vue-query@9947

@tanstack/vue-query-devtools

npm i https://pkg.pr.new/@tanstack/vue-query-devtools@9947

commit: 733ae16

@github-actions
Copy link
Contributor

github-actions bot commented Dec 5, 2025

Sizes for commit 733ae16:

Branch Bundle Size
Main
This PR

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
scripts/verify-links.ts (1)

30-86: Fix cross-platform path separator issues in example link checking

The function's relative link resolution logic has a cross-platform compatibility issue: absPath.includes('/examples/') and the regex \/docs\/framework\/([^/]+)\/examples\/ both assume forward slashes, but Node.js's path.resolve() returns OS-specific separators. On Windows, resolved paths use backslashes (\), causing these checks to fail.

This means valid example links on Windows will be misclassified as non-examples, get .md appended, fail existence checks, and trigger false "Not found" errors—bugs that won't appear during development on Linux/macOS.

To fix: normalize absPath to POSIX style using absPath.replaceAll(path.sep, '/') before the /examples/ checks, or switch to path.posix throughout path operations to ensure consistent forward slashes.

🧹 Nitpick comments (6)
docs/framework/react/guides/prefetching.md (1)

366-373: Relative example link is good; optional wording polish

The new relative link to ../examples/basic-react-query-file-based matches the examples folder layout and the updated link verifier.

If you’re touching this line again, you could also tighten the prose a bit, e.g.:

For now, let’s focus on the client-side case and look at an example of how you can make this work with TanStack Router. These examples omit some setup and boilerplate to stay concise; you can check out a full React Query example in the TanStack Router docs.

Purely stylistic; no need to change unless you care about the wording.

scripts/verify-links.ts (5)

7-12: Structured error shape is helpful; consider scoping errors

The more detailed error objects (file, link, resolvedPath, reason) are great for debugging bad links.

If you ever want to reuse verifyMarkdownLinks or its helpers (e.g. in tests), consider scoping errors inside verifyMarkdownLinks and passing it into relativeLinkExists instead of keeping it as global mutable state. That keeps the script more testable and avoids stale state if the function is ever called more than once.


14-23: Relative-link filter looks good; optional extra schemes

The updated isRelativeLink correctly filters out absolute paths, external URLs, fragments, and mailto: links, which fits the new “local relative only” goal.

If your docs ever use other non-HTTP schemes (like tel: or javascript:), you may want to extend this guard to exclude them as well so they don’t get misclassified as relative links.


25-28: stripExtension behavior vs. comment

stripExtension works fine, but the comment says “Remove any trailing .md” while the implementation strips whatever extension extname returns (e.g. .mdx as well).

Either adjust the comment to something like “Remove any trailing extension” or, if you truly only want to strip .md, guard explicitly on that.


88-119: Main verification loop aligns with new policy; minor behavioral notes

The main loop now:

  • Extracts all links.
  • Filters down to isRelativeLink.
  • Enforces that relative links must start with ./ or ../.
  • Delegates existence checks to relativeLinkExists.

This matches the goal of focusing on local relative links and helps surface inconsistent patterns (foo.md vs ./foo.md).

Two optional considerations:

  1. The hard requirement that all relative links start with .//../ is stricter than typical Markdown usage; if you have existing bare ssr.md-style links, they will now error even if valid. That may be desired, but it’s worth double‑checking.
  2. Because unexpected runtime failures are caught via .catch(console.error), such failures will not cause a non‑zero exit code unless errors already contains entries, which can hide broken behavior in CI. If you want any unexpected exception to fail the check, you might want to process.exit(1) in the catch or rethrow after logging.

Both are small behavioral choices, but good to be explicit about.


122-135: Error reporting is clear; consider failing on unexpected exceptions

The per‑error report format (file, link, resolved, why) is very readable and should make broken links easy to fix.

The final verifyMarkdownLinks().catch(console.error) will log unexpected exceptions but not fail the process with a non‑zero exit code. For a verification script that gates CI, you may want unexpected errors to fail the run as well (e.g. catch(err => { console.error(err); process.exit(1) })).

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 9e8709e and cc524d6.

📒 Files selected for processing (3)
  • docs/framework/react/guides/prefetching.md (1 hunks)
  • docs/framework/solid/guides/prefetching.md (1 hunks)
  • scripts/verify-links.ts (5 hunks)
🧰 Additional context used
🪛 LanguageTool
docs/framework/react/guides/prefetching.md

[grammar] ~372-~372: Use a hyphen to join words.
Context: ...md). For now, let's focus on the client side case and look at an example of how ...

(QB_NEW_EN_HYPHEN)


[style] ~372-~372: To strengthen your wording, consider replacing the phrasal verb “leave out”.
Context: ...://tanstack.com/router). These examples leave out a lot of setup and boilerplate to stay ...

(OMIT_EXCLUDE)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Test
🔇 Additional comments (1)
docs/framework/solid/guides/prefetching.md (1)

5-15: Relative example mapping looks correct

The new ../examples/basic-*-file-based mapping is consistent with the move to local relative example links and keeps the Solid guide aligned with the React source doc.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 4

🧹 Nitpick comments (13)
docs/framework/vue/quick-start.md (1)

10-10: Minor: Consider using more idiomatic phrasing.

The phrase "have a look at" can be replaced with the more common American English phrasing "take a look at" for consistency with typical documentation style. This is a low-priority style improvement and can be deferred if not part of the PR's scope.

Apply this diff to improve the phrasing:

-If you're looking for a fully functioning example, please have a look at our [basic codesandbox example](./examples/basic)
+If you're looking for a fully functioning example, please take a look at our [basic codesandbox example](./examples/basic)
docs/framework/angular/guides/mutation-options.md (1)

6-8: Minor: Consider concise phrasing.

The phrase "a lot of advantages" can be tightened. Consider using "numerous" or "significant advantages" instead.

docs/framework/react/guides/migrating-to-react-query-4.md (1)

113-113: Minor: American English phrasing.

Consider using "take a look at" instead of "have a look at" for consistency with American English conventions.

- Also, have a look at [the guide on dependent queries](./dependent-queries.md)
+ Also, take a look at [the guide on dependent queries](./dependent-queries.md)
docs/framework/svelte/ssr.md (1)

37-37: Minor style improvement: Update phrase for American English consistency.

The static analysis tool flags "have a look" as non-standard for American English; "take a look" is the preferred phrasing.

-If you wish to view the ideal SSR setup, please have a look at the [SSR example](./examples/ssr).
+If you wish to view the ideal SSR setup, please take a look at the [SSR example](./examples/ssr).
docs/framework/svelte/overview.md (1)

54-54: Verify the link target exists at the new path + minor style improvement.

The link has been updated to ./ssr. This assumes the target file exists at docs/framework/svelte/ssr.md. Confirm this path is correct and the file exists.

Additionally, the static analysis tool flags "have a look" as non-standard for American English; "take a look" is the preferred phrasing.

-If you are using SvelteKit, please have a look at [SSR & SvelteKit](./ssr).
+If you are using SvelteKit, please take a look at [SSR & SvelteKit](./ssr).
docs/framework/angular/installation.md (1)

34-34: Minor style suggestion: "take a look" is more natural than "have a look" in American English.

Consider rephrasing "have a look" to "take a look" for consistency with standard American English phrasing, though this is a very low-priority editorial note.

docs/framework/angular/quick-start.md (1)

10-10: Minor style suggestion: "take a look" is more natural than "have a look" in American English.

Consider rephrasing "have a look" to "take a look" for consistency with standard American English phrasing. This is a very low-priority editorial refinement.

docs/reference/QueriesObserver.md (1)

24-24: Optional: Consider more concise phrasing for redundant comparison.

The phrase "exactly the same as" could be slightly more concise (e.g., "the same as" or "match"), though this is very minor editorial feedback.

docs/reference/InfiniteQueryObserver.md (1)

26-26: Link path reduction is correct; consider addressing wordiness hint.

The path change from ../../framework/react/reference/useInfiniteQuery to ../framework/react/reference/useInfiniteQuery correctly reduces depth by one level and should resolve to the intended target. However, the static analysis tool flags "exactly the same" as potentially wordy—consider using a more concise phrasing like "identical" or rephrasing the sentence.

docs/framework/react/reference/useSuspenseQuery.md (1)

18-18: Address markdown lint issue: emphasis should be a heading.

Line 18 uses bold emphasis (**Caveat**) but the markdown linter (MD036) flags this as a candidate for conversion to a proper markdown heading (e.g., ### Caveat). Consider restructuring for consistency with other section headings in the document.

-**Caveat**
+### Caveat
docs/framework/solid/installation.md (1)

34-34: Link paths are correct; note that informal language is present.

The changes from ../examples/simple and ../examples/basic to ./examples/simple and ./examples/basic correctly reference examples in the same directory. The static analysis tool flags "Wanna" as informal, but this conversational tone may be acceptable for installation guide documentation. Consider whether your documentation style guide prefers more formal language here (e.g., "Want to give it a spin before you download?").

scripts/verify-links.ts (1)

25-28: Minor edge case in stripExtension: non-anchored replacement.

String.replace without $ anchor may incorrectly strip if the extension substring appears mid-path (e.g., docs/.md/file.mddocs//file). Consider anchoring to end:

 function stripExtension(p: string): string {
-  return p.replace(`${extname(p)}`, '')
+  const ext = extname(p)
+  return ext ? p.slice(0, -ext.length) : p
 }
docs/framework/react/quick-start.md (1)

14-14: Optional: Consider American English preference for phrasing.

The static analysis tool flags that "take a look" is more commonly used in American English than "have a look."

If you'd like to align with American English conventions, consider this optional change:

-If you're looking for a fully functioning example, please have a look at our [simple StackBlitz example](./examples/simple)
+If you're looking for a fully functioning example, please take a look at our [simple StackBlitz example](./examples/simple)
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between cc524d6 and 81fcb35.

📒 Files selected for processing (99)
  • docs/eslint/eslint-plugin-query.md (1 hunks)
  • docs/framework/angular/guides/caching.md (3 hunks)
  • docs/framework/angular/guides/invalidations-from-mutations.md (1 hunks)
  • docs/framework/angular/guides/mutation-options.md (1 hunks)
  • docs/framework/angular/installation.md (1 hunks)
  • docs/framework/angular/overview.md (1 hunks)
  • docs/framework/angular/quick-start.md (1 hunks)
  • docs/framework/angular/reference/functions/infiniteQueryOptions.md (3 hunks)
  • docs/framework/angular/reference/functions/injectInfiniteQuery.md (3 hunks)
  • docs/framework/angular/reference/functions/injectIsFetching.md (1 hunks)
  • docs/framework/angular/reference/functions/injectIsMutating.md (1 hunks)
  • docs/framework/angular/reference/functions/injectIsRestoring.md (1 hunks)
  • docs/framework/angular/reference/functions/injectMutation.md (1 hunks)
  • docs/framework/angular/reference/functions/injectMutationState.md (1 hunks)
  • docs/framework/angular/reference/functions/injectQuery.md (3 hunks)
  • docs/framework/angular/reference/functions/mutationOptions.md (2 hunks)
  • docs/framework/angular/reference/functions/provideQueryClient.md (1 hunks)
  • docs/framework/angular/reference/functions/provideTanStackQuery.md (1 hunks)
  • docs/framework/angular/reference/functions/queryFeature.md (1 hunks)
  • docs/framework/angular/reference/functions/queryOptions.md (3 hunks)
  • docs/framework/angular/reference/index.md (1 hunks)
  • docs/framework/angular/reference/interfaces/BaseQueryNarrowing.md (3 hunks)
  • docs/framework/angular/reference/interfaces/CreateQueryOptions.md (1 hunks)
  • docs/framework/angular/reference/type-aliases/CreateMutationResult.md (1 hunks)
  • docs/framework/angular/reference/type-aliases/QueryFeatures.md (1 hunks)
  • docs/framework/react/guides/advanced-ssr.md (3 hunks)
  • docs/framework/react/guides/caching.md (2 hunks)
  • docs/framework/react/guides/dependent-queries.md (1 hunks)
  • docs/framework/react/guides/important-defaults.md (2 hunks)
  • docs/framework/react/guides/initial-query-data.md (1 hunks)
  • docs/framework/react/guides/invalidations-from-mutations.md (1 hunks)
  • docs/framework/react/guides/migrating-to-react-query-3.md (1 hunks)
  • docs/framework/react/guides/migrating-to-react-query-4.md (11 hunks)
  • docs/framework/react/guides/migrating-to-v5.md (5 hunks)
  • docs/framework/react/guides/mutations.md (4 hunks)
  • docs/framework/react/guides/network-mode.md (3 hunks)
  • docs/framework/react/guides/placeholder-query-data.md (2 hunks)
  • docs/framework/react/guides/prefetching.md (6 hunks)
  • docs/framework/react/guides/queries.md (2 hunks)
  • docs/framework/react/guides/query-functions.md (1 hunks)
  • docs/framework/react/guides/query-invalidation.md (1 hunks)
  • docs/framework/react/guides/query-keys.md (1 hunks)
  • docs/framework/react/guides/query-options.md (2 hunks)
  • docs/framework/react/guides/render-optimizations.md (1 hunks)
  • docs/framework/react/guides/request-waterfalls.md (8 hunks)
  • docs/framework/react/guides/ssr.md (6 hunks)
  • docs/framework/react/guides/suspense.md (3 hunks)
  • docs/framework/react/guides/updates-from-mutation-responses.md (1 hunks)
  • docs/framework/react/installation.md (2 hunks)
  • docs/framework/react/overview.md (1 hunks)
  • docs/framework/react/plugins/createAsyncStoragePersister.md (2 hunks)
  • docs/framework/react/plugins/createSyncStoragePersister.md (2 hunks)
  • docs/framework/react/plugins/persistQueryClient.md (6 hunks)
  • docs/framework/react/quick-start.md (1 hunks)
  • docs/framework/react/reference/infiniteQueryOptions.md (1 hunks)
  • docs/framework/react/reference/mutationOptions.md (1 hunks)
  • docs/framework/react/reference/queryOptions.md (1 hunks)
  • docs/framework/react/reference/useInfiniteQuery.md (2 hunks)
  • docs/framework/react/reference/useIsFetching.md (1 hunks)
  • docs/framework/react/reference/useIsMutating.md (1 hunks)
  • docs/framework/react/reference/useMutation.md (2 hunks)
  • docs/framework/react/reference/useMutationState.md (1 hunks)
  • docs/framework/react/reference/usePrefetchInfiniteQuery.md (2 hunks)
  • docs/framework/react/reference/usePrefetchQuery.md (1 hunks)
  • docs/framework/react/reference/useQueries.md (1 hunks)
  • docs/framework/react/reference/useQuery.md (3 hunks)
  • docs/framework/react/reference/useSuspenseInfiniteQuery.md (3 hunks)
  • docs/framework/react/reference/useSuspenseQueries.md (3 hunks)
  • docs/framework/react/reference/useSuspenseQuery.md (2 hunks)
  • docs/framework/react/typescript.md (2 hunks)
  • docs/framework/solid/guides/suspense.md (1 hunks)
  • docs/framework/solid/installation.md (1 hunks)
  • docs/framework/solid/reference/useQuery.md (3 hunks)
  • docs/framework/solid/typescript.md (2 hunks)
  • docs/framework/svelte/installation.md (1 hunks)
  • docs/framework/svelte/overview.md (2 hunks)
  • docs/framework/svelte/reference/functions/createInfiniteQuery.md (1 hunks)
  • docs/framework/svelte/reference/functions/createMutation.md (1 hunks)
  • docs/framework/svelte/reference/functions/createQueries.md (1 hunks)
  • docs/framework/svelte/reference/functions/createQuery.md (3 hunks)
  • docs/framework/svelte/reference/functions/infiniteQueryOptions.md (1 hunks)
  • docs/framework/svelte/reference/functions/queryOptions.md (2 hunks)
  • docs/framework/svelte/reference/functions/useMutationState.md (1 hunks)
  • docs/framework/svelte/reference/index.md (1 hunks)
  • docs/framework/svelte/ssr.md (1 hunks)
  • docs/framework/vue/guides/ssr.md (1 hunks)
  • docs/framework/vue/guides/suspense.md (1 hunks)
  • docs/framework/vue/installation.md (1 hunks)
  • docs/framework/vue/overview.md (1 hunks)
  • docs/framework/vue/quick-start.md (1 hunks)
  • docs/framework/vue/reactivity.md (1 hunks)
  • docs/reference/InfiniteQueryObserver.md (1 hunks)
  • docs/reference/QueriesObserver.md (1 hunks)
  • docs/reference/QueryCache.md (2 hunks)
  • docs/reference/QueryClient.md (15 hunks)
  • docs/reference/QueryObserver.md (1 hunks)
  • docs/reference/streamedQuery.md (1 hunks)
  • scripts/generate-docs.ts (0 hunks)
  • scripts/verify-links.ts (5 hunks)
💤 Files with no reviewable changes (1)
  • scripts/generate-docs.ts
✅ Files skipped from review due to trivial changes (34)
  • docs/framework/react/guides/initial-query-data.md
  • docs/framework/angular/guides/invalidations-from-mutations.md
  • docs/framework/angular/overview.md
  • docs/framework/vue/reactivity.md
  • docs/framework/vue/installation.md
  • docs/framework/angular/reference/functions/injectMutationState.md
  • docs/framework/vue/guides/ssr.md
  • docs/framework/react/guides/updates-from-mutation-responses.md
  • docs/framework/vue/overview.md
  • docs/framework/react/reference/useIsMutating.md
  • docs/reference/streamedQuery.md
  • docs/framework/angular/reference/functions/injectIsMutating.md
  • docs/framework/angular/reference/functions/mutationOptions.md
  • docs/framework/svelte/reference/functions/createQueries.md
  • docs/eslint/eslint-plugin-query.md
  • docs/framework/react/reference/infiniteQueryOptions.md
  • docs/framework/react/guides/dependent-queries.md
  • docs/framework/angular/reference/functions/injectIsRestoring.md
  • docs/framework/angular/reference/type-aliases/QueryFeatures.md
  • docs/framework/react/plugins/createSyncStoragePersister.md
  • docs/framework/react/overview.md
  • docs/framework/angular/reference/functions/provideTanStackQuery.md
  • docs/framework/react/reference/useSuspenseInfiniteQuery.md
  • docs/framework/solid/typescript.md
  • docs/framework/react/reference/useQueries.md
  • docs/framework/vue/guides/suspense.md
  • docs/framework/react/reference/mutationOptions.md
  • docs/framework/react/reference/useInfiniteQuery.md
  • docs/framework/react/guides/migrating-to-react-query-3.md
  • docs/framework/angular/reference/interfaces/BaseQueryNarrowing.md
  • docs/framework/angular/reference/index.md
  • docs/framework/react/plugins/persistQueryClient.md
  • docs/framework/react/guides/caching.md
  • docs/framework/react/guides/ssr.md
🧰 Additional context used
🧠 Learnings (3)
📚 Learning: 2025-11-02T22:52:33.071Z
Learnt from: DogPawHat
Repo: TanStack/query PR: 9835
File: packages/query-core/src/__tests__/queryClient.test-d.tsx:242-256
Timestamp: 2025-11-02T22:52:33.071Z
Learning: In the TanStack Query codebase, the new `query` and `infiniteQuery` methods support the `select` option for data transformation, while the legacy `fetchQuery` and `fetchInfiniteQuery` methods do not support `select` and should reject it at the type level.

Applied to files:

  • docs/framework/svelte/reference/functions/createInfiniteQuery.md
  • docs/framework/react/guides/render-optimizations.md
  • docs/framework/react/reference/usePrefetchInfiniteQuery.md
  • docs/framework/react/guides/query-options.md
  • docs/framework/svelte/reference/functions/infiniteQueryOptions.md
  • docs/reference/QueryClient.md
  • docs/framework/react/reference/useMutationState.md
  • docs/framework/react/guides/migrating-to-v5.md
  • docs/framework/react/reference/useSuspenseQueries.md
  • docs/framework/solid/reference/useQuery.md
  • docs/framework/angular/reference/functions/injectInfiniteQuery.md
  • docs/framework/svelte/overview.md
📚 Learning: 2025-09-02T17:57:33.184Z
Learnt from: TkDodo
Repo: TanStack/query PR: 9612
File: packages/query-async-storage-persister/src/asyncThrottle.ts:0-0
Timestamp: 2025-09-02T17:57:33.184Z
Learning: When importing from tanstack/query-core in other TanStack Query packages like query-async-storage-persister, a workspace dependency "tanstack/query-core": "workspace:*" needs to be added to the package.json.

Applied to files:

  • docs/framework/react/installation.md
📚 Learning: 2025-11-22T09:06:05.219Z
Learnt from: sukvvon
Repo: TanStack/query PR: 9892
File: packages/solid-query-persist-client/src/__tests__/PersistQueryClientProvider.test.tsx:331-335
Timestamp: 2025-11-22T09:06:05.219Z
Learning: In TanStack/query test files, when a queryFn contains side effects (e.g., setting flags for test verification), prefer async/await syntax for clarity; when there are no side effects, prefer the .then() pattern for conciseness.

Applied to files:

  • docs/framework/react/installation.md
  • docs/reference/QueryClient.md
  • docs/framework/svelte/overview.md
🪛 LanguageTool
docs/framework/solid/installation.md

[style] ~34-~34: The word ‘wanna’ is informal.
Context: ...sh bun add @tanstack/solid-query ``` > Wanna give it a spin before you download? Try...

(WANNA)

docs/framework/react/guides/placeholder-query-data.md

[style] ~57-~57: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ...r Data as a Function placeholderData can also be a function, where you can get a...

(MISSING_IT_THERE)


[style] ~57-~57: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ...This is useful for situations where you want to use the data from one query as the plac...

(REP_WANT_TO_VB)

docs/framework/react/quick-start.md

[locale-violation] ~14-~14: In American English, “take a look” is more commonly used.
Context: ...for a fully functioning example, please have a look at our [simple StackBlitz example](./ex...

(HAVE_A_LOOK)

docs/framework/svelte/ssr.md

[locale-violation] ~37-~37: In American English, “take a look” is more commonly used.
Context: ...ish to view the ideal SSR setup, please have a look at the SSR example. ...

(HAVE_A_LOOK)

docs/framework/react/guides/query-options.md

[style] ~6-~6: Consider using a synonym to be more concise.
Context: ...s whatever you pass into it, but it has a lot of advantages when using it [with TypeScri...

(A_LOT_OF)

docs/framework/react/guides/important-defaults.md

[style] ~15-~15: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...manually](./query-invalidation.md). - set staleTime to 'static' to never ...

(ENGLISH_WORD_REPEAT_BEGINNING_RULE)

docs/framework/react/guides/migrating-to-react-query-4.md

[locale-violation] ~113-~113: In American English, “take a look” is more commonly used.
Context: ...Status: 'idle' // [!code ++] ``` Also, have a look at [the guide on dependent queries](./d...

(HAVE_A_LOOK)

docs/reference/QueryObserver.md

[style] ~19-~19: ‘exactly the same’ might be wordy. Consider a shorter alternative.
Context: ...The options for the QueryObserver are exactly the same as those of [useQuery](../framework/r...

(EN_WORDINESS_PREMIUM_EXACTLY_THE_SAME)

docs/framework/react/installation.md

[style] ~36-~36: The word ‘wanna’ is informal.
Context: ...orks with ReactDOM and React Native. > Wanna give it a spin before you download? Try...

(WANNA)

docs/framework/react/guides/network-mode.md

[style] ~22-~22: ‘in the meantime’ might be wordy. Consider a shorter alternative.
Context: ...en cancelled in the meantime, it will not continue. ## Network Mode...

(EN_WORDINESS_PREMIUM_IN_THE_MEANTIME)

docs/reference/QueryClient.md

[style] ~98-~98: ‘exactly the same’ might be wordy. Consider a shorter alternative.
Context: ...ons** The options for fetchQuery are exactly the same as those of [useQuery](../framework/r...

(EN_WORDINESS_PREMIUM_EXACTLY_THE_SAME)

docs/framework/react/guides/mutations.md

[style] ~62-~62: As an alternative to the over-used intensifier ‘very’, consider replacing this phrase.
Context: ...ryclientsetquerydata), mutations become a very powerful tool. [//]: # 'Info1' > IMPORTANT: Th...

(EN_WEAK_ADJECTIVE)


[style] ~139-~139: The expression “come in handy” is rather colloquial. Consider replacing it to add a more formal tone to your writing.
Context: ...ge during the mutation lifecycle. These come in handy for both [invalidating and refetching q...

(COME_IN_HANDY)

docs/framework/react/guides/migrating-to-v5.md

[locale-violation] ~483-~483: In American English, “take a look” is more commonly used.
Context: ...he optimistic update. For more details, have a look at the [optimistic updates documentatio...

(HAVE_A_LOOK)

docs/framework/react/guides/prefetching.md

[style] ~370-~370: Use ‘will’ instead of ‘going to’ if the following action is certain.
Context: ...itly declare for each route what data is going to be needed for that component tree, ahea...

(GOING_TO_WILL)


[grammar] ~372-~372: Use a hyphen to join words.
Context: ...md). For now, let's focus on the client side case and look at an example of how ...

(QB_NEW_EN_HYPHEN)


[style] ~372-~372: To strengthen your wording, consider replacing the phrasal verb “leave out”.
Context: ...://tanstack.com/router). These examples leave out a lot of setup and boilerplate to stay ...

(OMIT_EXCLUDE)


[uncategorized] ~436-~436: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...ing-the-query-cache). Integrating with Server Side routers and frameworks is very similar ...

(EN_COMPOUND_ADJECTIVE_INTERNAL)

docs/framework/solid/reference/useQuery.md

[style] ~202-~202: To form a complete sentence, be sure to include a subject.
Context: ...query from automatically running. - Can be used for [Dependent Queries](../guid...

(MISSING_IT_THERE)

docs/framework/react/guides/request-waterfalls.md

[style] ~243-~243: As an alternative to the over-used intensifier ‘very’, consider replacing this phrase.
Context: ...nced-ssr.md)) but note that this can be a very big architectural change. You can have goo...

(EN_WEAK_ADJECTIVE)


[grammar] ~324-~324: Use a hyphen to join words.
Context: ...tradeoff between: > > - Include all data fetching code in the main bundle, even i...

(QB_NEW_EN_HYPHEN)


[grammar] ~325-~325: Use a hyphen to join words.
Context: ...ven if we seldom use it > - Put the data fetching code in the code split bundle, ...

(QB_NEW_EN_HYPHEN)


[grammar] ~325-~325: Use a hyphen to join words.
Context: ...- Put the data fetching code in the code split bundle, but with a request waterfa...

(QB_NEW_EN_HYPHEN)

docs/framework/react/reference/useQuery.md

[style] ~78-~78: To form a complete sentence, be sure to include a subject.
Context: ...s query from automatically running. - Can be used for [Dependent Queries](../guid...

(MISSING_IT_THERE)

docs/framework/angular/guides/mutation-options.md

[style] ~8-~8: Consider using a synonym to be more concise.
Context: ...s whatever you pass into it, but it has a lot of advantages when using it [with TypeScri...

(A_LOT_OF)

docs/framework/angular/quick-start.md

[locale-violation] ~10-~10: In American English, “take a look” is more commonly used.
Context: ...for a fully functioning example, please have a look at our [basic codesandbox example](./ex...

(HAVE_A_LOOK)

docs/framework/react/guides/query-keys.md

[locale-violation] ~100-~100: In American English, “take a look” is more commonly used.
Context: ...zing Query Keys in larger applications, have a look at [Effective React Query Keys](https:/...

(HAVE_A_LOOK)

docs/framework/svelte/overview.md

[locale-violation] ~54-~54: In American English, “take a look” is more commonly used.
Context: ...Kit If you are using SvelteKit, please have a look at SSR & SvelteKit. ## Availa...

(HAVE_A_LOOK)

docs/framework/vue/quick-start.md

[locale-violation] ~10-~10: In American English, “take a look” is more commonly used.
Context: ...for a fully functioning example, please have a look at our [basic codesandbox example](./ex...

(HAVE_A_LOOK)

docs/reference/InfiniteQueryObserver.md

[style] ~26-~26: ‘exactly the same’ might be wordy. Consider a shorter alternative.
Context: ...ons for the InfiniteQueryObserver are exactly the same as those of [useInfiniteQuery](../fra...

(EN_WORDINESS_PREMIUM_EXACTLY_THE_SAME)

docs/reference/QueriesObserver.md

[style] ~24-~24: ‘exactly the same’ might be wordy. Consider a shorter alternative.
Context: ...e options for the QueriesObserver are exactly the same as those of [useQueries](../framework...

(EN_WORDINESS_PREMIUM_EXACTLY_THE_SAME)

🪛 markdownlint-cli2 (0.18.1)
docs/framework/angular/reference/functions/infiniteQueryOptions.md

54-54: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)

docs/reference/QueryClient.md

479-479: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


499-499: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)

docs/framework/react/reference/useSuspenseQuery.md

18-18: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)

🔇 Additional comments (76)
docs/framework/svelte/reference/functions/infiniteQueryOptions.md (1)

40-40: ✓ Correct relative path adjustments.

The link updates from ../../type-aliases/ to ../type-aliases/ are correct. Both parameters and return types are sibling folders under /reference/, requiring only one level of traversal upward from /functions/.

Also applies to: 44-44

docs/framework/vue/quick-start.md (1)

10-10: Verify the relative link path is correct.

The link ./examples/basic uses current-directory relative path format, consistent with the PR's objective. However, please verify that this path correctly resolves from docs/framework/vue/ to the intended example location. If the examples directory is located elsewhere (e.g., at the root or in a different framework directory), the path may need adjustment.

docs/framework/angular/guides/mutation-options.md (1)

8-8: Verify the link format resolves correctly.

The relative path change from ../../typescript to ../typescript aligns with the PR objectives. However, the fragment identifier includes .md (#typing-query-options.md), which is unusual for markdown links. Verify that:

  1. The link target ../typescript resolves to the correct file/section
  2. The .md extension in the fragment is intentional (not a typo or artifact of removed post-processing)

If the target is a file named typescript.md at the parent directory level, the correct format should be ../typescript#typing-query-options or ../typescript.md#typing-query-options (without .md in the fragment).

docs/framework/react/reference/useIsFetching.md (1)

18-18: The relative path change is correct and fixes a broken link.

The verification confirms that the file exists at the new path (../guides/filters.mddocs/framework/react/guides/filters.md). The old path (../../guides/filters.md) pointed to a non-existent location. The directory structure shows that each framework (angular, react, solid, vue) maintains its own guides subdirectory, making the new framework-specific path the correct target.

docs/framework/react/plugins/createAsyncStoragePersister.md (1)

38-38: Link paths are correct and targets exist.

Both persistQueryClient.md and createSyncStoragePersister.md exist in docs/framework/react/plugins/. The anchor #persistqueryclientprovider is properly defined via the heading "### PersistQueryClientProvider" in the target file. The link path changes from ../ to ./ are valid for same-directory references.

docs/framework/svelte/reference/functions/createQuery.md (1)

38-38: Link paths correctly shortened for local resolution.

All relative links have been systematically updated to resolve directly from the current file location. The pattern change from ../../type-aliases/ to ../type-aliases/ is correct, as both the functions/ directory (containing this file) and type-aliases/ are siblings under docs/framework/svelte/reference/. All referenced type-aliases files exist and are properly accessible via the updated paths.

docs/framework/react/reference/useMutationState.md (2)

72-72: Link correction aligns with PR objectives.

The change from a longer relative path to ../guides/filters.md#mutation-filters is consistent with the PR goal of correcting local relative links for proper resolution. This documentation-only change does not affect code, functionality, or API behavior.


72-72: No issues found. The relative link path ../guides/filters.md#mutation-filters resolves correctly to an existing file (docs/framework/react/guides/filters.md), and the anchor #mutation-filters is properly generated from the "Mutation Filters" header at line 46 of the target file.

docs/framework/svelte/reference/functions/useMutationState.md (1)

24-24: The relative link path correction is valid and necessary.

The change from ../../type-aliases/MutationStateOptions.md to ../type-aliases/MutationStateOptions.md fixes a broken link. The old path does not resolve correctly in the repository structure. The new path correctly points to docs/framework/svelte/reference/type-aliases/MutationStateOptions.md.

docs/framework/angular/reference/functions/provideQueryClient.md (1)

14-14: Verify the link target file provideTanStackQuery.md exists in the same directory.

The link has been adjusted from ../provideTanStackQuery.md to provideTanStackQuery.md, indicating both files should be siblings in the docs/framework/angular/reference/functions/ directory. Confirm that the target file exists at the expected location and the link resolves correctly during the documentation build.

docs/framework/angular/reference/functions/injectQuery.md (3)

112-112: Verify relative link paths in first function overload are correct.

The links for this overload's parameters and return type have been adjusted to use ../ relative paths pointing to sibling directories under the reference folder. Confirm these files exist at the specified locations.

Also applies to: 118-118, 124-124


193-193: Verify relative link paths in second function overload are correct.

The links for this overload's parameters and return type follow the same ../ pattern. Ensure the target files are accessible from the current location.

Also applies to: 199-199, 205-205


274-274: All relative link paths in the function overload are correct and valid.

All referenced type-aliases and interface files exist at the specified relative paths. No broken links detected.

docs/framework/angular/reference/interfaces/CreateQueryOptions.md (1)

12-12: Link path verified—target file exists in the same directory.

The simplified relative link to CreateBaseQueryOptions.md is valid; the file exists at docs/framework/angular/reference/interfaces/CreateBaseQueryOptions.md.

docs/framework/react/reference/useMutation.md (2)

67-71: Documentation additions clarify onMutate behavior clearly.

The new bullets provide helpful context:

  • Line 70 reinforces the optimistic update use case
  • Line 71 explicitly documents the return value flow to error/settled handlers, which is crucial for understanding rollback patterns

These additions enhance the documentation without changing functionality.


59-59: All documentation links are correctly configured and verified.

The relative paths resolve properly:

  • Line 59: ../../../reference/timeoutManager.md#timeoutmanagersettimeoutprovider resolves to the target file and anchor exists
  • Lines 66 & 141: ../guides/network-mode.md resolves correctly to the guides directory

All target files exist and are properly linked.

docs/framework/angular/guides/caching.md (4)

26-26: Verify the updated link path ../reference/functions/injectQuery.md.

The link has been shortened from ../../reference/functions/injectQuery.md to ../reference/functions/injectQuery.md. Confirm that this path resolves correctly from the guides subdirectory and points to the intended injectQuery status documentation.


30-30: Verify the narrative addition about cache remount behavior is accurate.

The new sentence describes a scenario where a query remounts before the cache timeout expires, triggering a background fetch. Ensure this behavior aligns with TanStack Query's actual cache and garbage collection semantics, particularly the interaction between gcTime and background refetching on remount.


35-35: Verify the updated reference link ../reference/functions/injectQuery.md.

Confirm this shortened path correctly points to the injectQuery reference documentation from the guides directory.


6-6: All relative paths resolve correctly to existing files.

The link to ./important-defaults.md and the references to ../reference/functions/injectQuery.md resolve to valid target files in the expected locations. The path adjustments from parent-level references (../../) to direct references (./ and ../) are correct and functional.

docs/framework/react/guides/migrating-to-react-query-4.md (1)

245-245: All relative link paths resolve correctly—no action needed.

All flagged paths exist in the docs structure and resolve as intended:

  • ../../../reference/QueryClient.md correctly navigates to docs/reference/QueryClient.md
  • ../plugins/createSyncStoragePersister.md correctly navigates to docs/framework/react/plugins/createSyncStoragePersister.md
  • ../installation correctly navigates to docs/framework/react/installation.md
  • ./network-mode correctly navigates to docs/framework/react/guides/network-mode.md

The stylistic variations in link formatting (e.g., omitting .md in some cases) appear intentional and do not cause resolution issues.

docs/framework/angular/reference/functions/injectIsFetching.md (1)

29-29: Link path adjustment aligns with PR objective.

Relative path shortening from ../../interfaces/ to ../interfaces/ is consistent with the PR's goal to resolve links locally at the correct directory level. The change correctly targets the sibling interfaces directory.

docs/framework/angular/installation.md (1)

34-34: Link paths correctly adjusted to sibling directory resolution.

Both example links now use ./examples/ to properly resolve as siblings in the current Angular directory, improving local link resolution. Consistent with PR objective.

docs/framework/angular/quick-start.md (1)

10-10: Link path adjustment aligns with local resolution pattern.

The example link now correctly uses ./examples/basic to resolve as a sibling directory within the Angular framework docs.

docs/framework/angular/reference/functions/queryFeature.md (1)

34-34: Link path adjustment improves local reference resolution.

The QueryFeature interface link now correctly uses ../interfaces/ to resolve at the proper reference level, consistent with the PR's goal of local link resolution.

docs/framework/angular/reference/type-aliases/CreateMutationResult.md (1)

34-34: Inline filename reference improves clarity for same-directory type-alias links.

Using the direct filename CreateBaseMutationResult.md instead of a relative path for intra-directory type-alias references is cleaner and more maintainable, aligning with the PR's link normalization pattern.

docs/framework/svelte/reference/functions/createInfiniteQuery.md (1)

40-40: Consistent link path adjustments for Svelte reference type-aliases.

All four type-alias links (Accessor, CreateInfiniteQueryOptions, and CreateInfiniteQueryResult) are correctly shortened from ../../type-aliases/ to ../type-aliases/, properly resolving to the sibling type-aliases directory within the reference structure. This is consistent with the PR's local link resolution objective.

Also applies to: 44-44, 48-48

docs/framework/react/guides/render-optimizations.md (1)

24-24: Link path adjusted for correct directory level resolution.

The ESLint rule link is correctly shortened from ../../../../eslint/ to ../../../eslint/, properly targeting the docs/eslint directory from the React guides level. This aligns with the PR's local link resolution pattern.

docs/reference/QueriesObserver.md (1)

24-24: Cross-framework reference link properly adjusted.

The useQueries reference now correctly points to ../framework/react/reference/useQueries from the framework-agnostic reference directory, properly bridging the framework-specific documentation. This aligns with the PR's link normalization objective.

docs/framework/solid/guides/suspense.md (1)

41-41: Link path update looks correct.

The change from ../prefetching to ./prefetching correctly assumes prefetching.md resides in the same docs/framework/solid/guides/ directory. This aligns with the PR's pattern of reducing relative path depth.

Please verify that docs/framework/solid/guides/prefetching.md exists at the target location and that no other framework variants require adjustment.

docs/framework/svelte/reference/functions/createMutation.md (1)

36-36: Link path updates follow consistent pattern and appear correct.

All three instances correctly reduce from ../../type-aliases/ to ../type-aliases/, aligning with the PR's systematic adjustment of relative paths. The paths should correctly resolve to the respective type-alias documentation files in the Svelte framework documentation directory.

Verify that type-alias files (Accessor.md, CreateMutationOptions.md, CreateMutationResult.md) exist at docs/framework/svelte/type-aliases/.

Also applies to: 42-42, 48-48

docs/framework/react/guides/invalidations-from-mutations.md (1)

49-49: Link path update is correct.

The change to ./mutations.md correctly references a sibling guide in the same directory (docs/framework/react/guides/). This aligns with the PR's goal of simplifying relative paths to current-directory references.

Confirm that docs/framework/react/guides/mutations.md exists at the target location.

docs/framework/react/reference/useSuspenseQuery.md (2)

12-12: Link paths to useQuery are correct.

Both changes from ../useQuery to ./useQuery correctly assert that useQuery.md resides in the same reference directory.

Also applies to: 20-20


29-29: Query-cancellation guide link path is correct.

The change to ../guides/query-cancellation.md correctly reduces depth by one level and should resolve from the reference directory to the guides directory.

docs/framework/react/guides/query-invalidation.md (1)

28-28: Link path update is correct.

The change from ../filters.md#query-filters to ./filters.md#query-filters correctly simplifies to a sibling reference within the same guides directory while preserving the anchor. This aligns with the PR's pattern.

Confirm that docs/framework/react/guides/filters.md exists and contains the #query-filters anchor.

docs/reference/QueryCache.md (1)

60-60: Link path reduction is correct, but note inconsistency in file extensions.

Lines 79–80 correctly include .md in their link targets (../framework/react/guides/query-keys.md and ../framework/react/guides/filters.md#query-filters). However, line 60 uses ../framework/react/guides/filters#query-filters without the .md extension. Please verify whether this omission is intentional or should be corrected for consistency.

- `../framework/react/guides/filters#query-filters`
+ `../framework/react/guides/filters.md#query-filters`

Also applies to: 79-80

docs/framework/angular/reference/functions/injectMutation.md (1)

40-40: Approve interface and type-alias link path normalization.

All three cross-reference links correctly reduce by one directory level (from ../../ to ../), with the target files confirmed to exist at their new paths. The directory structure has interfaces/ and type-aliases/ as siblings to the functions/ directory, making the ../ relative paths correct:

  • ✓ CreateMutationOptions.md found at docs/framework/angular/reference/interfaces/
  • ✓ InjectMutationOptions.md found at docs/framework/angular/reference/interfaces/
  • ✓ CreateMutationResult.md found at docs/framework/angular/reference/type-aliases/

Also applies to: 46-46, 52-52

docs/framework/react/guides/important-defaults.md (1)

13-15: Link paths are correctly normalized and verified.

Lines 13-15: The ./query-invalidation.md links are correct—query-invalidation.md exists as a sibling file in docs/framework/react/guides/.

Line 43: The ../../../community-resources path correctly resolves to docs/community-resources.md from the guides directory (three levels up: guides → react → framework → docs).

All updated link targets exist and resolve properly.

docs/framework/svelte/reference/functions/queryOptions.md (1)

38-38: Approve type-alias link path reduction.

All four type-aliases links consistently reduce by one directory level (from ../../type-aliases/ to ../type-aliases/). Directory structure confirms type-aliases is a sibling subdirectory to functions within reference/, making the new paths correct. All referenced files (DefinedInitialDataOptions.md, CreateQueryOptions.md, UndefinedInitialDataOptions.md) exist at the new locations.

Also applies to: 42-42, 74-74, 78-78

docs/framework/react/reference/useSuspenseQueries.md (1)

12-12: Links to useQueries reference are correctly updated to sibling path.

The references to useQueries on lines 12 and 21 are correctly changed from ../useQueries.md to ./useQueries.md. The useQueries.md file exists as a sibling in the reference directory, validating these path updates.

docs/framework/angular/reference/functions/queryOptions.md (1)

78-78: Link paths correctly use sibling directory references.

All cross-reference links properly normalize to ../ relative paths from the functions/ directory:

  • Type-aliases: ../type-aliases/DefinedInitialDataOptions.md, ../type-aliases/UnusedSkipTokenOptions.md, ../type-aliases/UndefinedInitialDataOptions.md
  • Interfaces: ../interfaces/CreateQueryOptions.md (appears 3 times)

The directory structure confirms type-aliases/ and interfaces/ are sibling directories to functions/ within reference/, and all referenced files exist at their new paths. No action required.

docs/framework/svelte/reference/index.md (1)

10-30: Approve link path normalization for API reference index.

All links in this file correctly use local relative paths within the reference directory structure. Type aliases link to type-aliases/, variables to variables/, and functions to functions/ — all confirmed to exist at these relative locations. The change from ../ paths to sibling directory references is necessary and correct, as the parent-level directories do not contain these subdirectories.

docs/framework/react/guides/request-waterfalls.md (1)

10-10: Guide link paths correctly normalized for same-directory resolution.

All 11 guide references consistently use ./ for same-directory references (prefetching.md, ssr.md, advanced-ssr.md, dependent-queries.md), confirming these files are recognized as sibling guides within the guides/ directory and enabling direct local link resolution.

Verified: All referenced guide files exist as siblings in docs/framework/react/guides/.

docs/framework/solid/reference/useQuery.md (2)

193-231: LGTM!

The relative link path adjustments from ../../guides/... to ../guides/... are consistent with the PR's goal of making links resolve correctly at the local level. The cross-reference to ../../../reference/timeoutManager.md at line 226 correctly navigates up to the shared reference directory.


344-344: LGTM!

Link path updated consistently with the other guide references in this file.

docs/framework/react/guides/suspense.md (3)

8-13: LGTM!

The reference links and example links are correctly adjusted to use shorter relative paths that resolve properly from the guides directory.


110-110: LGTM!

Using ./prefetching.md for a sibling file in the same guides directory is the correct pattern.


175-175: LGTM!

Both the example link and the ./advanced-ssr.md reference are correctly updated to use the new relative path convention.

scripts/verify-links.ts (3)

30-54: Path resolution logic is sound.

The approach of navigating up one level from the file path (resolve(filePath, '..', linkPath)) correctly simulates how relative links resolve in a web context where the file is treated as a "directory" endpoint. The /docs boundary check is a good safeguard.


56-86: Example path handling and existence checks look correct.

The transformation from /docs/framework/{framework}/examples/ to /examples/{framework}/ properly maps documentation links to actual example directories. The distinction between directory checks for examples and file checks for regular docs is appropriate.


88-125: Refactored verification flow is clean and well-structured.

The error accumulation and reporting provide clear, actionable output with file, link, resolved path, and reason. The final exit code handling is appropriate for CI usage.

docs/framework/react/reference/queryOptions.md (1)

15-15: LGTM!

Using ./useQuery.md for a sibling file in the same reference directory is correct.

docs/framework/react/guides/queries.md (2)

8-8: LGTM!

Using ./mutations.md for a sibling file in the same guides directory is correct.


124-124: LGTM!

Using ./network-mode.md for a sibling file in the same guides directory is correct.

docs/reference/QueryObserver.md (1)

19-19: Link path correctly adjusted to reduce unnecessary traversal.

The relative path now correctly resolves the useQuery reference using one less parent-directory component.

docs/framework/react/guides/query-keys.md (1)

94-94: Link paths correctly adjusted to reduce traversal depth.

Both external link references now use the appropriate relative path depth (removing one unnecessary parent-directory level).

Also applies to: 101-101

docs/framework/react/guides/placeholder-query-data.md (1)

17-17: Sibling guide references now correctly use current-directory relative paths.

Converting from ../ to ./ for same-directory file references is more accurate and follows the clearer link convention.

Also applies to: 57-57

docs/framework/react/reference/usePrefetchQuery.md (1)

12-12: Link paths correctly adjusted across reference, guide, and sibling references.

All three link adjustments use proper relative path depths:

  • Line 12: Correctly traverses up to cross-framework reference
  • Line 19: Properly references sibling guide directory
  • Line 23: Accurately points to sibling reference file

Also applies to: 19-19, 23-23

docs/framework/angular/reference/functions/infiniteQueryOptions.md (1)

54-54: Type and interface reference links correctly adjusted to sibling directory depth.

All six type alias and interface references now use the correct relative path to sibling type-aliases/ and interfaces/ directories.

Also applies to: 60-60, 102-102, 108-108, 150-150, 156-156

docs/reference/QueryClient.md (1)

66-66: Cross-framework reference links systematically adjusted to correct relative path depth.

All framework references from the top-level reference directory now use the proper one-level-up traversal pattern (../framework/react/...), and all internal guide/reference cross-links have been consistently updated.

Also applies to: 98-98, 175-175, 237-237, 263-263, 301-301, 313-313, 339-340, 381-381, 414-415, 431-431, 454-454, 477-477, 481-481, 497-497, 501-501, 552-552

docs/framework/react/guides/network-mode.md (1)

6-6: Guide and reference links correctly adjusted with appropriate relative paths.

  • Same-directory guide references now use ./ convention (lines 6, 12, 22)
  • Cross-directory reference link properly traverses to top-level reference directory (line 40)

Also applies to: 12-12, 22-22, 40-40

docs/framework/react/guides/query-functions.md (1)

102-102: Query function guide links and reference links properly adjusted.

  • Same-directory guide cross-references now use ./ convention (lines 102, 106, 110)
  • Cross-directory QueryClient reference link correctly traverses three levels up to reach docs/reference/ (line 103)

Also applies to: 103-103, 106-106, 110-110

docs/framework/react/reference/useQuery.md (2)

69-69: Link path corrections are accurate and consistent. These changes correctly shorten relative paths from ../../guides/ to ../guides/, which is appropriate for local documentation link resolution where files in docs/framework/react/reference/ reference sibling guides in docs/framework/react/guides/.

Also applies to: 72-72, 74-74, 78-78, 82-82, 224-224


104-104: Cross-framework reference path verified. The reference to ../../../reference/timeoutManager.md from docs/framework/react/reference/useQuery.md correctly traverses three levels to reach the top-level docs/reference/ directory, which is appropriate for this external reference.

docs/framework/react/guides/query-options.md (2)

6-6: Link path reductions are correct. Shortening ../../typescript.md to ../typescript.md and ../../reference/infiniteQueryOptions.md to ../reference/infiniteQueryOptions.md accurately reflect the new local link resolution where one-level-up traversal suffices from the guides directory.

Also applies to: 34-34


36-36: Same-directory reference uses appropriate relative path. The change from ../render-optimizations.md to ./render-optimizations.md is the idiomatic approach for references within the same directory (docs/framework/react/guides/).

docs/framework/react/guides/advanced-ssr.md (1)

8-8: Cross-guide and examples references are properly adjusted. The changes consistently use ./ for same-directory guide references (ssr.md, request-waterfalls.md) and ../examples/ for example links, which is correct for local resolution from the docs/framework/react/guides/ directory level.

Also applies to: 16-16, 533-533, 600-600, 604-604

docs/framework/react/guides/mutations.md (2)

139-139: Same-directory sibling guide references properly use relative notation. The links to ./invalidations-from-mutations.md and ./optimistic-updates.md correctly use current-directory (./) references since all three files reside in docs/framework/react/guides/.


62-62: Parent-level resource references correctly adjusted. The changes from ../../plugins/ to ../plugins/ and ../../examples/ to ../examples/ accurately reflect one-level-up traversal from the guides directory to sibling resource directories, while the QueryClient reference appropriately maintains its longer path to reach the top-level reference directory.

Also applies to: 346-346, 389-389

docs/framework/react/reference/usePrefetchInfiniteQuery.md (2)

19-19: Reference file cross-links properly adjusted. The update from ../../guides/default-query-function.md to ../guides/default-query-function.md correctly reflects the one-level traversal needed from the reference directory to guides. The same-directory reference to ./useSuspenseInfiniteQuery.md is appropriately idiomatic.

Also applies to: 33-33


12-12: Cross-framework reference to QueryClient correctly maintains depth. The path ../../../reference/QueryClient.md properly traverses three levels from docs/framework/react/reference/ to reach the top-level docs/reference/ directory, which is appropriate for external-framework references.

docs/framework/react/guides/migrating-to-v5.md (2)

172-172: Single-level traversal updates are correct. The systematic changes from two-level traversal (../../) to one-level (../) for references like ../typescript.md, ../reference/useQueries.md, ../plugins/createPersister.md, and ../installation correctly reflect the new local link resolution where one-level-up suffices from the guides directory.

Also applies to: 221-221, 501-501, 505-505, 511-511


483-483: Same-directory guide cross-references properly use current-directory notation. The changes to use ./ for sibling guides like optimistic-updates.md, prefetching.md, and suspense.md follow the idiomatic convention for same-directory file references.

Also applies to: 497-497, 527-527

docs/framework/react/guides/prefetching.md (2)

15-15: Same-directory guide references properly use relative notation. The links to ./ssr.md, ./advanced-ssr.md, ./request-waterfalls.md correctly use current-directory (./) syntax since all files reside in docs/framework/react/guides/.

Also applies to: 17-17, 270-270, 436-436


199-199: Varied-depth reference links properly adjusted. The references to ../reference/usePrefetchQuery.md and ../examples/react-router correctly use one-level traversal from guides, while ../../../reference/QueryClient.md appropriately maintains its longer path to reach the top-level reference directory for cross-framework content.

Also applies to: 415-415, 421-421

docs/framework/angular/reference/functions/injectInfiniteQuery.md (1)

56-56: Type and interface references use consistent relative paths. The links to type aliases and interfaces (DefinedInitialDataInfiniteOptions, InjectInfiniteQueryOptions, CreateInfiniteQueryResult, etc.) maintain appropriate path depths for references within the Angular documentation namespace, consistent with the systematic link resolution adjustments across the PR.

Also applies to: 62-62, 68-68, 109-109, 115-115, 121-121, 162-162, 168-168, 174-174

React Query is compatible with React v18+ and works with ReactDOM and React Native.

> Wanna give it a spin before you download? Try out the [simple](../examples/simple) or [basic](../examples/basic) examples!
> Wanna give it a spin before you download? Try out the [simple](./examples/simple) or [basic](./examples/basic) examples!
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

# Use fd to find relevant files
fd -t f "simple|basic" docs/framework/react/
fd -t f "eslint-plugin-query"
fd -t d "examples" docs/
fd -t d "eslint" docs/framework/
</parameter>

Repository: TanStack/query

Length of output: 215


🏁 Script executed:

# List all files in docs/framework to understand structure
find docs/framework -type f -name "*.md" | head -30

# Check git tracked files in docs
git ls-files docs/framework/ | grep -E "(simple|basic|eslint-plugin-query)" | head -10
</parameter>

Repository: TanStack/query

Length of output: 1706


🏁 Script executed:

#!/bin/bash
# Search for simple and basic example files
find docs -name "*simple*" -o -name "*basic*" | grep -i example

# Find eslint-plugin-query file
find docs -name "*eslint-plugin-query*"

# List directory structure around react installation file
ls -la docs/framework/react/ 2>/dev/null || echo "React framework dir not found"

# Check docs/eslint directly
ls -la docs/eslint/ 2>/dev/null || echo "ESLint dir not found"

# Check what's in docs/framework/eslint
ls -la docs/framework/eslint/ 2>/dev/null || echo "Framework ESLint dir not found"

Repository: TanStack/query

Length of output: 1616


🏁 Script executed:

#!/bin/bash
# Read the installation.md file to see actual links
echo "=== Lines around line 36 and 69 in installation.md ==="
cat -n docs/framework/react/installation.md | sed -n '30,45p'
echo ""
echo "=== Lines around line 69 ==="
cat -n docs/framework/react/installation.md | sed -n '63,75p'

# Search for example directories more broadly
echo ""
echo "=== Searching for 'examples' directories ==="
find docs -type d -name "*example*"

# Search for simple and basic as directories
echo ""
echo "=== Searching for 'simple' and 'basic' directories/files ==="
find docs -type d \( -name "*simple*" -o -name "*basic*" \)
find docs -type f \( -name "*simple*" -o -name "*basic*" \) | head -20

Repository: TanStack/query

Length of output: 1508


🏁 Script executed:

#!/bin/bash
# Double-check the path resolution from installation.md to eslint plugin
echo "=== Verifying path resolution ==="
echo "File: docs/framework/react/installation.md"
echo "Current link target: ../../eslint/eslint-plugin-query.md"
echo "Resolves to: docs/framework/eslint/eslint-plugin-query.md"
echo "Actual file location: docs/eslint/eslint-plugin-query.md"
echo ""
echo "=== Checking if ./examples exists ==="
ls -la docs/framework/react/examples/ 2>&1 || echo "Directory does not exist"

# Count total occurrences of eslint-plugin-query.md to see all references
echo ""
echo "=== All references to eslint-plugin-query ==="
grep -r "eslint-plugin-query" docs/ --include="*.md" | head -10

Repository: TanStack/query

Length of output: 1408


Both internal links are broken and need correction.

Line 36: The links to ./examples/simple and ./examples/basic reference a non-existent ./examples/ directory. No examples directory exists in the repository.

Line 69: The link ../../eslint/eslint-plugin-query.md resolves incorrectly. From docs/framework/react/installation.md, this path points to docs/framework/eslint/ (which doesn't exist). The ESLint plugin is located at docs/eslint/, requiring the correct path ../../../eslint/eslint-plugin-query.md (three levels up, not two).

Additionally, line 36 uses informal language ("Wanna") which should be changed to "Want" for consistency with documentation tone.

🧰 Tools
🪛 LanguageTool

[style] ~36-~36: The word ‘wanna’ is informal.
Context: ...orks with ReactDOM and React Native. > Wanna give it a spin before you download? Try...

(WANNA)

🤖 Prompt for AI Agents
In docs/framework/react/installation.md around line 36, change the informal
"Wanna" to "Want" and fix the two broken example links: replace
./examples/simple and ./examples/basic with ../../../examples/simple and
../../../examples/basic (relative to docs/framework/react/installation.md); also
on line 69 update ../../eslint/eslint-plugin-query.md to
../../../eslint/eslint-plugin-query.md so the ESLint plugin link points to
docs/eslint/eslint-plugin-query.md.

Comment on lines +8 to +10
- [Queries](./guides/queries.md)
- [Mutations](./guides/mutations.md)
- [Query Invalidation](./guides/query-invalidation.md)
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Verify that updated relative link paths resolve to actual files

DOCS_DIR="docs/framework/react"

echo "=== Checking guide files ==="
[ -f "$DOCS_DIR/guides/queries.md" ] && echo "✓ guides/queries.md exists" || echo "✗ guides/queries.md NOT FOUND"
[ -f "$DOCS_DIR/guides/mutations.md" ] && echo "✓ guides/mutations.md exists" || echo "✗ guides/mutations.md NOT FOUND"
[ -f "$DOCS_DIR/guides/query-invalidation.md" ] && echo "✓ guides/query-invalidation.md exists" || echo "✗ guides/query-invalidation.md NOT FOUND"

echo ""
echo "=== Checking example link ==="
if [ -d "$DOCS_DIR/examples/simple" ]; then
  echo "✓ examples/simple exists (directory)"
elif [ -f "$DOCS_DIR/examples/simple.md" ]; then
  echo "✓ examples/simple.md exists (file)"
else
  echo "✗ examples/simple target not found"
fi

echo ""
echo "=== Directory structure at docs/framework/react/ ==="
ls -la "$DOCS_DIR/" | head -20

Repository: TanStack/query

Length of output: 1099


🏁 Script executed:

#!/bin/bash
# Check where examples/simple might exist
echo "=== Searching for examples/simple in docs ==="
find docs -type d -name "examples" 2>/dev/null
find docs -type f -name "*simple*" 2>/dev/null | head -20

echo ""
echo "=== Check what the old path ../examples/simple resolved to ==="
# From docs/framework/react/, ../examples would go to docs/framework/examples
ls -la docs/framework/examples/ 2>/dev/null || echo "docs/framework/examples/ does not exist"

echo ""
echo "=== Check react root examples ==="
ls -la docs/framework/react/examples/ 2>/dev/null || echo "docs/framework/react/examples/ does not exist"

Repository: TanStack/query

Length of output: 288


Fix the broken examples/simple link reference on line 14.

The guide links on lines 8-10 resolve correctly to ./guides/queries.md, ./guides/mutations.md, and ./guides/query-invalidation.md respectively. However, the examples/simple reference on line 14 points to a non-existent target—neither docs/framework/react/examples/simple nor the prior docs/framework/examples/simple path exists in the repository. Clarify the intended destination or remove the link if it is no longer applicable.

🤖 Prompt for AI Agents
In docs/framework/react/quick-start.md around lines 8 to 14, the link reference
to examples/simple on line 14 points to a non-existent path; update that link to
the correct relative path to the intended example (verify repository tree to
determine whether it should be ../examples/simple, ../../examples/simple, or
docs/framework/examples/simple) or remove the examples/simple link and any
related text if the example no longer exists, ensuring the rest of the guide
content and link list remain consistent.

```

> Wanna give it a spin before you download? Try out the [basic](../examples/basic) example!
> Wanna give it a spin before you download? Try out the [basic](./examples/basic) example!
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

# First, check if the docs/framework/svelte/examples directory exists and list its contents
find docs/framework/svelte/examples -type f -o -type d 2>/dev/null | head -20

Repository: TanStack/query

Length of output: 40


🏁 Script executed:

# Also check what's at the parent level to understand the structure
ls -la docs/framework/svelte/ 2>/dev/null | head -20

Repository: TanStack/query

Length of output: 545


🏁 Script executed:

# Check if examples exists at the docs/framework level
find docs/framework -type d -name "examples" 2>/dev/null

Repository: TanStack/query

Length of output: 40


🏁 Script executed:

# Also verify the installation.md file content to understand the context
cat -n docs/framework/svelte/installation.md

Repository: TanStack/query

Length of output: 677


🏁 Script executed:

# Find any "basic" example in the framework directory structure
find docs/framework -type d -name "basic" 2>/dev/null
find docs/framework -name "*basic*" 2>/dev/null

Repository: TanStack/query

Length of output: 40


🏁 Script executed:

# List what's in docs/framework directory
ls -la docs/framework/

Repository: TanStack/query

Length of output: 437


🏁 Script executed:

# Search entire repository for "examples/basic" or similar patterns
find . -type d -name "examples" 2>/dev/null | head -20
find . -type d -name "basic" 2>/dev/null | head -20

Repository: TanStack/query

Length of output: 184


🏁 Script executed:

# Also check the examples directory at root level if it exists
ls -la examples/ 2>/dev/null || echo "No examples directory at root"

Repository: TanStack/query

Length of output: 444


The link target does not exist at the updated path.

The change from ../examples/basic to ./examples/basic creates a broken link. The basic example is located at examples/svelte/basic (repository root), not at docs/framework/svelte/examples/basic. From docs/framework/svelte/installation.md, the correct relative path should be ../../examples/svelte/basic.

🤖 Prompt for AI Agents
In docs/framework/svelte/installation.md around line 32, the relative link
./examples/basic is broken; update the link target to point to the actual
example location at ../../examples/svelte/basic from this file. Replace the
current ./examples/basic reference with ../../examples/svelte/basic so the link
resolves to the repository root examples/svelte/basic path.

Svelte Query supports two ways of prefetching data on the server and passing that to the client with SvelteKit.

If you wish to view the ideal SSR setup, please have a look at the [SSR example](../examples/ssr).
If you wish to view the ideal SSR setup, please have a look at the [SSR example](./examples/ssr).
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

find docs -type d -name "ssr" 2>/dev/null | head -20

Repository: TanStack/query

Length of output: 40


🏁 Script executed:

find docs -type d -name "examples" 2>/dev/null | head -20

Repository: TanStack/query

Length of output: 40


🏁 Script executed:

ls -la docs/framework/svelte/examples/ 2>/dev/null || echo "Path does not exist: docs/framework/svelte/examples/"
ls -la docs/framework/examples/ 2>/dev/null || echo "Path does not exist: docs/framework/examples/"

Repository: TanStack/query

Length of output: 156


🏁 Script executed:

find docs -name "*ssr*" -o -name "*example*" | head -30

Repository: TanStack/query

Length of output: 277


🏁 Script executed:

# Search for any directories named 'examples' in docs/
find docs -type d -name "examples" 2>/dev/null

Repository: TanStack/query

Length of output: 40


🏁 Script executed:

# Check the structure of docs/framework/
ls -la docs/framework/

Repository: TanStack/query

Length of output: 437


🏁 Script executed:

# Check the content of docs/framework/svelte/ssr.md to see the actual link
cat -n docs/framework/svelte/ssr.md | grep -A 2 -B 2 "examples"

Repository: TanStack/query

Length of output: 328


🏁 Script executed:

# Search entire repository for any examples directory or ssr example content
find . -type d -name "examples" 2>/dev/null | grep -v node_modules

Repository: TanStack/query

Length of output: 68


🏁 Script executed:

# Verify the examples directory structure at root
ls -la ./examples/ | head -20

Repository: TanStack/query

Length of output: 444


🏁 Script executed:

# Check if there's an ssr-related directory/file in examples
find ./examples -name "*ssr*" -o -name "*svelte*" | head -20

Repository: TanStack/query

Length of output: 1136


The link target does not exist in the repository.

The link [SSR example](./examples/ssr) points to a non-existent resource. There is no ssr example in the Svelte examples directory (./examples/svelte/). Available Svelte examples are: basic, auto-refetching, load-more-infinite-scroll, optimistic-updates, and playground. Either remove this link, update it to point to an actual example, or create the missing SSR example documentation.

🧰 Tools
🪛 LanguageTool

[locale-violation] ~37-~37: In American English, “take a look” is more commonly used.
Context: ...ish to view the ideal SSR setup, please have a look at the SSR example. ...

(HAVE_A_LOOK)

🤖 Prompt for AI Agents
In docs/framework/svelte/ssr.md around line 37, the link "[SSR
example](./examples/ssr)" points to a non-existent path; either remove the dead
link, change it to an existing Svelte example (for example
./examples/svelte/basic or ./examples/svelte/playground) and update the text
accordingly, or add the missing SSR example under ./examples/svelte/ssr with
corresponding README and files; ensure the link target matches the repository
structure and verify the link works before committing.

@lachlancollins lachlancollins merged commit 5ad78fc into main Dec 5, 2025
7 checks passed
@lachlancollins lachlancollins deleted the docs-relative-links branch December 5, 2025 11:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants