Skip to content

Restore SLAM and navigation reference pages as deprecated orphan pages#5191

Open
btshrewsbury-viam wants to merge 5 commits into
mainfrom
docs/deprecate-slam-navigation-pages
Open

Restore SLAM and navigation reference pages as deprecated orphan pages#5191
btshrewsbury-viam wants to merge 5 commits into
mainfrom
docs/deprecate-slam-navigation-pages

Conversation

@btshrewsbury-viam

@btshrewsbury-viam btshrewsbury-viam commented Jul 13, 2026

Copy link
Copy Markdown
Collaborator

What this does

RDK still has Nav and Slam links, and there is a small chance a user is using a pinned version of RDK. This PR brings back a few pages, marks them as deprecated, and "orphans" these pages, so you can get to them if you have the link, but you can not get to them from the navigation. This fixes a few CI related failures checking links work from RDK / API to Docs, and is a better backwards compatible option.

RDK godoc doc-comments link to SLAM and navigation service and API reference pages. Those pages were gone: SLAM had no page at all (both URLs dead-ended at a generic index), and navigation had bare "has been removed" tombstone pages that dropped the API method anchors. That left 17 broken documentation links from RDK (SLAM: 6, navigation: 11), tracked in #5152 and #5154.

Both services are deprecated but may return, so rather than delete-and-redirect, this restores all four pages at their canonical URLs as deprecated, orphaned reference pages:

  • Each page renders normally with a yellow "Discontinued" banner at the top.
  • Each is reachable only by direct URL — excluded from the sidebar, the sitemap, and the search index (_build: { render: always, list: never }).
  • All method anchors resolve, so every RDK link (including #getposition, #getmode, …) lands correctly.

This keeps the deprecated services out of the site's navigation while un-breaking the RDK links, and is trivially reversible if the services come back (swap the banner / re-list the page).

Changes

URL Change
/reference/services/slam/ New minimal service page
/reference/apis/services/slam/ New API page (SLAM API includes already present) — anchors: getposition, getpointcloudmap, getinternalstate, getproperties
/reference/services/navigation/ Restored full reference (replaces the "removed" tombstone)
/reference/apis/services/navigation/ Restored API page + regenerated the 2 deleted navigation API include files — 9 method anchors

Supporting edits: removed the SLAM alias collision from reference/apis/_index.md; removed the navigation cards from the service/API index pages (so the pages stay out of nav); restored 5 navigation images; pruned/repaired dead links in the restored navigation content (dead movement-sensor#configuration fragments dropped, self-references made same-page, frame-system links modernized).

Note

This reverses #5067 for navigation (which had removed the navigation section and pointed it to motion planning). That was intentional — the decision here is to preserve the reference behind a deprecation banner rather than redirect, since navigation may be un-deprecated. The banner deliberately carries no version number (SLAM is still registered as a builtin in RDK main, so there is no clean "removed in vX.X").

Verification

Verified against a local production build (make build-prod, exit 0):

  • 13/13 method anchors render (9 navigation + 4 SLAM).
  • 0 dead links and 0 broken anchor-fragments across all four pages (checked following alias meta-refreshes).
  • Orphaned from all three surfaces: absent from the sidebar nav, the sitemap, and the Typesense search index (while sibling reference pages index normally).
  • prettier, markdownlint, and vale all pass.
  • No forced netlify.toml redirect shadows any of the four URLs (the /reference/services/* rule is non-forced, so it self-heals once the pages exist).

Fixes #5152, fixes #5154

RDK godoc comments link to SLAM and navigation service and API reference
pages. SLAM had no pages (both URLs dead-ended at a generic index), and
navigation had "has been removed" tombstones missing the API method
anchors. This resulted in 17 broken doc links from RDK.

Restore all four pages at their canonical URLs with a "Discontinued"
caution banner, reachable only by direct URL (excluded from the sidebar,
sitemap, and search index via _build list: never). This keeps every RDK
link resolving with working method anchors while keeping the deprecated
services out of the site navigation, and is fully reversible if the
services return.

- Add /reference/services/slam/ and /reference/apis/services/slam/
- Restore /reference/services/navigation/ and
  /reference/apis/services/navigation/ with method content (regenerate
  the two deleted navigation API include files)
- Remove the SLAM alias collision from reference/apis/_index.md and the
  navigation cards from the service/API index pages
- Restore navigation images; prune or repair dead links in restored content

Fixes #5152, #5154
@netlify

netlify Bot commented Jul 13, 2026

Copy link
Copy Markdown

Deploy Preview for viam-docs ready!

Name Link
🔨 Latest commit f3b2cee
🔍 Latest deploy log https://app.netlify.com/projects/viam-docs/deploys/6a552e4a4701a100087464f5
😎 Deploy Preview https://deploy-preview-5191--viam-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
1 paths audited
Performance: 41 (🟢 up 7 from production)
Accessibility: 100 (no change from production)
Best Practices: 100 (no change from production)
SEO: 92 (no change from production)
PWA: 60 (no change from production)
View the detailed breakdown and full score reports

To edit notification comments on pull requests, go to your Netlify project configuration.

htmltest (development build) flagged 37 broken /operate/reference/ links
in the restored navigation page — the /operate/ section is excluded from
that build. Repoint them to their current /reference/ canonical paths,
which resolve in all environments.

Also rename the deprecated `_build` front matter key to `build` (Hugo
0.145+) and re-add the SLAM API aliases that were removed from
reference/apis/_index.md so no previously published URL 404s.

Verified with htmltest (0 errors), a development and production Hugo
0.152.2 build (both clean), all 13 method anchors rendering, and the four
pages absent from the sidebar, sitemap, and search index.
The previous commit's bulk /operate/reference/ -> /reference/ link
rewrite also rewrote the page's own alias, dropping the
/operate/reference/services/navigation/ alias stub. That removed a URL
that existed in the prior deploy, which the no-more-404 Netlify plugin
rejects. Restore the alias so no published URL 404s (verified: the built
page set now has zero removals versus main, and htmltest still passes).
The capitalized /reference/apis/services/SLAM/ alias generated a redirect
stub that, on Netlify's case-insensitive serving, collided with and
shadowed the real /reference/apis/services/slam/ page (the deploy served
a 287-byte meta-refresh stub instead of the page). Remove the capitalized
SLAM aliases; the lowercase page still answers those URLs via
case-insensitive routing, so no published URL 404s.
Removing the /reference/apis/services/SLAM/ Hugo aliases unshadowed the
real /slam/ page but removed URLs that the no-more-404 plugin expects,
failing the deploy. Instead of Hugo aliases (which create a /SLAM/ stub
that shadows the lowercase page on case-insensitive serving), handle the
two capitalized URLs with edge 301 redirects to the canonical lowercase
page, and add them to the plugin's skipPatterns so their consolidation
is not treated as a regression. Redirect `from` matching is
case-sensitive, so these rules cannot catch the lowercase /slam/ page.
@btshrewsbury-viam

Copy link
Copy Markdown
Collaborator Author

Shannon Bradshaw (@shannonbradshaw) This sort of reverts the changes to Nav and Slam, but hopefully in a good way. Could you please review?

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

Labels

safe to build This pull request is marked safe to build from a trusted zone

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[DOCS PR #5191] Navigation API reference page missing method content (9 anchors) [DOCS PR #5191] SLAM reference pages missing (build out or drop)

2 participants