@syntax-syllogism/flow-delta
v0.2.1
Published
Semantic visual diff for Salesforce Flows
Maintainers
Readme
FlowDelta
A semantic, visual diff for Salesforce Flows: parse two versions of a
.flow-meta.xml, diff them by stable node name, and render a self-contained
interactive HTML artifact (plus diff.json) that shows added / deleted /
modified / unchanged nodes and edges with per-property deltas.
Inspired by Google's Flow Lens, with a focus on making it work with GitLab's pipelines. We also opted for our own HTML output over plantuml, graphviz, or mermaid.
Sample Gitlab Project with artifacts
Usage
Runs as a TypeScript CLI via tsx (no build step). See docs/cli.md
for full file-mode and git-mode options.
npx tsx src/cli.ts --old before.flow-meta.xml --new after.flow-meta.xml --out ./flow-delta-out --jsonDevelopment
npm install
npm test # parser + semantic diff / render / CLI suites
npm run render:fixtures # render every diff fixture to flow-delta-out/fixtures/Architecture, testing, and the vendored-parser policy are documented in docs/ (start with docs/architecture.md).
Contributing
See CONTRIBUTING.md and the Code of Conduct.
Security
See SECURITY.md for how to report vulnerabilities.
License
MIT © Jacob Richter — applies to FlowDelta-authored code.
FlowDelta also vendors the Flow parser (src/parser/) from Google's
Flow Lens (google-flow-lens), which is
licensed under the Apache License 2.0. Those files retain their
original headers; see NOTICE for attribution and provenance, and
docs/vendoring.md for the policy.
