diff --git a/ROADMAP.md b/ROADMAP.md index a183b8c..326b3c0 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -22,7 +22,9 @@ existing flow engine reachable and persistent precedes new feature breadth. stacks, one Traefik serving `${DOMAIN}`, `app.${DOMAIN}`, `api.${DOMAIN}` - [x] Design token contract: root `DESIGN-GUIDELINES.md`, per-repo `DESIGN.md`, byte-identical token blocks verified by `make design-check` -- [ ] CI on Codeberg (Forgejo Actions): pre-commit, backend tests, Playwright, compose smoke +- [x] CI on Codeberg (Forgejo Actions): pre-commit, backend tests, Playwright, compose smoke + — the four workflows in `.gitea/workflows/`. Never observed running on a + Codeberg push from here, so treat the wiring as written but unproven - [x] Soak and chaos harness: sustained load with the state backend, the broker and the engine itself taken away underneath it. `backend/scripts/soak.py` behind `make soak`, driving the durable webhook path through load, redis, engine and @@ -82,7 +84,8 @@ external interfaces. See `docs/architecture/structure.canvas` → *Backend – M holds a flow's nodes while its values keep arriving - [x] Node log streaming: what a node prints, and the traceback of one that fails, reach the editor as `node_log` events -- [ ] MQTT broker / InfluxDB compose services for local development +- [x] MQTT broker / InfluxDB compose services for local development + (`mosquitto` and `influxdb` in `docker/compose.dev.yml`) - [x] Git-based versioning of the flow store (one commit per saved change) - [x] Draft/publish split: edits autosave to `flow.draft.json` / `nodes.draft/`, the engine runs only the published files, and publishing promotes the