|
38 | 38 | DeploymentSourceError, |
39 | 39 | extract_migration_source, |
40 | 40 | ) |
| 41 | +from frontend.server.source_project_limits import ( |
| 42 | + SOURCE_PROJECT_MAX_BYTES, |
| 43 | + SOURCE_PROJECT_MAX_FILES, |
| 44 | + SOURCE_PROJECT_MAX_REPORT_BYTES, |
| 45 | +) |
41 | 46 |
|
42 | 47 | from .contracts import ( |
43 | 48 | MigrationContractError, |
|
70 | 75 |
|
71 | 76 | MIGRATION_ROOT = "/home/gem/.studio/migration/v1" |
72 | 77 | MIGRATION_SESSION_TTL_SECONDS = 60 * 60 |
73 | | -MIGRATION_UPLOAD_MAX_BYTES = 50 * 1024 * 1024 |
| 78 | +MIGRATION_UPLOAD_MAX_BYTES = SOURCE_PROJECT_MAX_BYTES |
74 | 79 | MIGRATION_CLI_MIN_VERSION = "0.52.1" |
75 | 80 | MIGRATION_UNSUPPORTED_MODEL_IDS = frozenset({"deepseek-v4-pro-260425"}) |
76 | | -_MAX_EXPANDED_BYTES = 1024 * 1024 * 1024 |
77 | | -_MAX_ARCHIVE_FILES = 20_000 |
| 81 | +_MAX_EXPANDED_BYTES = SOURCE_PROJECT_MAX_BYTES |
| 82 | +_MAX_ARCHIVE_FILES = SOURCE_PROJECT_MAX_FILES |
78 | 83 | _MAX_ARCHIVE_PATH_BYTES = 4 * 1024 |
79 | 84 | _MAX_ARCHIVE_DEPTH = 64 |
80 | | -_MAX_JSON_BYTES = 16 * 1024 * 1024 |
| 85 | +_MAX_JSON_BYTES = SOURCE_PROJECT_MAX_REPORT_BYTES |
81 | 86 | _MAX_PROVENANCE_BYTES = 64 * 1024 |
82 | | -_MAX_ARTIFACT_BYTES = 512 * 1024 * 1024 |
| 87 | +_MAX_ARTIFACT_BYTES = SOURCE_PROJECT_MAX_BYTES |
83 | 88 | _MAX_PREVIEW_BYTES = 2 * 1024 * 1024 |
84 | 89 | _FILE_OPERATION_TIMEOUT_SECONDS = 300 |
85 | 90 | _TASK_ID_RE = re.compile(r"^migration-v1-[0-9a-f]{32}$") |
@@ -797,7 +802,7 @@ def validate_source_archive(content: bytes) -> SourceArchiveSummary: |
797 | 802 | if len(content) > MIGRATION_UPLOAD_MAX_BYTES: |
798 | 803 | raise MigrationError( |
799 | 804 | "MIGRATION_SOURCE_TOO_LARGE", |
800 | | - "项目 ZIP 不能超过 50 MiB。", |
| 805 | + "项目 ZIP 不能超过 20 MiB。", |
801 | 806 | status_code=413, |
802 | 807 | ) |
803 | 808 | seen: set[str] = set() |
@@ -857,7 +862,7 @@ def validate_source_archive(content: bytes) -> SourceArchiveSummary: |
857 | 862 | if expanded_bytes > _MAX_EXPANDED_BYTES: |
858 | 863 | raise MigrationError( |
859 | 864 | "MIGRATION_SOURCE_EXPANDED_TOO_LARGE", |
860 | | - "项目 ZIP 解压后不能超过 1 GiB。", |
| 865 | + "项目 ZIP 解压后不能超过 20 MiB。", |
861 | 866 | status_code=413, |
862 | 867 | ) |
863 | 868 | except zipfile.BadZipFile as error: |
|
0 commit comments