Repository navigation
v1.46.6
A patch with a bit more in it than usual. Lab ratios like INR or cholesterol/HDL finally have a place to go, the doctor report learned to print Polish, Korean and Cyrillic instead of little boxes, and your MCP client can now follow a lab value back to the report it came from. Two of these started as issues filed this weekend, and one arrived as a ready pull request.
Added
- Lab values without a unit. Ratios and indices (INR, cholesterol/HDL, albumin/globulin) couldn't be saved anywhere, because every path asked for a unit. Manual entry, the scanned-report rows and the document review now have a "No unit" checkbox, and the CSV import reads
1in the unit column the same way. An empty unit is still refused, so a unit that got lost on the way is not mistaken for none, and if a document read says "no unit" on its own, the value waits for your review. Such a value shows as the bare number, and the FHIR export codes it as UCUM1. (#1313) - MCP reads follow their links.
get_labsandfetch lab:list the documents and visits a reading is linked to,fetch med:andget_medication_schedulelist theirs, andfetch document:names the lab results and medications filed against it. Rows ofget_visits,get_medication_scheduleandget_illness_recoverycarry an id thatfetchtakes. An imported document shows its source system and id, never your instance's address. (#1323)
Fixed
- A refused lab value can be fixed in the review. When Finish review refused a value (a ratio without a unit, a unit that doesn't match the marker), the row showed why but could only be discarded. It now has the same Check button as a low-confidence value. (#1313, #1327)
- The doctor report prints every language we ship. The PDF used a built-in font that only knows Western European letters, so Polish ą, ł or ś, a whole Korean report, and any medication name in another script came out as empty boxes. The report now embeds an open Unicode font (Latin, Greek, Cyrillic, and Korean when needed). Arrows, ≤ and ² print as themselves too, and the compressed file stays around 65 KB. Chinese, Japanese and Arabic aren't covered yet.
- PDFs read on a Raspberry Pi 4. The native canvas build for arm64 Alpine needs CPU features the Pi 4 doesn't have, and every PDF read died with an illegal instruction. HealthLog now checks for them and reads PDFs without the canvas on such a CPU, so the text layer and the search index work. Thumbnails still use their fallback. (#1311)
- The greeting uses your display name. Dashboard, Insights, the top bar and the sidebar showed the username even with a display name set. (#1309)
- Summaries count every reading right after an import. One folded day could make a whole type look covered, and a summary then counted one day out of three.
- The hour the clocks go back stays two hours. On that night a dense pulse or glucose chart merged both runs of the repeated hour into one point.
- Google Health and WHOOP. A Google Health connection whose account id was cleared by the 1.46.4 update reads it back after its next clean sync. WHOOP refuses a sign-in without a user id instead of storing "undefined".
Changed
- Next.js 16.4.3 and the weekly dependency updates, including node-forge 1.4.2 (five high advisories, reached through the APNs client).
Thanks
- @johnnyrepo026 for #1313, a report that already pointed at the right two files, and for #1327, the pull request that fixed its first half, test included.
- @mbreitkreuz for #1323, a careful spec with the real case (one blood draw, two reports, same date) that showed why matching by date doesn't work.
- @Oguz3003 for #1311, for tracking the Pi 4 crash down to the CPU and confirming the workaround.
- @angusmaul for #1309, the greeting that ignored the display name.
- @mills1975 for #1326 and the diagnostics that pinned the heart-rate gap to the iPhone app. That fix comes with an app update.