Skip to content

Update blog layout + categories feature - #57

Merged
dewabisma merged 7 commits into
mainfrom
beast/update-blog-layout
Sep 17, 2026
Merged

dewabisma merged 7 commits into
mainfrom
beast/update-blog-layout

Conversation

@dewabisma

Copy link
Copy Markdown
Collaborator

Summary

  • Support categories for blog post
  • Make blog post layout centered

@dewabisma
dewabisma requested a review from n13 September 16, 2026 03:35

@n13 n13 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.

Reviewer model: GPT 5.6 Sol

Request changes: the category deep-link path can crash the hydrated blog list on malformed public query input.

Blocking finding

  • [P1] Handle unknown category query values before updating statewebsite/src/components/features/blog/BlogList.tsx:118-124 passes any category query value into parseBlogCategoryFilter, while website/src/utils/blog-categories.ts:12-19 deliberately throws for unsupported values. A request such as /blog?category= or /blog?category=podcast therefore raises an uncaught exception from the initial React effect (and from the popstate handler), leaving the blog-list island in an error instead of rendering a usable page. Treat the URL as untrusted input and handle an invalid value explicitly without throwing out of the effect, then add a regression test at the component/deep-link boundary.

Validation

  • npx --yes bun test — passed, 41 tests.
  • SITE_BASE_URL=http://localhost:3000 ./node_modules/.bin/astro build — passed for all localized routes; existing missing-translation warnings remain outside this diff.
  • ./node_modules/.bin/prettier --check . — passed.
  • git diff --check b62c838ba42d8731a02ed2b4afc5ce4fc7e02106...f5d9d71ed181d8be516b3943e85d359f4de1cb3c — passed.
  • node scripts/check-seo-meta.mjs — reports 17 pre-existing launch metadata length issues; the affected launch metadata is unchanged by this PR.
  • GitHub reports no CI checks for this head.

@dewabisma
dewabisma requested a review from n13 September 16, 2026 10:53

@n13 n13 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.

Reviewer model: GPT 5.6 Sol

Request changes: the prior malformed-category crash is fixed, but the current head fails the repository's required formatting gate.

Blocking finding

  • Format the migrated blog frontmatter before mergingwebsite/src/contents/blogs/en-US/weekly-update-01-13-2026.md:11 is a representative case: the newly migrated multiline tags array does not match the repository's Prettier output. prettier --check . reports 189 files, all changed by this PR. .github/workflows/code-quality.yml runs this exact format:check gate and prevents the dependent build/SEO job from running when it fails, so this head cannot pass the required PR workflow. Run bun run format:write, commit the resulting formatting changes, and rerun the check.

Validation

  • npx --yes bun test — passed, 54 tests.
  • SITE_BASE_URL=http://localhost:3000 ./node_modules/.bin/astro build — passed, 642 pages; the build emitted non-fatal translation/compression warnings.
  • ./node_modules/.bin/prettier --check . — failed on 189 PR-changed blog files.
  • git diff --check b62c838ba42d8731a02ed2b4afc5ce4fc7e02106...73d48854abf8a8a64cf19267bd3bf72f4357e767 — passed.
  • node scripts/check-seo-meta.mjs — reports 17 launch-metadata length issues outside the fields changed by this PR.
  • GitHub currently reports no checks for this head.

@dewabisma
dewabisma requested a review from n13 September 17, 2026 02:05

@n13 n13 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.

Reviewer model: GPT 5.6 Sol

Approve: the previous malformed-category and formatting blockers are resolved, and I found no remaining blocking issues at 9fd61eb.

The category schema, deep-link parsing, locale-specific related-post selection, canonical tag migration, and localized labels are consistent across the full base-to-head diff. Invalid public category query values now safely select all posts, and regression coverage exercises that boundary.

Validation

  • npx --yes bun test — passed, 54 tests.
  • ./node_modules/.bin/prettier --check . — passed.
  • SITE_BASE_URL=http://localhost:3000 npx --yes bun run build — passed, 642 pages; existing non-fatal translation/compression warnings remain.
  • git diff --check b62c838ba42d8731a02ed2b4afc5ce4fc7e02106...9fd61ebfa8f48c5cea282cf439969ec0e87b754b — passed.
  • node scripts/check-seo-meta.mjs — still reports the 17 pre-existing launch-metadata length issues outside the fields changed by this PR.
  • GitHub reports no CI checks for this head.

No blocking findings.

@dewabisma
dewabisma requested a review from n13 September 17, 2026 02:36

@n13 n13 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.

Reviewer model: GPT 5.6 Sol

Approve: the prior malformed-category and formatting blockers remain resolved, and the merge from main is correctly integrated at 877c695.

I rechecked the complete current base-to-head diff and the incremental merge commit. The category schema and filtering, untrusted query parsing, locale-scoped related posts, canonical tag migration, localized labels, and merged CRQC article/tag additions are consistent. No blocking findings.

Validation

  • npx --yes bun test — passed, 56 tests.
  • ./node_modules/.bin/prettier --check . — passed.
  • SITE_BASE_URL=http://localhost:3000 PUPPETEER_SKIP_DOWNLOAD=true npx --yes bun run build — passed, 642 pages; existing non-fatal translation/compression warnings remain.
  • git diff --check db99b5d543cb892e55bf7a730085d2ed9b903f36...877c6956015669cb2f9f566997966bdee5a6ab72 — passed.
  • node scripts/check-seo-meta.mjs — still reports the 17 pre-existing launch-metadata length issues outside the fields changed by this PR.
  • GitHub reports no CI checks for this head.

@dewabisma
dewabisma merged commit 5b73c4b into main Sep 17, 2026
@dewabisma
dewabisma deleted the beast/update-blog-layout branch September 17, 2026 02:43
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.

2 participants