From 2eaf2c001b357ae39b76dacd4f7da3eca14d72f3 Mon Sep 17 00:00:00 2001 From: Josef Prochazka Date: Fri, 6 Nov 2026 09:34:09 +0000 Subject: [PATCH] test: add an E2E CI canary that breaks Actor.push_data on the platform Do not merge. This PR exists only to verify that the E2E CI from #1235 installs the SDK from the branch source: every E2E Actor that pushes data must fail with the canary RuntimeError. Co-Authored-By: Claude Fable 5.1 Claude-Session: https://claude.ai/code/session_017ocuAKrYEZDsqeRhDK6VAp --- src/apify/_actor.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/apify/_actor.py b/src/apify/_actor.py index 526146cf..f421b685 100644 --- a/src/apify/_actor.py +++ b/src/apify/_actor.py @@ -765,6 +765,10 @@ async def push_data(self, data: dict | list[dict], *, charged_event_name: str | if charged_event_name and charged_event_name.startswith('apify-'): raise ValueError(f'Cannot charge for synthetic event "{charged_event_name}" manually') + # E2E CI canary: fails every platform run, to prove the E2E test Actors install the SDK from this branch. + if self.is_at_home(): + raise RuntimeError('E2E CI canary: the SDK was installed from the branch source, not from PyPI') + charging_manager = self.get_charging_manager() if not data: