Skip to content

v3.7.1 — consumer:guides bug-fix patch (#52 + #51 + #48)

Choose a tag to compare

@brandon-behring brandon-behring released this 23 May 12:47
· 60 commits to main since this release
41d26f9

Patch release closing 3 issues from the brandon-behring/guides + brandon-behring/guides-experimentation Phase 0b batch (2026-05-22→23). Unblocks that workspace's CI (was crashing on validate under Node 20) and fixes brace-math rendering in research-portfolio.

Fixed

  • book-scaffold validate no longer requires Node 22 (#52). scripts/validate.mjs previously imported glob from node:fs/promises, an API added in Node 22. The scaffold's generated consumer CI templates ship node-version: '20', so npm run validate crashed on every consumer's prebuild hook with SyntaxError: The requested module 'node:fs/promises' does not provide an export named 'glob'. Replaced with a recursive readdir walker (extracted to scripts/walk-mdx.mjs for unit-testability). Works on Node 18+; output format matches the previous glob shape.
  • MDX math with curly braces now renders in research-portfolio preset (#51). Expressions like $\mathbb{E}\{X\}$, $\mathbb{P}\{X|Y\}$, $\mathrm{Cov}\{X, Y\}$ previously failed because src/config.ts gated the KaTeX wiring on the literal profile === 'academic', ignoring the katex: true flag that research-portfolio sets in its profile definition. Without remark-math intercepting first, MDX parsed {X} as a JSX expression containing undefined variable X. Fix: gate on PROFILES[profile]?.katex === true (single source of truth: the profile registry). New visual fixture fixture-research-portfolio/.../math.mdx covers brace-math at 4 viewport widths.
  • create-book now adds KaTeX peer deps for research-portfolio scaffolds (paired with the above). Previously only academic scaffolds got katex/rehype-katex/remark-math in their generated package.json.
  • create-book now accepts course-notes and research-portfolio presets (latent bug fix). VALID_PROFILES had been rejecting both since they shipped (v3.3.0 and v3.5.0 respectively) — they could only be selected by editing a scaffolded book manually.

Added

  • Component prop tables for v3.5.0 components (#48) in PACKAGE_DESIGN.md §10. Covers PreReleaseBanner, PolicyRef, AICollaborationDisclosure, BlockedByCallout with prop signatures + default values + slot semantics.

Release policy

  • D12 lock-step preserved: @brandon_m_behring/create-book@3.7.1 ships alongside the toolkit.
  • Pre-publish smoke gate (v3.6.5) ran for both academic and research-portfolio scaffolds before publish.