Harden releases and documentation SEO - #3
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6b9add66ee
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| "typecheck": "tsc --noEmit -p tsconfig.json", | ||
| "test": "pnpm build && node --test", | ||
| "verify": "pnpm build && node --test test/conformance.test.js" | ||
| "test": "pnpm build && tsc -p tsconfig.test.json && node --test dist-test/test/*.test.js", |
There was a problem hiding this comment.
Clean compiled tests before executing them
When a developer renames or deletes a test after running this command once, TypeScript leaves the old JavaScript file in the ignored dist-test/test directory, and the wildcard still executes that stale test on every subsequent run. This can preserve removed coverage or cause failures from code that no longer exists; remove dist-test before compiling the test suite.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6e3c209bc5
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| { | ||
| userAgent: "*", | ||
| allow: "/", | ||
| disallow: ["/api/", "/_next/"], |
There was a problem hiding this comment.
Allow crawlers to fetch Next.js assets
For Googlebot and other search crawlers that match the * group, this blocks every /_next/static/... JavaScript and CSS asset used to render the deployed documentation. Crawlers may therefore be unable to render the pages as users see them, directly undermining the SEO work in this change; leave /_next/ crawlable and restrict only genuinely private routes such as /api/.
Useful? React with 👍 / 👎.
Expose canonical metadata, structured software/site data, crawl policy, and a sitemap so search engines and answer engines can identify the official SDK documentation. Constraint: The docs site is the canonical public source for the SDK Rejected: Static public robots and sitemap files | generated routes stay aligned with Fumadocs content Confidence: high Scope-risk: narrow Directive: Keep canonical URLs and crawler policy aligned with the production docs domain Tested: pnpm check; pnpm --filter agent-compat-docs typecheck; pnpm --filter agent-compat-docs build Not-tested: Search Console or live crawler indexing after deployment
Treat missing npm publishing credentials as an explicit skipped release and remove the optional GitHub failure-label mutation that caused a secondary 422 error. Constraint: npm publishing requires a configured NPM_TOKEN or trusted publisher Rejected: Fail before checks when the secret is absent | would turn documentation and preview workflows into false failures Confidence: high Scope-risk: moderate Directive: Configure NPM_TOKEN before expecting a public npm release; skipped releases must remain visible in workflow logs Tested: git diff --check; release workflow YAML parsed successfully Not-tested: authenticated semantic-release publish because repository npm credentials are unavailable
Serve the existing banner from the docs app and expose it as the canonical social thumbnail for documentation pages and SDK structured data. Constraint: Reuse the approved repository banner without adding a new asset Rejected: Generate a second social image | duplicates the existing product identity Confidence: high Scope-risk: narrow Directive: Keep social preview assets under the docs app public directory Tested: docs typecheck; docs production build; git diff --check Not-tested: External social crawler cache refresh
Constraint: Keep the existing public banner asset and preserve unrelated README work\nRejected: Metadata-only preview because the request requires an in-page thumbnail\nConfidence: high\nScope-risk: narrow\nDirective: Keep docs media under apps/docs/public/assets\nTested: pnpm --filter agent-compat-docs typecheck; pnpm --filter agent-compat-docs build; git diff --check\nNot-tested: Browser screenshot after deployment
Constraint: Keep crawler rendering and test execution deterministic in CI\nRejected: Ignoring review comments because existing checks passed; review findings target coverage gaps\nConfidence: high\nScope-risk: narrow\nDirective: Keep generated test output disposable and let crawlers fetch framework assets\nTested: pnpm check; pnpm --filter agent-compat-docs build; git diff --check\nNot-tested: Authenticated npm release
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: bd22261fa1
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| @@ -0,0 +1 @@ | |||
| google-site-verification: googleb24d000c6a1cb7c4.html No newline at end of file | |||
There was a problem hiding this comment.
Serve the verification file from the docs app
The deployed Next.js application and its existing static assets live under apps/docs, but this verification file is added to the repository-level public directory; a repo-wide search finds no corresponding file under apps/docs/public. Consequently, requests to /googleb24d000c6a1cb7c4.html from the documentation deployment will not reach this file, preventing the intended Search Console verification; move it into the docs app's public directory or expose an equivalent route.
Useful? React with 👍 / 👎.
| "test": "rm -rf dist-test && pnpm build && tsc -p tsconfig.test.json && node --test dist-test/test/*.test.js", | ||
| "verify": "rm -rf dist-test && pnpm build && tsc -p tsconfig.test.json && node --test dist-test/test/conformance.test.js" |
There was a problem hiding this comment.
Replace the Unix-only test cleanup command
When contributors run either script with pnpm on a standard Windows installation, the scripts execute through cmd.exe, where rm is not available, so testing stops before the build or test suite runs. The previous commands were portable Node/TypeScript invocations; use a cross-platform cleanup such as a small Node fs.rmSync command or a portable removal dependency.
Useful? React with 👍 / 👎.
Summary
Verification