Go to file
Lucio Lelii fee24f174b Save the edited global inputs in one request
The Save bar fired a request per edited input, all at once, and they all mutated
the same execution. That is how two typed values went missing: the bulk global
endpoint replaced the whole set of globals, so the list input's save landed last
and took its neighbours down with it. The endpoint now merges (service-side fix),
but a save should not depend on request ordering to be correct.

Every edited global now goes in a single PUT /executions/{id}/globals, and the
node inputs follow one at a time - there is no bulk endpoint per step, so the
best available is not to have them in flight together. The single-input save
uses the same two requests, a global batch of exactly one, so there is one code
path and one value normalisation instead of a second copy that could drift.

planInputSaves and preparedInputValue are pure and live with the other viewer
utils, which is what made them testable: the component has no spec harness (14
injected services), and the parts worth pinning are which endpoint gets called
and what shape the value takes.

The fake now writes globals to context.globalInputs and the descriptors, where
the viewer actually reads them. The older single-key fakes only ever touched
context.inputs, so a saved global never showed up in development at all.

A failed batch reports the same error on every input in it: it failed as a
batch, and guessing a culprit would be worse than saying so.

487 frontend tests green.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-03 16:07:33 +02:00
.vscode refactor: code quality improvements (tasks 1-15) 2026-04-09 14:53:02 +02:00
docker refactor: code quality improvements (tasks 1-15) 2026-04-09 14:53:02 +02:00
docs feat: improve auth flow and task execution UX 2026-04-09 14:01:56 +02:00
public solved node input output issue 2026-01-28 17:19:57 +01:00
src Save the edited global inputs in one request 2026-09-03 16:07:33 +02:00
.dockerignore Add suspended execution resume support and production Docker setup 2026-03-22 10:35:30 +01:00
.editorconfig initial commit 2025-12-11 12:51:55 +01:00
.gitignore initial commit 2025-12-11 12:51:55 +01:00
.postcssrc.json initial commit 2025-12-11 12:51:55 +01:00
Dockerfile turnstile siteKey added with a env var 2026-03-26 13:51:31 +01:00
README.md Improve schema-driven nodes and interactive execution chat 2026-03-19 15:18:09 +01:00
angular.json Add suspended execution resume support and production Docker setup 2026-03-22 10:35:30 +01:00
components.json first commit 2026-01-07 16:07:33 +01:00
nginx.conf Add suspended execution resume support and production Docker setup 2026-03-22 10:35:30 +01:00
package-lock.json refactor: code quality improvements (tasks 1-15) 2026-04-09 14:53:02 +02:00
package.json refactor: code quality improvements (tasks 1-15) 2026-04-09 14:53:02 +02:00
tsconfig.app.json modified for deprecation 2026-04-10 09:08:38 +02:00
tsconfig.json modified for deprecation 2026-04-10 09:08:38 +02:00
tsconfig.spec.json modified for deprecation 2026-04-10 09:08:38 +02:00

README.md

HumAInFlow

This project was generated using Angular CLI version 21.0.3.

Development server

To start a local development server, run:

ng serve

Once the server is running, open your browser and navigate to http://localhost:4200/. The application will automatically reload whenever you modify any of the source files.

Code scaffolding

Angular CLI includes powerful code scaffolding tools. To generate a new component, run:

ng generate component component-name

For a complete list of available schematics (such as components, directives, or pipes), run:

ng generate --help

Building

To build the project run:

ng build

This will compile your project and store the build artifacts in the dist/ directory. By default, the production build optimizes your application for performance and speed.

Running unit tests

To execute unit tests with the Vitest test runner, use the following command:

ng test

Running end-to-end tests

For end-to-end (e2e) testing, run:

ng e2e

Angular CLI does not come with an end-to-end testing framework by default. You can choose one that suits your needs.

Additional Resources

For more information on using the Angular CLI, including detailed command references, visit the Angular CLI Overview and Command Reference page.