Commit Graph

10 Commits

Author SHA1 Message Date
Dylan Knutson
ad0675a9aa Add Bluesky post helper with facet rendering and external link support
- Add BlueskyPostHelper for rendering Bluesky post facets (mentions, links, hashtags)
- Implement facet parsing and rendering with proper styling
- Add external link partial for non-Bluesky URLs
- Update DisplayedFile and PostFiles components to handle Bluesky posts
- Add comprehensive test coverage for helper methods
- Update scan user job to handle Bluesky-specific data
2025-08-12 20:43:08 +00:00
Dylan Knutson
ded26741a8 test: update FA job specs and add test fixtures
- Update FurAffinity favs job spec with improved test coverage
- Update user gallery job spec with enhanced testing
- Add new test fixtures for FA favorites and gallery parsing
- Add minimal test fixtures for better test performance
- Update .cursorrules with latest development guidelines
2025-08-10 19:57:04 +00:00
Dylan Knutson
eba4b58666 feat: implement Bluesky scan posts job and enhance user scanning
- Add new ScanPostsJob for scanning Bluesky posts
- Enhance ScanUserJob with improved error handling and logging
- Update BlueskyPost model with new fields and validation
- Add auxiliary tables for Bluesky posts
- Improve job base classes with better color logging
- Update specs with proper HTTP mocking patterns
- Add factory for BlueskyPost testing
2025-08-10 18:41:01 +00:00
Dylan Knutson
5c71fc6b15 Add avatar downloading to Bluesky scan user job
- Modified process_user_avatar method to enqueue Domain::UserAvatarJob for avatar downloads
- Made Domain::UserAvatarJob concrete (removed abstract!) with generic HTTP client
- Added smart avatar management: handles new avatars, URL changes, and pending re-enqueues
- Added comprehensive test coverage for all avatar scenarios
- Updated HTTP mocking in specs to use HttpClientMockHelpers pattern
- Fixed caused_by_entry handling for chained HTTP requests
- Updated .cursorrules with proper HTTP mocking documentation including caused_by_entry: :any

The job now automatically downloads user avatars when scanning Bluesky users.
2025-08-09 01:23:16 +00:00
Dylan Knutson
36ceae80fe Refactor file carousel into React component hierarchy
- Create PostFiles top-level component managing file display state
- Add FileCarousel component for thumbnail navigation
- Add DisplayedFile component for content rendering
- Add FileDetails component for metadata display
- Update props_for_post_files helper to generate HTML content server-side
- Replace HTML/JS carousel with prerendered React components
- Maintain single file layout compatibility
- Add proper TypeScript interfaces and error handling
- Register components in application and server bundles

Components now handle:
- Multiple file carousel display above content
- File content switching via React state
- Server-side rendered HTML injection
- File details metadata display
- Responsive thumbnail grid with selection states
2025-08-09 00:31:07 +00:00
Dylan Knutson
8b2ee14ef7 e621 user page fix for faved posts 2025-07-27 17:16:48 +00:00
Dylan Knutson
e5c37e4c9d update tapioca 2025-07-10 17:18:06 +00:00
Dylan Knutson
58b8321333 Add FA favorites backfill task with date tracking
- Add BackfillFavsAndDatesTask for systematic favorites/dates processing
- Enhance FavsJob with FavsAndDatesStats for date tracking
- Add supporting utilities and parser improvements

This enables robust collection and backfill of user favorites with associated dates.
2025-07-10 17:07:14 +00:00
Dylan Knutson
a2460a5327 blob file migration task refactor 2025-07-08 02:52:57 +00:00
Dylan Knutson
101d383f95 initialize backlog 2025-07-08 00:49:11 +00:00