Skip to content

chore(deps)(deps): Bump flutter_lints from 5.0.0 to 6.0.0 in the flutter-core group across 1 directory#6

Open
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/pub/flutter-core-3faa019bd2
Open

chore(deps)(deps): Bump flutter_lints from 5.0.0 to 6.0.0 in the flutter-core group across 1 directory#6
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/pub/flutter-core-3faa019bd2

Conversation

@dependabot
Copy link
Copy Markdown

@dependabot dependabot Bot commented on behalf of github May 3, 2026

Bumps the flutter-core group with 1 update in the / directory: flutter_lints.

Updates flutter_lints from 5.0.0 to 6.0.0

Commits
  • 6eebe72 [flutter_lints] Bump lints dependency to 6.0.0 and bump package to 6.0.0 (#9108)
  • 0093e2e [video_player_android] Add note about Android platform views known issue (#9312)
  • 62f38a1 [camera_android_camerax] Implement enableAudio for video recording (#9264)
  • 9c11e9b [video_player_android] isBuffering flag always return true after calling seek...
  • 6efa04b [camera,video_player] replace onSurfaceDestroyed with onSurfaceCleanup (#9316)
  • c33fa39 [camera,video_player] Update Android to 3.29 minimum (#9317)
  • 5a7d40f Update repo for 3.32 stable (#9311)
  • 2a847d7 [camera_avfoundation] Correct pigeon configuration output paths (#9313)
  • d692e43 [process] Remove from the repository (#9310)
  • fe5dd86 Ensure Example Packages Work on Android API 36 (#9241)
  • Additional commits viewable in compare view

@dependabot @github
Copy link
Copy Markdown
Author

dependabot Bot commented on behalf of github May 3, 2026

Labels

The following labels could not be found: dart, dependencies. Please create them before Dependabot can add them to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

Outtsett added a commit that referenced this pull request May 3, 2026
…skip-tolerant streak math

Replaces the default Flutter counter scaffold with the v1.0 foundation
matching docs/BUILD_PLAN.md.

Models (Hive @HiveType):
- Habit (typeId 0): identity (Clear), skip tolerance (Lally), 2-min
  version (Clear), occursOn / scheduledOccurrencesIn rolling-window
  helpers.
- HabitCompletion (typeId 2): one row per (habit, calendar-day);
  composite Hive key for O(1) "completed today?" lookup.
- NotificationDelivery (typeId 3): audit row per scheduled / fired /
  tapped / dismissed / failed event for measuring drift.
- HabitCadence (typeId 10) + NotificationEventType (typeId 11) enums.
- typeId 1 reserved for the pre-existing UserSubscription; typeIds 4
  and 5 reserved for SkipPattern + ImplementationIntention (v1.0 #2/#3).

Providers (ChangeNotifier):
- HabitProvider: CRUD + completion logging deduped per day; skip-
  tolerant streak math (rolling 14-day window, persists if completed
  >= scheduled - skipTolerance, never resets to zero — Lally 2010);
  identity vote tally (Clear's identity-based change).
- ThemeProvider: theme persistence in Hive settings box; premium
  themes gated by IAP entitlement (silent downgrade if un-entitled);
  system-brightness tracking.

Notification service (v1.0 #1 — bulletproof reminders):
- iOS: .timeSensitive interruption level so reminders bypass Focus
  Mode + Notification Summary digest.
- Android 14+: USE_EXACT_ALARM + AndroidScheduleMode.exactAllowWhileIdle
  for Doze survival. SCHEDULE_EXACT_ALARM runtime permission ceremony.
- Every schedule / fire / tap / dismiss / failure / permission-denied
  event written to a Hive audit box. Drift between intendedAt and
  fired event's at is the v1.0 reliability metric (zero missed
  scheduled fires across 7-day device test = ship criterion #1).

UI:
- main.dart: Hive init + adapter registration + open boxes for habits,
  completions, notification audit, and settings; init notification
  service + fire-and-forget permission request; MultiProvider tree;
  MaterialApp routed to HomeScreen.
- HomeScreen: heatmap-first today list, no streak counter, identity
  vote line ("Cast 1 vote for {identity}"), 200ms haptic Pavlovian
  celebration on completion (Atoms / Fogg "Shine"). Empty-state copy
  matches identity framing.
- AppTheme: Material 3 ThemeData factories (free light/dark, premium
  paper/inkNavy palettes matching the Lundeen brand).

Tests:
- test/widget_test.dart replaced from the broken default scaffold
  (referenced a non-existent class) with pure-logic tests for Habit
  scheduling helpers and the streak-state classification, including a
  guard test that the streak enum never acquires a "broken / zero-
  reset" terminal state.

Pubspec adds: provider 6.1.2, flutter_local_notifications 19.2.0,
timezone 0.10.0, permission_handler 11.3.1, purchases_flutter 9.5.0
(RevenueCat — wired in v1.0 #6), health 13.0.0 (HealthKit / Health
Connect — wired in v1.0 #4), home_widget 0.7.0, intl, uuid,
collection, path_provider.

Build status: not yet validated locally — Flutter SDK is not
installed on the dev machine. CI will validate on next push.
Tyler must `winget install --id=Google.Flutter`, then
`flutter pub get`, then `dart run build_runner build
--delete-conflicting-outputs` to generate Hive adapters before
`flutter run`.

Remaining v1.0 build items: laziness analytics, implementation-
intention prompt engine, HealthKit write-back, full reward-system
v1 (heatmap viz + weekly reflection), RevenueCat IAP. See
docs/BUILD_PLAN.md build order.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@dependabot dependabot Bot changed the title chore(deps)(deps): Bump flutter_lints from 5.0.0 to 6.0.0 in the flutter-core group chore(deps)(deps): Bump flutter_lints from 5.0.0 to 6.0.0 in the flutter-core group across 1 directory May 3, 2026
@dependabot dependabot Bot force-pushed the dependabot/pub/flutter-core-3faa019bd2 branch from d2fcea6 to bbf051f Compare May 3, 2026 09:12
Outtsett added a commit that referenced this pull request May 3, 2026
Removes 24 files + lib/utils/ from a previous abandoned scaffold pass
that was blocking flutter analyze --fatal-infos:

* lib/models/analytics_data.dart (0 bytes) + analytics_data.g.dart
  (orphan generated code referencing the empty source — won't compile)
* lib/screens/analytics_screen.dart (558 lines, but BROKEN: imports
  the empty progress_tracking_service.dart, uses habitProvider.habits
  which is not the API HabitProvider exposes — it's allHabits /
  activeHabits / habitsFor — and it ships Material 2 styling that
  contradicts the Material 3 BUILD_PLAN convention)
* 8 zero-byte screens (add_habit, analytics_new, habit_schedule,
  onboarding, premium, premium_laziness, progress_tracking, settings)
* 7 zero-byte services (ad, background_completion, invisible_purchase,
  laziness_analytics, progress_tracking, purchase, smart_notification)
* 4 zero-byte widgets (habit_card, premium_banner,
  progress_summary_widget, theme_showcase_widget)
* lib/utils/ entirely (empty + violates BUILD_PLAN's "no utils dump")

KEPT: lib/models/user_subscription.dart (203 lines, Hive @HiveType(1)
real impl, used by the v1.0 #6 RevenueCat IAP wiring).

This matches the global "ONE active model at a time, build on it
iteratively or wipe clean" rule and the "no skeleton implementations"
rule. Several of these slots will be re-filled with production
implementations as v1.0 build items #2-#6 land:
- skip_pattern_service.dart       (v1.0 #2)
- implementation_intention_service.dart (v1.0 #3)
- health_writeback_service.dart   (v1.0 #4)
- purchase_service.dart           (v1.0 #6, RevenueCat)
- add_habit_screen.dart           (v1.0 #5 reward system)
- premium_screen.dart             (v1.0 #6)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Outtsett added a commit that referenced this pull request May 3, 2026
…etime IAP

v1.0 build-plan items #5 + #6, the last two foundation pieces.

#5 - Reward system v1:
  - lib/widgets/skip_pattern_heatmap.dart - 7x24 (DOW x hour) grid
    coloured by Wilson lower-bound risk. Cells with attempts==0 or
    below minAttempts (default 4) render neutral; the rest blend
    theme.primary -> theme.error along the lower bound. Tap callback
    exposes (dayOfWeek, hour, riskLowerBound, attempts, skips) for
    the analytics screen to drill in. Theme-blended so it works on
    both Material 3 light / dark and the premium paper / inkNavy
    palettes.
  - HabitProvider.surfaceVersionFor(habit, date, isHighSkipRisk)
    decides whether HomeScreen renders the full habit name or its
    twoMinuteVersion (Clear's 2-min rule + Wood 2019 context-over-
    willpower). High-risk days get an auto-substituted 2-min copy
    with a visible "2-min" badge so the user knows the app is
    helping, not silently rewriting.
  - HabitProvider.toggleCompletion now forwards
    wasTwoMinuteVersion: bool into the persisted HabitCompletion so
    analytics can later correlate two-minute-version usage with
    skip-pattern outcomes.
  - HomeScreen wires SkipPatternService -> surfaceVersionFor ->
    displayName; the rest of the card layout is unchanged so the
    haptic + Pavlovian celebration flow stays intact.

#6 - RevenueCat IAP (the $6.99 lifetime):
  - lib/services/purchase_service.dart - ChangeNotifier wrapper
    around purchases_flutter. Configures via --dart-define so no
    secrets land in the repo (App Store privacy nutrition label
    "Data Not Collected" depends on it):
      RC_PUBLIC_API_KEY_IOS
      RC_PUBLIC_API_KEY_ANDROID
      RC_PREMIUM_ENTITLEMENT_ID  (default: premium_lifetime)
      RC_LIFETIME_PRODUCT_ID     (default: lifetime_001)
  - When env is unset, isConfigured == false and every purchase path
    short-circuits to PurchaseOutcome.notConfigured. App still runs;
    UI hides the buy button instead of erroring.
  - PurchaseOutcome { success, userCancelled, error, notConfigured }
    distinguishes user-cancelled from real errors so we don't show
    error dialogs on a buyer who just dismissed the StoreKit / Play
    Billing sheet.
  - Subscribes to Purchases.addCustomerInfoUpdateListener so
    entitlement state stays current across re-purchase / refund /
    cross-device restore.
  - _PremiumEntitlementBridge in main.dart listens to
    PurchaseService and forwards entitlement -> ThemeProvider so
    premium themes auto-unlock on purchase, auto-downgrade on
    refund, no UI thrash.
  - main.dart MultiProvider tree gains
    ChangeNotifierProvider<PurchaseService>.value, providers list
    re-ordered for readability.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@dependabot dependabot Bot force-pushed the dependabot/pub/flutter-core-3faa019bd2 branch from bbf051f to d6d477f Compare May 3, 2026 10:13
Bumps the flutter-core group with 1 update in the / directory: [flutter_lints](https://github.com/flutter/packages/tree/main/packages).


Updates `flutter_lints` from 5.0.0 to 6.0.0
- [Commits](https://github.com/flutter/packages/commits/flutter_lints-v6.0.0/packages)

---
updated-dependencies:
- dependency-name: flutter_lints
  dependency-version: 6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: flutter-core
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot force-pushed the dependabot/pub/flutter-core-3faa019bd2 branch from d6d477f to e69ad99 Compare May 4, 2026 17:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants