/spec/features/renew_subscriptions_spec.rb can not be re-recorded

<!-- Please complete the template below as best as you can. Make sure to check if this issue has already been raised by someone else first to avoid duplication. 

For each section below, please add screenshots or links or anything that may help visual learners understand the problem better, even if this takes you an extra minute or two this is a great help to some folks.

https://www.learning-styles-online.com/style/visual-spatial/

-->

### Problem

Running 

```
VCR=all bundle exec rspec spec/features/renew_subscriptions_spec.rb
```

causes a number of failures locally.

<details>

```
Failures:

  1) Renew Subscriptions when renewing subscriptions with :eoa_starter_bronze feature flag disabled does not show a downgrade option
     Failure/Error: params[:change_product_id].present? && main_product.product_rate_plan_id != params[:change_product_id]

     NoMethodError:
       undefined method `product_rate_plan_id' for nil:NilClass
     Shared Example Group: "does not show a downgrade option" called from ./spec/features/renew_subscriptions_spec.rb:416
     # ./app/services/amend_subscription_service.rb:49:in `changing_products?'
     # ./app/services/amend_subscription_service.rb:23:in `execute'
     # ./app/controllers/subscriptions_controller.rb:61:in `update'
     # ./app/middleware/health_check_responder.rb:12:in `call'
     # ------------------
     # --- Caused by: ---
     # Capybara::CapybaraError:
     #   Your application server raised an error - It has been raised in your test code because Capybara.raise_server_errors == true
     #   ./spec/support/vcr/zuora_time_traveller.rb:16:in `block (2 levels) in apply'

  2) Renew Subscriptions when renewing subscriptions with :eoa_starter_bronze feature flag enabled showing EoA banners in renew page with SaaS subscription behaves like showing EoA banners when subscription is eligible for self-serve discount shows self-serve success banner and hides warning banner when discounted plan is selected
     Failure/Error: params[:change_product_id].present? && main_product.product_rate_plan_id != params[:change_product_id]

     NoMethodError:
       undefined method `product_rate_plan_id' for nil:NilClass
     Shared Example Group: "showing EoA banners" called from ./spec/features/renew_subscriptions_spec.rb:337
     # ./app/services/amend_subscription_service.rb:49:in `changing_products?'
     # ./app/services/amend_subscription_service.rb:23:in `execute'
     # ./app/controllers/subscriptions_controller.rb:61:in `update'
     # ./app/middleware/health_check_responder.rb:12:in `call'
     # ------------------
     # --- Caused by: ---
     # Capybara::CapybaraError:
     #   Your application server raised an error - It has been raised in your test code because Capybara.raise_server_errors == true
     #   ./spec/support/vcr/zuora_time_traveller.rb:16:in `block (2 levels) in apply'

  3) Renew Subscriptions when renewing subscriptions with :eoa_starter_bronze feature flag enabled showing EoA banners in renew page with self-managed subscription behaves like showing EoA banners when subscription is eligible for sales-assisted discount shows sales-assisted discount banners
     Failure/Error: params[:change_product_id].present? && main_product.product_rate_plan_id != params[:change_product_id]

     NoMethodError:
       undefined method `product_rate_plan_id' for nil:NilClass
     Shared Example Group: "showing EoA banners" called from ./spec/features/renew_subscriptions_spec.rb:348
     # ./app/services/amend_subscription_service.rb:49:in `changing_products?'
     # ./app/services/amend_subscription_service.rb:23:in `execute'
     # ./app/controllers/subscriptions_controller.rb:61:in `update'
     # ./app/middleware/health_check_responder.rb:12:in `call'
     # ------------------
     # --- Caused by: ---
     # Capybara::CapybaraError:
     #   Your application server raised an error - It has been raised in your test code because Capybara.raise_server_errors == true
     #   ./spec/support/vcr/zuora_time_traveller.rb:16:in `block (2 levels) in apply'

  4) Renew Subscriptions when renewing subscriptions with :eoa_starter_bronze feature flag enabled when subscription is EoA Starter and Bronze offer active shows the correct prices
     Got 4 failures:

     4.1) Failure/Error: expect(page).to have_selector(plan_selector, text: 'Bronze $4', normalize_ws: true)
            expected to find visible css "[data-testid=\"product-radio-item\"]" with text "Bronze $4" but there were no matches. Also found "Silver\n$19", "Gold\n$99", which matched the selector but not all filters.
          # ./spec/features/renew_subscriptions_spec.rb:267:in `block (5 levels) in <top (required)>'
          # ./spec/support/vcr/zuora_time_traveller.rb:16:in `block (2 levels) in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:68:in `block in freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:67:in `freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:15:in `block in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:14:in `apply'
          # ./spec/support/vcr.rb:83:in `block (2 levels) in <top (required)>'

     4.2) Failure/Error: expect(page).to have_selector(user_subtotal_selector, text: '$72.00')
            expected to find visible css "[data-testid=\"user-subtotal\"]" with text "$72.00" but there were no matches. Also found "$228.00", which matched the selector but not all filters.
          # ./spec/features/renew_subscriptions_spec.rb:268:in `block (5 levels) in <top (required)>'
          # ./spec/support/vcr/zuora_time_traveller.rb:16:in `block (2 levels) in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:68:in `block in freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:67:in `freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:15:in `block in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:14:in `apply'
          # ./spec/support/vcr.rb:83:in `block (2 levels) in <top (required)>'

     4.3) Failure/Error: expect(page).to have_selector(plan_selector, text: 'Silver $19 $6', normalize_ws: true, class: selected_class)
            expected to find visible css "[data-testid=\"product-radio-item\"]" with text "Silver $19 $6" with classes [product-radio-panel-selected] but there were no matches. Also found "Silver\n$19", which matched the selector but not all filters.
          # ./spec/features/renew_subscriptions_spec.rb:269:in `block (5 levels) in <top (required)>'
          # ./spec/support/vcr/zuora_time_traveller.rb:16:in `block (2 levels) in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:68:in `block in freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:67:in `freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:15:in `block in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:14:in `apply'
          # ./spec/support/vcr.rb:83:in `block (2 levels) in <top (required)>'

     4.4) Failure/Error: expect(page).to have_selector(total_selector, text: '$72.00')
            expected to find visible css "[data-testid=\"total-price\"]" with text "$72.00" but there were no matches. Also found "$228.00", which matched the selector but not all filters.
          # ./spec/features/renew_subscriptions_spec.rb:272:in `block (5 levels) in <top (required)>'
          # ./spec/support/vcr/zuora_time_traveller.rb:16:in `block (2 levels) in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:68:in `block in freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:67:in `freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:15:in `block in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:14:in `apply'
          # ./spec/support/vcr.rb:83:in `block (2 levels) in <top (required)>'

  5) Renew Subscriptions when renewing subscriptions with :eoa_starter_bronze feature flag enabled when subscription is EoA Starter and Bronze offer active successfully downgrades and renews at the same time
     Got 5 failures:

     5.1) Failure/Error: expect(page).to have_selector(plan_selector, text: 'Bronze $4', normalize_ws: true, class: selected_class)
            expected to find visible css "[data-testid=\"product-radio-item\"]" with text "Bronze $4" with classes [product-radio-panel-selected] but there were no matches. Also found "Silver\n$19", which matched the selector but not all filters.
          # ./spec/features/renew_subscriptions_spec.rb:238:in `block (5 levels) in <top (required)>'
          # ./spec/support/vcr/zuora_time_traveller.rb:16:in `block (2 levels) in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:68:in `block in freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:67:in `freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:15:in `block in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:14:in `apply'
          # ./spec/support/vcr.rb:83:in `block (2 levels) in <top (required)>'

     5.2) Failure/Error: expect(page).to have_selector(user_subtotal_selector, text: '$48.00')
            expected to find visible css "[data-testid=\"user-subtotal\"]" with text "$48.00" but there were no matches. Also found "$228.00", which matched the selector but not all filters.
          # ./spec/features/renew_subscriptions_spec.rb:239:in `block (5 levels) in <top (required)>'
          # ./spec/support/vcr/zuora_time_traveller.rb:16:in `block (2 levels) in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:68:in `block in freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:67:in `freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:15:in `block in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:14:in `apply'
          # ./spec/support/vcr.rb:83:in `block (2 levels) in <top (required)>'

     5.3) Failure/Error: expect(page).to have_selector(plan_selector, text: 'Silver $19 $6', normalize_ws: true)
            expected to find visible css "[data-testid=\"product-radio-item\"]" with text "Silver $19 $6" but there were no matches. Also found "Silver\n$19", "Gold\n$99", which matched the selector but not all filters.
          # ./spec/features/renew_subscriptions_spec.rb:240:in `block (5 levels) in <top (required)>'
          # ./spec/support/vcr/zuora_time_traveller.rb:16:in `block (2 levels) in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:68:in `block in freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:67:in `freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:15:in `block in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:14:in `apply'
          # ./spec/support/vcr.rb:83:in `block (2 levels) in <top (required)>'

     5.4) Failure/Error: expect(page).to have_selector(total_selector, text: '$48.00')
            expected to find visible css "[data-testid=\"total-price\"]" with text "$48.00" but there were no matches. Also found "$228.00", which matched the selector but not all filters.
          # ./spec/features/renew_subscriptions_spec.rb:243:in `block (5 levels) in <top (required)>'
          # ./spec/support/vcr/zuora_time_traveller.rb:16:in `block (2 levels) in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:68:in `block in freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:67:in `freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:15:in `block in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:14:in `apply'
          # ./spec/support/vcr.rb:83:in `block (2 levels) in <top (required)>'

     5.5) Failure/Error: expect(page).to have_content('Bronze Plan')
            expected to find text "Bronze Plan" in "Manage purchases\nView invoices\nMy account\nManage purchases\nBuy new subscription\nsome awesome namespace\nSilver Plan A-S00069329\nRenews on January 13, 2023\nUpgrade\nRenew\nBuy more CI minutes\nChange linked namespace\nCancel subscription\nCollapse\nStart date Purchase date Product Quantity\nJanuary 13, 2022 January 13, 2021 Silver Plan 1"
          # ./spec/features/renew_subscriptions_spec.rb:257:in `block (5 levels) in <top (required)>'
          # ./spec/support/vcr/zuora_time_traveller.rb:16:in `block (2 levels) in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:68:in `block in freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:67:in `freeze_example'
          # ./spec/support/vcr/zuora_time_traveller.rb:15:in `block in apply'
          # ./spec/support/vcr/zuora_time_traveller.rb:14:in `apply'
          # ./spec/support/vcr.rb:83:in `block (2 levels) in <top (required)>'

  6) Renew Subscriptions when renewing subscriptions with :eoa_starter_bronze feature flag enabled when subscription is EoA Starter and Bronze eligible shows the next stair step renewal price and no downgrade option after renewing at the discounted price
     Failure/Error: amendments = Zuora::Amendment.where(subscription_id: versions.map(&:id))

     IronBank::BadRequestError:
       Body: {"detail"=>{"MalformedQueryFault"=>{"FaultMessage"=>"You have an error in your ZOQL syntax", "FaultCode"=>"MALFORMED_QUERY"}}, "faultcode"=>"fns:MALFORMED_QUERY", "faultstring"=>"You have an error in your ZOQL syntax"}
     # ./app/services/eoa_offer_renewals_count_service.rb:22:in `amend_descriptions'
     # ./app/services/eoa_offer_renewals_count_service.rb:13:in `execute'
     # ./app/services/eoa_offer_renewals_count_service.rb:5:in `execute'
     # ./app/services/eoa_calculate_next_price_service.rb:29:in `eoa_renewals_count'
     # ./app/services/eoa_calculate_next_price_service.rb:17:in `next_price'
     # ./app/models/subscription.rb:21:in `eoa_starter_bronze_next_price'
     # ./app/services/amend_subscription_service.rb:214:in `block in eoa_starter_bronze_renewal_price'
     # ./lib/utils/strong_memoize.rb:27:in `strong_memoize'
     # ./app/services/amend_subscription_service.rb:213:in `eoa_starter_bronze_renewal_price'
     # ./app/services/amend_subscription_service.rb:219:in `build_eoa_price_uplift_amendment'
     # ./app/services/amend_subscription_service.rb:131:in `check_subscription_updates'
     # ./app/services/amend_subscription_service.rb:28:in `execute'
     # ./app/controllers/subscriptions_controller.rb:61:in `update'
     # ./app/middleware/health_check_responder.rb:12:in `call'
     # ------------------
     # --- Caused by: ---
     # Capybara::CapybaraError:
     #   Your application server raised an error - It has been raised in your test code because Capybara.raise_server_errors == true
     #   ./spec/support/vcr/zuora_time_traveller.rb:16:in `block (2 levels) in apply'

