Skip to content

Cleanup#277

Merged
pftg merged 14 commits intomasterfrom
cleanup
Apr 9, 2026
Merged

Cleanup#277
pftg merged 14 commits intomasterfrom
cleanup

Conversation

@pftg
Copy link
Copy Markdown
Member

@pftg pftg commented Apr 9, 2026

Summary by CodeRabbit

  • New Features

    • Added comprehensive autonomous blog pipeline documentation with 9-phase workflow and quality gates
    • Added Chrome DevTools rendering validation workflow for HTML/CSS/JS changes
    • Added AI detection and humanization safeguards for blog content
    • Added three new blog posts: Rails 8.1 Active Job continuations, Rails performance optimization patterns, and updated Argon2 migration guide
    • Introduced semantic CSS hooks for homepage sections
  • Documentation

    • Added AGENTS.md registry of installed skills and autonomous workflow specifications
    • Added CLAUDE.md handbook with Chrome DevTools validation, autonomous blog pipeline, and quality enforcement
    • Added QWEN.md configuration guide for Hugo project setup
    • Added CSS/layout simplification task checklist
  • Refactor

    • Optimized CSS resource management with cached partials across page layouts
    • Refactored body class generation to use dynamic page context instead of hard-coded classes
    • Streamlined template data sources across partials
  • Bug Fixes

    • Fixed image URL regex handling for markdown image processing

pftg and others added 14 commits April 9, 2026 09:59
…nt config

- Add new blog post on Rails 2026 performance patterns (YJIT, Rails 8,
  caching, N+1 elimination)
- Update CLAUDE.md with autonomous blog pipeline and AI detection skills
- Update AGENTS.md and QWEN.md with skill registry and 9-phase workflow
- Add .junie/AGENTS.md for Junie agent configuration
- Update Argon2 migration guide with real-world case study and references

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
Walk-through of ActiveJob::Continuable: the Kamal 30s shutdown trap,
before/after migration pattern for existing jobs, and when not to use
continuations.

SEO: title 37 chars (no truncation), meta description 160 chars,
explicit slug, 4 contextual internal links to existing Kamal/Solid
Queue/performance posts, Article schema JSON-LD, 5 external
citations. Primary keyword in first 100 words. Zero fabricated claims.

Note: cover.jpg referenced in frontmatter but not yet added; theme
will fall back to site default og-image until it lands in the post
directory.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add Chrome DevTools rendering validation section to CLAUDE.md
  (page load, console errors, network 404s, Core Web Vitals, a11y)
- Add 10-step agent startup sequence including local pattern search
- Add research protocol to QWEN.md, AGENTS.md, .junie/AGENTS.md
  using claude-context MCP search (no bash commands)

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
@pftg pftg merged commit a9c6fd4 into master Apr 9, 2026
1 check failed
@pftg pftg deleted the cleanup branch April 9, 2026 09:30
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 9, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 3d15621d-4780-4bb6-a26e-90cf97c7904b

📥 Commits

Reviewing files that changed from the base of the PR and between d3700b3 and de54087.

