25228527 CustomerApi.Jobs.PublishNotificationJob
Queue notifications
Attempt 5 of 5
Priority 0
Tags ...
Node customer_api@10.10.1.109
Queue Time 00:00.194
Run Time 00:00.005
Inserted 2h ago
Scheduled 2h ago
Completed
Cancelled
Discarded 2h ago

Args

%{
  "account_id" => "99992",
  "data" => %{
    "account_insight_agent_id" => "a7f27f74-1191-402f-909b-117f0a87fa96",
    "insights" => [
      %{
        "action_plan" => "Open [Flow settings](https://studio.appcues.com/flows/905ecdd7-3cbb-4c64-99ef-4c770195c563/settings) and replace the current dashboard target with a stable selector. Appcues recommends checking the step's selector from the gear icon, avoiding dynamic class names and overly fragile selectors, and preferring a stable `id`, `name`, or `data-appcues` attribute because an `Element not found` selector prevents the step from showing  .",
        "actions" => [],
        "cta_text" => "Review flow selector",
        "entity_id" => "905ecdd7-3cbb-4c64-99ef-4c770195c563",
        "entity_type" => "flow",
        "expected_impact" => "Reducing this selector failure should recover flow delivery on dashboard visits and improve onboarding engagement for Talabat users.",
        "finding" => "**tlb_Onboarding_Dashboard** logged **430 errors today** vs **151 yesterday** (**+184.8%**), with selector issues active on **7 straight days** and **1,110 total errors** over the last week.\n\nRecent failures are repeated **\"Could not find element\"** errors on the Talabat dashboard, using a brittle class-chain selector with positional targeting.",
        "outcomes" => ["engagement", "activation"],
        "priority" => "high",
        "title" => "Talabat dashboard onboarding selector errors jumped 185% today",
        "type" => "issue"
      },
      %{
        "action_plan" => "Review the target in [Flow settings](https://studio.appcues.com/flows/f34b5b1b-1c59-4c8d-b14e-6419207fe271/settings). Replace the current selector with a more specific, stable attribute on the actual button or link users interact with. Appcues guidance favors unique IDs or `data-appcues` attributes over dynamic classes and generic attributes like `tabindex`  .",
        "actions" => [],
        "cta_text" => "Inspect flow target",
        "entity_id" => "f34b5b1b-1c59-4c8d-b14e-6419207fe271",
        "entity_type" => "flow",
        "expected_impact" => "A more stable target should cut report-builder delivery failures and help restore onboarding coverage for Order History users.",
        "finding" => "**tlb_onboarding_Order_History** recorded **33 errors today** vs **26 yesterday** (**+26.9%**), with selector issues active on **7 days** and **121 total errors** across the last week.\n\nRecent errors come from report-builder pages and show repeated **\"Could not find element\"** failures on a generic selector that depends on a dynamic class plus `[tabindex]`.",
        "outcomes" => ["engagement", "activation"],
        "priority" => "medium",
        "title" => "Order History onboarding flow has a new selector spike",
        "type" => "issue"
      },
      %{
        "action_plan" => "Open [Flow settings](https://studio.appcues.com/flows/f22aadb9-e1b6-4977-a623-5eb078ed7e77/settings) and swap the current target for a stable element attribute. If engineering can help, the most durable fix is adding a `data-appcues` attribute to the exact element you want to target; otherwise update the selector in Builder using a unique attribute surfaced in the gear panel  .",
        "actions" => [],
        "cta_text" => "Fix selector",
        "entity_id" => "f22aadb9-e1b6-4977-a623-5eb078ed7e77",
        "entity_type" => "flow",
        "expected_impact" => "Fixing the selector should improve flow reach on settings pages and reduce onboarding gaps for users managing their business settings.",
        "finding" => "**TB_Onboarding_User_management** logged **14 errors today** vs **9 yesterday** (**+55.6%**), with selector issues active on **7 days** and **49 total errors** in the last week.\n\nIssue logs show repeated **\"Could not find element\"** failures on Talabat settings and business-management pages using a selector tied to a dynamic active-state class.",
        "outcomes" => ["engagement", "activation"],
        "priority" => "medium",
        "title" => "User Management onboarding flow selector failures are rising",
        "type" => "issue"
      },
      %{
        "action_plan" => "Review [Flow settings](https://studio.appcues.com/flows/f452d9f0-9cce-4172-a767-e68f428f4f19/settings) and confirm the targeted element exists on every page where the flow can appear. Appcues recommends only attaching steps to elements that exist for every qualified user and placing the selector on the actual visible element rather than a container that may be absent on some routes  .",
        "actions" => [],
        "cta_text" => "Check page targeting",
        "entity_id" => "f452d9f0-9cce-4172-a767-e68f428f4f19",
        "entity_type" => "flow",
        "expected_impact" => "Aligning the target with pages where the tile actually exists should reduce failed attempts and improve experience delivery consistency.",
        "finding" => "**Ops tiles - Pandora** recorded **6 errors today** vs **1 yesterday** (**+500%**), with selector issues active on **7 days** and **28 total errors** this week.\n\nRecent failures are repeated **\"Could not find element\"** errors for the target `[data-testid=\"ops-metric-tiles\"]` across reports, reviews, dashboard, and menu-management URLs.",
        "outcomes" => ["engagement"],
        "priority" => "medium",
        "title" => "Ops tiles flow errors are spiking across Pandora report pages",
        "type" => "issue"
      },
      %{
        "action_plan" => "Open [Flow settings](https://studio.appcues.com/flows/4cc334a8-f3c7-41d3-8386-bd6d44ca7154/settings) and replace the positional selector with a stable attribute on the exact field or CTA the step should attach to. Appcues recommends avoiding dynamic classes and positional selectors when possible, and using stable IDs or `data-appcues` attributes instead  .",
        "actions" => [],
        "cta_text" => "Review fragile selector",
        "entity_id" => "4cc334a8-f3c7-41d3-8386-bd6d44ca7154",
        "entity_type" => "flow",
        "expected_impact" => "Stabilizing this target should prevent a small issue from turning into a broader delivery problem on the product request flow.",
        "finding" => "**Copy of SG-Add a Product Flow - New UI** logged **7 errors today** vs **1 yesterday** (**+600%**), with selector issues active on **7 days** and **23 total errors** this week.\n\nRecent errors come from the product request form and show repeated **\"Could not find element\"** failures on a positional selector using `nth-of-type`, which is typically fragile when page structure shifts.",
        "outcomes" => ["engagement"],
        "priority" => "low",
        "title" => "SG product-request flow has a fragile selector spike",
        "type" => "issue"
      }
    ]
  },
  "notification_id" => "4e885c3c-6d0a-4560-a18f-7fd44c811584",
  "workflow_key" => "insight-issue-added"
}

