No-Code SaaS Automation Platform · View 07 of 21 · Structure
Decisions
- Credential custody lives in a separate AWS account, not merely a separate service. The threat being designed against is a compromise of our own execution plane becoming a compromise of the customers' other SaaS products.
- The connector sandbox is Lambda rather than a container in the runner: partner-submitted code must not share a process, a filesystem or a network namespace with the run.
- MSK for the trigger event log and DynamoDB for the step ledger — a partitioned replayable log for 'what happened', a high-write key-value store for 'where is this run'. Those are different access patterns and resisting one store for both is the point.
Assumptions
- Fargate rather than EC2 for every tier, accepting a per-task cost premium to keep the idle-automation cost near zero (≤ $0.004/automation/month).
- Aurora for the definition registry because publication is strongly consistent and low-volume; DynamoDB for the catalogue because reads are hot and shapes vary.
Risks
- The quota governor is on the path of every outbound call and is therefore the platform's hottest single dependency — Core Architecture Question 2 is about exactly this.
- A cross-account hop for every token exchange adds latency to each step; mitigated by caching the short-lived token for the run's duration, which widens the revocation window.