This is an automated email from the ASF dual-hosted git repository.
aglinxinyuan pushed a change to branch xinyuan-loop-feb
in repository https://gitbox.apache.org/repos/asf/texera.git
from 95bd9246d8 Merge branch 'main' into xinyuan-loop-feb
add d33603a452 fix(amber-python): harden Udon debug command translation
against bad input (#4512)
add a099f0c9bc chore(amber): remove unused SchedulerTimeSlotExpiredPause
(#4533)
add 871017e2b3 test(amber-python): add unit tests for evaluate-expression
and retry-current-tuple handlers (#4520)
add 23901be24b fix(amber): wire ExecutionReconfigurationService back to
the engine (#4531)
add ef66190f22 fix: add missing context switches for repeated state
processing (#4424)
add 05b271c5cc feat(engine): add support for restarting regions (#4441)
add 1ce60d6141 chore(deps): upgrade frontend to Angular 19 (#4445)
add f4384f9cd0 chore(deps): upgrade frontend to Angular 20 (#4528)
add 892c279315 chore(deps): upgrade frontend to Angular 21 (#4534)
add 321855cc0b fix: change detection scheduling regression (#4537)
add a38f0ecc31 fix(frontend): version history timestamp display (#4539)
add dd39f93e11 feat(agent-service): add `agent-service` that manages LLM
agents (#4495)
add 402d974166 ci: bump `coursier/cache-action` to v8.1.0 (#4543)
add 98ba87eeb7 feat(agent-service): enable Texera Agent to do workflow
editing and execution (#4540)
add 327bff68eb test(amber): ignore failing source-propagation
reconfiguration case (#4546)
add 217ddc20bd fix: visualization result panel iframe sizing after Angular
upgrade (#4542)
add 02018cdfc2 fix(amber): Python internal marker replay during
reconfiguration (#4547)
add ae68fc992a fix(revert): "fix: add missing context switches for
repeated state processing" (#4552)
add 488ed16bf2 Merge branch 'main' into xinyuan-loop-feb
No new revisions were added by this update.
Summary of changes:
.github/workflows/build-and-push-images.yml | 6 +-
.github/workflows/github-action-build.yml | 60 +-
.gitignore | 7 +
.licenserc.yaml | 3 +
agent-service/.dockerignore | 2 +
agent-service/.env.example | 15 +
agent-service/.prettierrc | 13 +
agent-service/bun.lock | 237 +
agent-service/package.json | 37 +
.../src/agent/index.ts | 3 +-
agent-service/src/agent/prompts.ts | 296 +
agent-service/src/agent/texera-agent.ts | 840 +
.../src/agent/tools/index.ts | 6 +-
agent-service/src/agent/tools/result-formatting.ts | 138 +
agent-service/src/agent/tools/tools-utility.ts | 70 +
.../src/agent/tools/workflow-crud-tools.ts | 346 +
.../src/agent/tools/workflow-execution-tools.ts | 604 +
agent-service/src/agent/util/auto-layout.ts | 70 +
agent-service/src/agent/util/context-utils.ts | 288 +
.../src/agent/util/workflow-system-metadata.ts | 268 +
agent-service/src/agent/util/workflow-utils.ts | 209 +
.../src/agent/workflow-result-state.test.ts | 95 +
agent-service/src/agent/workflow-result-state.ts | 83 +
agent-service/src/agent/workflow-state.test.ts | 176 +
agent-service/src/agent/workflow-state.ts | 488 +
agent-service/src/api/auth-api.ts | 65 +
agent-service/src/api/backend-api.ts | 88 +
agent-service/src/api/compile-api.ts | 74 +
.../src/api/execution-api.ts | 26 +-
.../util/stub.ts => agent-service/src/api/index.ts | 8 +-
agent-service/src/api/workflow-api.ts | 97 +
.../src/config/env.ts | 27 +-
.../app-setting.ts => agent-service/src/index.ts | 14 +-
.../src/logger.ts | 44 +-
agent-service/src/server.test.ts | 223 +
agent-service/src/server.ts | 663 +
agent-service/src/types/agent.ts | 156 +
.../src/types/execution.ts | 59 +-
.../src/types/index.ts | 6 +-
agent-service/src/types/workflow.ts | 144 +
agent-service/tsconfig.json | 23 +
.../handlers/control/debug_command_handler.py | 45 +-
.../handlers/control/test_debug_command_handler.py | 50 +-
.../control/test_evaluate_expression_handler.py | 156 +
.../control/test_replay_current_tuple_handler.py | 139 +
.../core/architecture/managers/pause_manager.py | 7 +-
.../core/architecture/rpc/async_rpc_server.py | 21 +-
amber/src/main/python/core/runnables/main_loop.py | 13 -
.../architecture/common/AmberProcessor.scala | 1 -
.../controller/execution/WorkflowExecution.scala | 14 +
.../promisehandlers/ReconfigurationHandler.scala | 47 +-
.../messaginglayer/NetworkInputGateway.scala | 4 +-
.../scheduling/RegionExecutionCoordinator.scala | 17 +-
.../scheduling/WorkflowExecutionCoordinator.scala | 8 +-
.../engine/architecture/worker/DataProcessor.scala | 11 +-
.../engine/architecture/worker/PauseType.scala | 2 -
.../apache/texera/web/ComputingUnitMaster.scala | 7 +-
.../web/resource/SyncExecutionResource.scala | 900 ++
.../service/ExecutionReconfigurationService.scala | 136 +-
.../control/utils/TrivialControlTester.scala | 14 +-
.../messaginglayer/NetworkInputGatewaySpec.scala | 12 +
.../amber/engine/e2e/ReconfigurationSpec.scala | 18 +-
.../workflow/WorkflowExecutionsResourceSpec.scala | 40 +
.../ExecutionReconfigurationServiceSpec.scala | 149 +
frontend/.eslintrc.json | 12 +-
frontend/angular.json | 42 +-
frontend/karma.conf.js | 4 +-
frontend/nx.json | 3 -
frontend/package.json | 87 +-
frontend/proxy.config.json | 13 +-
frontend/src/app/app.component.ts | 1 +
frontend/src/app/app.module.ts | 37 +-
frontend/src/app/common/formly/array.type.ts | 1 +
.../collab-wrapper/collab-wrapper.component.ts | 1 +
frontend/src/app/common/formly/multischema.type.ts | 1 +
frontend/src/app/common/formly/null.type.ts | 1 +
frontend/src/app/common/formly/object.type.ts | 1 +
.../preset-wrapper/preset-wrapper.component.ts | 1 +
.../formly/repeat-dnd/repeat-dnd.component.ts | 1 +
.../service/notification/notification.service.ts | 4 +-
.../registration-request-modal.component.ts | 1 +
.../workflow-persist.service.spec.ts | 38 +-
.../src/app/common/util/computing-unit.util.ts | 1 +
.../app/common/util/size-formatter.util.spec.ts | 2 +-
.../admin/execution/admin-execution.component.ts | 1 +
.../component/admin/gmail/admin-gmail.component.ts | 1 +
.../settings/admin-settings.component.spec.ts | 3 +-
.../admin/settings/admin-settings.component.ts | 1 +
.../admin/user/admin-user.component.spec.ts | 5 +-
.../component/admin/user/admin-user.component.ts | 1 +
.../app/dashboard/component/dashboard.component.ts | 9 +-
.../conflicting-file-modal-content.component.ts | 1 +
.../files-uploader/files-uploader.component.ts | 1 +
.../filters-instructions.component.ts | 1 +
.../user/filters/filters.component.spec.ts | 2 +
.../component/user/filters/filters.component.ts | 17 +-
.../component/user/flarum/flarum.component.ts | 1 +
.../user/list-item/list-item.component.ts | 3 +-
.../markdown-description.component.ts | 1 +
.../user/search-bar/search-bar.component.ts | 1 +
.../search-results/search-results.component.ts | 1 +
.../component/user/search/search.component.ts | 1 +
.../user/share-access/share-access.component.ts | 1 +
.../user/sort-button/sort-button.component.ts | 1 +
.../user/user-avatar/user-avatar.component.ts | 1 +
.../user-computing-unit-list-item.component.ts | 1 +
.../user-computing-unit.component.spec.ts | 8 +
.../user-computing-unit.component.ts | 1 +
.../dataset-detail.component.ts | 1 +
.../user-dataset-file-renderer.component.ts | 1 +
.../user-dataset-staged-objects-list.component.ts | 1 +
.../user-dataset-version-creator.component.ts | 1 +
.../user-dataset-version-filetree.component.ts | 1 +
.../user-dataset-list-item.component.html | 2 +-
.../user-dataset-list-item.component.ts | 1 +
.../user/user-dataset/user-dataset.component.ts | 1 +
.../user/user-icon/user-icon.component.spec.ts | 2 +
.../user/user-icon/user-icon.component.ts | 1 +
.../public-project/public-project.component.ts | 1 +
.../user-project-list-item.component.html | 6 +-
.../user-project-list-item.component.ts | 1 +
.../ngbd-modal-add-project-workflow.component.ts | 1 +
...ngbd-modal-remove-project-workflow.component.ts | 1 +
.../user-project-section.component.ts | 1 +
.../user/user-project/user-project.component.ts | 1 +
.../user/user-quota/user-quota.component.html | 4 +-
.../user/user-quota/user-quota.component.spec.ts | 10 +-
.../user/user-quota/user-quota.component.ts | 10 +-
.../workflow-execution-history.component.html | 4 +-
.../workflow-execution-history.component.ts | 13 +-
.../workflow-runtime-statistics.component.html | 4 +-
.../workflow-runtime-statistics.component.ts | 22 +-
.../highlight-search-terms.pipe.ts | 3 +-
.../user-workflow-list-item.component.spec.ts | 4 +-
.../user-workflow-list-item.component.ts | 1 +
.../user-workflow/user-workflow.component.spec.ts | 4 +-
.../user/user-workflow/user-workflow.component.ts | 1 +
.../src/app/hub/component/about/about.component.ts | 1 +
.../about/local-login/local-login.component.html | 4 +-
.../about/local-login/local-login.component.ts | 3 +-
.../browse-section/browse-section.component.ts | 1 +
.../hub-search-result.component.ts | 1 +
frontend/src/app/hub/component/hub.component.ts | 1 +
.../landing-page/landing-page.component.ts | 1 +
.../detail/hub-workflow-detail.component.ts | 1 +
.../agent-chat/agent-chat.component.html | 424 -
.../agent-chat/agent-chat.component.spec.ts | 65 -
.../agent-panel/agent-chat/agent-chat.component.ts | 277 -
.../component/agent-panel/agent-panel.component.ts | 200 -
.../agent-interaction.component.html | 161 +
.../agent-interaction.component.scss | 283 +
.../agent-interaction.component.ts | 251 +
.../agent-chat/agent-chat.component.html | 455 +
.../agent-chat/agent-chat.component.scss | 109 +-
.../agent-panel/agent-chat/agent-chat.component.ts | 712 +
.../agent-panel/agent-panel.component.html | 60 +-
.../agent-panel/agent-panel.component.scss | 15 +
.../agent/agent-panel/agent-panel.component.ts | 364 +
.../agent-registration.component.html | 13 +-
.../agent-registration.component.scss | 0
.../agent-registration.component.ts | 51 +-
.../react-step-detail-modal.component.html | 438 +
.../react-step-detail-modal.component.scss} | 1 +
.../react-step-detail-modal.component.ts | 222 +
.../annotation-suggestion.component.ts | 1 +
.../breakpoint-condition-input.component.spec.ts | 28 +-
.../breakpoint-condition-input.component.ts | 5 +-
.../code-debugger.component.spec.ts | 24 +-
.../code-editor-dialog/code-debugger.component.ts | 20 +-
.../code-editor-dialog/code-editor.component.ts | 8 +-
.../codearea-custom-template.component.ts | 1 +
.../dataset-file-selector.component.ts | 1 +
.../dataset-selection-modal.component.ts | 1 +
.../dataset-version-selector.component.ts | 1 +
.../left-panel/left-panel.component.spec.ts | 23 +-
.../component/left-panel/left-panel.component.ts | 3 +-
.../operator-label/operator-label.component.ts | 1 +
.../operator-menu/operator-menu.component.spec.ts | 33 +-
.../operator-menu/operator-menu.component.ts | 1 +
.../left-panel/settings/settings.component.ts | 1 +
.../time-travel/time-travel.component.ts | 1 +
.../versions-list/versions-list.component.html | 2 +-
.../versions-list/versions-list.component.ts | 1 +
.../coeditor-user-icon.component.css | 1 -
.../coeditor-user-icon.component.ts | 1 +
.../workspace/component/menu/menu.component.scss | 53 +-
.../app/workspace/component/menu/menu.component.ts | 1 +
.../computing-unit-selection.component.scss | 326 +-
.../computing-unit-selection.component.ts | 1 +
.../operator-property-edit-frame.component.spec.ts | 18 +-
.../operator-property-edit-frame.component.ts | 25 +-
.../port-property-edit-frame.component.ts | 1 +
.../property-editor.component.spec.ts | 12 +-
.../property-editor/property-editor.component.ts | 1 +
.../type-casting-display.component.ts | 1 +
.../result-exportation.component.ts | 1 +
.../console-frame/console-frame.component.ts | 1 +
.../error-frame/error-frame.component.ts | 1 +
.../result-panel/result-panel-modal.component.ts | 1 +
.../result-panel/result-panel.component.html | 9 +-
.../result-panel/result-panel.component.scss | 6 +
.../result-panel/result-panel.component.ts | 1 +
.../result-table-frame.component.ts | 1 +
.../visualization-frame-content.component.scss | 6 +-
.../visualization-frame-content.component.ts | 1 +
.../nz-modal-comment-box.component.ts | 3 +-
.../context-menu/context-menu.component.ts | 1 +
.../workflow-editor/mini-map/mini-map.component.ts | 1 +
.../workflow-editor/workflow-editor.component.html | 20 +
.../workflow-editor/workflow-editor.component.scss | 65 +-
.../workflow-editor.component.spec.ts | 9 +-
.../workflow-editor/workflow-editor.component.ts | 266 +-
.../workspace/component/workspace.component.html | 4 +-
.../app/workspace/component/workspace.component.ts | 73 +-
.../src/app/workspace/service/agent/agent-types.ts | 81 +
.../app/workspace/service/agent/agent.service.ts | 1341 ++
.../workspace/service/copilot/copilot-prompts.ts | 35 -
.../copilot/texera-copilot-manager.service.spec.ts | 259 -
.../copilot/texera-copilot-manager.service.ts | 248 -
.../service/copilot/texera-copilot.spec.ts | 189 -
.../workspace/service/copilot/texera-copilot.ts | 388 -
.../current-workflow-editing-observing-tools.ts | 127 -
.../copilot/tool/react-step-operator-parser.ts | 152 -
.../service/copilot/tool/tools-utility.ts | 138 -
.../copilot/tool/workflow-metadata-tools.ts | 140 -
.../service/drag-drop/drag-drop.service.spec.ts | 16 +-
.../dynamic-schema/dynamic-schema.service.spec.ts | 16 +-
.../execute-workflow.service.spec.ts | 3 +-
.../execute-workflow/execute-workflow.service.ts | 4 +-
.../workspace/service/joint-ui/joint-ui.service.ts | 99 +-
.../operator-metadata.service.spec.ts | 6 +-
.../service/undo-redo/undo-redo.service.spec.ts | 4 +-
.../validation/validation-workflow.service.spec.ts | 4 +-
.../model/coeditor-presence.service.ts | 2 +-
.../workflow-graph/model/joint-graph-wrapper.ts | 4 +-
.../model/workflow-action.service.ts | 7 +-
.../util/workflow-util.service.spec.ts | 2 +-
frontend/src/main.ts | 6 +-
frontend/src/tsconfig.app.json | 2 +-
frontend/tsconfig.json | 17 +-
frontend/yarn.lock | 15389 ++++++++-----------
241 files changed, 19515 insertions(+), 12653 deletions(-)
create mode 100644 agent-service/.dockerignore
create mode 100644 agent-service/.env.example
create mode 100644 agent-service/.prettierrc
create mode 100644 agent-service/bun.lock
create mode 100644 agent-service/package.json
copy
frontend/src/app/dashboard/component/user/sort-button/sort-button.component.scss
=> agent-service/src/agent/index.ts (93%)
create mode 100644 agent-service/src/agent/prompts.ts
create mode 100644 agent-service/src/agent/texera-agent.ts
copy frontend/src/app/common/util/stub.ts =>
agent-service/src/agent/tools/index.ts (87%)
create mode 100644 agent-service/src/agent/tools/result-formatting.ts
create mode 100644 agent-service/src/agent/tools/tools-utility.ts
create mode 100644 agent-service/src/agent/tools/workflow-crud-tools.ts
create mode 100644 agent-service/src/agent/tools/workflow-execution-tools.ts
create mode 100644 agent-service/src/agent/util/auto-layout.ts
create mode 100644 agent-service/src/agent/util/context-utils.ts
create mode 100644 agent-service/src/agent/util/workflow-system-metadata.ts
create mode 100644 agent-service/src/agent/util/workflow-utils.ts
create mode 100644 agent-service/src/agent/workflow-result-state.test.ts
create mode 100644 agent-service/src/agent/workflow-result-state.ts
create mode 100644 agent-service/src/agent/workflow-state.test.ts
create mode 100644 agent-service/src/agent/workflow-state.ts
create mode 100644 agent-service/src/api/auth-api.ts
create mode 100644 agent-service/src/api/backend-api.ts
create mode 100644 agent-service/src/api/compile-api.ts
copy
amber/src/main/scala/org/apache/texera/web/model/http/response/SchemaPropagationResponse.scala
=> agent-service/src/api/execution-api.ts (67%)
copy frontend/src/app/common/util/stub.ts => agent-service/src/api/index.ts
(83%)
create mode 100644 agent-service/src/api/workflow-api.ts
copy frontend/src/app/common/service/notification/notification.service.spec.ts
=> agent-service/src/config/env.ts (51%)
copy frontend/src/app/common/app-setting.ts => agent-service/src/index.ts (66%)
copy
amber/src/test/scala/org/apache/texera/amber/engine/architecture/control/utils/ChainHandler.scala
=> agent-service/src/logger.ts (51%)
create mode 100644 agent-service/src/server.test.ts
create mode 100644 agent-service/src/server.ts
create mode 100644 agent-service/src/types/agent.ts
copy
frontend/src/app/workspace/component/left-panel/operator-menu/operator-menu.component.scss
=> agent-service/src/types/execution.ts (53%)
copy
frontend/src/app/dashboard/component/user/user-avatar/user-avatar.component.scss
=> agent-service/src/types/index.ts (90%)
create mode 100644 agent-service/src/types/workflow.ts
create mode 100644 agent-service/tsconfig.json
create mode 100644
amber/src/main/python/core/architecture/handlers/control/test_evaluate_expression_handler.py
create mode 100644
amber/src/main/python/core/architecture/handlers/control/test_replay_current_tuple_handler.py
create mode 100644
amber/src/main/scala/org/apache/texera/web/resource/SyncExecutionResource.scala
create mode 100644
amber/src/test/scala/org/apache/texera/web/service/ExecutionReconfigurationServiceSpec.scala
delete mode 100644
frontend/src/app/workspace/component/agent-panel/agent-chat/agent-chat.component.html
delete mode 100644
frontend/src/app/workspace/component/agent-panel/agent-chat/agent-chat.component.spec.ts
delete mode 100644
frontend/src/app/workspace/component/agent-panel/agent-chat/agent-chat.component.ts
delete mode 100644
frontend/src/app/workspace/component/agent-panel/agent-panel.component.ts
create mode 100644
frontend/src/app/workspace/component/agent/agent-interaction/agent-interaction.component.html
create mode 100644
frontend/src/app/workspace/component/agent/agent-interaction/agent-interaction.component.scss
create mode 100644
frontend/src/app/workspace/component/agent/agent-interaction/agent-interaction.component.ts
create mode 100644
frontend/src/app/workspace/component/agent/agent-panel/agent-chat/agent-chat.component.html
rename frontend/src/app/workspace/component/{ =>
agent}/agent-panel/agent-chat/agent-chat.component.scss (71%)
create mode 100644
frontend/src/app/workspace/component/agent/agent-panel/agent-chat/agent-chat.component.ts
rename frontend/src/app/workspace/component/{ =>
agent}/agent-panel/agent-panel.component.html (71%)
rename frontend/src/app/workspace/component/{ =>
agent}/agent-panel/agent-panel.component.scss (92%)
create mode 100644
frontend/src/app/workspace/component/agent/agent-panel/agent-panel.component.ts
rename frontend/src/app/workspace/component/{ =>
agent}/agent-panel/agent-registration/agent-registration.component.html (88%)
rename frontend/src/app/workspace/component/{ =>
agent}/agent-panel/agent-registration/agent-registration.component.scss (100%)
rename frontend/src/app/workspace/component/{ =>
agent}/agent-panel/agent-registration/agent-registration.component.ts (65%)
create mode 100644
frontend/src/app/workspace/component/agent/agent-panel/react-step-detail-modal/react-step-detail-modal.component.html
copy
frontend/src/app/workspace/component/{menu/coeditor-user-icon/coeditor-user-icon.component.css
=>
agent/agent-panel/react-step-detail-modal/react-step-detail-modal.component.scss}
(95%)
create mode 100644
frontend/src/app/workspace/component/agent/agent-panel/react-step-detail-modal/react-step-detail-modal.component.ts
create mode 100644 frontend/src/app/workspace/service/agent/agent-types.ts
create mode 100644 frontend/src/app/workspace/service/agent/agent.service.ts
delete mode 100644
frontend/src/app/workspace/service/copilot/copilot-prompts.ts
delete mode 100644
frontend/src/app/workspace/service/copilot/texera-copilot-manager.service.spec.ts
delete mode 100644
frontend/src/app/workspace/service/copilot/texera-copilot-manager.service.ts
delete mode 100644
frontend/src/app/workspace/service/copilot/texera-copilot.spec.ts
delete mode 100644 frontend/src/app/workspace/service/copilot/texera-copilot.ts
delete mode 100644
frontend/src/app/workspace/service/copilot/tool/current-workflow-editing-observing-tools.ts
delete mode 100644
frontend/src/app/workspace/service/copilot/tool/react-step-operator-parser.ts
delete mode 100644
frontend/src/app/workspace/service/copilot/tool/tools-utility.ts
delete mode 100644
frontend/src/app/workspace/service/copilot/tool/workflow-metadata-tools.ts