Skip to content

Wadprog/vwa 75 blog implementation#49

Merged
Wadprog merged 7 commits intoqa/cycle-12from
wadprog/vwa-75-blog-implementation
Mar 14, 2026
Merged

Wadprog/vwa 75 blog implementation#49
Wadprog merged 7 commits intoqa/cycle-12from
wadprog/vwa-75-blog-implementation

Conversation

@Wadprog
Copy link
Collaborator

@Wadprog Wadprog commented Feb 28, 2026

Overview

Brief description of what this PR does, and why it is needed.

Closes: VWN-75
Type of Change:

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Refactoring (no functional changes)
  • Performance improvement
  • Security enhancement

Demo

Optional. Screenshots, curl examples, etc.

Breaking Changes

⚠️ List any breaking changes and migration steps required

Security Considerations

🔒 Any security implications, new permissions, or sensitive data handling

Performance Impact

Expected performance impact (positive, negative, or neutral) and any load testing performed

Notes

Optional. Ancillary topics, caveats, alternative strategies that didn't work out, anything else.

Checklist for Author

Code Quality

  • Code follows project style guidelines and best practices
  • Code is well documented with clear comments
  • No commented-out code or debug statements left behind
  • Variable and function names are descriptive and consistent

Testing

  • Unit tests have been added/updated and pass locally
  • Integration tests have been written and pass
  • Manual testing completed for the feature/fix
  • Edge cases and error scenarios have been tested
  • Browser compatibility tested (if frontend changes)

Database & Infrastructure

  • Database migrations created and tested (if schema changes)
  • New environment variables added to serverless config and SSM
  • AWS permissions granted in serverless config for new services
  • Configuration changes documented

Documentation

  • README updated (if needed)
  • API documentation updated (if applicable)
  • Deployment notes added (if special steps required)

Security & Performance

  • Security review completed (if handling sensitive data)
  • Performance impact assessed
  • No secrets or sensitive data exposed in code

Checklist for Reviewer

Functional Review

  • The changes have been pulled locally and tested manually
  • Feature meets acceptance criteria from the ticket
  • Edge cases and error scenarios work as expected
  • UI/UX changes reviewed and approved (if applicable)

Code Review

  • Code follows Engineering Guidelines
  • Architecture and design patterns are appropriate
  • No obvious security vulnerabilities
  • Error handling is appropriate
  • Logging is adequate for debugging

Integration Review

  • Changes tested with frontend applications (if backend changes)
  • Database migrations reviewed and tested
  • Environment variable changes verified
  • Deployment process reviewed

Testing Instructions

Prerequisites:

  • List any setup required (environment variables, services, etc.)

Test Cases:

  1. Happy Path Testing:

    • Step-by-step instructions for main functionality
    • Expected results
  2. Edge Case Testing:

    • Test invalid inputs, boundary conditions
    • Expected error handling
  3. Integration Testing:

    • Test with other system components
    • Verify API contracts (if applicable)

Regression Testing:

  • Existing functionality still works as expected
  • No unintended side effects observed

Deployment Notes

Pre-deployment checklist:

  • Environment variables configured
  • Database migrations ready
  • Feature flags configured (if applicable)

Post-deployment verification:

  • Health checks pass
  • Monitoring and alerts configured
  • Rollback plan documented

@coderabbitai
Copy link

coderabbitai bot commented Feb 28, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 97dfb34b-4370-479b-bb13-b28b32260a72

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch wadprog/vwa-75-blog-implementation

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.

Wadson Vaval and others added 5 commits March 4, 2026 20:34
- Add BlogMedia junction table model and migration (blog_medias)
- Register BlogMedia model in Sequelize and fix Blog's BelongsToMany
  association (was incorrectly pointing to PostMedia)
- Add 'blog' upload type to S3 storage config with blogStorage multer instance
- Add 'titlePicture' to MediaFieldType and FileFieldType
- Update SaveProfilePictures hook to accept configurable upload folder
- Switch blogs service from cloudinary to S3 storage
- Remove unused SaveCover constant in blogs hooks

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Fix Blog model mapping publishedAt to correct field: 'published_at'
- Add setPublishedAt hook: publishedAt=true sets date, false clears it
- Add index on blogs.published_at for query performance
- Update editBlogSchema to accept publishedAt boolean and include it
  in the required-field refine check
- Align createBlogSchema field name from publishAt to publishedAt
- Add BlogInterest junction table model and migration (blog_interests)
- Register BlogInterest in Sequelize and add BelongsToMany on Blog model
- Update SaveInterest hook to link blogs to interests by ID via BlogInterest
- Wire SaveInterest into after.create in blogs hooks
- Add interests field (array of UUIDs) to createBlogSchema and editBlogSchema
- Add filterByInterests hook: intercepts interestIds query param and
  applies it as a WHERE on the interests include (INNER JOIN) instead
  of letting feathers-sequelize treat it as a direct column filter
- Split AddAutor and AddInterests hooks so interests are only included
  on find/get, preventing Sequelize from trying to create Interest
  records during blog create
- Stash interests in params._interests before create so SaveInterest
  can still access them in the after hook
@Wadprog Wadprog merged commit 5968fff into qa/cycle-12 Mar 14, 2026
4 of 6 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