Skip to content

refactor(website): substrate migration batch 6a — docs pages off inline styles - #856

Merged
blove merged 2 commits into
mainfrom
blove/style-substrate-batch-6a
Aug 29, 2026
Merged

refactor(website): substrate migration batch 6a — docs pages off inline styles#856
blove merged 2 commits into
mainfrom
blove/style-substrate-batch-6a

Conversation

@blove

@blove blove commented Aug 29, 2026

Copy link
Copy Markdown
Contributor

What

Batch 6a of the substrate migration (plan, Task 6a): the four docs-adjacent route files move to src/styles/pages.css. This is the shape-D showcase — 23 named CSSProperties variables covering 111 style sites collapse to 45 classes.

The docs shell ([library]/[section]/[slug]/page.tsx) migrates its paddingTop: 80 and keeps overflow-x-hidden verbatim — those are known defects owned by the polish arc, not this migration.

Verified: four pages signature-identical to production

page elements result
/docs 110 identical to prod
/docs/licensing 90 identical to prod
/docs/choosing-an-adapter 328 identical to prod
/docs/chat/components/chat (full shell) 1252 identical to prod

Plus nx test website fully green (347), 0 lint errors, prod build green (294 pages).

A caught near-miss worth reading

The implementer's self-review caught a genuine zero-visual-change violation before it shipped: three docs-index card headers share a cardHeaderStyle with marginBottom: 12, but a fourth call site omits the margin. The first collapse pass unified all four onto one class — which would have added 12px to that card. It now has its own .docs-index-card-header-inline class, documented in pages.css. The signature match on /docs confirms the fix.

🤖 Generated with Claude Code

blove added 2 commits August 29, 2026 15:40
Batch 6a (1/2): app/docs/page.tsx and app/docs/licensing/page.tsx move
their static presentation — shape-D CSSProperties variables (headingStyle,
bodyStyle, cellStyle, stepLabelStyle, etc.) and one-off literal style
objects — into src/styles/pages.css as page-prefixed classes
(.docs-index-*, .licensing-*). Values move verbatim; GlyphChip's
size-driven width/height stay inline (unbounded prop). The
supporting-libraries card header keeps its own class
(.docs-index-card-header-inline) rather than reusing .docs-index-card-header,
since its source object omits the shared style's margin-bottom.
Batch 6a (2/2): app/docs/choosing-an-adapter/page.tsx moves its hero
maxWidth and Eyebrow spacing to .adapter-* classes (its --tw-prose-*
custom-prop object stays inline, same escape hatch as MdxRenderer). The
docs shell (app/docs/[library]/[section]/[slug]/page.tsx) moves its
background + paddingTop into .docs-shell-page/.docs-shell-body verbatim
— the known paddingTop:80 / overflow-x-hidden defects are untouched,
left for a later project.
@blove
blove enabled auto-merge (squash) August 29, 2026 22:44
@vercel

vercel Bot commented Aug 29, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
threadplane Ready Ready Preview Aug 29, 2026 10:46pm

Request Review

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Automated approval: this PR received an intelligent (AI) code review. See the review comments on this PR.

@github-actions

github-actions Bot commented Aug 29, 2026

Copy link
Copy Markdown
Contributor

Claude finished @blove's task in 0s —— View job


I'll analyze this and get back to you.

@blove
blove merged commit 0527125 into main Aug 29, 2026
24 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant