nrml
Backend developmentDoorDash

Refund Workflow Engine

Interpret a named-node workflow, calculate partial refunds, and replay requests safely.

The scenario

Interpret a text-defined delivery refund workflow, add partial refunds, and preserve decisions when requests are repeated. This original practice follows community reports of the earlier DoorDash workflow-engine format.

A failure to reason about

An order exactly at a delay threshold may follow a different branch from an order one minute later. Repeating a request should preserve its original decision.

Illustrative context for the topic. The exercise’s full requirements arrive in the workspace.

Questions to bring to your review

  • Which graph branch should execute for an order?
  • Where should integer rounding happen?
  • What does a repeated request key mean?
  • How can a retry avoid changing an earlier response?

Skills you will practice

  • Control flow
  • Text parsing
  • State ownership
  • Idempotency
  • Boundary testing

Read the existing code, reproduce the reported behavior, review proposed changes, and verify your final implementation. You can use AI assistance while staying responsible for the result.

Prepare with a worked example

See how nrml evaluates an attempt, including the limits of automated evidence.