# Completed: plans 049 & 052 (2026-03-20)

## #049 — ListView `itemExtentBuilder` (Flutter 3.16, PR #131393)

- **Rule updates:** `avoid_listview_without_item_extent` (also `ListView.separated`), `prefer_item_extent`, `prefer_prototype_item`, `prefer_itemextent_when_known`, `require_item_extent_for_large_lists` now treat `itemExtentBuilder` like other extent hints where applicable.
- **Tests:** `test/listview_extent_metadata_rules_test.dart` (argument-scan parity + false-positive guard for plain `ListView`).
- **Fixture:** `example_widgets/lib/widget_layout/avoid_listview_without_item_extent_fixture.dart` rewritten with real ListView examples.

## #052 — Prefer `OverflowBar` over `ButtonBar` (PR #128437)

- **New rule:** `prefer_overflow_bar_over_button_bar` in `lib/src/rules/config/migration_rules.dart` (INFO, Recommended, `requiredPatterns: ButtonBar`, no auto-fix).
- **Tests:** metadata in `test/listview_extent_metadata_rules_test.dart`; instantiation in `test/migration_rules_test.dart`.
- **Fixture:** `example/lib/migration_rules_fixture.dart` (documented bad/good; file-level ignore like other migration examples).

Original plan paths (moved here):

- `049-new_feature_allowing_the_listview_slivers_to_have_different_.md`
- `052-advise_developers_to_use_overflowbar_instead_of_buttonbar_in.md`
