feat(ADR-0046): package documentation portal + nav entry#1686
Merged
Conversation
The /docs/:name viewer (DocPage) already existed but had no entry point — no
index and no nav link — so a doc was reachable only by typing its exact URL.
That is why docs were invisible in the console.
- DocsIndex (/docs): platform-level portal listing every installed `doc`
grouped by package namespace, each linking to the existing viewer. Fetches
via meta.getItems('doc'); empty/error/loading states mirror DocPage.
- groupDocsByPackage: pure, unit-tested grouping helper (6 tests).
- UnifiedSidebar: "Documentation" entry in the base home/system nav — visible
to ALL users, not gated behind workspace-admin (it lives in the always-shown
items array, not the admin cluster).
- App.tsx: register the top-level /docs route alongside /docs/:name; both are
app-independent (reachable with no active app), keeping the doc URL
single-coordinate as ADR-0046 specifies.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
Contributor
✅ Console Performance Budget
📦 Bundle Size Report
Size Limits
|
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.
Why
The
/docs/:nameviewer (DocPage) already shipped, but there was no way in — no index page and no navigation entry — so a doc was reachable only by typing its exact URL. That is why docs were invisible in the console / showcase.Changes
DocsIndex(/docs) — a platform-level portal that lists every installeddocmetadata item, grouped by package namespace, each linking to the existing viewer. Fetches viameta.getItems('doc'); loading / empty / error states mirrorDocPage.groupDocsByPackage— pure, unit-tested grouping helper (6 tests).UnifiedSidebar— a "Documentation" entry in the base home/system nav, visible to all users (placed in the always-shownitemsarray, not the workspace-admin-gated cluster).App.tsx— registers the top-level/docsroute alongside/docs/:name. Both are app-independent (reachable with no active app), keeping the doc URL single-coordinate per ADR-0046.Design (per ADR-0046)
Viewer is platform-level — one global
/docs/<name>, no package/app prefix. The portal is the canonical discovery surface. Per-app deep-links remain opt-inurlnav items pointing at the same global URL.Verification
/docsrenders live (heading "Documentation"); empty-state correct; the{type, items:[{name,label}]}shape it consumes matches the backend.docmetadata is fixed separately in framework (fix(ADR-0046): serve package docs at runtime, not just in the compiled artifact objectstack#1808). With that, the portal listsshowcase_index+showcase_docs_guide.doc-groupsunit tests: 6/6. Console + app-shell typecheck clean.🤖 Generated with Claude Code