Release Flow Tools 0.2.0
Verify / verify (push) Canceled after 0s

This commit is contained in:
2026-09-02 08:10:52 +02:00
parent 12d0ac0155
commit 57dd710275
28 changed files with 810 additions and 66 deletions
+6
View File
@@ -1,5 +1,11 @@
# Changelog
## 0.2.0 - 2026-09-02
- Add bounded CSV/JSON/NDJSON/XML import, a richer transformation catalogue,
explicit schema/loss evidence, cancellable worker execution and reusable
recipe/export handoffs.
## 0.1.0 - 2026-09-01
- Add eight bounded transformation primitives, stage snapshots/losses, joins and deterministic recipe/result export.
+3 -3
View File
@@ -1,5 +1,5 @@
==============================================================================
@add-ideas/toolbox-contract@0.2.3
@add-ideas/toolbox-contract@0.3.0
Declared licence: Apache-2.0
==============================================================================
--- LICENSE ---
@@ -198,7 +198,7 @@ Declared licence: Apache-2.0
==============================================================================
@add-ideas/toolbox-helpers@0.1.0
@add-ideas/toolbox-helpers@0.2.0
Declared licence: GPL-3.0-or-later
==============================================================================
--- LICENSE ---
@@ -879,7 +879,7 @@ Public License instead of this License. But first, please read
==============================================================================
@add-ideas/toolbox-shell-react@0.2.3
@add-ideas/toolbox-shell-react@0.3.0
Declared licence: Apache-2.0
==============================================================================
--- LICENSE ---
+11 -2
View File
@@ -1,5 +1,14 @@
# Flow Tools
Flow Tools is a GPL-3.0-or-later local data-pipeline designer. It parses bounded JSON/CSV/NDJSON/XML and composes fixed select, rename, filter, map, sort, group, join and type-format primitives. Every stage has an inspectable snapshot and explicit loss notes. Recipes are deterministic validated JSON; there is no arbitrary code, eval, plugin or network stage.
Flow Tools is a GPL-3.0-or-later local data-pipeline designer. It accepts pasted
or local JSON/CSV/NDJSON/XML and composes fixed select, rename, filter, map,
sort, group, join, type-format, deduplicate, slice and explode primitives. Every
stage has an inspectable snapshot, dataset analysis and explicit loss notes.
Recipes are deterministic validated JSON; there is no arbitrary code, eval,
plugin or network stage.
Limits: 2 MiB sources, 10,000 input rows, 20,000 join output rows, 200 fields, 30 stages and 256 KiB recipe JSON. Result JSON/CSV and recipes export explicitly. Run `npm ci`, `npm run check`, `npm run test:browser`, then `npm run package:release -- --force`.
Limits: 2 MiB sources, 10,000 input rows, 20,000 expanded rows, 200 fields, 30
stages and 256 KiB recipe JSON. Simulation runs in a cancellable worker. Result
JSON/CSV, recipes and an inert pipeline SVG export explicitly. Run `npm ci`,
`npm run check`, `npm run test:browser`, then
`npm run package:release -- --force`.
+1 -1
View File
@@ -1,3 +1,3 @@
# Source identity
Flow Tools 0.1.0 · `de.add-ideas.flow-tools` · https://git.add-ideas.de/lotobo/flow-tools · GPL-3.0-or-later. Release order, timestamps and permissions are normalized with a SHA-256 sidecar.
Flow Tools 0.2.0 · `de.add-ideas.flow-tools` · https://git.add-ideas.de/lotobo/flow-tools · GPL-3.0-or-later. Release order, timestamps and permissions are normalized with a SHA-256 sidecar.
+3 -1
View File
@@ -1,3 +1,5 @@
# Third-party notices
Bundled runtime: React/React DOM and @xmldom/xmldom (MIT); add·ideas Toolbox packages (GPL-3.0-or-later). Exact texts are generated in release assets.
Bundled runtime: React/React DOM and @xmldom/xmldom (MIT); add·ideas Toolbox
Contract and Shell React 0.3.0 (Apache-2.0); and Toolbox Helpers 0.2.0
(GPL-3.0-or-later). Exact texts are generated in release assets.
+10 -1
View File
@@ -1,3 +1,12 @@
# Architecture
The bounded parser produces JSON values. The interpreter copies rows stage-by-stage and accepts a fixed discriminated stage grammar. It records output and loss notes after each stage. Recipe import validates every field before execution; React retains the last successful run.
The bounded parser accepts pasted or local JSON, CSV, NDJSON and inert XML and
produces JSON values. The interpreter copies rows stage-by-stage and accepts a
fixed discriminated grammar, including deduplication, bounded slicing and array
explosion. It records output, loss notes and dataset statistics after each run.
Analysis and simulation run in a disposable module worker. Progress messages
are revision-checked, cancellation terminates the worker, and React retains the
last successful snapshots. Recipe imports are size-bounded and validate every
field before execution. Result JSON/CSV, recipe JSON and the escaped pipeline
SVG are generated entirely in the browser.
+1 -1
View File
@@ -1,4 +1,4 @@
const CACHE = "flow-tools-v0.1.0",
const CACHE = "flow-tools-v0.2.0",
APP = [
"./",
"./index.html",
+19 -2
View File
@@ -3,7 +3,7 @@
"schemaVersion": 1,
"id": "de.add-ideas.flow-tools",
"name": "Flow Tools",
"version": "0.1.0",
"version": "0.2.0",
"description": "Transform structured data locally.",
"entry": "./",
"icon": "./favicon.svg",
@@ -16,11 +16,28 @@
},
"requirements": {
"secureContext": false,
"workers": false,
"workers": true,
"indexedDb": false,
"crossOriginIsolated": false,
"topLevelContext": false
},
"io": {
"accepts": [
{ "mediaType": "application/json", "extensions": [".json"] },
{
"mediaType": "application/x-ndjson",
"extensions": [".ndjson", ".jsonl"]
},
{ "mediaType": "text/csv", "extensions": [".csv"] },
{ "mediaType": "application/xml", "extensions": [".xml"] }
],
"produces": [
{ "mediaType": "application/json", "extensions": [".json"] },
{ "mediaType": "text/csv", "extensions": [".csv"] },
{ "mediaType": "image/svg+xml", "extensions": [".svg"] }
]
},
"capabilities": { "required": ["workers"], "optional": [] },
"privacy": {
"processing": "local",
"fileUploads": true,