Add changelog page - #679
dawn-ducky wants to merge 9 commits into
Conversation
A searchable, faceted feed of what shipped to Code Push, the CLI, and the API, with expandable entries carrying detail, a command, and a doc link. Seeded with one example entry; add to the ENTRIES array in src/pages/changelog.astro as things ship. Design: https://claude.ai/design/p/8d6abb36-5f0f-4da2-86d9-636e825acb58 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Area was a free string derived from whichever entries existed; fix it to the five actual areas (Code Push, CLI, Console, API, Flutter) so the filter chips are stable regardless of what's in ENTRIES. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
The toolbar opts out of Starlight's markdown sibling spacing, which was pushing every chip after "All" down by 1rem. The expand toggle keeps its button on the badge row, but a stretched ::after covers the whole header so the title and summary toggle the entry too. Links inside the header sit above the overlay. The "+" text glyph is replaced with an SVG so it centers in a larger bubble, and the vertical stroke hides when the entry is open.
- The copy button called preventDefault, so the "link still works as a fallback" comment was false: a failed clipboard write did nothing. Let the link navigate, and show a brief "copied" state on success. - Open the targeted entry on hashchange too, not just on first load, so a permalink followed from the same page expands its entry. - Search the version, detail bullets, and command, not only the title and summary. - Put the command's pre and code on one line so the template's indentation does not render as a leading space.
|
Reviewed this. The page structure, the filtering, and the sidebar wiring all look good, and the build is clean (0 errors, 0 warnings). I found a few small issues and pushed the fixes as a55b990:
How I checked: ran |
Head.astro gives every page a <link rel="alternate" type="text/markdown"> pointing at <path>.md, but [...slug].md.ts only builds those for content collection pages. The changelog is a standalone .astro page, so its link pointed at a 404 and Accept: text/markdown on /changelog/ fell back to HTML. - Move the entries, areas, and month grouping to src/data/changelog.ts so the page and the Markdown route read the same data. - Add src/pages/changelog.md.ts, which renders /changelog.md from it. The existing middleware then negotiates /changelog/ to it with no changes. - List /changelog.md under Optional in llms.txt.
|
One more fix, pushed as 3cf311f: the changelog wasn't reachable as Markdown for agents.
How I checked:
|
New used the theme accent, which is gray in Nova, so it looked like the area badge beside it. New is now green and Fixed moves to blue, the usual changelog convention. Light-mode text also darkens to reach 4.5:1 on the tinted pill at this size: New #166534 (6.2:1), Fixed #1d4ed8 (5.6:1), Changed #7e22ce (5.7:1, was 4.4:1), and Deprecated #92400e (6.3:1, was 2.8:1). Dark mode already passed and keeps its shades, with Fixed at #93c5fd (8.7:1).
|
Pushed 3d897b3 to fix the type badge colors. New looked like the area badge. It used Light-mode contrast. These are about 11px bold labels, so they need 4.5:1. Measured against the tinted pill on a white page:
Dark mode already passed. New uses How I checked: |

Status
READY
Description
Adds
/changelog/— a searchable, faceted feed of what shipped to Code Push, the CLI, and the API, built as aStarlightPagenext toroadmap.astroand linked from the sidebar right below it.Each entry carries a type badge (New/Fixed/Changed/Deprecated), an area tag, and a version, and expands in place to show detail bullets, an optional command snippet, a link to the relevant doc page, and a copyable permalink (
/changelog/#entry-id). Opening the page with a matching#entry-idin the URL auto-expands and scrolls to that entry. Search and the area chips filter the list client-side.Seeded with a single example entry (staged rollouts) rather than the full sample dataset from the design exploration — add more to the
ENTRIESarray insrc/pages/changelog.astroas things ship.Design source: https://claude.ai/design/p/8d6abb36-5f0f-4da2-86d9-636e825acb58 ("Docs Changelog.dc.html", option 3a — the full-page direction marked ready to ship).
Test plan
npm run build(astro check && astro build) passes clean: 0 errors, 0 warnings, all internal links valid