Skip to content

🔖 new release#618

Merged
cruzdanilo merged 1 commit intomainfrom
changeset-release/main
Jan 8, 2026
Merged

🔖 new release#618
cruzdanilo merged 1 commit intomainfrom
changeset-release/main

Conversation

@cruzdanilo
Copy link
Member

@cruzdanilo cruzdanilo commented Jan 5, 2026

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@exactly/mobile@1.0.45

Patch Changes

@exactly/server@0.2.47

Patch Changes

Summary by CodeRabbit

  • New Features

    • Added pax assistance support.
  • Bug Fixes

    • Installments fee now included in payment details.

✏️ Tip: You can customize this high-level summary in your review settings.

@cursor
Copy link

cursor bot commented Jan 5, 2026

PR Summary

Release summary

  • @exactly/mobile@1.0.45: 🐛 include installments fee in payment details
  • @exactly/server@0.2.47: ✨ support pax assistance

Other changes

  • Bump @exactly/server dependency in mobile and update lockfile
  • Update CHANGELOG.md and versions; remove processed changeset files

Written by Cursor Bugbot for commit 0271876. This will update automatically on new commits. Configure here.

@coderabbitai
Copy link

coderabbitai bot commented Jan 5, 2026

Caution

Review failed

The pull request is closed.

Walkthrough

Removed a changeset file, added release entries to root and server changelogs, and bumped root and server package versions (root: 1.0.44 → 1.0.45; server: 0.2.46 → 0.2.47).

Changes

