we-promise/sure · error · Property::AvmImport::Error

{response.error.message}

Error message

{response.error.message}

What it means

StandardError raised by RedbarkItem#import_latest_redbark_data when redbark_provider resolves to nil — the item has no working Redbark (provider) connection, typically because OAuth credentials are missing or were revoked. It logs to Rails.logger before raising, and the rescue captures a DebugLogEntry (category provider_sync) then re-raises. Message text comes from I18n redbark_items.errors.provider_not_configured.

Source

Thrown at app/models/property/avm_import.rb:31

    @name = name
    @address_attributes = address_attributes
  end

  # Step 1: validates the inputs, then spends one provider request. Returns
  # the fetched Provider::PropertyValuationConcept::PropertyValuation.
  def lookup
    validate_inputs!

    provider = Provider::Registry.for_concept(:property_valuations).get_provider(provider_key)
    raise Error.new(I18n.t("providers.property_valuation.not_configured")) if provider.nil?

    response = provider.fetch_property_valuation(
      line1: address_attributes[:line1],
      locality: address_attributes[:locality],
      region: address_attributes[:region],
      postal_code: address_attributes[:postal_code]
    )
    raise Error.new(response.error.message) unless response.success?

    response.data
  end

  # Step 2: creates the active property account from the user-confirmed
  # valuation data. No provider request is made here.
  def create_account(data)
    validate_inputs!

    account = nil
    Account.transaction do
      account = family.accounts.create!(
        name: name,
        balance: 0,
        currency: data.currency,
        status: "draft",
        owner: owner,
        accountable: Property.new(

View on GitHub (pinned to e69894adb9)

Solutions

  1. Reconnect Redbark via settings to restore the provider/OAuth link
  2. Verify the provider record and credentials exist for the family (check DebugLogEntry provider_sync entries for the cause)
  3. Make sync jobs no-op when redbark_provider is nil instead of raising
  4. Cancel queued import jobs when an item is marked scheduled_for_deletion

Example fix

# before
RedbarkItem.find(id).import_latest_redbark_data(sync: sync)

# after
item = RedbarkItem.find(id)
return Rails.logger.info("Skipping RedbarkItem #{id}: provider missing") unless item.redbark_provider
item.import_latest_redbark_data(sync: sync)
Defensive patterns

Strategy: validation

Validate before calling

return if item.scheduled_for_deletion?
return Rails.logger.info("skip: redbark not configured") unless item.redbark_provider

Try / catch

begin
  item.import_latest_redbark_data(sync: sync)
rescue StandardError => e
  raise unless e.message == I18n.t("redbark_items.errors.provider_not_configured")
  sync&.update!(status: :error, status_text: "Redbark not connected — reconnect required")
end

Prevention

When it happens

Trigger: Scheduled or manual import running on a RedbarkItem whose provider OAuth tokens were revoked or expired without refresh; provider record removed; item soft-deleted (scheduled_for_deletion) but a queued job still executes; env missing Redbark credentials so provider instantiation fails.

Common situations: User disconnects the Redbark integration while syncs are queued; tokens expiring during a long-lived deployment; test/staging environments without Redbark configured; job retries racing destroy_later.

Related errors


AI-assisted analysis of we-promise/sure@e69894adb9 (2026-08-21). Data as JSON: /api/errors/30d29fa67224b62a. Report an issue: GitHub.