⛔ Files ignored due to path filters (25)
  • docs/70-79-ai-intelligence/76.01-ai-agents-for-blog.pdf is excluded by !**/*.pdf
  • test/fixtures/screenshots/linux/desktop/404.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/about_page/_achievements.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/about_page/_testimonials-header.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/blog/post.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/careers.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/careers/_overview.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/clients/_testimonials-header.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/clients/_testimonials.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/clients/agent-inbox/_overview.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/clients/agent-inbox/_testimonial.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/homepage.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/services/_testimonials-header.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/services/app_web_development.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/services/app_web_development_hero.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/services/fractional-cto/_testimonials-header.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/services/fractional-cto/_testimonials.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/services/fractional_cto.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/use-cases/_testimonials-header.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/use-cases/startup-mvp-prototyping-development/_solution.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/desktop/use-cases/startup-mvp-prototyping-development/_testimonials-header.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/mobile/404.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/mobile/blog/index/_pagination.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/mobile/careers.png is excluded by !**/*.png
  • test/fixtures/screenshots/linux/mobile/homepage.png is excluded by !**/*.png
📒 Files selected for processing (51)
  • .claude/agents/blog-writer.md
  • .claude/agents/research-agent.md
  • .dev/compose.yml
  • AGENTS.md
  • CLAUDE.md
  • QWEN.md
  • Rakefile
  • config/_default/hugo.toml
  • content/blog/rails-8-1-active-job-continuations-end-lost-background-jobs/index.md
  • content/blog/rails-argon2-has-secure-password-migration-guide/index.md
  • content/blog/ruby-on-rails-performance-optimization-patterns-2026/index.md
  • docs/10-19-core-development/10.02-hugo-watch-monitoring-tutorial.md
  • docs/10-19-core-development/10.05-hugo-watch-mode-reference.md
  • docs/tasks.md
  • lib/sync/dev_to_article_fetcher.rb
  • lib/sync/dev_to_client.rb
  • lib/sync/images_downloader.rb
  • lib/sync/post.rb
  • test/base_page_test_case.rb
  • test/support/setup_snap_diff.rb
  • test/system/pages/careers_page_test.rb
  • test/unit/404_template_test.rb
  • test/unit/baseof_template_test.rb
  • test/unit/home_template_test.rb
  • test/unit/hugo_asset_validation_test.rb
  • test/unit/list_template_test.rb
  • test/unit/meta_tags/seo_schema_test.rb
  • test/unit/single_template_test.rb
  • test/unit/template_cleanup_validation_test.rb
  • themes/beaver/assets/css/homepage-sections.css
  • themes/beaver/layouts/baseof.html
  • themes/beaver/layouts/careers/single.html
  • themes/beaver/layouts/home.html
  • themes/beaver/layouts/page/careers.html
  • themes/beaver/layouts/page/contact-us.html
  • themes/beaver/layouts/page/free-consultation.html
  • themes/beaver/layouts/page/services.html
  • themes/beaver/layouts/page/use-cases.html
  • themes/beaver/layouts/partials/assets/careers-css-resources.html
  • themes/beaver/layouts/partials/assets/contact-us-css-resources.html
  • themes/beaver/layouts/partials/assets/free-consultation-css-resources.html
  • themes/beaver/layouts/partials/assets/homepage-css-resources.html
  • themes/beaver/layouts/partials/assets/single-career-css-resources.html
  • themes/beaver/layouts/partials/blog/json-ld.html
  • themes/beaver/layouts/partials/components/testimonial.html
  • themes/beaver/layouts/partials/data/authors-cached.html
  • themes/beaver/layouts/partials/data/company-cached.html
  • themes/beaver/layouts/partials/data/testimonials-cached.html
  • themes/beaver/layouts/partials/homepage/companies.html
  • themes/beaver/layouts/partials/page/testimonials.html
  • themes/beaver/layouts/partials/technologies.html

📝 Walkthrough

Walkthrough

This PR introduces extensive documentation for an autonomous blog management pipeline with quality gates, updates the Hugo environment configuration, refactors theme templates to use centralized data sources with cached CSS resource partials, adds three new technical blog posts, updates agent metadata with recommended models, and performs systematic test refactoring to simplify variable assignments.

Changes

Cohort / File(s) Summary
Agent Configuration
.claude/agents/blog-writer.md, .claude/agents/research-agent.md
Updated agent metadata descriptions to include recommended model specifications for specific tasks (Claude 3.5 Sonnet and Gemini models).
Core Documentation & Handbook
CLAUDE.md, AGENTS.md, QWEN.md
Added comprehensive autonomous blog pipeline documentation (9-phase workflow, quality gates, research protocols, Chrome DevTools validation, skill registry, behavioral constraints), increased from 63 lines to 679 lines of handbook content.
Blog Content
content/blog/rails-8-1-active-job-continuations-end-lost-background-jobs/index.md, content/blog/rails-argon2-has-secure-password-migration-guide/index.md, content/blog/ruby-on-rails-performance-optimization-patterns-2026/index.md
Added three new technical blog posts covering Rails 8.1 ActiveJob continuations, Argon2 migration strategies, and 2026 performance optimization patterns; expanded existing Argon2 guide with fintech context and external references.
Development Infrastructure
.dev/compose.yml, docs/10-19-core-development/10.02-hugo-watch-monitoring-tutorial.md, docs/10-19-core-development/10.05-hugo-watch-mode-reference.md
Updated Hugo service from hugomods/hugo:exts-non-root-0.149.1 to hugomods/hugo:debian-reg-dart-sass-node-git-non-root-0.160.1 and increased memory limit from 512m to 2g; updated documentation references accordingly.
Hugo Configuration
config/_default/hugo.toml
Changed language setting key from languageCode = "en-us" to locale = "en-us".
Theme Template Refactoring — Data Source Migration
themes/beaver/layouts/partials/blog/json-ld.html, themes/beaver/layouts/partials/components/testimonial.html, themes/beaver/layouts/partials/data/authors-cached.html, themes/beaver/layouts/partials/data/company-cached.html, themes/beaver/layouts/partials/data/testimonials-cached.html, themes/beaver/layouts/partials/homepage/companies.html, themes/beaver/layouts/partials/page/testimonials.html, themes/beaver/layouts/partials/technologies.html
Systematically replaced .Site.Data.* references with hugo.Data.* to centralize data source access; updated cache invalidation to use new data source while preserving template logic and output.
Theme Template Refactoring — CSS Resource Extraction
themes/beaver/layouts/page/careers.html, themes/beaver/layouts/page/contact-us.html, themes/beaver/layouts/page/free-consultation.html, themes/beaver/layouts/home.html
Replaced inline CSS resource assembly with partialCached calls to dedicated resource-bundle partials for improved caching and maintainability.
CSS Resource Bundle Partials
themes/beaver/layouts/partials/assets/careers-css-resources.html, themes/beaver/layouts/partials/assets/contact-us-css-resources.html, themes/beaver/layouts/partials/assets/free-consultation-css-resources.html, themes/beaver/layouts/partials/assets/homepage-css-resources.html, themes/beaver/layouts/partials/assets/single-career-css-resources.html
Added new Hugo partials that encapsulate and return ordered CSS resource slices for specific pages, enabling centralized cache management via partialCached and reducing template duplication.
Homepage Layout & Styling
themes/beaver/layouts/home.html, themes/beaver/layouts/baseof.html
Introduced dynamic body class generation from page context (page/section/layout/slug metadata) while preserving framework classes; added semantic section wrapper classes (jt-home-*) to homepage layout sections; replaced inline resource assembly with cached partial; removed site parameter from technologies partial invocation.
Career/Services Page Templates
themes/beaver/layouts/page/careers.html, themes/beaver/layouts/page/services.html, themes/beaver/layouts/page/use-cases.html
Replaced inline CSS resource composition with cached partial lookups; removed site parameter from technologies partial in services and use-cases pages.
CSS/HTML Quality & Semantic Hooks
themes/beaver/assets/css/homepage-sections.css, docs/tasks.md
Added new semantic CSS migration layer partial file; documented structured task checklist for simplifying homepage CSS architecture and removing hard-coded global body classes while preserving visual output and behavior.
Test Suite Refactoring — Variable Cleanup
test/unit/404_template_test.rb, test/unit/baseof_template_test.rb, test/unit/home_template_test.rb, test/unit/list_template_test.rb, test/unit/single_template_test.rb, test/unit/template_cleanup_validation_test.rb
Systematically removed unused local variable assignments throughout multiple tests (e.g., problematic_styles, skip_links, responsive_classes, header_element, footer_element) while preserving assertion logic and expression evaluation.
Test Suite Refactoring — Assertion Style & Formatting
test/unit/404_template_test.rb, test/unit/baseof_template_test.rb, test/unit/home_template_test.rb, test/unit/single_template_test.rb, test/unit/template_cleanup_validation_test.rb, test/unit/hugo_asset_validation_test.rb
Standardized nil-check assertions from alt != nil to !alt.nil?; simplified JSON-LD parsing blocks by removing begin wrapper while preserving error handling; adjusted indentation and formatting; added trailing newlines.
Test Schema & Support Utilities
test/base_page_test_case.rb, test/support/setup_snap_diff.rb, test/unit/meta_tags/seo_schema_test.rb, test/system/pages/careers_page_test.rb
Updated JSON-LD type access syntax to bracket notation; updated string literal quoting in schema type arguments from single to double quotes; minor whitespace cleanup.
Markdown Image Processing
lib/sync/images_downloader.rb
Updated IMG_REGEX pattern to change URL character class from [^\s\)]+ to [^\s)]+, altering how closing parentheses are handled in markdown image URL capture without affecting other logic.
Code Whitespace
lib/sync/dev_to_article_fetcher.rb, lib/sync/dev_to_client.rb, lib/sync/post.rb, Rakefile
Added/removed blank lines to improve code organization and readability without changing logic or behavior.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~75 minutes

Possibly related PRs

Suggested reviewers

  • AucT

🐰 A blog now with phases and gates,
Chrome DevTools that validate,
Hugo data flows clean,
AI checks in between,
Nine phases to make content great! 📝✨

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch cleanup

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

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