Skip to content

DOC-6909 Migrate develop/clients/redis-py to portable Markdown links and callouts - #3798

Open
andy-stark-redis wants to merge 1 commit into
DOC-6909-3-render-hooksfrom
DOC-6909-4-redis-py
Open

DOC-6909 Migrate develop/clients/redis-py to portable Markdown links and callouts#3798
andy-stark-redis wants to merge 1 commit into
DOC-6909-3-render-hooksfrom
DOC-6909-4-redis-py

Conversation

@andy-stark-redis

@andy-stark-redis andy-stark-redis commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Part 4 of 4. Stack: #3795#3796#3797#3798 (this)

What this is

One section migrated end to end, as the investigation's proof: 147 links to repo-root-relative /content/ paths and 8 note shortcodes to native blockquote alerts. The source becomes standard Markdown that resolves in VS Code and GitHub as well as in Hugo, with unchanged published output.

Why /content/ rather than ../../../

@dwdougherty objected on #3732 that source-relative links produced long parent-traversal chains — fair: 3 levels on 34 of the 147 links, 2 or more on 100. Both GitHub's rendered view and VS Code resolve a leading slash against the repository root, so the /content/ prefix is what makes one link work in all three places.

It also behaves better on the doubly-mounted Active-Active tree, where the same source is served under two URLs:

Notation under /operate/rs under /operate/rc
relref /operate/rs/… /operate/**rs**/…
/content/…md /operate/rs/… /operate/**rs**/…
../…md /operate/rs/… /operate/**rc**/…

Repo-root-relative tracks relref exactly; source-relative is the one that diverges. So this notation is the faithful relref replacement, and the form it replaces was quietly changing behaviour on that tree.

Verified

No href differences across the migrated pages or either Active-Active mount, no new warnings, no errors, build time unchanged.

Caveat worth stating plainly: HTML parity is not feed parity. The .md/.json outputs were broken for these pages both before and after the notation change, which is why the pipeline fix in #3796 is a prerequisite in this stack rather than a follow-up.

Open question for reviewers

relref is unaffected and still works — 30,218 calls across 4,027 files build warning-free alongside these plain links. But Hugo resolves /develop/x, /develop/x.md and bare develop/x to the same correct URL with no warning, so it cannot distinguish "portable" from "merely working". A non-/content/ link builds a clean site and is silently broken in GitHub and VS Code. If we standardise on this, it wants a lint — .claude/hooks/check_shortcode_paths.py validates relref/image/embed-* today and gives plain Markdown links no validation at all.


Note

Low Risk
Documentation-only link and callout notation changes with no runtime or security impact; main risk is a broken /content/ href if a target path is wrong, which would affect navigation rather than product behavior.

Overview
Migrates the redis-py client docs under content/develop/clients/redis-py/ to portable Markdown: Hugo relref internal links become repo-root /content/... paths (including anchors and _index.md where needed), and {{< note >}} callouts become > [!NOTE] blockquotes.

Coverage spans the section index, connection/async/AMR guides, production usage, error handling, failover, observability, pipelines, scan iteration, Search/JSON/vector examples, probabilistic types, and related cross-links to operate, commands, and integrate content. No application or build logic changes—wording and link/callout syntax only, intended to keep Hugo output aligned while improving link resolution in GitHub and VS Code.

Reviewed by Cursor Bugbot for commit ec9ca85. Bugbot is set up for automated code reviews on this repo. Configure here.

@github-actions

github-actions Bot commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

DOC-6909

@github-actions

github-actions Bot commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

🧠 Redis Memory

Found 8 related items from repository history:

Memory updated at ec9ca85

…and callouts

Converts one section end to end as the investigation's proof: 147 links to
repo-root-relative /content/ paths, and 8 note shortcodes to native
blockquote alerts. The source is now standard Markdown that resolves in
VS Code and GitHub as well as here, and the published output is unchanged.

Repo-root-relative was chosen over source-relative after review feedback
about long parent-traversal chains. Both GitHub's rendered view and VS Code
resolve a leading slash against the repository root, so the /content/ prefix
is what makes a link work in all three places at once.

The notation also matters on the doubly-mounted Active-Active tree, where the
same source is served under two URLs. There, repo-root-relative resolves
exactly as relref does, while source-relative diverges by keeping the reader
inside the second mount. This form is the faithful relref replacement.

Verified against the relref baseline: no href differences across the migrated
pages or either mount, no new warnings, no errors. Note that HTML parity is
not feed parity, which is why the pipeline change lower in this stack is a
prerequisite rather than a follow-up.

Ticket: DOC-6909
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit ec9ca85. Configure here.

- /clients/python/
- /connect/clients/redis-py/
- /clients/redis-py/
- /develop/clients/python/redis-py/

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Removed redirect alias

Medium Severity

The front matter drops the /develop/clients/python/redis-py/ alias while keeping the other historical paths. That URL no longer redirects to the redis-py guide, so old bookmarks and inbound links 404. The sibling redis-vl page still keeps the matching /develop/clients/python/redis-vl/ alias, and the PR’s stated scope is only portable links and callouts.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit ec9ca85. Configure here.

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.

1 participant