Asuka Minato
90d · built 2026-09-08
Performance
What Asuka Minato shipped in the selected window, measured in ETV, and how it compares with the 90 days before it.
Effective capacity
+1.3engineers
delivers like 2.3 (2.3x pre-AI)
Output (ETV)
30.5ETV
+108.4% vs 14.7 prior
Features share
30.1%
−0.4 pp vs prior window
Fixes share
55.6%
+2.2 pp vs prior window
Work mix
30.1% Features2.2% Maintenance11% Tests1.2% Docs55.6% Fixes
122 commits over 90 days, ending 2026-09-08.
Where this dev ranks
Percentile against the global top-100 leaderboard (all-time totals).
- By commits
- Top 76 %
- By Features share
- Top 54 %
Daily performance
Daily ETV, stacked by Features, Maintenance, Tests, Docs and Fixes.
Repository spread
Where this developer's commits land. Concentrated work (top1 > 80%) vs polymath spread (top1 < 30%).
Most impactful commits
Top 10 by ETV in the last 90 days.
- 1.3ETVfix No narrowing for unions in match when the subject is a call #2858 (#3319) Summary: Fixes https://github.com/facebook/pyrefly/issues/2858 match subjects without a real narrowing name, like match f(x):, still carry direct fallthrough narrows across cases. The final capture now forwards to the already-evaluated subject narrowed by previous cases, without synthesizing a user-visible name. Pull Request resolved: https://github.com/facebook/pyrefly/pull/3319 Test Plan: add test Reviewed By: stroxler Differential Revision: D109264921 Pulled By: yangdanny97 fbshipit-source-id: bb92b46141143dbf1356c136fdb228a777943bf3github.com-facebook-pyrefly · 4df0b345 · 2026-06-23
- 1.1ETVfix Inlay hint insertion should consider imports/use qualified paths to auto import correctly #317 (#1576) Summary: fix part of https://github.com/facebook/pyrefly/issues/317 Type pretty-printing now tracks every module name it emits, so we can tell the client which imports a hint depends on; TypeDisplayContext stores the module set in a RefCell, exposes it via referenced_modules, and records each module.name combination as it formats the text The LSP transaction layer wraps each hint in a new InlayHintWithEdits struct, renders annotations with fully qualified names, applies any local aliases (e.g., import typing as t), and bundles the necessary import edits by consulting the ImportTracker. This ensures that accepting a type hint also inserts import typing when the module hasn’t been brought into scope. Downstream consumers now understand the richer hint payload: the server translates InlayHintWithEdits into multiple textEdits, the playground/WASM bindings expose the new label format, and the inlay-hint regression tests cover both standard and notebook scenarios to verify the extra import edits. Pull Request resolved: https://github.com/facebook/pyrefly/pull/1576 Reviewed By: grievejia Differential Revision: D113816926 Pulled By: rchen152 fbshipit-source-id: de7a3591509b2182b1062ddd3d52af509c7d3943github.com-facebook-pyrefly · 415009ff · 2026-08-05
- 1.1ETVfix make function wrap easier to read on hover #3618 (#4099) Summary: Fixes https://github.com/facebook/pyrefly/issues/3618 Nested callable types now wrap in hover display, including Concatenate[..., ParamSpec] shapes. Hover display now recursively uses the hover-aware formatter for nested callables. Pull Request resolved: https://github.com/facebook/pyrefly/pull/4099 Test Plan: add test Reviewed By: stroxler Differential Revision: D113591923 Pulled By: samwgoldman fbshipit-source-id: a4ca29f47266a303b671f716c4f33ffa61c59d79github.com-facebook-pyrefly · eaa26cc4 · 2026-07-24
- 1.0ETVfix Type aliases are expanded in the hover text #2707 (#3018) Summary: Fixes https://github.com/facebook/pyrefly/issues/2707 non-call hovers on plain functions render the declared source header instead of the normalized solved signature. That preserves aliases like Messages in hover text while leaving call-site hover behavior unchanged for constructors, `__call__`, and expanded `**kwargs`. Pull Request resolved: https://github.com/facebook/pyrefly/pull/3018 Test Plan: add test Reviewed By: stroxler Differential Revision: D113635572 fbshipit-source-id: 94922bef93b94ede36c64ee27add97f7fac0d8fdgithub.com-facebook-pyrefly · 8a65019a · 2026-08-21
- 1.0ETVfix no error on invalid call to `__init_subclass__` #3447 (#3468) Summary: Pyrefly silently accepted invalid class-header keywords (e.g. `class Foo(Bar, bad_kw=1)`) that didn't match the parent's `__init_subclass__` signature. This adds validation by looking up `__init_subclass__` from base classes and checking keyword arguments against it with the existing callable checker. The binding layer now preserves full `Identifier` tokens (not just `Name` strings) so error diagnostics point at the exact keyword in the class header. Pull Request resolved: https://github.com/facebook/pyrefly/pull/3468 Test Plan: Test suite Reviewed By: stroxler Differential Revision: D112153555 Pulled By: NathanTempest fbshipit-source-id: f892c5f7764d485b008bc393c5af239ca5c0b8fegithub.com-facebook-pyrefly · 7cbda17d · 2026-07-28
- 0.8ETVfix Renaming a kwarg does not work across files. #1583 (#2484) Summary: Fixes https://github.com/facebook/pyrefly/issues/1583 Updated cross-module rename logic so keyword-argument references are included when the parameter definition lives in a different file. This now resolves keyword args by name, then refines against the definition module’s AST to match the exact parameter. Pull Request resolved: https://github.com/facebook/pyrefly/pull/2484 Test Plan: Added a cross-file rename test and fixtures to cover kwarg renames across modules Reviewed By: stroxler Differential Revision: D104036135 Pulled By: kinto0 fbshipit-source-id: 09f6454c6cd6505ec62b87b82007cd2420265e7cgithub.com-facebook-pyrefly · d930669f · 2026-07-24
- 0.7ETVfix Insert import with alias creates invalid import #2495 (#4106) Summary: Fixes https://github.com/facebook/pyrefly/issues/2495 Auto-import resolution now preserves the original exported name and generates `from model import MyModel as MyModelAlias`. Unknown-name quick fixes receive the same alias-aware behavior. Pull Request resolved: https://github.com/facebook/pyrefly/pull/4106 Test Plan: add test Reviewed By: yangdanny97 Differential Revision: D111934167 Pulled By: kinto0 fbshipit-source-id: d1fb3b5db96d05f842e7461ef5c55f7eca39660fgithub.com-facebook-pyrefly · 836b8d0f · 2026-07-14
- 0.7ETVfix support multiple values for python-platform #3440 (#3467) Summary: Fixes https://github.com/facebook/pyrefly/issues/3440 PythonPlatform now can represent one platform, multiple platforms, or all. Platform checks now only fold to true/false when all configured platforms agree; mixed results stay unknown so both branches are type checked. Pull Request resolved: https://github.com/facebook/pyrefly/pull/3467 Test Plan: add test Reviewed By: connernilsen Differential Revision: D113083136 Pulled By: yangdanny97 fbshipit-source-id: 298d9db207b29c56cc47324a8f37a6cc88605444github.com-facebook-pyrefly · 1ddcc515 · 2026-07-22
- 0.7ETVfix match on tuple subject not narrowed to Never for assert_never exhaustiveness #4066 (#4310) Summary: Fixes https://github.com/facebook/pyrefly/issues/4066 Pull Request resolved: https://github.com/facebook/pyrefly/pull/4310 Reviewed By: stroxler Differential Revision: D113762834 fbshipit-source-id: 5c4894e037fe85f82c195a46be2252fbb195f1efgithub.com-facebook-pyrefly · 62ca4d0d · 2026-08-20
- 0.5ETVimpl change_signature #2207 (#2692) Summary: Fixes part of https://github.com/facebook/pyrefly/issues/2207 Implemented change_signature as a new local refactor. The current scope is the non-interactive subset that fits Pyrefly’s existing code-action model: when the cursor is on a simple positional-or-keyword parameter, it now offers Remove parameter, Move parameter left, and Move parameter right, and rewrites matching call sites. That includes bound and unbound method calls. Pull Request resolved: https://github.com/facebook/pyrefly/pull/2692 Test Plan: add related test. Reviewed By: stroxler Differential Revision: D114359742 fbshipit-source-id: fb285593382470403d4ff21e11209deca3ce0b06github.com-facebook-pyrefly · 139ec48c · 2026-08-20