Skip to content

Fix docs CI hard-fails, broken links, and prose typos#360

Closed
claude[bot] wants to merge 1 commit into
mainfrom
docs/daily-scan-2026-07-14
Closed

Fix docs CI hard-fails, broken links, and prose typos#360
claude[bot] wants to merge 1 commit into
mainfrom
docs/daily-scan-2026-07-14

Conversation

@claude

@claude claude Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Requested by Archie McKenzie · Slack thread

Summary

Daily automated docs scan. 18 subagents scanned every .mdx file under docs/en-US/*, blog/en-US, devlog/en-US, and authors/ for CONTRIBUTING.md compliance, broken links/references, and clear prose errors. Every finding below was independently verified against the actual file contents before being applied — nothing was auto-applied on an agent's word alone.

Before → After (by subsection)

core

  • docs/en-US/core/index.mdx: removed a stray import Video from '@/components/Video'; — this is a CI hard-fail (bare import in an MDX body); <Video> is provided globally, as proven by other pages that already use it without importing it.
  • docs/en-US/core/locales.mdx: completed a sentence that trailed off mid-thought ("However, the platform will only translate" → "...into locales that are officially supported.").

react

  • docs/en-US/react/api/components/gtprovider.mdx: "Render settings controls the loading behavior" → "Render settings control the loading behavior" (subject–verb agreement).

react-core-linter

  • docs/en-US/react-core-linter/index.mdx, docs/en-US/react-core-linter/guides/quickstart.mdx: removed the same stray import Video CI hard-fail.
  • docs/en-US/react-core-linter/rules/static-string.mdx: "Registration functions can only accept static strings" → "Translation functions..." (the rule is about translation functions like gt/msg; "Registration" doesn't appear anywhere else on the page).

next

  • api/config/with-gt-config.mdx: fixed a reference to a non-existent withGTPropswithGTConfig.
  • api/dictionary/use-translations.mdx: the doc called the returned function d in three spots, but every code example on the page calls it t (const t = useTranslations()). Fixed all three to t.
  • api/types/dictionary-translation-options.mdx: same dt fix, plus fixed the accompanying link (was pointing at the useGT strings page instead of useTranslations); also fixed a heading level (### Next steps## Next steps, matching every other page).
  • api/components/tx.mdx and api/strings/tx.mdx: fixed an identical garbled sentence in both files ("there is a delay while waiting for an on-demand translation to load is significantly slower" → "on-demand translation is significantly slower, since there is a delay while waiting for the translation to load"); also fixed a getGT link that pointed at the useGT page instead of getGT's own page.
  • api/strings/get-gt.mdx, api/strings/get-messages.mdx: "Translations strings with X" → "Translation strings with X"; "it will fallback to..." → "it will fall back to..." ("fallback" used as a verb).
  • api/components/t.mdx, api/helpers/get-locale.mdx (×2), concepts/environments.mdx: same "fallback" (verb) → "fall back" fix.
  • api/middleware/create-next-middleware.mdx: the "Remove default locale prefix" section's code sample set prefixDefaultLocale: true, contradicting both the section's own instructions and the explanation directly below it — changed to false. Also removed a trailing ## Next steps heading with no content under it.
  • guides/local-tx.mdx: removed a dangling - API References: bullet with no sub-items under it (rather than inventing links).
  • guides/migration.mdx: fixed a duplicated list number (two consecutive "2." items → "2." and "3.").
  • index.mdx: "Both <T>, useGT(), and getGT() support..." → "All of <T>, useGT(), and getGT()..." ("both" doesn't work for three items).
  • tutorials/examples/next-speedrun.mdx: "Dev Api Keys" → "Dev API Keys" (capitalization).

overview

  • docs/en-US/overview/faqs.mdx: "Yes you can!" → "Yes, you can!" (missing comma).

locadex

  • docs/en-US/locadex/next.mdx: removed a leftover HTML-commented-out image reference pointing at a nonexistent asset path.

blog

  • blog/en-US/i18n-without-translation-files.mdx: removed the same stray import Video CI hard-fail.
  • blog/en-US/gt-next.mdx, blog/en-US/multilingual-nextjs-seo.mdx (×2), blog/en-US/plurals.mdx (×4): added missing language ids to fenced code blocks (``````bash/```text).

devlog

  • devlog/en-US/gt-react_v10_15_0.mdx, devlog/en-US/gt-react_v10_19_0.mdx, devlog/en-US/react-core-linter_v0_1_0.mdx: removed the same stray import Video CI hard-fail (3 more occurrences).
  • devlog/en-US/gt-next_v6_3_0.mdx, devlog/en-US/gt-react_v10_18_0.mdx: added missing code-fence language ids.
  • devlog/en-US/gt-next_v6_2_0.mdx: fixed a 2-item list that was indented with spaces+a tab, which made Markdown render it as a code block instead of a numbered list.
  • devlog/en-US/gt-next_v6_10_0.mdx: "locale resolution happens from the reading the URL path" → removed the duplicated article.

authors

  • authors/archie.mdx: fixed a malformed Twitter/X profile URL that had an erroneous /photo suffix.
  • authors/jackie.mdx: added the required occupation frontmatter field (Software Engineer — taken directly from the bio text on the same page).
  • authors/default.mdx: added the required occupation frontmatter field (Team).

How

37 files touched across docs/en-US/{core,react,react-core-linter,next,overview,locadex}, blog/en-US, devlog/en-US, and authors/. All changes are mechanical (removed/added a line, fixed a word, fixed a link target) — no prose was rewritten for voice or style, and docs-templates/ was not touched.

Flagged for human review (not auto-fixed — needs a judgment call)

  • docs/en-US/react-native/tutorials/quickstart.mdx and quickstart-expo.mdx: both say gt-react-native "does not export a pre-built <LocaleSelector> component," but the same files (and mini-shop.mdx, and the API reference) also document/use <LocaleSelector>. Unclear which side of the contradiction is stale.
  • docs/en-US/cli/formats/gt.mdx: frontmatter title is "GT JSX," but the page is actually a CLI/build workflow tutorial, not a description of a JSX-related format. Possibly a stale title, but changing it needs someone who knows the intended scope of the page.
  • devlog/en-US/gt-i18n_v0_1_0.mdx: three inline links (msg(), mFallback(), gtFallback()) point at # placeholders instead of real targets — left alone since we don't have the correct URLs.

Generated by Claude Code

- Remove stray `import Video from '@/components/Video'` statements (CI
  hard-fail: bare import in MDX body); <Video> is globally provided, as
  proven by existing usage elsewhere without any import.
- Add missing code-fence language ids across several blog/devlog posts.
- Fix broken/mislinked API references (getGT pointing at the useGT page,
  dictionary `d` references that should read `t`), a duplicated list
  number, an inverted prefixDefaultLocale example, and other prose bugs
  (typos, dangling sentences, subject-verb agreement, "fallback" used as
  a verb, dangling empty sections).
- Fill in missing/malformed author frontmatter fields.
@claude
claude Bot requested a review from a team as a code owner July 14, 2026 15:25
@claude

claude Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor Author

Daily docs scan summary

18 subagents scanned every subsection under docs/en-US/*, blog/en-US, devlog/en-US, and authors/. Every finding was manually re-verified against the actual files before being applied.

Auto-merge: not enabled — this session's GitHub GraphQL access is restricted to a pinned set of PR-review operations, and REST has no auto-merge endpoint. Someone with repo access will need to click "Enable auto-merge" (squash) manually.

Note: this run could not post its summary to Slack (channel C0AEUCELSUT) because Slack tools were unavailable in this session — leaving the report here instead.

Fixed by subsection (issues found -> fixed)

  • core: 3 -> 2 (removed a CI-breaking stray import Video; completed a sentence that trailed off mid-thought)
  • next: 23 -> 23 (broken/mislinked API refs, a d->t naming bug, an inverted prefixDefaultLocale example, dangling empty sections, several grammar fixes incl. "fallback" used as a verb)
  • react: 2 -> 1 (subject-verb agreement fix)
  • react-core-linter: 3 -> 3 (2x stray import Video, 1 wrong-word fix)
  • overview: 2 -> 1 (missing comma)
  • locadex: 1 -> 1 (removed dead commented-out image ref)
  • blog: 8 -> 8 (1x stray import Video, 7x missing code-fence language ids)
  • devlog: 8 -> 7 (3x stray import Video, 2x code-fence ids, 1 broken list indentation, 1 grammar fix)
  • authors: 3 -> 3 (malformed Twitter URL, 2x missing required occupation field)
  • cli, python, node, platform, sanity, key-concepts, tanstack-start, next-lint: clean or only false positives

4 findings were discarded as false positives: several agents flagged FAQ pages for "skipping" heading levels (h1->h3), but that is a consistent, intentional convention across every faqs.mdx in the repo, confirmed independently by multiple subagents.

Flagged for human judgment, not auto-fixed

  • react-native/tutorials/quickstart{,-expo}.mdx claim gt-react-native has no <LocaleSelector>, but other pages in the same repo document and use it -- contradiction, unclear which side is stale.
  • cli/formats/gt.mdx frontmatter title "GT JSX" does not match the page's actual content (a CLI workflow tutorial, not a format spec).
  • devlog/gt-i18n_v0_1_0.mdx has 3 links pointing at # placeholders instead of real targets.

37 files touched, all mechanical (no prose rewritten for voice/style, docs-templates/ untouched).

@moss-bryophyta

Copy link
Copy Markdown
Contributor

Closing stale docs PR — docs review is moving to a linter-based workflow going forward, and this backlog is now out of date (per Taylor). Keeping #372 and #373.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants