DOC-6909 Fix pre-existing broken links across the docs - #3795
Open
andy-stark-redis wants to merge 3 commits into
Open
DOC-6909 Fix pre-existing broken links across the docs#3795andy-stark-redis wants to merge 3 commits into
andy-stark-redis wants to merge 3 commits into
Conversation
Contributor
Contributor
Contributor
dwdougherty
approved these changes
Aug 12, 2026
dwdougherty
left a comment
Collaborator
There was a problem hiding this comment.
Just the one bit of snark. Otherwise, LGTM.
| Flushes all the previously watched keys for a [transaction][tt]. | ||
|
|
||
| [tt]: /develop/interact/transactions | ||
| [tt]: /develop/using-commands/transactions |
Collaborator
There was a problem hiding this comment.
Gotta admit, these are weird. tt is defined separately, but only used once (same for the other pages below). I think these are a remnant from the site migration. It would be better to just use a normal relref here.
Contributor
Author
There was a problem hiding this comment.
@dwdougherty Thanks for the warning. Would it be OK for me to replace these with normal links or is there some reason to keep them as they are?
Collaborator
There was a problem hiding this comment.
Sorry I wasn't clear. Please replace them with normal links.
andy-stark-redis
force-pushed
the
DOC-6909-1-link-fixes
branch
from
August 12, 2026 15:01
56d6760 to
3eee0fb
Compare
andy-stark-redis
marked this pull request as ready for review
August 12, 2026 15:02
Corrects links that were already broken on main, found by pointing a link render hook at the whole corpus. Every fix here stays in relref form and depends on nothing else, so it stands alone. Covers the REST API permissions anchor across four versions, a doubled link in the Node.js AMR page, alias canonicalisations, and the setbit, benchmarks and release-note pages. The malformed auto-tiering path in the flex overview is absent because that fix reached main independently in the meantime. Also removes an aggregations-syntax note whose products.txt dataset has never existed in the repo, which was confirmed with the team. The redisvl pages are pulled from an external site on every sync, so these hand-edits there will be overwritten within about a week; the durable fix belongs in build/redisvl_docs_sync.py. They are included to keep the build clean now, which was a deliberate call. Ticket: DOC-6909 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Replaces the [text][label] form, with its separate [label]: target definition, with ordinary inline links. A reviewer on #3795 pointed out the indirection buys nothing here: the labels are opaque two-letter codes, the definition sits paragraphs away from the text that uses it, and most labels are used exactly once. 35 labels across 28 files, all in command pages bar two. Internal targets are wrapped in relref to match the surrounding convention and to keep a bad target loud at build time; the six external URLs go inline as plain URLs. Every internal target was checked to resolve to a real content file first, because relref makes a missing target a build failure whereas the bare path this replaces would have failed silently. Two traps worth recording for anyone repeating this. A naive definition regex also matches the URI templates in the import and export pages, where lines like [protocol]://[username]:[password]@[host]:[port]/ sit inside fenced code blocks; converting those would corrupt the page, so fenced content is excluded and those files are untouched. And a usage can straddle a line break, as in zadd.md where the text wraps between "sorted" and "sets][tdtss]" -- a line-by-line matcher silently misses those, which cost three of the 35. One definition is deliberately left in place: keyspace.md defines [tdts] but never references it, so there is nothing to inline. It is dead weight rather than a broken link, and removing it is a separate decision. Learned: reference-link definitions cannot be found with a line-anchored regex alone, because fenced URI templates match the same shape and real usages can wrap across lines Constraint: only convert an internal target to relref after confirming it resolves, since relref turns a missing target into a build failure while a bare path degrades silently Ticket: DOC-6909 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
andy-stark-redis
force-pushed
the
DOC-6909-1-link-fixes
branch
from
August 12, 2026 15:25
3eee0fb to
2d28ec4
Compare
andy-stark-redis
marked this pull request as draft
August 12, 2026 15:26
Each of these is a link that Markdown does not recognise as a link, so the page shows the raw syntax to the reader. Found while sanity-checking the reference-style conversion, and each pattern occurs exactly once in the corpus. The Kubernetes release note used the reference-style form but put a relref shortcode where the label belongs, so nothing defined that label and the whole construct rendered as text. The Redis OM for Java page used a relref as the link *text* as well as the destination, so the reader saw a bare URL instead of a title; it now shows the target page's own title. The clients reference wrapped an already-complete link in a second link to the same page, which nests an anchor inside an anchor. All three targets were confirmed to exist before editing. Ticket: DOC-6909 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part 1 of 4 of a stack that splits #3732 into independently reviewable pieces, after @paoloredis noted the single PR was too much to review at once.
Stack: #3795 (this) → #3796 → #3797 → #3798
What this is
Links that were already broken on
main, surfaced by pointing a link render hook at the whole corpus. Every fix stays inrelrefform and depends on nothing else in the stack, so this can merge on its own.permissions.md— missing#on an anchor, across four versionsnodejs/amr.md— a doubled[Authority]([Authority](...))linksetbit, benchmarks and two release-note pagesaggregations-syntax.md— removes a note pointing at./data/products.txt, a dataset that has never existed in the repo (confirmed with the team)Two things reviewers should weigh
The 5 RedisVL files. @paoloredis asked about these on #3732. They are correct fixes, but RedisVL pages are regenerated from an external site on every sync, so they will be overwritten. While splitting this stack I found that
0.24.0and0.25.0arrived (in ddebc77) carrying the same broken relative link this PR hand-fixes in0.23.0and the unversioned copy — so the defect is reproduced by every sync. That's paolo's point demonstrated: the durable fix belongs inbuild/redisvl_docs_sync.py. I've kept them here to keep the build clean now, but I'm happy to drop them and do the sync-script fix instead.The aggregations note. Cursor Bugbot argued the removal also dropped useful context (that examples use a hypothetical products dataset), independent of the dead download link. Restoring just the sentence is a one-liner if preferred.
Note
Low Risk
Documentation-only link and copy fixes with no application or API behavior changes.
Overview
Repairs broken or fragile links that were already wrong on
main, surfaced by link validation. Changes are documentation-only and use Hugorelreffor internal targets where appropriate.Command and reference pages replace footnote-style reference links and raw paths with
{{< relref "..." >}}(for example transactions, key specs, ACL, latency monitor, data types). External URLs are inlined where reference blocks pointed off-site. Several pages update transaction doc paths from/develop/interact/transactionsto/develop/using-commands/transactions.Targeted fixes include:
user_managerpermission tables in multiple RS REST APIpermissions.mdversions (missing#onview_all_nodes_alerts); doubled[Authority]([Authority](...))in Node.js AMR docs; RedisVL MCP auth Transport Security links viarelref; aggregations-syntax removal of a note linking to a non-existent./data/products.txt; pipelining link path update in benchmarks; and minor release-note / integrate copy fixes.RedisVL hand-edits in synced versioned pages may be overwritten on the next docs sync unless the sync script is updated separately.
Reviewed by Cursor Bugbot for commit a14c849. Bugbot is set up for automated code reviews on this repo. Configure here.