Meta

%{"orig_scheduled_at" => 1777490270270019, "structured" => true}

Errors

Attempt 5—2h ago

** (Knock.ApiKeyMissingError)   The api_key setting is required to make requests to Knock.
  Please configure :api_key in config.exs, set the KNOCK_API_KEY
  environment variable, or pass into a new client instance.

    (knock 0.5.0) lib/knock/client.ex:65: Knock.Client.new/1
    (customer_api 1.21.0+522e3953) lib/customer_api/services/knock.ex:65: CustomerApi.Services.Knock.trigger/3
    (customer_api 1.21.0+522e3953) lib/customer_api/jobs/publish_notification_job.ex:93: CustomerApi.Jobs.PublishNotificationJob.do_publish/4
    (oban_pro 1.6.12) lib/oban/pro/worker.ex:1156: Oban.Pro.Worker.process/3
    (oban 2.20.3) lib/oban/queue/executor.ex:145: Oban.Queue.Executor.perform/1
    (oban 2.20.3) lib/oban/queue/executor.ex:77: Oban.Queue.Executor.call/1
    (elixir 1.19.5) lib/task/supervised.ex:105: Task.Supervised.invoke_mfa/2
    (elixir 1.19.5) lib/task/supervised.ex:40: Task.Supervised.reply/4

Attempt 4—2h ago

