Aphelion (The Engine)

Why Stateless Synthetic Data Fails at Complex Business Logic

The only synthetic data generator combining industry standards for research, clinical operations, and pharmaceutical testing

April 03, 2026 10 min read Advanced Generation

(CausalFoundry Track)

Modern enterprise systems are highly stateful. A user adds an item to a cart, proceeds to checkout, pays, and an item is shipped. This is a strict state machine (Markov chain).

When teams try to generate synthetic event logs to train predictive models (like cart abandonment predictors), they often use tools that generate data row-by-row. This "stateless" approach destroys the logic of the business.

The Architectural Problem: Broken User Journeys

If a generic data generator creates an event log for an e-commerce platform, it evaluates each row independently.

  • Row 1: User A -\> Viewed Item
  • Row 2: User B -\> Item Shipped (Wait, User B never checked out?)
  • Row 3: User A -\> Cart Abandoned
  • Row 4: User A -\> Payment Successful (Wait, the cart was abandoned?)

Because the generator has no memory of what happened in Row 1 when it creates Row 4, the generated user journeys are completely hallucinated. Training a behavioral ML model on this data is impossible.

The CausalFoundry Solution: In-Memory StateMaps

CausalFoundry is a stateful data engine. As it generates millions of events, it maintains an in-memory StateMap for every single entity (user, session, account) in the simulation.

Recipe: Enforcing Markov Chains in Event Streams

You define the valid state transitions in your manifest. CausalFoundry tracks the state of every user in real-time and only allows valid sequential events to be pushed to your Kafka stream.

# causal_manifest.yaml

invariants:

 - state_machine:

entity: user_session

allowed_transitions:

 - browsing -> added_to_cart, abandoned

 - added_to_cart -> checkout_started, abandoned

 - checkout_started -> payment_success, payment_failed

 - payment_success -> order_shipped



# The engine strictly references the user's current state before generating the next event

state: commerce.session_map

Result: CausalFoundry generates a mathematically perfect event log. A user will never have an order_shipped event unless they successfully passed through the payment_success state. Your ML models learn real, logical human behavior.

Tags: #Healthcare #OMOP #OpenMRS #SyntheticData #FHIR #HIPAA #DataGeneration

Ready for Verifiable Synthetic Data?

Discover how CausalFoundry manufactures high-integrity datasets that obey your complex business rules.

Explore CausalFoundry