Skip to content

seo: redirects + product-specific titles for 157 docs pages - #927

Merged
CahidArda merged 13 commits into
mainfrom
seo/weekly-2026-10-19
Oct 23, 2026
Merged

CahidArda merged 13 commits into
mainfrom
seo/weekly-2026-10-19

Conversation

@CahidArda

@CahidArda CahidArda commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

Summary

SEO fixes from Ahrefs (Site Audit project 9854245, crawls 2026-10-18 and 2026-10-20; Site Explorer 2026-10-22):

1. Redirects for legacy /docs/* paths with dofollow backlinks from DR75-94 domains (Cloudflare docs, StackOverflow, Medium, Habr, Go pkg docs, DeepWiki) that currently 404. This also consolidates 3 older open draft PRs from earlier weekly runs of this routine (#889, #903, #914), which were still open and unmerged and overlapped with each other and with this PR — folded their entries in and closed all three as superseded. See the commit message on c225c96 for the full consolidation notes (what was deduped, what was corrected, what was added).

2. 46 duplicate page titles. Ahrefs flags duplicate_title on exactly 17 pages titled literally "Getting Started" and 30 pages titled literally "Overview" — a repo-wide search confirms these counts are the complete set, not a sample. Every product's SDK/getstarted/overview landing page has the same copy-pasted placeholder title with no product or SDK name, so Google sees an identical <title> for e.g. Redis, QStash, Vector and Search's getting-started pages. Several of these carry real traffic: redis/overall/getstarted (862 visits/mo), qstash/overall/getstarted (534), workflow/getstarted (312). Renamed each to a unique, descriptive title (e.g. "Overview" → "Redis TypeScript SDK Overview"); no body copy or URLs changed. The docs landing page (introduction.mdx) keeps its title "Overview" per review (7554981). It's the only page left with that title, so it's no longer a duplicate.

3. The two "Compare" pages (commit eb0044f). redis/overall/compare (247 visits/mo) and qstash/overall/compare (26) share the literal title "Compare" (duplicate_title group of 2). Retitled to "Compare Upstash Redis to Alternatives" / "Compare QStash to Alternatives", and added the missing meta description on the Redis page (it had none).

4. Quickstarts and other pages missing their product name (commits 1a708c4, 84d7149, ac39594).

  • Quickstarts (44 pages). Titles were only the framework or platform name, so Google showed e.g. "App Router - Upstash Documentation" or "Laravel - Upstash Documentation", with neither Redis nor the framework in them. The same title was also reused across products: three "Cloudflare Workers", two "Next.js", two "App Router", two "Flask", two "FastAPI". Retitled to " with ": "Upstash Redis with Next.js (App Router)", "Upstash Redis with Laravel", "QStash with Next.js", "Upstash Workflow with FastAPI", and so on. Ahrefs (US) shows easy, under-served demand for these: "vercel redis" 100/mo, "django redis" 70, "supabase redis" 70, "laravel redis" 50 (1,000 globally), "fastapi redis" 40, "nextjs redis" 30, all with keyword difficulty 0-9. The pages currently rank SDK Documentation #6 for "laravel redis", Developer API Docs #5 "cloudflare redis", feat: qstash docs #4 "deno redis", and mostly nothing else.
  • Feature, help and SDK pages with search traffic but generic titles. Examples:
    • redis/help/faq: "Frequently Asked Questions" → "Upstash Redis FAQ". It ranks feat: qstash docs #4 for "upstash redis" (2,500/mo).
    • redis/features/globaldatabase → "Upstash Redis Global Database"
    • redis/howto/connect-client → "Connect Any Redis Client to Upstash Redis"
    • redis/features/restapi → "Upstash Redis REST API"
    • redis/search/introduction: "Introduction" → "Redis Search Introduction"
    • qstash/features/queues / dlq / flowcontrol / schedules → "QStash Queues", "QStash Dead Letter Queue (DLQ)", …
    • qstash/howto/local-tunnel → "Local Tunnel for QStash Development" (ranks feat: rename auth fields to email:apikey #10 for "localtunnel", 350/mo)
    • qstash/overall/usecases → "QStash Use Cases"
  • Remaining cross-product duplicate titles. Each now carries its product name: Changelog ×4, Quickstart ×4, FAQ, Features ×5, Security, Pricing, Prod Pack & Enterprise, Read-only Token, Redact Private Data, Select a Region, Local Tunnel, Use Cases, Schedules.
  • Wrong product in title. The Workflow Datadog and Prometheus pages were titled "… - Upstash QStash Integration". They document the shared QStash metrics integration, so they're now "… - Upstash Workflow & QStash Integration".
  • Agent tip as meta description (24 Redis pages). These pages had no description: and start with the "If you are an AI agent…" <Tip>, so Docs7 used that tip as their meta description (Ahrefs duplicate_description group of 24). Added a real description to each, covering the 21 Redis quickstarts, redis/features/globaldatabase and the Redis TS/Python SDK getting-started pages.

Sidebar labels unchanged. Every retitled page has sidebarTitle set to its previous label, so the sidebar matches main exactly. Only the <title>, H1, JSON-LD and llms.txt use the new titles. Verified on the Docs7 preview of 1a708c4:

  • redis/quickstarts/nextjs-app-router, laravel and cloudflareworkers, redis/features/globaldatabase, redis/help/faq, qstash/features/queues, qstash/quickstarts/vercel-nextjs and workflow/quickstarts/fastapi all show the new <title> and the old sidebar label.
  • The Redis quickstarts and Global Database now have the new meta description instead of the agent tip.

Self-review (ac39594). Four parallel reviewers checked all 156 changed pages against their content and docs.json. They confirmed:

  • every sidebar label is identical to main;
  • every title names the right product and language and is unique in the nav;
  • only frontmatter changed, with CRLF endings kept where the files use them.

They found four quickstart descriptions that overstated their page, now fixed:

  • Koyeb was described as a "globally scaled" deploy.
  • Azure said it deploys with the Azure CLI; it deploys with Functions Core Tools.
  • Next.js App Router listed a "create a database" step the page doesn't have.
  • DigitalOcean asked readers to migrate before the shutdown date.

The same commit adds the product name to a few remaining titles, e.g. "Upstash Redis Getting Started", "Upstash Search Getting Started", "Upstash Terraform Provider Overview", and "Redis Search Field Operators".

Deliberately not changed: Redis command-reference pages (~725). redis/commands/* (333), redis/sdks/ts/commands/* (196) and redis/sdks/py/commands/* (196) are titled with just the command ("ZRANK", "TTL"). The same title repeats across the three sets, and the pages rank individually for non-brand queries like "zrank", "hget", "redis ttl" (positions 2-10, low volume each). That's better handled as one templated decision, e.g. "ZRANK - Redis Python SDK", or a Docs7 title template per section, in its own PR.

Evidence — redirects

Source (legacy, 404) New destination Backlink DR Referring page
/docs/howto/developerapi /common/account/developerapi 91, 79 pkg.go.dev/terraform-provider-upstash, upstash.mintlify.app
/docs/docs/overall/getstarted /redis/overall/getstarted 94 medium.com/upstash/get-started-with-next-js-and-kafka
/docs/overall/durability /redis/features/durability 88 habr.com
/docs/overall/consistency /redis/features/consistency 88 habr.com
/docs/vector/features/metadatafiltering /vector/features/filtering 91, 75 pkg.go.dev/vector-go, libraries.io/go/vector-go
/docs/workflow/migration /workflow/howto/migrations 78 (×2) deepwiki.com/upstash/qstash-js
/docs/qstash/pricing /qstash/overall/pricing 81 ithub (GitHub mirror)/riccardogiorato/qstash-with-nextjs
ratelimit paths (×6, prefixed+bare) /redis/sdks/ratelimit-ts/overview or /redis/overall/ratelimit 81, 78, 79 ithub mirror, deepwiki.com
redis/overview paths (×4) /redis/overall/getstarted or /redis/sdks/ts/overview 81, 87 railway.com/deploy/serverless-redis
/docs/vector/sdks/ts/semantic-cache (+bare) /vector/sdk/semantic-cache-js 81 ithub mirror/awesome-llm-cost
7 more from consolidated #889/#914 see commit c225c96 77-97 github.com (×5), deepwiki.com

Evidence — titles

Full before/after list is in the diff (title: change plus sidebarTitle: each). Top-traffic examples:

Page Before After (<title>) Sidebar Traffic/mo
/redis/overall/getstarted "Getting Started" "Upstash Redis Getting Started" Getting Started 862
/redis/help/faq "Frequently Asked Questions" "Upstash Redis FAQ" Frequently Asked Questions 584
/qstash/overall/getstarted "Getting Started" "QStash Getting Started" Getting Started 534
/workflow/getstarted "Overview" "Workflow Overview" Overview 312
/redis/overall/compare "Compare" (no meta description) "Compare Upstash Redis to Alternatives" + description Compare 247
/redis/features/globaldatabase "Global Database" (agent tip as description) "Upstash Redis Global Database" + description Global Database 60
/qstash/features/queues "Queues" "QStash Queues" Queues 40
/redis/quickstarts/nextjs-app-router "App Router" (agent tip as description) "Upstash Redis with Next.js (App Router)" + description App Router —

Expected effect

  • Redirects: recover link equity from ~22 dofollow backlinks (DR75-94) and fix one confirmed internal 404.
  • Brand pages: distinct, descriptive <title>s mainly help people pick the right page from results for brand searches.
  • Quickstarts and feature pages: these are where new traffic is most likely. The titles now contain the non-brand query terms people use ("laravel redis", "nextjs redis", "dead letter queue"), and those keywords are low-difficulty.
  • Link previews and AI tools: the 24 Redis pages now share a summary of the page instead of an instruction for AI agents.

Notes for reviewer

  • Left Kafka-related broken backlinks (/docs/kafka/*, /pricing/kafka) out of scope per the standing Kafka-paused exclusion.

  • Please double check the 3 corrected redirect destinations (ratelimit × 2, redis/overview) since they're based on file-tree inference, not a live crawl of the rendered site.

  • qstash/features/queues.mdx, qstash/features/background-jobs.mdx and qstash/quickstarts/python-vercel.mdx use CRLF line endings; they were edited with CRLF preserved, so their diff is the frontmatter lines only.

  • The one body change in the diff (devops/terraform/overview.mdx, the api_key link) comes from docs: 2 review fixes for #927 (broken links, docs conventions) #933, a broken-link fix merged into this branch, not from the title changes.

  • redis/quickstarts/digitalocean.mdx still says the integration "will be" shut down on August 31, 2026, a date that has passed. That body text is outside this PR.

  • Mintlify Validation - link-rot fails with 52 broken links. All of them are in files this PR doesn't touch, mostly links to generated qstash/api-reference/* and workflow/api-reference/* pages. Docs are served by Docs7, not Mintlify.

  • Breadcrumbs (separate, Docs7-side, not fixed here): Google shows the Terraform page as "upstash.com › API Reference › Developer API". That comes from Docs7's JSON-LD BreadcrumbList, which on the live page is API Reference > Developer API > Overview. Two causes:

    1. In docs.json, Terraform and Pulumi sit under API Reference > Developer API > DevOps > Terraform.
    2. Docs7 leaves out of the JSON-LD any nav group whose link is the current page itself. "DevOps" and "Terraform" both link to devops/terraform/overview, so they're dropped, while the visible breadcrumb on the page does show "Developer API / DevOps / Terraform". Mintlify behaves the same way.

    Fixing this means either changing Docs7's breadcrumb generation or moving DevOps out of the "Developer API" group in docs.json; neither is in this PR.

🤖 Generated with Claude Code

https://claude.ai/code/session_01RAhS4rWaMVuMCaTUJKgz3P

Ahrefs Site Explorer (upstash.com, broken-backlinks, 2026-10-18) found
dofollow backlinks from DR75-94 domains (Cloudflare docs, StackOverflow,
Medium, Habr, Go pkg docs, DeepWiki) pointing at legacy /docs/* paths
that now 404. /docs/howto/developerapi is also in the current internal
404 crawl (0 traffic, but 2 external backlinks at DR79/91). Added
redirects from each legacy path to its current canonical page, plus
the bare (no /docs prefix) variant for each, following the existing
dual-entry convention already used in this file (e.g. "/box/overall/stream"
and "/docs/box/overall/stream" -> "/box/overall/agent").

Two of the reported broken paths (/docs/howto/connectwithtls and
/docs/features/restapi) already had matching redirects in this file,
so no new entries were added for those - Ahrefs' backlink index just
hasn't recrawled since the fix shipped.
@mintlify

mintlify Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated
upstash 🟢 Ready View Preview Oct 23, 2026, 9:27 AM

💡 Tip: Enable Automations to automatically generate PRs for you.

@context7

context7 Bot commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

Docs7 for upstash.com

Result Status Action
Deployment ✅ Ready Open preview
Content review ⏳ In progress —

Commit ac39594 · Updated 2026-10-23 09:29 UTC · View build details

@context7
context7 Bot temporarily deployed to Docs7 Preview: seo/weekly-2026-10-19 October 19, 2026 06:32 Destroyed
…#914)

These three PRs are from earlier weekly runs of the same routine and
were still open/unmerged, each adding overlapping or complementary
legacy-docs redirects. Folded their entries into this PR instead of
leaving four separate overlapping PRs open:

- Deduplicated exact-match sources already covered here (/howto/developerapi,
  /overall/durability, /overall/consistency, /docs/overall/getstarted).
- Added the bare (no /docs prefix) variants #889 had that this PR was
  missing (metadatafiltering, semantic-cache, ratelimit/overview,
  ratelimit, redis/ratelimit, redis/overview).
- Corrected 3 destinations where this PR's guess and #889's guess
  disagreed, verified against the actual file tree:
  - /ratelimit, /redis/ratelimit -> /redis/overall/ratelimit (a real
    file, redis/overall/ratelimit.mdx, missed earlier - not the
    TS-specific SDK overview page).
  - /redis/overview -> /redis/overall/getstarted (generic "overview"
    with no SDK named shouldn't default to the TS SDK).
  - metadatafiltering kept pointing at /vector/features/filtering
    (titled "Metadata Filtering") rather than #889's
    /vector/features/metadata (titled "Metadata and Data" - a
    different, more general page).
- Added #889's 2 fully-unique entries (redis/sdks/javascriptsdk/..,
  vector/sdks/rag-chat) and #914's 5 fully-unique entries
  (realtime/box getstarted->quickstart renames, qstash/features/topics,
  and 2 qstash API-reference redirects verified against qstash/openapi.yaml's
  endpoint summaries, which are not backed by static files so a plain
  file-existence check missed them).

#889 and #903 will be closed as superseded. #914 will be closed as
superseded (it was reported "shipped" in last week's ticket but never
merged).
claude and others added 2 commits October 19, 2026 10:58
Ahrefs Site Audit flags duplicate_title on exactly 17 pages titled
"Getting Started" and 30 pages titled "Overview" (project 9854245,
crawl 2026-10-18) - these counts match a full repo search exactly, so
this is the complete set, not a sample.

These are each-product's SDK/getstarted/overview landing pages with a
copy-pasted placeholder title and no product or SDK name, so Google
sees the same <title> for e.g. Redis, QStash, Vector and Search's
getting-started pages, and separately for their SDK overview pages -
including several with real traffic (redis/overall/getstarted: 862
visits/mo, qstash/overall/getstarted: 534, workflow/getstarted: 312,
introduction: 215, redis/overall/compare: 247).

Renamed each page's title to include its product/SDK/feature name
(e.g. "Overview" -> "Redis TypeScript SDK Overview", "Getting Started"
-> "QStash Getting Started"), so every page now has a unique,
descriptive <title>. No body copy, URLs, or nav structure changed -
only the `title` frontmatter field on each page.
@CahidArda CahidArda changed the title seo: add redirects for legacy docs paths with high-DR backlinks seo: redirects + fix 47 duplicate page titles Oct 19, 2026
@context7
context7 Bot temporarily deployed to Docs7 Preview: seo/weekly-2026-10-19 October 19, 2026 11:03 Destroyed
Ahrefs Site Audit (project 9854245) flags duplicate_title on
redis/overall/compare (247 visits/mo) and qstash/overall/compare (26),
which both use the literal title "Compare". Give each a product-specific
title, keep the sidebar label as "Compare" via sidebarTitle, and add the
missing meta description on the Redis page.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RAhS4rWaMVuMCaTUJKgz3P
@CahidArda CahidArda changed the title seo: redirects + fix 47 duplicate page titles seo: redirects + fix 49 duplicate page titles Oct 21, 2026
@context7
context7 Bot temporarily deployed to Docs7 Preview: seo/weekly-2026-10-19 October 21, 2026 09:43 Destroyed
The longer, product-specific titles from aa3ed8e (e.g. "QStash Python
SDK Examples Overview") also showed up as sidebar labels, which is
redundant inside an already-scoped nav group. Add sidebarTitle with each
page's previous label ("Overview", "Getting Started") to all 47 pages, so
the sidebar is unchanged vs main while <title> and JSON-LD keep the
unique titles. Verified on the Docs7 preview that sidebarTitle is honored:
the two Compare pages (eb0044f) render "Compare" in the sidebar and the
full title in <title> and BreadcrumbList.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RAhS4rWaMVuMCaTUJKgz3P
@context7
context7 Bot temporarily deployed to Docs7 Preview: seo/weekly-2026-10-19 October 22, 2026 05:21 Destroyed
@context7
context7 Bot temporarily deployed to Docs7 Preview: seo/weekly-2026-10-19 October 22, 2026 11:01 Destroyed
@CahidArda
CahidArda requested a balanced review from Copilot October 23, 2026 07:02

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟡 Changes recommended

The landing-page title still collides with another published page, leaving the PR’s title-uniqueness objective incomplete.

1 open issue
What changed in this PR

This PR improves documentation discoverability by consolidating legacy redirects from earlier SEO fixes and replacing generic page titles while preserving sidebar labels.

Changes:

  • Adds 32 redirects for legacy documentation URLs.
  • Retitles 49 pages, preserves their sidebar labels, and adds a Redis comparison meta description.
  • Repairs the Terraform API-key link and synchronizes the LLM documentation exports.
File Description
workflow/​steps.mdx Gives the steps overview a Workflow-specific title.
workflow/​getstarted.mdx Gives the Workflow landing page a descriptive title.
workflow/​features/​wait-for-event.mdx Adds a feature-specific overview title.
workflow/​features/​retries.mdx Adds a retries-specific overview title.
workflow/​features/​invoke.mdx Adds an invoke-specific overview title.
workflow/​features/​flow-control.mdx Adds a flow-control-specific overview title.
workflow/​features/​failure-callback.mdx Adds a failure-callback-specific overview title.
workflow/​features/​dlq.mdx Adds a Workflow DLQ overview title.
workflow/​basics/​serve.mdx Identifies Workflow Serve in the title.
workflow/​basics/​client.mdx Identifies Workflow Client in the title.
workflow/​agents/​overview.mdx Adds a Workflow Agents overview title.
workflow/​agents/​getting-started.mdx Adds a Workflow Agents getting-started title.
vector/​sdks/​ts/​getting-started.mdx Identifies the Vector TypeScript SDK.
vector/​sdks/​py/​gettingstarted.mdx Identifies the Vector Python SDK.
vector/​sdks/​php/​getting-started.mdx Identifies the Vector PHP SDK.
vector/​overall/​getstarted.mdx Adds a Vector-specific getting-started title.
vector/​api/​get-started.mdx Identifies the Vector REST API.
search/​sdks/​ts/​getting-started.mdx Identifies the Search TypeScript SDK.
search/​sdks/​py/​gettingstarted.mdx Identifies the Search Python SDK.
search/​overall/​getstarted.mdx Adds a Search-specific getting-started title.
redis/​search/​recipes/​overview.mdx Identifies Redis Search recipes.
redis/​search/​query-operators/​field-operators/​overview.mdx Identifies field operators in the title.
redis/​search/​query-operators/​boolean-operators/​overview.mdx Identifies Boolean operators in the title.
redis/​search/​aggregation-operators/​metric-aggregations/​overview.mdx Identifies metric aggregations in the title.
redis/​search/​aggregation-operators/​bucket-aggregations/​overview.mdx Identifies bucket aggregations in the title.
redis/​sdks/​ts/​overview.mdx Identifies the Redis TypeScript SDK.
redis/​sdks/​ts/​commands/​overview.mdx Identifies Redis TypeScript SDK commands.
redis/​sdks/​ratelimit-ts/​overview.mdx Identifies the Ratelimit TypeScript SDK.
redis/​sdks/​ratelimit-ts/​gettingstarted.mdx Adds a SDK-specific getting-started title.
redis/​sdks/​ratelimit-py/​overview.mdx Identifies the Ratelimit Python SDK.
redis/​sdks/​ratelimit-py/​gettingstarted.mdx Adds a SDK-specific getting-started title.
redis/​sdks/​py/​overview.mdx Identifies the Redis Python SDK.
redis/​sdks/​py/​gettingstarted.mdx Adds a Redis Python getting-started title.
redis/​sdks/​py/​commands/​overview.mdx Identifies Redis Python SDK commands.
redis/​overall/​getstarted.mdx Adds a Redis-specific getting-started title.
redis/​overall/​compare.mdx Adds a descriptive comparison title and meta description.
qstash/​sdks/​ts/​overview.mdx Identifies the QStash TypeScript SDK.
qstash/​sdks/​ts/​gettingstarted.mdx Adds a QStash TypeScript getting-started title.
qstash/​sdks/​ts/​examples/​overview.mdx Identifies QStash TypeScript examples.
qstash/​sdks/​py/​overview.mdx Identifies the QStash Python SDK.
qstash/​sdks/​py/​gettingstarted.mdx Adds a QStash Python getting-started title.
qstash/​sdks/​py/​examples/​overview.mdx Identifies QStash Python examples.
qstash/​overall/​getstarted.mdx Adds a QStash-specific getting-started title.
qstash/​overall/​compare.mdx Adds a descriptive QStash comparison title.
llms.txt Synchronizes index labels and comparison metadata.
llms-full.txt Synchronizes exported titles and the Terraform link.
introduction.mdx Retitles the landing page while preserving its sidebar label.
docs.json Adds legacy documentation redirects.
devops/​terraform/​overview.mdx Retitles the overview and repairs the API-key link.
devops/​pulumi/​overview.mdx Adds a Pulumi-specific overview title.
devops/​developer-api/​introduction.mdx Adds a Developer API getting-started title.
blob/​recipes/​overview.mdx Adds a Blob Recipes overview title.

Review effort: Balanced

Comment thread introduction.mdx Outdated
…ages

Quickstart pages were titled with only the framework or platform name
("App Router", "Laravel", "Next.js"), so search results showed e.g.
"App Router - Upstash Documentation" with neither Redis nor Next.js in
it, and the same title was reused across products (three "Cloudflare
Workers", two "Next.js", two "App Router", ...). Retitle them to
"<Product> with <Framework>" (e.g. "Upstash Redis with Next.js (App
Router)", "QStash with Next.js", "Upstash Workflow with FastAPI").

Also retitle feature/help pages that have search traffic or rankings but
generic titles, per Ahrefs Site Explorer (2026-10-22): Redis FAQ ("upstash
redis" #4, 2.5k/mo), Global Database, Connect Your Client, REST API,
Search Queries, QStash Queues / Use Cases / DLQ / Flow Control / Schedules
/ Local Tunnel ("localtunnel" #10), and the remaining cross-product
duplicate titles (Changelog, Quickstart, FAQ, Features, Security, Pricing,
Read-only Token, ...). Fix the Workflow Datadog and Prometheus pages,
which were titled as QStash integrations.

All pages keep their previous label as sidebarTitle, so the sidebar is
unchanged. Add meta descriptions to the 24 Redis pages whose generated
description was the "If you are an AI agent..." tip (Ahrefs Site Audit,
crawl 2026-10-20).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RAhS4rWaMVuMCaTUJKgz3P
The Workflow Datadog and Prometheus pages document the shared QStash
metrics integration, so name both products instead of only Workflow.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RAhS4rWaMVuMCaTUJKgz3P
@CahidArda CahidArda changed the title seo: redirects + fix 49 duplicate page titles seo: redirects + product-specific titles for 158 docs pages Oct 23, 2026
@context7
context7 Bot temporarily deployed to Docs7 Preview: seo/weekly-2026-10-19 October 23, 2026 07:35 Destroyed
@CahidArda
CahidArda requested a balanced review from Copilot October 23, 2026 09:14
Per review on #927: leave the landing page title unchanged. The duplicate
the rename was meant to fix is resolved by redis/search/introduction now
being titled "Redis Search Introduction", and no other page uses
"Overview" anymore.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RAhS4rWaMVuMCaTUJKgz3P
@CahidArda CahidArda changed the title seo: redirects + product-specific titles for 158 docs pages seo: redirects + product-specific titles for 157 docs pages Oct 23, 2026
@context7
context7 Bot temporarily deployed to Docs7 Preview: seo/weekly-2026-10-19 October 23, 2026 09:17 Destroyed

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

The documentation metadata, additive redirects, synchronized exports, and link correction have no identified blocking issues.

No open issues 🎉

1 resolved since last review

Review effort: Balanced

…view

Self-review of #927 (four parallel reviewers covering all 156 changed
pages) confirmed every sidebar label is unchanged vs main, every new
title matches its page and is unique, and only frontmatter changed.

Fixes from the review:
- Descriptions that overstated the page: Koyeb (not a "globally scaled"
  deploy; it deploys from Git or a container), Azure Functions (deploys
  with Functions Core Tools, not the Azure CLI), Next.js App Router (no
  "create a database" step), DigitalOcean (reword around the shutdown
  date instead of a call to migrate before it).
- Name the product in titles that still left it out: Upstash Redis /
  Search / Vector Getting Started, Upstash Redis Keyspace Notifications,
  Upstash Terraform / Pulumi Provider Overview, Upstash Developer API
  Getting Started, and the four Redis Search operator overviews.
- Match Google's casing: "Google Cloud Run functions".

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RAhS4rWaMVuMCaTUJKgz3P
@context7
context7 Bot temporarily deployed to Docs7 Preview: seo/weekly-2026-10-19 October 23, 2026 09:29 Destroyed
@CahidArda
CahidArda marked this pull request as ready for review October 23, 2026 09:31
@CahidArda
CahidArda merged commit a13b750 into main Oct 23, 2026
3 of 4 checks passed
@CahidArda
CahidArda deleted the seo/weekly-2026-10-19 branch October 23, 2026 09:32

This branch was successfully deployed

1 active deployment
Docs7 Preview: seo/weekly-2026-10-19 — ac395947 Deployed Oct 23, 2026 by context7[bot]
staging — ac395947 Deployed Oct 23, 2026 by mintlify[bot]
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.

3 participants