Skip to content

Release v0.21.0#42

Merged
baezor merged 3 commits intomainfrom
release/v0.21.0
Jan 27, 2026
Merged

Release v0.21.0#42
baezor merged 3 commits intomainfrom
release/v0.21.0

Conversation

@baezor
Copy link
Owner

@baezor baezor commented Jan 27, 2026

Summary

  • Remove run page link from main navigation
  • Remove 2026 challenge button from homepage links
  • Run page remains accessible via direct URL

Test plan

  • Build passes
  • Verify navigation no longer shows "Run" link
  • Verify homepage no longer shows 2026 challenge button
  • Verify /run page still works via direct URL

- Fix invalid JSON-LD schemas by replacing is:inline define:vars with
  set:html={JSON.stringify()} pattern in BaseHead.astro and
  BreadcrumbSchema.astro
- Fix category URL case inconsistency (TypeScript → typescript) to
  prevent duplicate content
- Add ogType prop to support og:type="article" for blog posts
- Add lastmod dates to sitemap via serialize function
- Expand homepage meta description from 50 to 176 characters for
  better SERP snippets
The run page remains accessible via direct URL but is no longer
linked in the main navigation or homepage links section.
@baezor baezor merged commit fb2020d into main Jan 27, 2026
1 check was pending
@baezor baezor deleted the release/v0.21.0 branch January 27, 2026 00:55
@claude
Copy link

claude bot commented Jan 27, 2026

Code Review

Summary

This release (v0.21.0) includes several improvements to SEO, structured data, and navigation cleanup. The changes are well-structured and follow best practices. Overall, this is a solid release with minor suggestions.

Strengths

  1. Improved SEO and Structured Data - Enhanced SITE_DESCRIPTION with more descriptive text including technologies and location. Properly implemented ogType parameter to distinguish between website and article pages. Cleaner structured data implementation using set:html instead of is:inline define:vars

  2. Sitemap Enhancement - Added lastmod field to all sitemap entries (lines 42-48 in astro.config.mjs). This improves SEO by informing search engines about content freshness

  3. Code Quality - Replaced verbose is:inline define:vars with cleaner set:html pattern. Better separation of concerns in BaseHead.astro and BreadcrumbSchema.astro. Consistent use of TypeScript interfaces

  4. Navigation Cleanup - Successfully removed Run page from navigation while keeping it accessible via direct URL. Removed unused homepage link to 2026 challenge

Issues and Recommendations

  1. GitFlow Violation - This PR targets main but should target develop according to CLAUDE.md. Per GitFlow workflow, release branches should merge to main AND back-merge to develop. After merging to main, ensure you back-merge to develop to keep branches in sync

  2. Potential Visual Regression Test Updates Needed - Removed navigation link may cause visual test failures if snapshots are not updated. Run npm run test:visual locally to check for failures. If tests fail, update snapshots with npm run test:visual:update and commit updated snapshots before merging

  3. Sitemap lastmod Implementation - Using new Date().toISOString() sets all pages to build time. This means blog posts show build date instead of actual pubDate or updatedDate, and every build changes lastmod for ALL pages. Consider using actual content dates for blog posts instead of build time

  4. Missing Test Coverage - No tests added for the new functionality (ogType parameter, sitemap serialize function, structured data JSON-LD output). Consider adding unit tests for the new ogType functionality

  5. Blog Category Case Consistency - Changed TypeScript to typescript in implementing-a-queue-in-typescript.md. Verify this is intentional and consistent across ALL blog posts

  6. Unused Icon Import - Still importing mdi:run icons despite removing Run page from navigation (astro.config.mjs:25). Clean up unused icon imports

Security

No security concerns identified

Performance

No performance regressions expected. Cleaner structured data implementation may slightly reduce bundle size. Sitemap changes are server-side only

Test Plan Status

Per your test plan: Build passes, Navigation verification needs manual check, Homepage verification needs manual check, Direct URL access needs manual check, Visual regression tests status unknown and may need snapshot updates

Next Steps

  1. Verify base branch: Ensure proper GitFlow (merge to main, then back to develop)
  2. Run visual tests and update snapshots if needed
  3. Check category consistency across all blog posts
  4. Clean up unused icons from astro.config.mjs
  5. Consider sitemap improvement for blog posts
  6. Add test coverage for new ogType functionality

Verdict

Approve with suggestions

The core changes are solid and improve SEO and structured data. The suggestions above are mostly minor improvements and cleanup. The most important items to address before merging: 1) Confirm visual tests pass or update snapshots, 2) Follow GitFlow back-merge process, 3) Consider the sitemap lastmod implementation

Great work on the SEO improvements!

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