Skip to content

fix(view): repoint /wheels/guides at guides.wheels.dev (closes #2263) - #2288

Merged
bpamiri merged 1 commit into
developfrom
claude/eloquent-jones-4734d2
Apr 24, 2026
Merged

bpamiri merged 1 commit into
developfrom
claude/eloquent-jones-4734d2

Conversation

@bpamiri

@bpamiri bpamiri commented Apr 24, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • /wheels/guides was showing only the placeholder "Select a guide from the navigation menu" because #2189 retired the GitBook source tree at docs/src/ but left the in-app viewer reading from it.
  • Rewrite vendor/wheels/public/docs/guides.cfm to redirect HTML callers to guides.wheels.dev (meta-refresh + visible section list) and return a sidebar-derived JSON summary for ?format=json.
  • Flatten the Starlight sidebar in ai.cfm::getGuidesSummary() into 79 external-URL entries so /wheels/ai and MCP consumers stop returning an empty list.
  • Drop ~700 lines of dead GitBook-era renderer code (layouts/guides.cfm, layouts/guides-plain.cfm, DocsHelper.cfc).

Closes #2263.

Test plan

  • curl /wheels/guides → HTML landing with <meta http-equiv="refresh" content="3;url=https://guides.wheels.dev/v4-0-0-snapshot/"> and section list rendered from web/sites/guides/src/sidebars/v4-0-0-snapshot.json
  • curl /wheels/guides?format=json → {title, url, external:true, sections:[10]}
  • curl '/wheels/guides?path=digging-deeper/packages&format=json' → url: https://guides.wheels.dev/v4-0-0-snapshot/digging-deeper/packages/
  • curl /wheels/ai?format=json → documentation.guides = 79 flattened entries with https://guides.wheels.dev/... URLs
  • CI: Lucee/Adobe cross-engine compat matrix passes (no CFML regressions in affected views)
  • CI: PublicComponentProductionSpec still passes (guides() handler in Public.cfc is unchanged and still calls \$blockInProduction())

Notes

  • Installed apps (no monorepo web/ dir) gracefully return sections: [] — guides.wheels.dev remains the canonical source.
  • guideImage() handler + /wheels/guides-assets/... route are intentionally left in place; they already 404 safely for missing assets and are tested by PathTraversalSpec. Unrelated to this bug.

🤖 Generated with Claude Code

The GitBook source tree under docs/src/ was deleted in PR #2189 when the
wheels.dev publishing pipeline was retired, but the in-app /wheels/guides
endpoint still read from it — every fileExists() returned false, so the
page silently rendered the "Select a guide from the navigation menu"
placeholder fallback.

Rewrite guides.cfm to redirect HTML callers to guides.wheels.dev with a
meta-refresh + visible section list, and return a sidebar-derived JSON
summary to AI/MCP callers. ai.cfm::getGuidesSummary() now flattens the
Starlight sidebar into 79 guide entries with external URLs. Delete the
GitBook-era renderer (layouts/guides.cfm, layouts/guides-plain.cfm,
DocsHelper.cfc) — ~700 lines no longer used.

Runtime-verified via LuCLI: HTML landing renders, JSON returns the 10
top-level sections + deep-link URL for ?path=, /wheels/ai lists 79
flattened guides.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@bpamiri
bpamiri merged commit 54849c8 into develop Apr 24, 2026
3 checks passed
@bpamiri
bpamiri deleted the claude/eloquent-jones-4734d2 branch April 24, 2026 17:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Guides section not loading content for contributors and developers

1 participant