flyteorg / flyteorg/flyte

Support `ty` type checker for Flyte V2 function signatures

Open
#7,655 0 comments 0 reactions 0 assignees View on GitHub
Delve Bio feature-request flyte-sdk flyte2
Dominant language
Go
Stars
7.5k
Forks
886
Avg merge
1d 14h
Merged PRs (30d)
120

Description

## Problem / User need

Delve Bio uses `ty` (Astral's type checker) when developing new Flyte V2 workflows. Clean type signatures are one of the benefits they're excited about in V2. However, `ty` reports errors on Flyte's decorated function signatures, which forces them to ignore typing entirely and undercuts the value of adopting `ty`.

## Current behavior

MyPy checks Flyte V2 code without issue, but `ty` errors on Flyte's function signatures — specifically some `@overload`s that `ty` fails to resolve. The user's current workaround is to suppress/ignore typing for the affected code.

## Proposed solution

Make Flyte V2's public API type-check cleanly under `ty`. Per the customer, the gap is likely narrow — a handful of overloads `ty` can't resolve — so this may be a relatively small typing fix rather than broad rework. Add `ty` to CI to prevent regressions.

## Success criteria

* Flyte V2 workflow/task code type-checks under `ty` with no false-positive errors on Flyte-provided signatures.
* Parity with the MyPy experience.

## Impact

* Customer: **Delve Bio** (actively migrating V1 → V2). Improved typing/DX is one of their stated V2 migration drivers.
* Union is independently interested in `ty` and uses it internally, so this aligns with internal tooling direction.

## Additional context

* Raised by Greg Gydush in the 2026-06-17 monthly sync (\~27:30). Greg offered to share the specific `ty` errors he's seeing.
* Not the customer's highest priority, but a recurring nice-to-have as they build out V2.

Contributor guide

Open the contributing guide

Research direction

Start by locating Flyte V2's public Python APIs and the overloads mentioned in the issue, then reproduce the specific `ty` errors when Greg's examples are available. Compare the results with MyPy and identify the affected signatures; done means Flyte V2 workflow and task code type-checks cleanly under `ty`, with CI coverage to prevent regressions.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
developer-experience, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.