[v2] `flyte.map`: allow a per-item display name for spawned tasks
- Dominant language
- Go
- Stars
- 7.5k
- Forks
- 886
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 120
Description
**What**
When mapping a task over N inputs, every spawned action shows in the UI under the same label — the task name (e.g. `ingest_one`) — so the N runs are visually indistinguishable. I'd like each action to carry a caller-supplied name derived from its input:
```python
flyte.map(ingest_one, items, name_fn=lambda x: x.id)
```
**Why**
Over hundreds of tasks, there's no way to find "the action processing X" in the console, or tell at a glance which item a running/failed action corresponds to.
**Proposed shape**
- A per-action display name, distinct from the action id and the task's registered name (so caching and task identity are unaffected).
- Surfaced via a `name_fn` callable on `flyte.map` (and ideally a direct task call), applied per item, sanitized/truncated to whatever the label constraints require.
Contributor guide
Research direction
Start at the flyte.map entry point and trace how mapped inputs become spawned actions and how their display labels are surfaced. Check the existing action identity and label constraints before deciding where a per-item name can be carried without changing caching or task identity. Done means caller-supplied names appear distinctly for mapped actions and are safely sanitized or truncated.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend, distributed-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100