[FEATURE] Versioning flows
Describe the feature you'd like
A way to version flows, and test new flows before production.
- When I save a new version of a flow, running tests before tagging the flow as production-ready should be possible.
- When I call via API, selecting the version of the flow should be possible.
Versioning is very important!
It's one of the view things that makes Flowise really hard to use in production (alongside no possibility to set LANGCHAIN_HIDE_INPUTS https://github.com/FlowiseAI/Flowise/issues/2845).
Considering moving away from flowise just because of these two things
Describe the feature you'd like Every time I hit "save" of a flow, I want to save the flow similarly as when I commit to git.
Use cases:
- I try things out, and want to go back
- For business critical use cases where traceability is key, e.g. government agencies ask you to prove which Flow you used in the past
Additional context Right now when one changes a flow, nobody can prove that I changed it, not even myself. I can mess up by accident. Or a team member messes the flow up. I want to mitigate that, or at least have more traceability.
Another way to look at this would be to consider that the production instance of this app should be read only, and changes only deployed programatically via git?
That's the setup I have anyway, you work on things locally but then you export the config and commit it to git, which deploys it through to the other environments.
My implementation is hacky however, so first class support for config-as-code from git would be preferable imo to versioning being built into flowise itself.
+1