refactor(workflow-file): phase2 replace remaining imports and remove core.file

Complete phase 2 of the file module migration by replacing the remaining repository-wide legacy imports and deleting the temporary core.file compatibility package introduced in phase 1.

What this commit changes
- Replace legacy core.file.* imports with core.workflow.file.* across:
  - controllers
  - core app/agent/datasource/prompt/rag/tools/variables
  - factories, fields, libs, models, services
  - otel parser integration points
  - unit and integration tests that referenced legacy paths
- Migrate residual runtime usages in app/task pipeline paths that still referenced core.file symbols.
- Update tests and model serialization helpers that relied on old module paths.
- Remove the compatibility bridge package entirely:
  - delete core/file/__init__.py
  - delete core/file/constants.py
  - delete core/file/enums.py
  - delete core/file/file_manager.py
  - delete core/file/helpers.py
  - delete core/file/models.py
  - delete core/file/tool_file_parser.py

Verification
- No Python references to core.file remain ( -> empty).
- Targeted regression tests for migrated file primitives and factory/type flows passed:
  - tests/unit_tests/core/test_file.py
  - tests/unit_tests/factories/test_variable_factory.py
  - tests/unit_tests/services/test_variable_truncator.py

Result
- The repository now uses core.workflow.file as the single canonical file namespace.
- The migration is fully split into two commits: phase 1 compatibility + phase 2 full cutover.
This commit is contained in:
WH-2099
2026-02-11 15:01:48 +08:00
parent c56d650e83
commit b4c0fb9463
78 changed files with 87 additions and 195 deletions

View File

@ -4,10 +4,10 @@ from unittest import mock
from uuid import uuid4
from constants import HIDDEN_VALUE
from core.file.enums import FileTransferMethod, FileType
from core.file.models import File
from core.variables import FloatVariable, IntegerVariable, SecretVariable, StringVariable
from core.variables.segments import IntegerSegment, Segment
from core.workflow.file.enums import FileTransferMethod, FileType
from core.workflow.file.models import File
from factories.variable_factory import build_segment
from models.workflow import Workflow, WorkflowDraftVariable, WorkflowNodeExecutionModel, is_system_variable_editable