What problem does it solve? Flutter apps need predictable, testable state management with a clear audit trail of how state changes over time. This Skill guides the implementation of Bloc 9.x / Cubit patterns so every user intent becomes a typed event, every transition is deterministic, and every change is observable and testable. ## Core Features & Use Cases - Cubit vs Bloc decision guidance: Start with simple Cubit classes and promote to Bloc<Event, State> when you need concurrency transformers, event logs, or multiple inputs converging on one state machine. - Provider wiring and side effects: Correct use of BlocProvider, MultiBlocProvider, RepositoryProvider, BlocBuilder, BlocListener, and BlocConsumer, with navigation and snackbars kept out of builders. - Audit trail and testing: Global BlocObserver for event/transition logging and crash reporting, plus bloc_test suites with mocktail asserting ordered state sequences for every handler branch. - Use Case: When building a payments or multi-step wizard feature in a Flutter app that declares flutter_bloc, use this Skill to model events and Equatable states, wire providers at the right scope, and write bloc tests covering success, empty, and failure branches. ## Quick Start Ask the AI to implement a Bloc or Cubit for a Flutter feature with Equatable states, BlocProvider wiring, and bloc_test coverage.