Skip to content
3.55.024 September 2026App 728b928Technical details

Release Notes - Technical Details ​

Internal companion to RELEASE_NOTES.md. Not for customers.

  • Range: 510ac48fb93da55364fb0498b42f424ca1b89a0b → 728b92858c5b97d6d8da6d435b7d2d34afd1081b
  • Generated: 2026-09-24 13:36 UTC
  • Merge requests: 54
  • Commits: 102 (0 without a merge request)

Merge requests ​

!2310 Service bundles ​

  • Merge request: https://gitlab.equinem.com/equinem/equiapp/-/merge_requests/2310
  • Author: Michel
  • Labels: VDL
  • Commits:
    • c2e20407 feat(horse): select button on mobile to start selecting horses
    • 5d0494ae fix(horse): load the current stay only when needed and log errors
    • 8154486d fix(horse): correct the location sort order comments
    • ccf51650 fix(financial): type the service bundle request body as ProductTagWritable
    • 0f5505ee fix(horse): only show rvo status and report for rvo authorized locations
    • 480b5f90 fix(horse): offer the rvo report after a multi-horse move
    • f08d88dc fix(horse): no unfinished activities warning for external horses
    • 075900c4 feat(horse): service bundles in the location section of the horse details
    • 45d844da feat(horse): service tags and rvo status in the horse list
    • 65487418 feat(horse): gmail style selection via the avatar in the horse list
    • 63051790 feat(horse): move selected horses via the move dropdown and MoveHorseModal
    • b0623bf9 feat(horse): multi-horse move and service bundles in MoveHorseModal
    • d4fcb65a feat(horse): rvo status and report actions in the location history tile
    • d8b539ae feat(financial): settings page in tabs, tabs component
    • 96a3f91d feat(financial): product tags (service bundles) on billable services

!2312 Breeding plans page ​

!2364 fix(horses): stop showing raw contact/stable uid when it can't be resolved - use clear unkown names ​

!2367 Feat/1227 bulk update horse ​

  • Merge request: https://gitlab.equinem.com/equinem/equiapp/-/merge_requests/2367
  • Author: Rein de Vries
  • Closes: #1227 Request: allow bulk edit of horses in the horse list
  • Commits:
    • e2696888 fix(selection): select-all checkbox did nothing without totalCount
    • 7f903abd feat(horse): added bulk move
    • b785ca0b feat(horse): added bulk edit on some simple fields
    • 9158b026 chore(claude): added more instructions

!2377 chore(deleteAccount): do not log 400 error - its a user error not a fixable app error ​

!2379 chore(FertilityReport): added SWS filter ​

!2380 chore(report): show the deployment report only for BP ​

!2381 fix(reports): show income/expense chart by default ​

  • Merge request: https://gitlab.equinem.com/equinem/equiapp/-/merge_requests/2381
  • Author: Rein de Vries
  • Commits:
    • 3d2b1488 feat(reports): remove the 'show chart' filter
    • 6eed083a feat(reports): filter income/expense report by horse and/or contact
    • 85fe8bce feat(reports): add Total column to income/expense report
    • 0b57ba88 fix(reports): show income/expense chart by default

!2382 chore(report): make the grouped report sortable ​

!2383 Chore/fead report fixes ​

  • Merge request: https://gitlab.equinem.com/equinem/equiapp/-/merge_requests/2383
  • Author: Rein de Vries
  • Commits:
    • 790e1923 chore(report): show active filters for the feed report
    • 360dbfe8 chore(report): added cost toggle for the feed report
    • b4ea4253 feat(feed): added average_feed_price in the feed type setting modal
    • 2464ca0a chore(feedSetting): show the avarage price in the table of types

!2384 chore(report): reorder list ​

!2385 chore(menu): enable report menu ​

!2386 feat(invoice): integrate move Horse when a horse sale item is created ​

  • Merge request: https://gitlab.equinem.com/equinem/equiapp/-/merge_requests/2386
  • Author: Rein de Vries
  • Commits:
    • b6653adc chore(toInvoice): disable horse sale
    • 54277329 chore(invoice): when moving an horse via sale, prefill the destination if possible
    • 1801554b chore(invoice): make sure a horse sale can be for just one horse on the invoice
    • e4c39766 feat(invoice): integrate move Horse when a horse sale item is created

!2387 Feat/demo data ​

  • Merge request: https://gitlab.equinem.com/equinem/equiapp/-/merge_requests/2387
  • Author: Rein de Vries
  • Closes: #1253 Upgrade the trial experience (collection of ideas)
  • Commits:
    • 3c22470a refactor(signup): remove dead code
    • 2d8b205d fix(signup): image was not resizing correctly when the content is higher
    • 130e36d1 feat(signup): added checkbox for demo content (default = true)

!2388 ci: added release-notes stage and added production deployment with this need ​

!2389 Remove vercel dependencies ​

!2390 feat(organization): added fallback and preferred languages fields ​

  • Merge request: https://gitlab.equinem.com/equinem/equiapp/-/merge_requests/2390
  • Author: Rein de Vries
  • Closes: #1661 shop: added invoice language update
  • Commits:
    • 6f212abb chore(invoice): translate the invoice language to the actual name in the meta tabel next to the invoice
    • b485121a chore: sync language list with the available languages from the locale repo
    • b32a60a7 fix(invoice): remove setting the invoice language as that is obsolete now
    • 0c635d57 feat(organization): add available and fallback invoice language settings

!2392 fix(order-wizard): stop re-logging handled 400s to Bugsink ​

!2393 fix(api): parse index-wrapped field errors from bulk endpoints ​

!2394 chore: update OpenApi ​

!2395 fix(auth): sync rotated refresh token across tabs to prevent logout ​

!2396 chore(invoice): allow finalizing without a valid payment mandate ​

!2397 fix: guard against missing url/fields in S3 presign response ​

!2398 chore(careHorseForm): do not log cancel error ​

!2399 chore(apiParser): support non index array ​

!2400 fix: stop double-logging already-handled API errors to Bugsink ​

!2401 chore: update OpenAPi ​

!2403 fix(activities): show horse name in unassigned column of day view ​

!2404 fix(planning): show tasks with a stable in action list ​

!2405 fix(products): send current_price_currency to backend, clarify upfront payment currency ​

!2406 fix: upgrade react-router-dom to 6.30.6 for open-redirect advisories ​

!2407 feat(horse): show location history tile as a timeline ​

!2408 fix: generate S3 key uuids with node:crypto instead of the uuid package ​

!2409 feat(contacts): enhanced contact merger ​

  • Merge request: https://gitlab.equinem.com/equinem/equiapp/-/merge_requests/2409
  • Author: Rein de Vries
  • Closes: #1307 Enhanced contact merge and support Horse Merge, #1540 Duplicate merger shows 'hidden' contact as primary
  • Commits:
    • 28100ca7 fix(contacts): confirm merge before saving duplicate primary contact
    • 84576b4a feat(contacts): move duplicate merge to dedicated pages with per-field conflict picker

!2410 feat(order): added mare and stallion filter ​

!2412 fix(api): surface API errors for fields not present in the form's own schema ​

!2413 fix(invitation): show organisation name in accept-invitation page title ​

!2414 chore: npm audit fix (non-breaking advisories only) ​

!2415 fixes: Stal Hendrix ​

  • Merge request: https://gitlab.equinem.com/equinem/equiapp/-/merge_requests/2415
  • Author: Rein de Vries
  • Commits:
    • 4b9d5953 fix(webshop): hide pay-order button while a payment is pending
    • 4e50e842 feat(webshop): require UELN when adding a mare via the client portal
    • e901e060 fix(breeding): label order item quantity as its own key instead of reusing 'amount'

!2416 fix(integrations): make machtiging_rvo_gegeven the leading RvO connection signal ​

!2418 fix(products): stop overwriting a product's drifted currency, add inline fix ​

!2419 feat(activities): split action list into List and Day (staff tile) views ​

  • Merge request: https://gitlab.equinem.com/equinem/equiapp/-/merge_requests/2419
  • Author: Michel
  • Commits:
    • 75fb5b92 fix(activities): bump Day view tile grid to 4/5 cols at xl/2xl
    • e07fc218 fix(menu): hide Day view from the menu on mobile screens
    • 17609531 fix(activities): make Day view tile grid responsive
    • 7c0bc786 fix(activities): polish unassigned-by-type tiles and rename Day route
    • da86a12d feat(activities): split unassigned staff group by activity type
    • 26664034 fix(activities): use sibling route for Day view to avoid menu highlight bleed
    • 4d0146a2 feat(activities): split action list into List and Day (staff tile) views

!2420 feat(horse): show feedschema on the horse detail page ​

!2422 feat(feed): restrict feed type average price to admins ​

!2423 fix(order): hide service contract orders from semen orders list ​

!2424 fix(planning): clip swipe animation so text doesn't bleed into horse-name column ​

  • Merge request: https://gitlab.equinem.com/equinem/equiapp/-/merge_requests/2424
  • Author: Rein de Vries
  • Closes: #537 Horizontal scrolling glitch on feed and care
  • Commits:
    • c2b7dc41 fix(permissions): clip swipe animation so text doesn't bleed into label column
    • 76973714 fix(planning): clip swipe animation so text doesn't bleed into horse-name column

!2425 fix(sidebar): measure submenu height after commit instead of during render ​

!2426 fix(shop-settings): trim trailing zero decimals on cost fields ​

!2427 fix(subscription): show estimated horse cost for accounts without a service contract yet ​

!2428 fix(companies): refresh org companies after save to fix stale invoice letterhead address ​

!2429 chore: update OpenApi & show gantt chart also when transpas is enabled ​

!2430 fix(activities): catch background reload error after quick save ​

!2431 Fix/breeding plans mobile ​

!2432 chore(duplicateContacts): more UI enhancements to distinct the primary contact ​

Left out of the customer release notes ​

OpenAPI schema refreshes and other changes with no customer-visible effect.

EquineM documentation