Release: Analytics migration, 12-Step content toggle, and dependency updates#334
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
This pull request has been ignored for the connected project Preview Branches by Supabase. |
|
Warning Rate limit exceeded
⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📝 WalkthroughWalkthroughUpdates pnpm to 10.28.2 across CI and package manifest, bumps multiple dependencies and devDependencies, adds .pnpmrc hoisted node-linker, removes EAS Updates block from Expo config, updates changelog and package version, and adds a comprehensive design document for a redesigned "12 Step Program" section. Changes
Suggested labels
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Fix all issues with AI agents
In `@docs/plans/2026-01-24-twelve-step-program-section-design.md`:
- Around line 32-43: Add a language identifier (use "text" or "plaintext") to
each unlabeled fenced code block that contains the directory tree and ASCII box
diagrams so markdownlint MD040 is satisfied; specifically update the
triple-backtick fences that open blocks starting with
"app/(app)/(tabs)/program/" and the other diagram blocks that begin with the box
characters "┌─────────────────────────────────────────────────┐" by changing ```
to ```text (or ```plaintext) for each of those fenced blocks.
In `@package.json`:
- Around line 4-5: Bump the semantic "version" field in package.json to the new
release value and update the corresponding version value exported in
app.config.ts so both match; locate the "version" key in package.json and the
version constant or export in app.config.ts (e.g., APP_VERSION or expo.version
in the default export) and set them to the same new semantic version string.
- Around line 71-75: Remove the unused dependency "expo-updates" from
package.json by deleting the "expo-updates": "^29.0.16" entry; also run package
manager cleanup (e.g., yarn/npm/pnpm install or remove) to update lockfile and
node_modules and ensure there are no remaining references to the expo-updates
package (search for "expo-updates" in the codebase or config files like
app.json/app.config.js and remove any remnants if found).
|
Claude finished @BillChirico's task in 1m 34s —— View job Review SummaryOverview
Issues by Severity
Categories Flagged
All categories passed review with no issues. Files Reviewed
Verification Complete
Commits MadeNone required - all previously identified issues have been addressed. 📋 AI Agent Instructions for Remaining IssuesFix PR #334 on branch No remaining issues to fix. All coderabbitai comments have been addressed:
Recommendation: APPROVE |
There was a problem hiding this comment.
Actionable comments posted: 8
🤖 Fix all issues with AI agents
In `@CHANGELOG.md`:
- Around line 12-14: The Unreleased changelog entries are out of
reverse-chronological order; reorder the three "Fix" lines so the newest fix
appears first under the "Unreleased" section (i.e., place the entry about the
Steps tab / 12-step content toggle at the top if it's the newest, followed by
the Vercel babel-jest/jest-environment-jsdom revert to 29.x entry, then the
Vercel pnpm hoisted node-linker / `@babel/types` fix), ensuring all "Fixed"
entries in CHANGELOG.md remain in reverse‑chronological order.
In `@docs/plans/2026-01-24-twelve-step-program-section-design.md`:
- Around line 84-111: Add a CHECK constraint on prayers.category to restrict
values to ('step','common','aa','na') (e.g., add CONSTRAINT check_category on
table prayers); create indexes for user_prayer_favorites on user_id, for
user_prayer_history on (user_id, viewed_at DESC), and for prayers on (category,
sort_order) to support the described access patterns; clarify semantics of
user_prayer_history by either adding UNIQUE(user_id, prayer_id) and switching
writes to an upsert (ON CONFLICT DO UPDATE SET viewed_at = EXCLUDED.viewed_at)
if only the latest view should be stored, or leaving duplicates allowed but
adding a schema comment explaining repeated views are intentional.
- Around line 192-204: The "Mark as Read" behavior is underspecified: implement
and document that tapping "Mark as Read" should create or upsert a row in the
user_reading_history table with columns user_id, reading_date (UTC date),
program (enum: "AA" or "NA"), and source (external_api or supabase) and that the
UI should query user_reading_history for the current user and reading_date to
decide whether to show the "Mark as Read" button or a checkmark; also clarify
that program selection is tracked per-program (AA and NA have separate history
rows) and add this mapping under Screen Designs/Implementation Notes referencing
the UI action "Mark as Read", the query function (e.g.,
getUserReadingHistoryForDate), and the mutation/upsert function (e.g.,
upsertUserReadingHistory) so each UI action is paired with the exact DB
operation.
- Around line 312-331: The profile column rename and UI label are inconsistent:
the DB field show_program_content is generic while the Settings UI reads "Show
12 Step Program"; either document the intent to keep a generic column for future
program types (update the design doc to state that show_program_content
intentionally covers multiple program types and map the UI label to a specific
program) or make the names explicit by renaming the column to
show_twelve_step_program (replacing show_twelve_step_content) and keep the UI
label as "Show 12 Step Program" so code, DB and UI match; update references to
show_program_content or show_twelve_step_program accordingly and add a short
rationale comment in the design doc describing the chosen approach.
- Around line 49-80: Add the missing indexes, rename the ambiguous column, and
enforce CHECK constraints: add an index on user_reading_history(user_id,
reading_date) and on daily_readings(program, month, day); rename
user_reading_history.reading_date to reflection_date (or content_date) and
update all references in schema and application code (e.g., user_reading_history
table usages) to avoid semantic confusion; add CHECK constraints on
daily_readings.program (IN ('aa','na')) and
user_reading_preferences.preferred_program (IN ('aa','na','both')); and update
the spec to define how preferred_program = 'both' should behave (side-by-side vs
toggle) so UI/business logic can implement consistent selection.
- Around line 370-375: Expand the Migration Strategy to include concrete data
migration and rollback steps: add a "Column rename migration" section that
documents executing the rename of show_twelve_step_content →
show_program_content (including verifying existing user preferences are
preserved and writing a reversible SQL migration), specify when and how to
initialize defaults for new tables (user_reading_preferences,
user_program_stats) — e.g., backfill script vs on-first-login logic and the
target default values and batching approach, describe rollback procedures for
both the column rename and new tables (how to reverse the rename, truncate or
export/import data for user_reading_history and user_prayer_favorites, and safe
ordering to avoid FK issues), require running DDL/DML inside explicit
transactions where supported and include idempotent backfill scripts plus smoke
tests, and add a note to deploy DB changes separately behind a feature flag so
UI toggles (feature flag gating) can be used for incremental rollout and safe
rollback.
- Around line 115-153: Add a CHECK constraint on literature_books.program to
restrict values to ('aa','na') (use constraint name like check_program), create
indexes: on literature_chapters(book_id, chapter_number)
(idx_literature_chapters_book), on user_literature_books(user_id, is_visible)
(idx_user_literature_books_user_visible), and on
user_literature_progress(user_id, chapter_id) with completed_at included for
fast progress queries (idx_user_lit_progress_query /
idx_user_literature_progress_user), and finally clarify the semantic of
user_literature_books.is_visible in the schema/docs—either remove the implicit
default and only insert rows when a user actively adds a book, or keep DEFAULT
true but document that rows must be created explicitly (update migrations/docs
accordingly).
- Around line 157-183: Add a CHECK constraint on user_meetings.meeting_type to
enforce values ('aa','na','other'); create indexes user_meetings(user_id,
attended_at DESC) to support "Meetings grouped by week" and
user_meetings(user_id, meeting_name) to support "Meeting names auto-suggest";
and update the Implementation Notes for user_program_stats to specify the chosen
maintenance strategy for the cached stats (options: DB triggers for real-time,
periodic batch job, on-demand calculation with cache invalidation, or background
worker) and document which one you will implement plus how updated_at will be
maintained for that approach.
🤖 Morph Preview TestPreview URL: https://sobers-616tnn6f9-volvox-llc.vercel.app AI SummaryIssues:
Verified:
Notes:
RecordingAutomated testing by Morph |
|
@morph Test this |
Try again |
🤖 Morph Preview TestPreview URL: https://sobers-58qc9pm8e-volvox-llc.vercel.app AI SummaryIssues:
Verified:
RecordingAutomated testing by Morph |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #334 +/- ##
=======================================
Coverage 92.40% 92.40%
=======================================
Files 82 82
Lines 3962 3962
Branches 1341 1341
=======================================
Hits 3661 3661
Misses 292 292
Partials 9 9 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
🤖 Morph Preview TestPreview URL: https://sobers-r4ko8c724-volvox-llc.vercel.app AI SummaryIssues:
Verified:
Notes:
RecordingAutomated testing by Morph |
🤖 Morph Preview TestPreview URL: https://sobers-dmr0e9a4f-volvox-llc.vercel.app AI SummaryIssues:
Verified:
RecordingAutomated testing by Morph |
Bumps [react-native-screens](https://github.com/software-mansion/react-native-screens) from 4.16.0 to 4.19.0. - [Release notes](https://github.com/software-mansion/react-native-screens/releases) - [Commits](software-mansion/react-native-screens@4.16.0...4.19.0) --- updated-dependencies: - dependency-name: react-native-screens dependency-version: 4.19.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [@sentry/react-native](https://github.com/getsentry/sentry-react-native) from 7.2.0 to 7.8.0. - [Release notes](https://github.com/getsentry/sentry-react-native/releases) - [Changelog](https://github.com/getsentry/sentry-react-native/blob/main/CHANGELOG.md) - [Commits](getsentry/sentry-react-native@7.2.0...7.8.0) --- updated-dependencies: - dependency-name: "@sentry/react-native" dependency-version: 7.8.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
🤖 Morph Preview TestPreview URL: https://sobers-22y4o098n-volvox-llc.vercel.app AI SummaryIssues:
Verified:
RecordingAutomated testing by Morph |





Summary
This release includes major feature additions, architectural changes, and dependency updates:
Features
Changes
Removed
Fixes
Dependencies
Test plan
pnpm format && pnpm lint && pnpm typecheck && pnpm build:web && pnpm testImportant
Add 12-Step content toggle, migrate to Amplitude analytics, and update dependencies with UI and architectural changes.
This description was created by
for f3ecdac. You can customize this summary. It will automatically update as commits are pushed.