Cohort / File(s) Change Summary
Changeset
​.changeset/big-carrots-design.md
Deleted changeset that referenced the installments-fee change.
Root changelog
CHANGELOG.md
Added 1.0.45 release block citing PR #617 (installments fee in payment details).
Server changelog
server/CHANGELOG.md
Added 0.2.47 release block with patch entry (PR #612).
Root package manifest
package.json
Bumped package version 1.0.441.0.45; updated workspace dependency @exactly/server to ^0.2.47.
Server package manifest
server/package.json
Bumped package version 0.2.460.2.47.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

  • 🔖 new release #595 — Also updates server package release metadata (server/package.json and server/CHANGELOG.md).

Suggested labels

bug

Suggested reviewers

  • nfmelendez
  • dieguezguille
  • franm91
🚥 Pre-merge checks | ✅ 1 | ❌ 1
❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Title check ❓ Inconclusive The title "🔖 new release" is vague and generic, lacking specific information about the release version or package being released. Consider using a more descriptive title like "Release @exactly/mobile@1.0.45" or "Release v1.0.45 - include installments fee" to provide clearer context about what is being released.
✅ Passed checks (1 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch changeset-release/main

📜 Recent review details

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 026a000 and 0271876.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (5)
  • .changeset/big-carrots-design.md
  • CHANGELOG.md
  • package.json
  • server/CHANGELOG.md
  • server/package.json

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@gemini-code-assist
Copy link

Summary of Changes

Hello @cruzdanilo, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request facilitates an automated patch release for the @exactly/mobile package, incrementing its version to 1.0.45. The primary purpose of this release is to integrate a crucial bug fix that ensures installment fees are accurately reflected within payment details. This process streamlines the publication of the updated package to npm, maintaining consistency across the project's versioning and changelog.

Highlights

  • Automated Release: This pull request is an automated release generated by the Changesets GitHub action, preparing to publish a new version of the @exactly/mobile package.
  • Version Update: The @exactly/mobile package is being updated to version 1.0.45.
  • Bug Fix Inclusion: The release includes a patch fix to correctly include installment fees in payment details, as detailed in PR 🐛 app: include installments fee in payment details #617.
  • Changelog and Package Manifest Updates: The CHANGELOG.md and package.json files have been automatically updated to reflect the new version and its associated changes.
  • Changeset Consumption: The .changeset/big-carrots-design.md file, which described the change, has been removed as it has been consumed by this release.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request prepares a new release, version 1.0.45, for the @exactly/mobile package. The primary change included is to 'include installments fee in payment details'. My review of the underlying code for this change has uncovered a critical issue in src/components/activity/details/PaymentDetails.tsx. There is an inconsistency in how fees are calculated for multi-installment payments. This could result in displaying incorrect per-installment amounts to users, which is a significant issue for a financial application. I have detailed the problem and a suggested fix in a comment on the CHANGELOG.md file, as the affected code file is not part of this pull request's diff. It is highly recommended to address this before merging the release.


### Patch Changes

- [#617](https://github.com/exactly/exa/pull/617) [`b3153b8`](https://github.com/exactly/exa/commit/b3153b8ae245cc70a31b9c6ebcc9e60423e0245a) Thanks [@itofarina](https://github.com/itofarina)! - 🐛 include installments fee in payment details

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

critical

There appears to be a potential bug in the implementation of the feature described in this changelog entry.

In src/components/activity/details/PaymentDetails.tsx, the calculation for the per-installment amount for multi-installment plans (item.mode > 1) seems inconsistent with the calculation for the total amount.

  • The per-installment amount (lines 72-76) is derived from item.usdAmount + (item as InstallmentsActivity).borrow.fee.
  • The total amount (lines 91-99) is calculated using (item as InstallmentsActivity).borrow.installments.reduce((accumulator, installment) => accumulator + installment.fee, item.usdAmount).

The reduce method for the total amount is likely the correct source of truth for the sum of all fees. However, the per-installment calculation uses item.borrow.fee, which may not be the correct total fee. This can lead to displaying an incorrect amount for each installment.

This is a critical issue as it involves displaying incorrect financial data to the user.

To ensure consistency and correctness, the per-installment amount should be calculated based on the same total amount logic. Here is a suggested refactor:

// In PaymentDetails.tsx, for the item.mode > 1 case:

// Use the same logic as the total amount calculation to get the total fee.
const totalFee = (item as InstallmentsActivity).borrow.installments.reduce(
  (accumulator, installment) => accumulator + installment.fee,
  0,
);

// Then, in the JSX for per-installment amount:
{item.mode > 1 &&
  ((item.usdAmount + totalFee) / (item as InstallmentsActivity).borrow.installments.length).toFixed(2)}

// The total amount calculation is already correct.

@sentry
Copy link

sentry bot commented Jan 5, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 54.24%. Comparing base (bfd960c) to head (0271876).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #618      +/-   ##
==========================================
+ Coverage   50.00%   54.24%   +4.24%     
==========================================
  Files          43       50       +7     
  Lines        7236     7912     +676     
  Branches      540      644     +104     
==========================================
+ Hits         3618     4292     +674     
- Misses       3603     3605       +2     
  Partials       15       15              
Flag Coverage Δ
github 54.12% <ø> (+4.24%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Fix all issues with AI Agents 🤖
In @CHANGELOG.md:
- Line 7: The CHANGELOG entry starting with "- [#617] [`b3153b8`] Thanks
[@itofarina]! - 🐛 include installments fee in payment details" exceeds the
120-character limit; split or wrap this single long line into multiple shorter
lines (for example: keep the PR reference/link and commit hash on the first line
and wrap the contributor and description onto a second line, or break the
description after a natural boundary) so every line is under 120 characters
while preserving the exact text and links.
📜 Review details

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between a3b81a6 and 0adbe39.

📒 Files selected for processing (3)
  • .changeset/big-carrots-design.md
  • CHANGELOG.md
  • package.json
💤 Files with no reviewable changes (1)
  • .changeset/big-carrots-design.md
🧰 Additional context used
📓 Path-based instructions (2)
**/*.md

📄 CodeRabbit inference engine (.cursor/rules/markdown.mdc)

**/*.md: Each markdown file must start with a single top-level heading (# heading 1)
Headings must be sequential (e.g., # -> ## -> ###), do not skip levels
Do not end headings with punctuation (., :, !, ?)
Use a hyphen (-) for unordered list items in markdown
Sub-lists in markdown must be indented with a two-space offset
Always use unordered lists (-) instead of numbered lists (1.) in markdown
All code blocks must be fenced with backticks ( ```) and specify a language identifier
Use sh or `bash` as the language identifier for shell commands in markdown code blocks
All code identifiers inside backticks or code fences must strictly follow casing rules defined in `style.mdc` (`camelCase` for variables, `PascalCase` for types, etc.)
All code comments must be lowercase
All lines in markdown files must be no longer than 120 characters
Surround all block-level elements (headings, lists, code blocks) with a single blank line in markdown
Do not add multiple consecutive blank lines in markdown files
No lines should have trailing whitespace in markdown files
Use asterisks (`word`) for italics and double asterisks (`word`) for bold in markdown
Provide descriptive titles for links in markdown instead of generic phrases like 'click here'

Use proper sentence case for user-facing documentation in the docs/ directory

Files:

  • CHANGELOG.md
**/*.{mdc,md}

📄 CodeRabbit inference engine (.cursor/rules/style.mdc)

**/*.{mdc,md}: All narrative text in internal documentation prose (headings, paragraphs, list items, proper nouns, brand names) must be lowercase with no exceptions
When discussing code concepts in prose, use regular lowercase words and place correctly-cased identifiers inside backticks
Any identifier inside backticks or code fences must strictly follow the casing rules defined in the style guide and be treated as code, not prose

Files:

  • CHANGELOG.md
🧠 Learnings (1)
📚 Learning: 2025-12-23T19:56:56.405Z
Learnt from: CR
Repo: exactly/exa PR: 0
File: .cursor/rules/dev.mdc:0-0
Timestamp: 2025-12-23T19:56:56.405Z
Learning: Mobile app (exactly/mobile) uses React Native, Expo, Tamagui (UI), Expo Router (navigation), and TanStack Query (state management)

Applied to files:

  • package.json
🪛 LanguageTool
CHANGELOG.md

[typographical] ~7-~7: Consider using an em dash in dialogues and enumerations.
Context: ...ofarina](https://github.com/itofarina)! - 🐛 include installments fee in payment ...

(DASH_RULE)

🔇 Additional comments (1)
package.json (1)

3-3: Correct patch version bump.

The version field is properly updated to 1.0.45, aligning with the changelog entry and PR objectives for a patch release.

@cruzdanilo cruzdanilo force-pushed the changeset-release/main branch 2 times, most recently from f344d88 to df848fd Compare January 5, 2026 22:30
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Fix all issues with AI Agents 🤖
In @CHANGELOG.md:
- Line 7: The changelog line containing "[#617] `b3153b8` Thanks [@itofarina]! -
🐛 include installments fee in payment details" exceeds 120 characters; split it
into multiple shorter markdown lines by wrapping after the PR/commit references
or contributor attribution (e.g., put the PR/commit references on one line and
the description/contributor on the next), or convert the long inline URLs to
reference-style links so each rendered line stays <=120 characters; update the
entry ensuring the visible text remains the same (keep "[#617]" and "`b3153b8`"
and the contributor mention) but break it into shorter lines to satisfy the
line-length rule.
📜 Review details

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between f344d88 and df848fd.

📒 Files selected for processing (3)
  • .changeset/big-carrots-design.md
  • CHANGELOG.md
  • package.json
💤 Files with no reviewable changes (1)
  • .changeset/big-carrots-design.md
🧰 Additional context used
📓 Path-based instructions (2)
**/*.md

📄 CodeRabbit inference engine (.cursor/rules/markdown.mdc)

**/*.md: Each markdown file must start with a single top-level heading (# heading 1)
Headings must be sequential (e.g., # -> ## -> ###), do not skip levels
Do not end headings with punctuation (., :, !, ?)
Use a hyphen (-) for unordered list items in markdown
Sub-lists in markdown must be indented with a two-space offset
Always use unordered lists (-) instead of numbered lists (1.) in markdown
All code blocks must be fenced with backticks ( ```) and specify a language identifier
Use sh or `bash` as the language identifier for shell commands in markdown code blocks
All code identifiers inside backticks or code fences must strictly follow casing rules defined in `style.mdc` (`camelCase` for variables, `PascalCase` for types, etc.)
All code comments must be lowercase
All lines in markdown files must be no longer than 120 characters
Surround all block-level elements (headings, lists, code blocks) with a single blank line in markdown
Do not add multiple consecutive blank lines in markdown files
No lines should have trailing whitespace in markdown files
Use asterisks (`word`) for italics and double asterisks (`word`) for bold in markdown
Provide descriptive titles for links in markdown instead of generic phrases like 'click here'

Use proper sentence case for user-facing documentation in the docs/ directory

Files:

  • CHANGELOG.md
**/*.{mdc,md}

📄 CodeRabbit inference engine (.cursor/rules/style.mdc)

**/*.{mdc,md}: All narrative text in internal documentation prose (headings, paragraphs, list items, proper nouns, brand names) must be lowercase with no exceptions
When discussing code concepts in prose, use regular lowercase words and place correctly-cased identifiers inside backticks
Any identifier inside backticks or code fences must strictly follow the casing rules defined in the style guide and be treated as code, not prose

Files:

  • CHANGELOG.md
🧠 Learnings (2)
📚 Learning: 2025-12-23T19:56:56.405Z
Learnt from: CR
Repo: exactly/exa PR: 0
File: .cursor/rules/dev.mdc:0-0
Timestamp: 2025-12-23T19:56:56.405Z
Learning: Mobile app (exactly/mobile) uses React Native, Expo, Tamagui (UI), Expo Router (navigation), and TanStack Query (state management)

Applied to files:

  • package.json
📚 Learning: 2025-12-23T19:57:22.339Z
Learnt from: CR
Repo: exactly/exa PR: 0
File: .cursor/rules/markdown.mdc:0-0
Timestamp: 2025-12-23T19:57:22.339Z
Learning: Applies to **/*.md : All lines in markdown files must be no longer than 120 characters

Applied to files:

  • CHANGELOG.md
🔇 Additional comments (1)
package.json (1)

3-3: LGTM! Version bump is correct.

The patch version increment from 1.0.44 to 1.0.45 aligns with the release process for the installments fee feature.

@cruzdanilo cruzdanilo force-pushed the changeset-release/main branch from df848fd to 7c60eee Compare January 6, 2026 17:09
@cruzdanilo cruzdanilo requested a review from nfmelendez as a code owner January 6, 2026 17:09
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI Agents
In @server/CHANGELOG.md:
- Around line 3-7: The changelog entry line "-
[#621](https://github.com/exactly/exa/pull/621)
[`fd9b7a8`](https://github.com/exactly/exa/commit/fd9b7a8fa8ee3373b2d518fbc2d5c934af2974d3)
Thanks [@mainqueg](https://github.com/mainqueg)! - ✅ use injected account
factory in tests" exceeds 120 characters; split it into two or more lines so no
line >120 chars, e.g., keep the pull request and commit reference on the first
line and move the contributor attribution and description to a subsequent
indented continuation line (use two spaces for list continuation) so the entry
remains a single list item but conforms to the markdown line-length rule.
📜 Review details

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between df848fd and 7c60eee.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (5)
  • .changeset/big-carrots-design.md
  • CHANGELOG.md
  • package.json
  • server/CHANGELOG.md
  • server/package.json
💤 Files with no reviewable changes (1)
  • .changeset/big-carrots-design.md
🧰 Additional context used
📓 Path-based instructions (2)
**/*.md

📄 CodeRabbit inference engine (.cursor/rules/markdown.mdc)

**/*.md: Each markdown file must start with a single top-level heading (# heading 1)
Headings must be sequential (e.g., # -> ## -> ###), do not skip levels
Do not end headings with punctuation (., :, !, ?)
Use a hyphen (-) for unordered list items in markdown
Sub-lists in markdown must be indented with a two-space offset
Always use unordered lists (-) instead of numbered lists (1.) in markdown
All code blocks must be fenced with backticks ( ```) and specify a language identifier
Use sh or `bash` as the language identifier for shell commands in markdown code blocks
All code identifiers inside backticks or code fences must strictly follow casing rules defined in `style.mdc` (`camelCase` for variables, `PascalCase` for types, etc.)
All code comments must be lowercase
All lines in markdown files must be no longer than 120 characters
Surround all block-level elements (headings, lists, code blocks) with a single blank line in markdown
Do not add multiple consecutive blank lines in markdown files
No lines should have trailing whitespace in markdown files
Use asterisks (`word`) for italics and double asterisks (`word`) for bold in markdown
Provide descriptive titles for links in markdown instead of generic phrases like 'click here'

Use proper sentence case for user-facing documentation in the docs/ directory

Files:

  • CHANGELOG.md
  • server/CHANGELOG.md
**/*.{mdc,md}

📄 CodeRabbit inference engine (.cursor/rules/style.mdc)

**/*.{mdc,md}: All narrative text in internal documentation prose (headings, paragraphs, list items, proper nouns, brand names) must be lowercase with no exceptions
When discussing code concepts in prose, use regular lowercase words and place correctly-cased identifiers inside backticks
Any identifier inside backticks or code fences must strictly follow the casing rules defined in the style guide and be treated as code, not prose

Files:

  • CHANGELOG.md
  • server/CHANGELOG.md
🧠 Learnings (3)
📚 Learning: 2025-12-23T19:56:56.405Z
Learnt from: CR
Repo: exactly/exa PR: 0
File: .cursor/rules/dev.mdc:0-0
Timestamp: 2025-12-23T19:56:56.405Z
Learning: Server (exactly/server) uses Hono (framework), Node.js, Drizzle ORM (database), and PostgreSQL

Applied to files:

  • server/package.json
📚 Learning: 2025-12-23T19:56:56.405Z
Learnt from: CR
Repo: exactly/exa PR: 0
File: .cursor/rules/dev.mdc:0-0
Timestamp: 2025-12-23T19:56:56.405Z
Learning: Mobile app (exactly/mobile) uses React Native, Expo, Tamagui (UI), Expo Router (navigation), and TanStack Query (state management)

Applied to files:

  • package.json
📚 Learning: 2026-01-05T21:07:34.094Z
Learnt from: franm91
Repo: exactly/exa PR: 614
File: package.json:94-94
Timestamp: 2026-01-05T21:07:34.094Z
Learning: For the exactly/exa mobile app, native module dependencies (like react-native-gesture-handler, react-native-reanimated, etc.) should use versions that match Expo SDK's bundledNativeModules.json to ensure compatibility and stability. Don't suggest upgrading these packages to latest npm versions if they're aligned with the Expo SDK version in use.

Applied to files:

  • package.json
🔇 Additional comments (2)
server/package.json (1)

3-3: Version bump is correct.

The patch version update from 0.2.46 to 0.2.47 correctly reflects the release and aligns with the changelog entry for PR #621.

package.json (1)

3-3: LGTM! Version bump is consistent with release.

The patch version bump to 1.0.45 aligns with the PR objectives and follows semantic versioning for the changes included (installments fee in payment details from PR #617).

@cruzdanilo cruzdanilo force-pushed the changeset-release/main branch from 93984e3 to 026a000 Compare January 7, 2026 15:45
@cruzdanilo cruzdanilo force-pushed the changeset-release/main branch from 026a000 to 0271876 Compare January 8, 2026 16:35
@cruzdanilo cruzdanilo merged commit 0271876 into main Jan 8, 2026
5 of 6 checks passed
@cruzdanilo cruzdanilo deleted the changeset-release/main branch January 8, 2026 16:43
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.

1 participant

Comments