A while ago I saw a promising Clojure project stepwise [0] which sounds pretty close to what you're describing. It not only allows you to define steps in code, but also implements cool stuff like ability to write conditions, error statuses and resources in a much-less verbose EDN instead of JSON. It also supports code reloading and offloading large payloads to S3.
Here's a nice article with code examples implementing a simple pipeline: https://www.quantisan.com/orchestrating-pizza-making-a-tutor....
Wow cool, a project I created got a mention on HN. :D
Despite the ways France tends to be portrayed in the US media, it plays an outsized role in European and international politics as a result. Makes sense the CIA would want to be involved.