sunlishuo25 opened a new pull request, #18673: URL: https://github.com/apache/dolphinscheduler/pull/18673
## Was this PR generated or assisted by AI? YES. Code investigation, implementation, regression tests, documentation, and this description were assisted by OpenAI Codex. Local checks and their limitations are reported below. ## Purpose of the pull request Fixes #18672. A SeaTunnel workflow node always defaults to `taskExecuteType=BATCH`, even when its SeaTunnel configuration runs a streaming job, and the form has no way to select Stream Task. Add an explicit Batch/Stream choice using the existing execution-type field so an opted-in workflow task can appear in the Stream Task instance list. Batch remains the default, including for existing definitions without an execution type. The choice is independent of the SeaTunnel configuration, supporting both custom scripts and resource files without trying to parse HOCON in the browser. Users must also select the matching SeaTunnel job mode and use attached submission. ## Brief change log - Add the SeaTunnel execution-type selector and preserve it during form initialization/save/reload. - Carry each task's execution type through DAG construction, editing and copying, including connected-edge styling and legacy defaults. - Disable SeaTunnel's unsupported savepoint action in the stream instance table. - Add a focused Selenium regression using the existing E2E framework and English/Chinese usage guidance. ## Verify this pull request - Passed: UI ESLint, `vue-tsc --noEmit`, and `pnpm run build:prod` using the checked-in lockfile. - Passed: `./mvnw spotless:apply spotless:check` with JDK 11. - Passed: `./mvnw -f dolphinscheduler-e2e/pom.xml -pl dolphinscheduler-e2e-case -am test-compile`. - Additional local source-level checks (16/16 passed; the unmodified baseline passes 6/16) execute the real form schema, radio renderer, serialization, form restoration, and DAG/edit code with unrelated UI services mocked. They cover raw/resource configurations, Batch defaults, Stream persistence, legacy definitions, editing and copying. These diagnostics are separate from the committed Selenium test. - Passed in an isolated existing 3.3.2 binary with H2: create and publish a workflow containing a `SEATUNNEL` task marked `STREAM`, run it through the workflow, observe `RUNNING_EXECUTION`, confirm inclusion in STREAM pagination and exclusion from BATCH pagination. A fake attached CLI was used to isolate scheduler behavior; this does not test a real SeaTunnel engine or a backend built from this commit. Stop verification was inconclusive because the Mac lacks `pstree` (the API accepted the request but the process remained running). - Attempted: `./mvnw -f dolphinscheduler-e2e/pom.xml -pl dolphinscheduler-e2e-case -am -Dtest=WorkflowSeaTunnelE2ETest -Dsurefire.failIfNoSpecifiedTests=false -Dm1_chip=true test`. Testcontainers fails during setup because no valid Docker environment is available, before test assertions run. The E2E run remains outstanding. This draft is limited to classification of workflow-managed tasks. It does not restore standalone streaming execution, add detached-job tracking/savepoint/recovery, or fix existing engine-cancellation and cross-workflow streaming-dependency behavior. A live SeaTunnel engine end-to-end run has not been performed. ## Pull Request Notice [Pull Request Notice](https://github.com/apache/dolphinscheduler/blob/dev/docs/docs/en/contribute/join/pull-request.md) -- 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]