Finished in 11 minutes 42 seconds (files took 4.7 seconds to load)
20 examples, 6 failures

Failed examples:

rspec './spec/features/renew_subscriptions_spec.rb[1:1:6:1]' # Renew Subscriptions when renewing subscriptions with :eoa_starter_bronze feature flag disabled does not show a downgrade option
rspec './spec/features/renew_subscriptions_spec.rb[1:1:5:3:1:1:1:2]' # Renew Subscriptions when renewing subscriptions with :eoa_starter_bronze feature flag enabled showing EoA banners in renew page with SaaS subscription behaves like showing EoA banners when subscription is eligible for self-serve discount shows self-serve success banner and hides warning banner when discounted plan is selected
rspec './spec/features/renew_subscriptions_spec.rb[1:1:5:3:2:1:2:1]' # Renew Subscriptions when renewing subscriptions with :eoa_starter_bronze feature flag enabled showing EoA banners in renew page with self-managed subscription behaves like showing EoA banners when subscription is eligible for sales-assisted discount shows sales-assisted discount banners
rspec ./spec/features/renew_subscriptions_spec.rb:260 # Renew Subscriptions when renewing subscriptions with :eoa_starter_bronze feature flag enabled when subscription is EoA Starter and Bronze offer active shows the correct prices
rspec ./spec/features/renew_subscriptions_spec.rb:233 # Renew Subscriptions when renewing subscriptions with :eoa_starter_bronze feature flag enabled when subscription is EoA Starter and Bronze offer active successfully downgrades and renews at the same time
rspec ./spec/features/renew_subscriptions_spec.rb:394 # Renew Subscriptions when renewing subscriptions with :eoa_starter_bronze feature flag enabled when subscription is EoA Starter and Bronze eligible shows the next stair step renewal price and no downgrade option after renewing at the discounted price

Randomized with seed 43705

Coverage report generated for RSpec to /Users/ragnarhardarson/workspace/customers-gitlab-com/coverage. 2689 / 9084 LOC (29.6%) covered.
SimpleCov failed with exit 1
```

</details>

This is seriously hindering development, as engineers are debugging unrelated specs when specs fail on CI.

### Proposal

Make `renew_subscriptions_spec` re-recordable. This kind of feels like a race-condition in the spec.

### Result

### Next steps (if any)

### How will we measure success?

Story points: 1.0