feat(eventbridge): implement real EventBridge → Step Functions delivery#294
Merged
vieiralucas merged 3 commits intomainfrom Apr 12, 2026
Merged
feat(eventbridge): implement real EventBridge → Step Functions delivery#294vieiralucas merged 3 commits intomainfrom
vieiralucas merged 3 commits intomainfrom
Conversation
EventBridge rules and Scheduler schedules targeting Step Functions state machines now actually start executions instead of just recording stubs. - Add StepFunctionsDelivery trait to fakecloud-core delivery bus - Add StepFunctionsDeliveryImpl in fakecloud-server - Add start_execution_from_delivery() to fakecloud-stepfunctions for cross-service execution starts - Wire up delivery in EventBridge service and Scheduler - Keep stub recording in state for introspection compatibility - Add E2E test verifying EB rule starts and completes SFN execution
There was a problem hiding this comment.
2 issues found across 7 files
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="crates/fakecloud-stepfunctions/src/service.rs">
<violation number="1" location="crates/fakecloud-stepfunctions/src/service.rs:896">
P2: Validate cross-service execution input as JSON before starting execution. Without validation, malformed payloads are silently executed as `{}` via interpreter fallback.</violation>
</file>
<file name="crates/fakecloud-server/src/main.rs">
<violation number="1" location="crates/fakecloud-server/src/main.rs:229">
P1: EventBridge/Scheduler-started Step Functions executions are wired with a reduced delivery bus, so SNS/EventBridge Task integrations silently no-op instead of delivering.</violation>
</file>
Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.
…lidate JSON input
- Wire SNS and EventBridge delivery into the SFN interpreter bus so task
states (SNS Publish, EventBridge PutEvents) work in EB-started executions
- Validate input JSON before starting cross-service executions to reject
malformed payloads early instead of silently falling back to {}
There was a problem hiding this comment.
1 issue found across 2 files (changes from recent commits).
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="crates/fakecloud-server/src/main.rs">
<violation number="1" location="crates/fakecloud-server/src/main.rs:231">
P2: SFN-triggered SNS publishes are configured with an SQS-only bus, so SNS Lambda subscriptions are never invoked.</violation>
</file>
Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.
SNS Lambda subscriptions now fire when a Step Functions task state publishes to an SNS topic during an EventBridge-triggered execution.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
StepFunctionsDeliverytrait to the core delivery busTest plan
eb_put_events_stub_targets_no_errorstill passescargo clippy -D warningscleanSummary by cubic
EventBridge rules and Scheduler schedules targeting Step Functions now start real executions with the event payload as input. This replaces stubs, runs via the ASL interpreter, and supports SNS, EventBridge, SQS, and Lambda tasks inside those executions.
New Features
StepFunctionsDeliveryinfakecloud-coreandStepFunctionsDeliveryImplinfakecloud-server.start_execution_from_deliveryinfakecloud-stepfunctions, with a full interpreter delivery bus (SNS, EventBridge, SQS, Lambda) for EB/Scheduler-started runs.Bug Fixes
Written for commit 88ea29f. Summary will update on new commits.