** (Knock.ApiKeyMissingError)   The api_key setting is required to make requests to Knock.
  Please configure :api_key in config.exs, set the KNOCK_API_KEY
  environment variable, or pass into a new client instance.

    (knock 0.5.0) lib/knock/client.ex:65: Knock.Client.new/1
    (customer_api 1.21.0+522e3953) lib/customer_api/services/knock.ex:65: CustomerApi.Services.Knock.trigger/3
    (customer_api 1.21.0+522e3953) lib/customer_api/jobs/publish_notification_job.ex:93: CustomerApi.Jobs.PublishNotificationJob.do_publish/4
    (oban_pro 1.6.12) lib/oban/pro/worker.ex:1156: Oban.Pro.Worker.process/3
    (oban 2.20.3) lib/oban/queue/executor.ex:145: Oban.Queue.Executor.perform/1
    (oban 2.20.3) lib/oban/queue/executor.ex:77: Oban.Queue.Executor.call/1
    (elixir 1.19.5) lib/task/supervised.ex:105: Task.Supervised.invoke_mfa/2
    (elixir 1.19.5) lib/task/supervised.ex:40: Task.Supervised.reply/4

Attempt 3—2h ago

** (Knock.ApiKeyMissingError)   The api_key setting is required to make requests to Knock.
  Please configure :api_key in config.exs, set the KNOCK_API_KEY
  environment variable, or pass into a new client instance.

    (knock 0.5.0) lib/knock/client.ex:65: Knock.Client.new/1
    (customer_api 1.21.0+522e3953) lib/customer_api/services/knock.ex:65: CustomerApi.Services.Knock.trigger/3
    (customer_api 1.21.0+522e3953) lib/customer_api/jobs/publish_notification_job.ex:93: CustomerApi.Jobs.PublishNotificationJob.do_publish/4
    (oban_pro 1.6.12) lib/oban/pro/worker.ex:1156: Oban.Pro.Worker.process/3
    (oban 2.20.3) lib/oban/queue/executor.ex:145: Oban.Queue.Executor.perform/1
    (oban 2.20.3) lib/oban/queue/executor.ex:77: Oban.Queue.Executor.call/1
    (elixir 1.19.5) lib/task/supervised.ex:105: Task.Supervised.invoke_mfa/2
    (elixir 1.19.5) lib/task/supervised.ex:40: Task.Supervised.reply/4

Attempt 2—2h ago

** (Knock.ApiKeyMissingError)   The api_key setting is required to make requests to Knock.
  Please configure :api_key in config.exs, set the KNOCK_API_KEY
  environment variable, or pass into a new client instance.

    (knock 0.5.0) lib/knock/client.ex:65: Knock.Client.new/1
    (customer_api 1.21.0+522e3953) lib/customer_api/services/knock.ex:65: CustomerApi.Services.Knock.trigger/3
    (customer_api 1.21.0+522e3953) lib/customer_api/jobs/publish_notification_job.ex:93: CustomerApi.Jobs.PublishNotificationJob.do_publish/4
    (oban_pro 1.6.12) lib/oban/pro/worker.ex:1156: Oban.Pro.Worker.process/3
    (oban 2.20.3) lib/oban/queue/executor.ex:145: Oban.Queue.Executor.perform/1
    (oban 2.20.3) lib/oban/queue/executor.ex:77: Oban.Queue.Executor.call/1
    (elixir 1.19.5) lib/task/supervised.ex:105: Task.Supervised.invoke_mfa/2
    (elixir 1.19.5) lib/task/supervised.ex:40: Task.Supervised.reply/4

Attempt 1—2h ago

** (Knock.ApiKeyMissingError)   The api_key setting is required to make requests to Knock.
  Please configure :api_key in config.exs, set the KNOCK_API_KEY
  environment variable, or pass into a new client instance.

    (knock 0.5.0) lib/knock/client.ex:65: Knock.Client.new/1
    (customer_api 1.21.0+522e3953) lib/customer_api/services/knock.ex:65: CustomerApi.Services.Knock.trigger/3
    (customer_api 1.21.0+522e3953) lib/customer_api/jobs/publish_notification_job.ex:93: CustomerApi.Jobs.PublishNotificationJob.do_publish/4
    (oban_pro 1.6.12) lib/oban/pro/worker.ex:1156: Oban.Pro.Worker.process/3
    (oban 2.20.3) lib/oban/queue/executor.ex:145: Oban.Queue.Executor.perform/1
    (oban 2.20.3) lib/oban/queue/executor.ex:77: Oban.Queue.Executor.call/1
    (elixir 1.19.5) lib/task/supervised.ex:105: Task.Supervised.invoke_mfa/2
    (elixir 1.19.5) lib/task/supervised.ex:40: Task.Supervised.reply/4