Introduce automation signals in Customer Activity and Customer view
🔍 Problem Statement
As a publisher reviewing Customer Activity, I cannot tell which events came from automated browsers, which results in bot traffic reading as reader behaviour in the event feed and in each customer's history, with no way to isolate it.
💡 User Story
As a publisher, I want events from automated browsers marked in Customer Activity, so that I can recognise bot events in the feed and in event details.
As a publisher, I want to filter Customer Activity by automation, so that I can isolate or exclude bot traffic.
As a publisher, I want a notice on a customer's page when their recent events came from an automated browser, so that I can spot accounts used by scripts or scrapers.
🎯 Definition of Done (DoD)
A feature is done when:
✔ Given an event with browser.webdriver = true or at least one value in browser.headless_tells, when it shows in the Customer Activity feed, then the row has an "Automation" badge. [clarify: is one headless tell enough, or should it require webdriver = true or 2+ tells?]
✔ Given that event, when its detail panel opens, then Device & Browser shows "Automation: Yes" and lists the signals found (webdriver, each headless tell).
✔ Given an event with both fields present and neither signal, when it shows, then it has no badge and the panel shows "Automation: No".
✔ Given an event sent by an SDK older than v4.6.1 (fields absent), when it shows, then it has no badge and the panel shows "Automation: Unknown".
✔ Given the Customer Activity filters, when the publisher sets Automation to Automated, Not automated or All, then the feed, the event count and the export return only matching events. Not automated includes Unknown events. The default is All, so current results do not change.
✔ Given a customer page, when it loads, then a background request counts that customer's automated events in the last 30 days, and the page renders without waiting for it.
✔ Given that count is 1 or more, when the request returns, then the page shows "Likely accessed via automation" with the count and the date of the last automated event, linking to the customer's Activity tab filtered to Automation = Automated.
✔ Given that count is 0, or the request fails or times out, when the page loads, then no notice is shown and the page works as before.
✔ This change will impact the UI, specifically the Customer Activity feed, event detail panel and filters (Publisher\CustomerActivityController, CustomerActivityFacetService, CSV export) and the customer page (Publisher\CustomerController).
✔ This solution will include the following limitations: only browsers that expose automation (webdriver, headless tells) are flagged; stealth automation and non-browser scripts are not; sites on SDKs older than v4.6.1 show Unknown; data covers the 30-day retention window only; the overview cards and funnel still count all traffic; the Core API and MCP analytics are not changed; nothing is blocked.
Log in to comment and vote
No comments yet
Be the first to share your thoughts.