kz930 opened a new issue, #7394: URL: https://github.com/apache/texera/issues/7394
### What happened? The property panel's text inputs never write an empty value back to the operator. Clearing a field leaves the box empty on screen while the operator keeps whatever it held before, so the workflow runs on a value the user can no longer see. Reproduced against CSV File Scan's Delimiter, reading the stored operator properties after each step: | step | box shows | operator holds | | --- | --- | --- | | freshly dropped | `,` | `","` | | cleared, waited 3s | empty | `","` | | typed `X`, waited 3s | `X` | `"X"` | | cleared again, waited 4s | empty | `"X"` | | clicked away to blur the field, waited 3s | empty | `"X"` | Typing arrives within three seconds, so the change stream and its 150 ms debounce are working. Only the empty value fails to arrive, and blurring does not help. The panel and the executed workflow therefore disagree: the box is empty while the file is parsed on `X`. It also means an empty string is unreachable from the UI for any text property, including the ones where empty is meaningful. Either behaviour would be acceptable as long as the panel reflects it — write the schema default back and display it, or keep the last valid value and display it. What is wrong is that the retained value is invisible. The root cause is not identified. `onFormChanges` (`operator-property-edit-frame.component.ts:546`) strips only `null` and `undefined`, so `""` should pass; `distinctUntilChanged` cannot block it because a fresh object is built on every event; `checkOperatorProperty` compares with `isEqual`, and `""` differs from the old value. Something between the formly model and that handler drops it. Not every control is affected: Bubble Chart's Color Column, a dropdown with no schema default, does store an empty string when cleared. The behaviour above was observed on plain text inputs. ### How to reproduce? 1. Create a workflow and drop a CSV File Scan. 2. Delimiter shows its default `,`. Type `X` and wait a moment — the operator now holds `X`. 3. Clear the field and click elsewhere to blur it. 4. The box is empty and the operator still holds `X`. Reload the page and `X` comes back. ### Version/Branch 1.3.0-incubating-SNAPSHOT (main) ### Commit Hash (Optional) e7cd5b1ee ### What browsers are you seeing the problem on? Chrome ### Relevant log output _No response_ -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
