acoustic-carpenter-78188
03/22/2026, 11:28 AMmap_task concurrency to v2 flyte.map(), add conda warning logs
• 11 documented v2 limitations in results.md
What's tested
| Area | Tests | Cluster | Key Finding |
| --------------------------------------- | ----- | ------- | ------------------------------------------ |
| [@task](https://github.com/task) params | 14 | ✅ | All params work or gracefully ignored |
| Resources/GPU | 39 | ✅ | Bare gpu="1" needs named accelerator in v2 |
| ImageSpec | 58 | ✅ | conda not supported (now warns) |
| Secrets/PodTemplate | 18 | ✅ | All mount types work |
| Spark/Dask | 24 | ✅ | Transformation correct, needs operators |
| Ray/PyTorch | 34 | ✅ | RunPolicy needs clean_pod_policy set |
| Control Flow | 27 | ✅ | map_task concurrency now forwarded |
| Data Types | 30 | ✅ | All types work, @dataclass_json not needed |
Code changes
• src/flyte_migrate/_map.py — Forward concurrency param to flyte.map()
• src/flyte_migrate/_image.py — Add warning logs for `conda_packages`/`conda_channels`
New examples
task_params_comprehensive.py, resource_comprehensive.py, image_comprehensive.py, secret_comprehensive.py, pod_template_comprehensive.py, control_flow_comprehensive.py, launchplan_comprehensive.py, datatypes_comprehensive.py, edge_cases.py
v2 limitations (documented in results.md)
• gpu count-only (no accelerator name)
• `conda_packages`/`conda_channels`
• builder="envd"/"noop"
• execution_mode, node_dependency_hints, task_resolver, pickle_untyped
• map_task `min_successes`/`min_success_ratio`
• Task-level `labels`/`annotations` (use pod_template instead)
• docs.long_description (only short_description mapped)
Test plan
• make fmt — clean
• make lint — clean
• uv run pytest — 346 tests pass (217 new)
• 17 remote cluster runs submitted and validated
flyteorg/flyte-migrateacoustic-carpenter-78188
03/22/2026, 12:43 PM