Context
lib/widgets/chain_asset_icon.dart has no consumers in lib/. Verified by grep -rn "ChainAssetIcon" across the production tree — returns only the file itself.
The widget is a pure StatelessWidget with no branches or callbacks, composing two Image.asset calls via getAssetImagePath(asset) and getChainImagePath(asset.chainId). Both lookup helpers live in asset_logo.dart, not here, so even the logic moved away.
This came up during the value-analysis for #545 (widget tests). Better to delete than test dead code.
Scope
Acceptance criteria
- File deleted in one PR
- No new imports of
ChainAssetIcon introduced (CI search confirms)
flutter analyze clean
Estimated effort
~0.1 engineer-day (small cleanup PR).
Related
Context
lib/widgets/chain_asset_icon.darthas no consumers inlib/. Verified bygrep -rn "ChainAssetIcon"across the production tree — returns only the file itself.The widget is a pure
StatelessWidgetwith no branches or callbacks, composing twoImage.assetcalls viagetAssetImagePath(asset)andgetChainImagePath(asset.chainId). Both lookup helpers live inasset_logo.dart, not here, so even the logic moved away.This came up during the value-analysis for #545 (widget tests). Better to delete than test dead code.
Scope
lib/widgets/chain_asset_icon.dartflutter analyze+flutter testpasslib/widgets/(8 testable + 1 dead code) #545's "dead code" section once mergedAcceptance criteria
ChainAssetIconintroduced (CI search confirms)flutter analyzecleanEstimated effort
~0.1 engineer-day (small cleanup PR).
Related
lib/widgets/(8 testable + 1 dead code) #545 — widget-test scope (this is the one widget I recommended deleting, not testing)lib/widgets/chain_asset_icon.dart— the file to deletelib/styles/asset_logo.dart(or equivalent) — not affected