v2026.04.28.1
What's Changed
Internal
- Fix NoMethodError in Api::V2::FilesController#complete when part params are arrays by @gumclaw in #4778
- Fix NoMethodError on nil gifter_purchase in vague_error_message by @gumclaw in #4775
- Fix deadlock in CheckoutController#update by locking cart row by @gumclaw in #4766
- Fix NoMethodError on nil URL in content moderation extractor by @gumclaw in #4765
- Fix Rack::Timeout in ThumbnailsController#create with 30s analyze guard by @gumclaw in #4759
- Fix Errno::ENOENT from temp file cleanup during image variant processing by @gumclaw in #4764
- Filter unsupported image formats in ContentModeration::PromptStrategy by @gumclaw in #4744
- Fix Aws::S3::Errors::NotFound crash during product publish by @gumclaw in #4777
- Handle Stripe::CardError in update_bank_account by @gumclaw in #4728
- Guard WithMaxExecutionTime ensure block against broken connections by @gumclaw in #4798
- Fix ArgumentError in Rack::Attack: use RedisProxy instead of RedisStoreProxy by @gumclaw in #4748
- Handle Faraday::TimeoutError in content moderation PromptStrategy by @gumclaw in #4747
- Fix Faraday::ServerError crash in content moderation classifier by @gumclaw in #4743
- Fix DashboardController#index Rack::Timeout by limiting tax form year range by @gumclaw in #4756
- Block new India Stripe Connect accounts at create_account boundary by @ershad in #4803
- Fix Faraday::ParsingError crash in ClassifierStrategy during product publish by @gumclaw in #4800
- Remove claude-review workflow (using Claude GitHub App instead) by @gumclaw in #4809
- Add 1 retry to slow specs for flaky test resilience by @gumclaw in #4808
- Fix 3 broken/flaky specs from content moderation PR by @gumclaw in #4812
- Fix flaky embed specs and search ordering assertion by @gumclaw in #4817
- Add retry to fast specs for flaky test resilience by @gumclaw in #4818
- Restore per-spec rspec-retry (3 attempts) by @gumclaw in #4820
- Remove job-level retry, rely on per-spec rspec-retry by @gumclaw in #4821
- Fix embed spec iframe loading race condition with within_embed_frame helper by @gumclaw in #4819
- Fix flaky embed and search specs by @gumclaw in #4815
- Handle Faraday::ConnectionFailed in content moderation ClassifierStrategy by @gumclaw in #4811
- Exclude high-income countries from PPP discounts by @gumclaw in #4810
- Fix ActiveRecord::Deadlocked in LinksController#publish by @gumclaw in #4802
- Fix test-subset: build image when Docker pull fails by @gumclaw in #4822
- Auto-delete single-use discount codes after use by @gumclaw in #4823
- Revert "Remove job-level retry, rely on per-spec rspec-retry" by @gianfrancopiana in #4831
- Replace test-confidence GitHub App with local Claude Code skill by @gumclaw in #4830
- Fix stale CI expectations by @gianfrancopiana in #4835
Full Changelog: v2026.04.27.2...v2026.04.28.1