Repository navigation
build(docs): upgrade starlight and install the docs plugins - #1866
Merged
Merged
Conversation
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
plumix-docs | e3b146f | Commit Preview URL Branch Preview URL |
Aug 22 2026, 09:32 PM |
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
plumix-marketing | e3b146f | Commit Preview URL Branch Preview URL |
Aug 22 2026, 09:32 PM |
Brings apps/docs up to the dependency set the documentation work assumes. Nothing behaves
differently — the rendered site is byte-identical apart from Starlight dropping a dead
`pageHide` listener (the DOM event is `pagehide`, so it never fired).
The Starlight floor is `0.41.5`, where the `docsSchema({ extend })` bugs with Zod enums and
unions were fixed; written against `0.41.3`, the two-value `stability` enum would surface as a
confusing failure rather than a known issue.
The specifier is `>=0.41.5 <0.41.7` rather than a caret range because `0.41.7` raised its
`@astrojs/markdown-satteri` floor to `^0.3.5` while leaving its own `satteri` dependency at
`^0.9.1`, and `@astrojs/markdown-satteri@0.3.7` moved on to `satteri@^0.10.3`. The two Sätteri
copies meet inside Starlight's own `integrations/markdown-plugins.ts`, which `pnpm typecheck`
compiles from source, so the docs app stops type-checking on a dependency it never imports.
apps/docs/README.md records the constraint; #1865 tracks lifting it.
`starlight-auto-sidebar`, `starlight-links-validator` and `starlight-llms-txt` land as
dependencies; `vitest` and `plumix` as devDependencies. None has a consumer yet, so each is
listed in knip's `apps/docs` ignore set with a note on which ticket wires it up.
Closes #1852
nasyrov
force-pushed
the
docs/upgrade-starlight-install-plugins
branch
from
August 22, 2026 21:31
4c58595 to
e3b146f
Compare
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.
What does this PR do?
Brings
apps/docsup to the dependency set the documentation work assumes. Nothing behavesdifferently —
astro.config.mjsis untouched and the rendered site is byte-identical apart fromStarlight dropping a dead
pageHidelistener (the DOM event ispagehide, so it never fired).Verified by snapshotting
dist/before the change and diffing after a forced rebuild: same fileset, and that one script line is the only delta across both pages, modulo scoped-style and asset
hashes.
Closes #1852
The Starlight range needs a note
The ticket asked for
>=0.41.5"a patch bump inside the existing range". The specifier is>=0.41.5 <0.41.7rather than a caret, because^0.41.5floats to0.41.7, which does nottype-check.
0.41.7shipped on 5 August with@astrojs/markdown-satteri: ^0.3.5and its ownsatteri: ^0.9.1— consistent then, since
0.3.5and0.3.6were still onsatteri@^0.9.1. On 19 August@astrojs/markdown-satteri@0.3.7moved tosatteri@^0.10.3and that range swallowed it. TwoSätteri copies now meet inside Starlight's own
integrations/markdown-plugins.ts, whichpnpm typecheckcompiles from source, so the docs app fails to type-check on a dependency it neverimports.
Confirmed upstream rather than a local resolution artefact: it reproduces on
0.41.6and0.41.7with
astroat both7.1.1and7.2.4, and forcingsatterito0.10.5throughpnpm.overridesonly swaps it for a different genuine error in the same file, because Starlight's code targets
satteri 0.9.
Starlight is migrating in withastro/starlight#4134,
blocked on an Astro release carrying
withastro/astro#17766 (merged, unreleased).
apps/docs/README.mdrecords the constraint; #1865 tracks lifting it.Knip
The five new dependencies have no consumer yet — that is the point of the prefactor — so each is
listed in knip's
apps/docsignore set with a note on which ticket wires it up.Reviewer notes
apps/docsgetsvitestwithout@plumix/vitest-config, coverage, or atest:unitscript,unlike every other vitest-having package. Those belong with the content-check suite ticket.
pnpm.overrides, the repo's existing mechanism forblocking a bad upstream version. I put it on the dependency so the acceptance criterion's floor
and the upstream break sit where a reader is already looking; happy to move it.
apps/docsis private.Type of change
Checklist
pnpm typecheckpassespnpm lintpassespnpm buildpassespnpm format,pnpm knip,pnpm testandpnpm install --frozen-lockfilealso pass. No testsadded: this change installs dependencies and wires nothing up. The suite that exercises them lands
with the content-check ticket.
AI-generated code disclosure
Screenshots
No admin UI change.