Workflow Simulator for Testing Flight Integration Connectors
agoda · E-commerce · 2026 · source Agentic: no · promotional bias: low · source-backed · extracted with prompt 0.5.6 (schema v2)
Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.
Problem
Domain: Flight supplier connector testing and future AI-assisted scenario generation
Agoda needed faster, earlier validation of flight supplier connectors without requiring engineers to spin up a full production-like booking stack for every integration test.
Constraints:
- Supplier connectors translate search, pricing, ancillaries, booking, cancellation, and other flight operations.
- Traditional E2E tests required frontend services, messaging systems, caches, microservices, and background workers.
- Late E2E failures increased remediation cost and forced reruns of whole test suites.
- Supplier-specific tests had limited reuse across connectors.
- The current system is DAG-based simulation; AI-assisted scenario generation is a future direction, not implemented production behavior.
Architecture
Agoda built a Workflow Simulator around four main components: a Scenario Builder that creates realistic booking contexts, a DAG-based Workflow Executor that simulates upstream booking steps and calls connectors through internal contracts, assertion layers that validate endpoint and cross-workflow behavior, and a Test Runner that lets engineers execute connector tests locally before full E2E validation.
Diagram confidence: explicit (topology described by the source).
flowchart LR scenario-builder["Scenario Builder"] --> workflow-executor["Workflow Executor"] future-ai-scenario-generator["Future AI scenario generator"] --> scenario-builder workflow-executor --> connector-under-test["Connector under test"] connector-under-test --> supplier-test-environment["Supplier test environment"] workflow-executor --> assertions["Assertions"] assertions --> test-runner["Test Runner"]
Components
| Component | Role | Interacts with |
|---|---|---|
Scenario Builder |
Defines target acceptance scenarios and creates scenario context such as passenger composition, itinerary, cabin class, and ancillaries. | Workflow Executor |
Workflow Executor |
Traverses a DAG of simulated business steps and orchestrates connector calls. | Scenario Builder, Connector under test, Assertions |
Connector under test |
Supplier connector being validated through Agoda's internal contracts. | Workflow Executor, Supplier test environment |
Supplier test environment |
External supplier-side environment used by the connector during simulation. | Connector under test |
Assertions |
Validate endpoint contracts, field rules, logical consistency, and cross-step scenario correctness. | Workflow Executor, Test Runner |
Test Runner |
Initializes the simulator and executes connector tests locally or early in implementation. | Assertions |
Future AI scenario generator |
Proposed future component for generating scenarios and edge cases to improve coverage. | Scenario Builder |
Data flow
A test scenario defines passenger, itinerary, cabin, and ancillary context; the workflow executor traverses a DAG of simulated booking steps; each node calls the connector and records requests/responses while preserving shared state; endpoint and workflow assertions validate the recorded interactions; and full E2E testing remains the final integration check.
3 supporting quotes
Why this architecture
The simulator deliberately trades production-like scalability for local clarity and traceability, because the goal is early connector validation rather than full-stack load or availability testing.
Models used: Directed acyclic graph workflow simulation · Future AI-assisted scenario generation
Scale
- Agoda integrates with numerous external partners including airlines, OTAs, and providers.“Agoda operates a flight booking platform that integrates with numerous external partners including airlines, OTAs (Online Travel Agencies), and various providers.”summary, stated
- The connector layer spans search, pricing, ancillaries, booking, and post-booking flows.“The connector is business-critical as it facilitates translation across all business operations including search, pricing, ancillaries, booking, and post-booking flows like cancellations.”summary, stated
Alternatives considered (roads not taken)
Run full production-like E2E stacks for connector testing
Rejected because: They were slow, expensive, blocked by unrelated dependencies, and found bugs late.
Replace E2E testing completely
Rejected because: The simulator does not cover production-only architecture, race conditions, rate limits, or final integration behavior.
Keep all scenario generation manual
Rejected because: Agoda identifies AI-assisted edge-case generation as a future way to improve coverage and quality.
Patterns
eval-driven-development (testing)
The Workflow Simulator shifts connector quality checks earlier so engineers can validate behavior locally before full E2E tests.
structured-output-contract (integration)
Endpoint assertions validate contract fields, types, formats, lengths, and logical consistency across connector requests and responses.
synthetic-data-generation (future direction)
The current simulator may later use AI to generate diverse realistic scenarios and edge cases for broader coverage.
Tradeoffs
Optimize simulator clarity over production scalability
Chose Synchronous calls and recorded interactions over Caching, asynchronous messaging, and production-scale architecture inside the simulator.
Rationale: Connector engineers needed traceable local feedback more than production-like throughput in this layer.
Use supplier-agnostic internal contracts
Chose Reusable connector-facing simulator interactions over Supplier-specific test harnesses for every integration.
Rationale: The same simulator can validate multiple suppliers and new connectors with minimal additional work.
Gotchas (what bit them)
Full-stack connector tests found defects late.
Root cause: Traditional testing required connector implementation, supplier test environments, and a complete production-like stack before execution.
Resolution: Use a simulator to validate connector logic early through realistic local workflows.
E2E tests were vulnerable to unrelated system instability.
Root cause: Production-like testing depended on upstream and downstream services beyond the connector under test.
Resolution: Simulate surrounding ecosystem behavior and call connectors through reusable internal contracts.
The simulator cannot reproduce all production failures.
Root cause: It intentionally omits asynchronous communication, caching, parallelism, rate limits, and some production-only constraints.
Resolution: Keep full E2E tests as final validation rather than treating the simulator as a replacement.
Evaluation
Agoda evaluates connector correctness with endpoint assertions and workflow-scenario assertions over recorded request-response pairs and accumulated scenario state.
Metrics: Endpoint contract validation · Field type/format/length validation · Cross-step data propagation · Workflow-scenario consistency · Supplier-side booking detail comparison
Outcomes
- Engineers can run realistic supplier connector flows locally without the full E2E stack.
- The simulator shortens feedback loops and catches issues earlier in connector implementation.
- AI-assisted scenario generation remains a future direction rather than current production behavior.
The simulator targets a connector layer spanning many external flight suppliers and multiple booking business operations.