You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[WEB-4809] Bump viz to fix settings PDF crashes (hotfix) to master - #97
This pull request bumps @tidepool/viz (tidepool-org/viz#683) to stop PDF reports from crashing the export service. No export source changes are needed.
What the viz hotfix fixes:
A report for a patient whose latest pump has no settings layout in viz (any deviceManufacturers[0] viz doesn't recognize) threw Cannot read properties of undefined (reading 'text') on the Device Settings page. The page now shows the device name and serial only, the same as blip's Devices view, which renders nothing for these pumps.
Every Animas report threw unsupported number: NaN on the Device Settings page (since viz 09e7d226, 2025-12-08). It renders again.
createPrintPDFPackage rendered inside an async promise executor, so any render error became an unhandled rejection and killed the Node process, taking down every export in flight on the pod. Render errors now reject, so the existing .catch in lib/report.mjs logs Error creating PDF and the handler returns a 500.
What else comes with viz 1.60.0 to 1.61.0 (already in blip):
New PDF header on every page: Tidepool logo on the left, patient block on the right, DOB as YYYY-MM-DD.
The Tags & Sites page is not shown: viz renders it only when patientTags / sites are passed, and export passes neither.
Dependencies and versioning:
Bumped @tidepool/viz from 1.59.0 to 1.61.1-rc.1. yarn.lock changes only the viz entry; no transitive dependency changes.
Bumped the package version to 1.78.1-rc.1.
Testing and validation:
yarn lint and yarn test (136 tests) pass.
Rendered a reports=all PDF for 16 synthetic patients on a local stack with export's installed viz, before (1.59.0) and after (1.61.1-rc.1), and compared every page's text and pixels. Patients: Medtronic, Medtronic via CareLink, Omnipod, Tandem Control-IQ, DIY Loop, Tidepool Loop, twiist, Trio, Equil, Animas, BGM only, CGM only, mmol/L, DST, travel, and an unrecognized pump manufacturer.
Before: the Animas and unrecognized-pump reports kill the process with an unhandled rejection. The unrecognized-pump one matches the production stack trace.
After: all 16 render. Page counts are unchanged. The only differences are the new header and the Daily site change icons and legend entries listed above. The Animas Device Settings page lays out like other pumps' (Basal Rates, then ezCarb ezBG).
This updates the viz dependency to a release candidate that fixes PDF crashes on Device Settings pages. No export source changes are included, and no actionable merge-blocking risk was found.
Pre-merge checks: 4
Check name
Status
Explanation
Linked Issues check
Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check
Check skipped because no linked issues were found for this pull request.
Title check
The title names the main change: bumping @tidepool/viz to fix settings PDF crashes. The raw summary confirms the viz bump from 1.59.0 to 1.61.1-rc.1 and the package version change. The ticket tag and …
Description check
The description relates directly to the changeset. It explains the @tidepool/viz bump from 1.59.0 to 1.61.1-rc.1 and the package version bump to 1.78.1-rc.1. It also lists the PDF crash fixes, the new…
Full details: Title check
Explanation
The title names the main change: bumping @tidepool/viz to fix settings PDF crashes. The raw summary confirms the viz bump from 1.59.0 to 1.61.1-rc.1 and the package version change. The ticket tag and the hotfix and master wording add noise, but the title is clearly related to the changeset.
Full details: Description check
Explanation
The description relates directly to the changeset. It explains the @tidepool/viz bump from 1.59.0 to 1.61.1-rc.1 and the package version bump to 1.78.1-rc.1. It also lists the PDF crash fixes, the new header and site-change features, and the testing done.
Finishing Touches
Generate unit tests (beta)
Commit to this branch
Create a new PR
Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Warning
Some tools did not complete. Review the errors below.
ESLint
If the error stems from missing dependencies, add them to the package.json file. For unrecoverable errors (e.g., due to private dependencies), disable the tool in the CodeRabbit configuration.
package.json
Parsing error: Missing semicolon. (2:8)
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.
File: No configuration file from this repository applied
Commit: Unavailable
Layers: Organization UI
Review profile: CHILL
Plan: Advanced
Run ID: 121683d7-6206-40c5-8c17-8ca5b569e160
Commits
Reviewing files that changed from the base of the PR and between 025511f and 84e4ee3.
Files ignored due to path filters: 1
yarn.lock is excluded by !**/yarn.lock, !**/*.lock
Files selected for processing: 1
package.json
Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.
krystophv
changed the title
[WEB-4809] Bump viz to 1.61.1-rc.1 to fix settings PDF crashes (hotfix) to master
[WEB-4809] Bump viz to fix settings PDF crashes (hotfix) to master
Nov 12, 2026
The reason will be displayed to describe this comment to others. Learn more.
LGTM 🔥
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
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.
For WEB-4809.
This pull request bumps
@tidepool/viz(tidepool-org/viz#683) to stop PDF reports from crashing the export service. No export source changes are needed.What the viz hotfix fixes:
deviceManufacturers[0]viz doesn't recognize) threwCannot read properties of undefined (reading 'text')on the Device Settings page. The page now shows the device name and serial only, the same as blip's Devices view, which renders nothing for these pumps.unsupported number: NaNon the Device Settings page (since viz 09e7d226, 2025-12-08). It renders again.createPrintPDFPackagerendered inside an async promise executor, so any render error became an unhandled rejection and killed the Node process, taking down every export in flight on the pod. Render errors now reject, so the existing.catchinlib/report.mjslogsError creating PDFand the handler returns a 500.What else comes with viz 1.60.0 to 1.61.0 (already in blip):
YYYY-MM-DD.patientTags/sitesare passed, and export passes neither.Dependencies and versioning:
@tidepool/vizfrom1.59.0to1.61.1-rc.1.yarn.lockchanges only the viz entry; no transitive dependency changes.1.78.1-rc.1.Testing and validation:
yarn lintandyarn test(136 tests) pass.reports=allPDF for 16 synthetic patients on a local stack with export's installed viz, before (1.59.0) and after (1.61.1-rc.1), and compared every page's text and pixels. Patients: Medtronic, Medtronic via CareLink, Omnipod, Tandem Control-IQ, DIY Loop, Tidepool Loop, twiist, Trio, Equil, Animas, BGM only, CGM only, mmol/L, DST, travel, and an unrecognized pump manufacturer.