252 Commits

Author SHA1 Message Date
Dylan Knutson
3174032ac3 rake job fixes, optimize fa favs backfill 2025-09-10 16:30:51 +00:00
Dylan Knutson
1905575d19 did searching 2025-09-07 17:47:53 +00:00
Dylan Knutson
8bd6c4b2ae migrate e621 favs to own table 2025-08-20 22:10:57 +00:00
Dylan Knutson
a76b10634e more migration of fa user favs to own table 2025-08-20 04:58:06 +00:00
Dylan Knutson
4830a4ce54 separate table for fa post favs 2025-08-19 01:22:56 +00:00
Dylan Knutson
a68e5b0112 bsky fixes, ib missing post enqueuer 2025-08-18 16:28:53 +00:00
Dylan Knutson
a8f258d5ef fix frozen string bug, add bsky username prefix to searched names 2025-08-17 19:08:44 +00:00
Dylan Knutson
c1b63275e8 show number of files associated with post if > 1 2025-08-16 19:23:35 +00:00
Dylan Knutson
d06347a771 extract bsky posts/users from e621 2025-08-16 18:59:39 +00:00
Dylan Knutson
0fd4d13673 unique check for url name 2025-08-16 06:53:39 +00:00
Dylan Knutson
a1fab9e645 bmp support, buggy fa user, url decode usernames 2025-08-16 04:44:04 +00:00
Dylan Knutson
5646e388be base structure for monitoring hashtags 2025-08-14 20:35:15 +00:00
Dylan Knutson
1d248c1f23 user follows/followed by scans for bluesky 2025-08-14 17:03:50 +00:00
Dylan Knutson
b33a267a83 by descending post id 2025-08-13 08:20:32 +00:00
Dylan Knutson
dea2071662 better user list 2025-08-12 22:52:52 +00:00
Dylan Knutson
420a44a27d bsky page scanning auditing 2025-08-12 21:56:05 +00:00
Dylan Knutson
d08c896d97 show reply / quotes for bsky posts 2025-08-12 18:31:17 +00:00
Dylan Knutson
127dd9be51 Add Bluesky file display components and utilities
- Add SkySection component for displaying Bluesky-specific file information
- Add byteCountToHumanSize utility for formatting file sizes
- Update PostFiles, FileCarousel, FileDetails, and DisplayedFile components
- Enhance posts helper with file display logic
- Update post model and view templates
- Remove deprecated file details sky section partial
2025-08-12 18:14:13 +00:00
Dylan Knutson
390f0939b0 video post downloading 2025-08-12 00:24:32 +00:00
Dylan Knutson
40c6d44100 Convert ScanPostsJob tests to use SpecUtil.enqueued_job_args and add rescan tests
- Convert existing job mocking to use SpecUtil.enqueued_job_args helper
- Remove allow(Domain::StaticFileJob).to receive(:perform_later) mocking
- Add comprehensive test context for rescanning users with pending files
- Create domain_post_file_bluesky_post_file factory for test objects
- Add tests verifying enqueue_pending_files_job behavior during rescans
- Ensure only pending files get jobs enqueued, not already processed files
- Use force_scan: true to bypass scan frequency limits in tests
2025-08-10 20:49:26 +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
5f5a54d68f Add Bluesky user scanning job and related infrastructure
- Add Domain::Bluesky::Job::ScanUserJob for processing user media
- Add Domain::Bluesky::Job::Base as parent class for Bluesky jobs
- Update BlueskyUser and BlueskyPostFile models with media handling
- Add migration for Bluesky media fields in post_files table
- Update StaticFileJob to handle Bluesky media downloads
- Add comprehensive test coverage for new functionality
- Update Sorbet RBI files for type checking
2025-08-08 05:07:07 +00:00
Dylan Knutson
e30e20b033 tests for bsky posts 2025-08-08 00:40:28 +00:00
Dylan Knutson
608044e8fb bsky rkey based post tracking 2025-08-07 09:01:34 +00:00
Dylan Knutson
9efeedd1ff basic bluesky monitoring infra 2025-08-05 20:51:40 +00:00
Dylan Knutson
3512c3f32e skyfall gem, rework migrations 2025-08-05 19:21:38 +00:00
Dylan Knutson
e9f3b0e822 bluesky initial impl 2025-08-05 18:53:14 +00:00
Dylan Knutson
e78baa6594 Refactor Telegram bot logs with performance enhancements and view improvements
- Add comprehensive file information display (content type, size, dimensions)
- Move complex image dimension logic from views to TelegramBotLogsHelper
- Add percentage calculations to performance metrics section
- Use Rails associations instead of manual BlobFile lookups
- Update slow requests filtering to use total_request_time column
- Enhance search result thumbnails and improve post linking
- Add comprehensive test coverage for helper methods
- Improve error handling and type safety throughout
2025-08-05 06:30:42 +00:00
Dylan Knutson
ff18b5f75c Refactor TelegramBotLog status handling and add helper
- Remove no_results status enum value, treat zero results as successful searches
- Add processing status for initial log creation
- Create TelegramBotLogsHelper#status_color_class to eliminate view duplication
- Refactor TelegramBotTask to use Stopwatch class for timing measurements
- Add total_request_time column to track end-to-end request duration
- Update factories, tests, and views to support new status model
- Add comprehensive helper tests and maintain full test coverage
2025-08-05 05:22:50 +00:00
Dylan Knutson
24a59d50f2 telegram bot logs, first pass 2025-08-05 05:05:21 +00:00
Dylan Knutson
c43d1ca197 migrate ib posts to aux table 2025-07-27 17:54:29 +00:00
Dylan Knutson
bc4143ae12 migrate fa posts to aux table 2025-07-26 05:39:32 +00:00
Dylan Knutson
ca4729f7d1 migrate Domain::Post::FaPost to aux table 2025-07-26 00:54:03 +00:00
Dylan Knutson
56ed78faaf show pending messages on posts 2025-07-25 19:15:58 +00:00
Dylan Knutson
bd6246d29a send pre-thumbnailed images when type is content-container 2025-07-25 05:12:32 +00:00
Dylan Knutson
5b67f2ad9a show tor hle in ui, test thumbnail enqueue 2025-07-25 00:41:28 +00:00
Dylan Knutson
dffdef51cd backup tor archive scraping 2025-07-25 00:25:12 +00:00
Dylan Knutson
211d5eb62c fuzzysearch enqueue job 2025-07-24 21:45:21 +00:00
Dylan Knutson
af4d84ccb1 parse posted_at from fa static file url 2025-07-24 17:17:42 +00:00
Dylan Knutson
19fc98e4ef e621 post aux table migration 2025-07-24 15:44:50 +00:00
Dylan Knutson
572c61cebb add proxies 2025-07-23 04:51:44 +00:00
Dylan Knutson
1470a21bbe improve similar post lists, fallback creator models 2025-07-23 02:09:45 +00:00
Dylan Knutson
537821a1a9 remove BlobEntry model 2025-07-21 19:30:44 +00:00
Dylan Knutson
d925a4b682 Domain::Users::FaUser aux table migration 2025-07-21 17:17:35 +00:00
Dylan Knutson
598ffe8dbf Domain::Users::E621User aux table migration 2025-07-18 21:58:45 +00:00
Dylan Knutson
ca7315c8ae Domain::Users::InkbunnyUser aux table migration 2025-07-18 19:50:52 +00:00
Dylan Knutson
e67eb94e44 add HasAuxTable 2025-07-18 06:23:40 +00:00
Dylan Knutson
13ad697026 improvements for ordering favs 2025-07-12 08:53:49 +00:00
Dylan Knutson
7a02282893 batch processor for migrating FA user favs 2025-07-11 23:20:44 +00:00