chore(ci)(deps): Bump actions/setup-java from 4 to 5#4
Open
dependabot[bot] wants to merge 1 commit intomainfrom
Open
chore(ci)(deps): Bump actions/setup-java from 4 to 5#4dependabot[bot] wants to merge 1 commit intomainfrom
dependabot[bot] wants to merge 1 commit intomainfrom
Conversation
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 4 to 5. - [Release notes](https://github.com/actions/setup-java/releases) - [Commits](actions/setup-java@v4...v5) --- updated-dependencies: - dependency-name: actions/setup-java dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
Author
LabelsThe following labels could not be found: Please fix the above issues or remove invalid values from |
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>
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
v1.0 build-plan item #4. Habits opted in via `Habit.healthCategory` write a row to the platform health store at completion time, surfacing the habit in the iOS Health app timeline and contributing to Apple Watch Mindfulness / Activity rings. Streaks reads HealthKit but does not write — that gap is the differentiator in BUILD_PLAN.md. Privacy: the destination is the *user's own* on-device health store. No data leaves the device, the App Store privacy nutrition label remains "Data Not Collected", and the user opts in per habit (default HealthCategory.none). Files: - lib/services/health_writeback_service.dart - configures the `health: ^13.0.0` plugin, requests WRITE authorization for MINDFULNESS + WORKOUT data types, and exposes writeCompletion() that branches on Habit.healthCategory. Best-effort: a permission denial returns false and never blocks the user-facing completion. - lib/models/habit.dart - new fields: @HiveField(13) HealthCategory healthCategory (default none) @HiveType(12) enum HealthCategory {none, mindfulSession, workout} copyWith updated; Hive adapters will regen on next build_runner. - lib/main.dart - registers HealthCategoryAdapter, instantiates HealthWritebackService (init() runs unawaited so startup isn't blocked on the platform permission dialog), exposes via Provider. Also: - lib/providers/theme_provider.dart - drop unnecessary `package:flutter/foundation.dart` import (re-exported by material.dart). This was the one outstanding `flutter analyze --fatal-infos` failure on the previous CI run. Local validation: `dart format --output=none --set-exit-if-changed .` clean (Dart SDK 3.11.5 installed via winget Google.DartSDK). `flutter analyze` and tests remain CI-only until the full Flutter SDK is on PATH. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bumps actions/setup-java from 4 to 5.
Release notes
Sourced from actions/setup-java's releases.
... (truncated)
Commits
be666c2Chore: Version Update and Checkout Update to v6 (#973)f7a6fefBump actions/checkout from 5 to 6 (#961)d81c4e4Upgrade@actions/cacheto v5 (#968)1b1bbe1readme update (#972)5d7b214Retry on HTTP 522 Connection timed out (#964)f2beeb2Bump actions/publish-action from 0.3.0 to 0.4.0 (#912)4e7e684feat: Add support for.sdkmanrcfile injava-version-fileparameter (#736)46c56d6Add GitHub Token Support for GraalVM and Refactor Code (#849)66b9457Update SapMachine URLs (#955)6ba5449Enhance error logging for network failures to include endpoint/IP details, ad...Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)